|  | @ -62,16 +62,36 @@ public class ActivityService extends BaseJpaService<ActivityDO,ActivityDao> {
 | 
	
		
			
				|  |  |      * @return
 | 
	
		
			
				|  |  |      */
 | 
	
		
			
				|  |  |     @org.springframework.transaction.annotation.Transactional(rollbackFor = Exception.class)
 | 
	
		
			
				|  |  |     public MixEnvelop<Boolean, Boolean> insert(ActivityDO activityDO,String value1,String value2,String value3){
 | 
	
		
			
				|  |  |     public MixEnvelop<Boolean, Boolean> insert(ActivityDO activityDO,String value1,String value2,String value3,String registrationNumber){
 | 
	
		
			
				|  |  |         if (value2 != null && value2 !=""){
 | 
	
		
			
				|  |  |             JSONObject object = JSONObject.parseObject(value2);
 | 
	
		
			
				|  |  |             activityDO.setActivityOfflineTime(object.getDate("activityOfflineTime"));
 | 
	
		
			
				|  |  |             activityDO.setRegistrationTime(object.getDate("registrationTime"));
 | 
	
		
			
				|  |  |             activityDO.setDeadLine(object.getDate("deadLine"));
 | 
	
		
			
				|  |  |             String activityOfflineTime = object.getString("activityOfflineTime");
 | 
	
		
			
				|  |  |             String[] str = activityOfflineTime.split(",");
 | 
	
		
			
				|  |  |             if (str.length == 2){
 | 
	
		
			
				|  |  |                 activityDO.setActivityOfflineTime(DateUtil.strToDate(str[1]));
 | 
	
		
			
				|  |  |             }else {
 | 
	
		
			
				|  |  |                 activityDO.setActivityOfflineTime(DateUtil.strToDate(str[0]));
 | 
	
		
			
				|  |  |             }
 | 
	
		
			
				|  |  |             String registrationTime = object.getString("registrationTime");
 | 
	
		
			
				|  |  |             String[] str1 = registrationTime.split(",");
 | 
	
		
			
				|  |  |             if(str1.length==2){
 | 
	
		
			
				|  |  |                 activityDO.setRegistrationTime(DateUtil.strToDate(str1[1]));
 | 
	
		
			
				|  |  |             }else {
 | 
	
		
			
				|  |  |                 activityDO.setRegistrationTime(DateUtil.strToDate(str1[0]));
 | 
	
		
			
				|  |  |             }
 | 
	
		
			
				|  |  |             String deadLine = object.getString("deadLine");
 | 
	
		
			
				|  |  |             String[] str2 = deadLine.split(",");
 | 
	
		
			
				|  |  |             if (str2.length==2){
 | 
	
		
			
				|  |  |                 activityDO.setDeadLine(DateUtil.strToDate(str2[1]));
 | 
	
		
			
				|  |  |             }else {
 | 
	
		
			
				|  |  |                 activityDO.setDeadLine(DateUtil.strToDate(str2[0]));
 | 
	
		
			
				|  |  |             }
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |         }
 | 
	
		
			
				|  |  |         activityDO.setCreateTime(new Date());
 | 
	
		
			
				|  |  |         activityDO.setUpdateTime(new Date());
 | 
	
		
			
				|  |  |         activityDO.setDelFlag(1);
 | 
	
		
			
				|  |  |         activityDO.setRegistrationNumber(registrationNumber);
 | 
	
		
			
				|  |  |         activityDO= activityDao.save(activityDO);
 | 
	
		
			
				|  |  |         if (value3 !=null && value3 !=""){
 | 
	
		
			
				|  |  |             JSONObject object = JSONObject.parseObject(value3);
 | 
	
	
		
			
				|  | @ -138,7 +158,7 @@ public class ActivityService extends BaseJpaService<ActivityDO,ActivityDao> {
 | 
	
		
			
				|  |  |      * @throws ParseException
 | 
	
		
			
				|  |  |      */
 | 
	
		
			
				|  |  |     public MixEnvelop<ActivityDO, ActivityDO> findByCondition(ActivityDO activityDO, Integer page, Integer size) throws ParseException {
 | 
	
		
			
				|  |  |         String sql = new ISqlUtils().getSql(activityDO,page,size,"*");
 | 
	
		
			
				|  |  |         String sql = new ISqlUtils().getSql(activityDO,page,size,"sort");
 | 
	
		
			
				|  |  |         List<ActivityDO> activityDOS = jdbcTemplate.query(sql,new BeanPropertyRowMapper(ActivityDO.class));
 | 
	
		
			
				|  |  |         for (ActivityDO activityDO1:activityDOS){
 | 
	
		
			
				|  |  |             String taskSql = "SELECT" +
 | 
	
	
		
			
				|  | @ -190,17 +210,36 @@ public class ActivityService extends BaseJpaService<ActivityDO,ActivityDao> {
 | 
	
		
			
				|  |  |      * @return
 | 
	
		
			
				|  |  |      */
 | 
	
		
			
				|  |  |     @org.springframework.transaction.annotation.Transactional(rollbackFor = Exception.class)
 | 
	
		
			
				|  |  |     public MixEnvelop<Boolean, Boolean> update(ActivityDO activityDO, String value1, String value2, String value3) throws Exception {
 | 
	
		
			
				|  |  |     public MixEnvelop<Boolean, Boolean> update(ActivityDO activityDO, String value1, String value2, String value3,String registrationNumber) throws Exception {
 | 
	
		
			
				|  |  |         if (StringUtils.isBlank(activityDO.getId())) {
 | 
	
		
			
				|  |  |             throw new Exception("活动id不能为空!");
 | 
	
		
			
				|  |  |         }
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |         if (StringUtils.isNotBlank(value2)){
 | 
	
		
			
				|  |  |             JSONObject object = JSONObject.parseObject(value2);
 | 
	
		
			
				|  |  |             activityDO.setActivityOfflineTime(object.getDate("activityOfflineTime"));
 | 
	
		
			
				|  |  |             activityDO.setRegistrationTime(object.getDate("registrationTime"));
 | 
	
		
			
				|  |  |             activityDO.setDeadLine(object.getDate("deadLine"));
 | 
	
		
			
				|  |  |             String activityOfflineTime = object.getString("activityOfflineTime");
 | 
	
		
			
				|  |  |             String[] str = activityOfflineTime.split(",");
 | 
	
		
			
				|  |  |             if (str.length == 2){
 | 
	
		
			
				|  |  |                 activityDO.setActivityOfflineTime(DateUtil.strToDate(str[1]));
 | 
	
		
			
				|  |  |             }else {
 | 
	
		
			
				|  |  |                 activityDO.setActivityOfflineTime(DateUtil.strToDate(str[0]));
 | 
	
		
			
				|  |  |             }
 | 
	
		
			
				|  |  |             String registrationTime = object.getString("registrationTime");
 | 
	
		
			
				|  |  |             String[] str1 = registrationTime.split(",");
 | 
	
		
			
				|  |  |             if(str1.length==2){
 | 
	
		
			
				|  |  |                 activityDO.setRegistrationTime(DateUtil.strToDate(str1[1]));
 | 
	
		
			
				|  |  |             }else {
 | 
	
		
			
				|  |  |                 activityDO.setRegistrationTime(DateUtil.strToDate(str1[0]));
 | 
	
		
			
				|  |  |             }
 | 
	
		
			
				|  |  |             String deadLine = object.getString("deadLine");
 | 
	
		
			
				|  |  |             String[] str2 = deadLine.split(",");
 | 
	
		
			
				|  |  |             if (str2.length==2){
 | 
	
		
			
				|  |  |                 activityDO.setDeadLine(DateUtil.strToDate(str2[1]));
 | 
	
		
			
				|  |  |             }else {
 | 
	
		
			
				|  |  |                 activityDO.setDeadLine(DateUtil.strToDate(str2[0]));
 | 
	
		
			
				|  |  |             }
 | 
	
		
			
				|  |  |         }
 | 
	
		
			
				|  |  |         activityDO.setRegistrationNumber(registrationNumber);
 | 
	
		
			
				|  |  |         activityDO.setUpdateTime(new Date());
 | 
	
		
			
				|  |  |         activityDO.setDelFlag(1);
 | 
	
		
			
				|  |  |         //删除活动任务与奖品
 | 
	
	
		
			
				|  | @ -268,7 +307,7 @@ public class ActivityService extends BaseJpaService<ActivityDO,ActivityDao> {
 | 
	
		
			
				|  |  |                 "wlyy_health_bank_task_patient_detail" +
 | 
	
		
			
				|  |  |                 " WHERE " +
 | 
	
		
			
				|  |  |                 " patient_idcard = '"+activityDO.getPatientIdcard()+"' "+ condition+")" +
 | 
	
		
			
				|  |  |                 " )" +
 | 
	
		
			
				|  |  |                 " ) AND del_flag =1 " +
 | 
	
		
			
				|  |  |                 " LIMIT "+(page-1)*size +","+size;
 | 
	
		
			
				|  |  |         List<ActivityDO> activityDOS = jdbcTemplate.query(sql,new BeanPropertyRowMapper(ActivityDO.class));
 | 
	
		
			
				|  |  |         for (ActivityDO activityDO1:activityDOS){
 | 
	
	
		
			
				|  | @ -432,8 +471,12 @@ public class ActivityService extends BaseJpaService<ActivityDO,ActivityDao> {
 | 
	
		
			
				|  |  |         ActivityRuleDO activityRuleDO= activityRuleDao.selectByActivityId(id);
 | 
	
		
			
				|  |  |         if("3".equals(type)){
 | 
	
		
			
				|  |  |             //推荐
 | 
	
		
			
				|  |  |             activityDO.setRecommended(1);
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |             List<ActivityDO> activityDOS = activityDao.findByIdAndRecommended(1);
 | 
	
		
			
				|  |  |             if (activityDOS!=null&& activityDOS.size()>=3){
 | 
	
		
			
				|  |  |                 throw new Exception("只允许推荐三个!");
 | 
	
		
			
				|  |  |             }else {
 | 
	
		
			
				|  |  |                 activityDO.setRecommended(1);
 | 
	
		
			
				|  |  |             }
 | 
	
		
			
				|  |  |         }else if("4".equals(type)){
 | 
	
		
			
				|  |  |             //取消推荐
 | 
	
		
			
				|  |  |             activityDO.setRecommended(0);
 | 
	
	
		
			
				|  | @ -443,12 +486,12 @@ public class ActivityService extends BaseJpaService<ActivityDO,ActivityDao> {
 | 
	
		
			
				|  |  |             activityDO.setStatus(2);
 | 
	
		
			
				|  |  |         }else if("0".equals(type)){
 | 
	
		
			
				|  |  |             //判断该活动是不是竞走,只能存在一条有效竞走
 | 
	
		
			
				|  |  |             if("竞走".equals(activityDO.getType())){
 | 
	
		
			
				|  |  |             /*if("竞走".equals(activityDO.getType())){
 | 
	
		
			
				|  |  |                 List<ActivityDO>  lst=   activityDao.findByIdAndType(activityDO.getType());
 | 
	
		
			
				|  |  |                 if(null!=lst&&lst.size()>0){
 | 
	
		
			
				|  |  |                     throw new Exception("已存在一条上线的竞走活动!");
 | 
	
		
			
				|  |  |                 }
 | 
	
		
			
				|  |  |             }
 | 
	
		
			
				|  |  |             }*/
 | 
	
		
			
				|  |  |             //上线
 | 
	
		
			
				|  |  |             if(null!=activityRuleDO){
 | 
	
		
			
				|  |  |                 String ruleJson=activityRuleDO.getValue2();
 | 
	
	
		
			
				|  | @ -456,11 +499,35 @@ public class ActivityService extends BaseJpaService<ActivityDO,ActivityDao> {
 | 
	
		
			
				|  |  | //                SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS'Z'");
 | 
	
		
			
				|  |  |                 SimpleDateFormat sdf2 = new SimpleDateFormat("yyyy-MM-dd HH:mm");
 | 
	
		
			
				|  |  |                 //报名截止时间
 | 
	
		
			
				|  |  |                 Date registrationTime=(null!=obj.get("registrationTime")? sdf2.parse(obj.get("registrationTime").toString()):null);
 | 
	
		
			
				|  |  |                 String registrationTime1 = obj.getString("registrationTime");
 | 
	
		
			
				|  |  |                 String[] str1 = registrationTime1.split(",");
 | 
	
		
			
				|  |  |                 String s = null;
 | 
	
		
			
				|  |  |                 if (str1.length==2) {
 | 
	
		
			
				|  |  |                     s=str1[1];
 | 
	
		
			
				|  |  |                 }else {
 | 
	
		
			
				|  |  |                     s=str1[0];
 | 
	
		
			
				|  |  |                 }
 | 
	
		
			
				|  |  |                 Date registrationTime=(""!=s&&null!=s? sdf2.parse(s):null);
 | 
	
		
			
				|  |  |                 //参与截止时间
 | 
	
		
			
				|  |  |                 Date deadLine=(null!=obj.get("deadLine")? sdf2.parse(obj.get("deadLine").toString()):null);
 | 
	
		
			
				|  |  |                 String deadLine2 = obj.getString("deadLine");
 | 
	
		
			
				|  |  |                 String[] str2 = deadLine2.split(",");
 | 
	
		
			
				|  |  |                 String s1= null;
 | 
	
		
			
				|  |  |                 if (str2.length==2){
 | 
	
		
			
				|  |  |                     s1=str2[1];
 | 
	
		
			
				|  |  |                 }else {
 | 
	
		
			
				|  |  |                     s1=str2[0];
 | 
	
		
			
				|  |  |                 }
 | 
	
		
			
				|  |  |                 Date deadLine=(null!=s1&&""!=s1? sdf2.parse(s1):null);
 | 
	
		
			
				|  |  |                 //活动下线时间
 | 
	
		
			
				|  |  |                 Date activityOfflineTime=(null!=obj.get("activityOfflineTime")? sdf2.parse(obj.get("activityOfflineTime").toString()):null);
 | 
	
		
			
				|  |  |                 String activityOfflineTime1 = obj.getString("activityOfflineTime");
 | 
	
		
			
				|  |  |                 String[] str = activityOfflineTime1.split(",");
 | 
	
		
			
				|  |  |                 String s2= null;
 | 
	
		
			
				|  |  |                 if (str.length==2){
 | 
	
		
			
				|  |  |                     s2=str[1];
 | 
	
		
			
				|  |  |                 }else {
 | 
	
		
			
				|  |  |                     s2=str[0];
 | 
	
		
			
				|  |  |                 }
 | 
	
		
			
				|  |  |                 Date activityOfflineTime=(""!=s2&&null!=s2 ? sdf2.parse(s2):null);
 | 
	
		
			
				|  |  |                 //获取当前时间
 | 
	
		
			
				|  |  |                 Date now = DateUtil.strToDate(sdf2.format(new Date()),"yyyy-MM-dd HH:mm");
 | 
	
		
			
				|  |  |                 if(null!=activityOfflineTime&&activityOfflineTime.compareTo(now)<=0){
 | 
	
	
		
			
				|  | @ -1046,4 +1113,174 @@ public class ActivityService extends BaseJpaService<ActivityDO,ActivityDao> {
 | 
	
		
			
				|  |  |     }
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |     /**
 | 
	
		
			
				|  |  |      * 查询排序
 | 
	
		
			
				|  |  |      *
 | 
	
		
			
				|  |  |      * @return
 | 
	
		
			
				|  |  |      */
 | 
	
		
			
				|  |  |     public List<ActivityDO> select(){
 | 
	
		
			
				|  |  |         return activityDao.selectBySort();
 | 
	
		
			
				|  |  |     }
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |     /**
 | 
	
		
			
				|  |  |      * 调整活动的顺序
 | 
	
		
			
				|  |  |      *
 | 
	
		
			
				|  |  |      * @param array
 | 
	
		
			
				|  |  |      * @return
 | 
	
		
			
				|  |  |      */
 | 
	
		
			
				|  |  |     public MixEnvelop updateSort(JSONArray array){
 | 
	
		
			
				|  |  |         MixEnvelop envelop = new MixEnvelop();
 | 
	
		
			
				|  |  |         for (int i=0;i<array.size();i++){
 | 
	
		
			
				|  |  |             JSONObject jsonObject = array.getJSONObject(i);
 | 
	
		
			
				|  |  |             ActivityDO activityDO = activityDao.selectById(jsonObject.getString("id"));
 | 
	
		
			
				|  |  |             activityDO.setSort(jsonObject.getInteger("sort"));
 | 
	
		
			
				|  |  |             activityDao.save(activityDO);
 | 
	
		
			
				|  |  |         }
 | 
	
		
			
				|  |  |         envelop.setObj(true);
 | 
	
		
			
				|  |  |         return envelop;
 | 
	
		
			
				|  |  |     }
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |     /**
 | 
	
		
			
				|  |  |      *  查询参与的竟步走活动
 | 
	
		
			
				|  |  |      *
 | 
	
		
			
				|  |  |      * @param unionId
 | 
	
		
			
				|  |  |      * @param patient
 | 
	
		
			
				|  |  |      * @param page
 | 
	
		
			
				|  |  |      * @param size
 | 
	
		
			
				|  |  |      * @return
 | 
	
		
			
				|  |  |      */
 | 
	
		
			
				|  |  |     public MixEnvelop<ActivityDO,ActivityDO> selectByUnionId(String unionId,String patient,String idCard,Integer page,Integer size){
 | 
	
		
			
				|  |  |         String sql ="select hba.* from wlyy_health_bank_activity hba right join wlyy_health_bank_task_patient_detail htpd on htpd.activity_id=hba.id " +
 | 
	
		
			
				|  |  |                 "AND htpd.union_id='"+unionId+"' AND  htpd.patient_id ='"+patient+"' and htpd.patient_idcard ='"+idCard+"' " +
 | 
	
		
			
				|  |  |                 "where hba.del_flag=1 and hba.type='竞走' order by hba.create_time desc LIMIT " + (page-1)*size+","+size;
 | 
	
		
			
				|  |  |         List<ActivityDO> activityDOList = jdbcTemplate.query(sql,new BeanPropertyRowMapper(ActivityDO.class));
 | 
	
		
			
				|  |  |         for (ActivityDO activityDO:activityDOList){
 | 
	
		
			
				|  |  |             ActivityRuleDO activityRuleDO = activityRuleDao.selectByActivityId(activityDO.getId());
 | 
	
		
			
				|  |  |             JSONObject object = JSONObject.parseObject(activityRuleDO.getValue2());
 | 
	
		
			
				|  |  |             String activityOfflineTime = object.getString("activityOfflineTime");
 | 
	
		
			
				|  |  |             List<String> idList = Arrays.asList(activityOfflineTime.split(","));
 | 
	
		
			
				|  |  |             if (idList !=null && idList.size()!=0){
 | 
	
		
			
				|  |  |                 String startTime = idList.get(0);
 | 
	
		
			
				|  |  |                 String endTime = idList.get(1);
 | 
	
		
			
				|  |  |                 String nowTime =  DateUtil.dateToStrLong(DateUtil.getNowDate());
 | 
	
		
			
				|  |  |                 if((startTime.compareTo(nowTime)==-1&&endTime.compareTo(nowTime)==1)||startTime.compareTo(nowTime)==0||endTime.compareTo(nowTime)==0){
 | 
	
		
			
				|  |  |                     activityDO.setFlag(1);
 | 
	
		
			
				|  |  |                 }else {
 | 
	
		
			
				|  |  |                     activityDO.setFlag(0);
 | 
	
		
			
				|  |  |                 }
 | 
	
		
			
				|  |  |             }
 | 
	
		
			
				|  |  |             activityDO.setActivityRuleDO(activityRuleDO);
 | 
	
		
			
				|  |  |             List<TaskDO> taskDOS = taskDao.selectByActivityId(activityDO.getId());
 | 
	
		
			
				|  |  |             if (taskDOS!=null&&taskDOS.size()!=0){
 | 
	
		
			
				|  |  |                 activityDO.setTaskDOS(taskDOS);
 | 
	
		
			
				|  |  |                 String sqlCount1 = "select sum(integrate) as total  from wlyy_health_bank_credits_detail where transaction_id='"+taskDOS.get(0).getId()+"' and patient_id = '"+patient+"'" +
 | 
	
		
			
				|  |  |                         "and create_time >= '"+DateUtils.getDayBegin()+"' and create_time <='"+DateUtils.getDayEnd()+"'";
 | 
	
		
			
				|  |  |                 List<Map<String,Object>> rstotal1 = jdbcTemplate.queryForList(sqlCount1);
 | 
	
		
			
				|  |  |                 Long count1 = 0L;
 | 
	
		
			
				|  |  |                 if(rstotal1!=null&&rstotal1.size()>0){
 | 
	
		
			
				|  |  |                     Object count = rstotal1.get(0).get("total");
 | 
	
		
			
				|  |  |                     if (count!=null&&count!=""){
 | 
	
		
			
				|  |  |                         count1 =Long.parseLong(count.toString()) ;
 | 
	
		
			
				|  |  |                     }
 | 
	
		
			
				|  |  |                 }
 | 
	
		
			
				|  |  |                 activityDO.setNowTotal(count1);
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |             }
 | 
	
		
			
				|  |  |         }
 | 
	
		
			
				|  |  |         String sqlCount ="select count(1) AS total from wlyy_health_bank_activity hba right join wlyy_health_bank_task_patient_detail htpd on htpd.activity_id=hba.id " +
 | 
	
		
			
				|  |  |                 "where hba.del_flag=1 and hba.type='竞走' order by hba.create_time desc ";
 | 
	
		
			
				|  |  |         List<Map<String,Object>> rstotal = jdbcTemplate.queryForList(sqlCount);
 | 
	
		
			
				|  |  |         Long count = 0L;
 | 
	
		
			
				|  |  |         if(rstotal!=null&&rstotal.size()>0){
 | 
	
		
			
				|  |  |             count = (Long) rstotal.get(0).get("total");
 | 
	
		
			
				|  |  |         }
 | 
	
		
			
				|  |  |         return MixEnvelop.getSuccessListWithPage(HealthBankMapping.api_success,activityDOList,page,size,count);
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |     }
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |     /**
 | 
	
		
			
				|  |  |      *  获取当前居民参加的活动
 | 
	
		
			
				|  |  |      *
 | 
	
		
			
				|  |  |      * @param unionId
 | 
	
		
			
				|  |  |      * @param patient
 | 
	
		
			
				|  |  |      * @param idCard
 | 
	
		
			
				|  |  |      * @return
 | 
	
		
			
				|  |  |      */
 | 
	
		
			
				|  |  |     public List<ActivityDO> selectNowByUnionId(String unionId,String patient,String idCard){
 | 
	
		
			
				|  |  |         String sql ="select hba.* from wlyy_health_bank_activity hba right join wlyy_health_bank_task_patient_detail htpd on htpd.activity_id=hba.id " +
 | 
	
		
			
				|  |  |                 "AND htpd.union_id='"+unionId+"' AND  htpd.patient_id ='"+patient+"' and htpd.patient_idcard ='"+idCard+"' " +
 | 
	
		
			
				|  |  |                 "where hba.del_flag=1 and hba.type='竞走' order by hba.create_time desc " ;
 | 
	
		
			
				|  |  |         List<ActivityDO> activityDOList = jdbcTemplate.query(sql,new BeanPropertyRowMapper(ActivityDO.class));
 | 
	
		
			
				|  |  |         List<ActivityDO> activityDOS = new ArrayList<>();
 | 
	
		
			
				|  |  |         for (ActivityDO activityDO:activityDOList){
 | 
	
		
			
				|  |  |             ActivityRuleDO activityRuleDO = activityRuleDao.selectByActivityId(activityDO.getId());
 | 
	
		
			
				|  |  |             JSONObject object = JSONObject.parseObject(activityRuleDO.getValue2());
 | 
	
		
			
				|  |  |             String activityOfflineTime = object.getString("activityOfflineTime");
 | 
	
		
			
				|  |  |             List<String> idList = Arrays.asList(activityOfflineTime.split(","));
 | 
	
		
			
				|  |  |             activityDO.setActivityRuleDO(activityRuleDO);
 | 
	
		
			
				|  |  |             List<TaskDO> taskDOS = taskDao.selectByActivityId(activityDO.getId());
 | 
	
		
			
				|  |  |             if (taskDOS!=null&&taskDOS.size()!=0){
 | 
	
		
			
				|  |  |                 activityDO.setTaskDOS(taskDOS);
 | 
	
		
			
				|  |  |             }
 | 
	
		
			
				|  |  |             if (idList !=null && idList.size()!=0){
 | 
	
		
			
				|  |  |                 String startTime = idList.get(0);
 | 
	
		
			
				|  |  |                 String endTime = idList.get(1);
 | 
	
		
			
				|  |  |                 String nowTime =  DateUtil.dateToStrLong(DateUtil.getNowDate());
 | 
	
		
			
				|  |  |                 if((startTime.compareTo(nowTime)==-1&&endTime.compareTo(nowTime)==1)||startTime.compareTo(nowTime)==0||endTime.compareTo(nowTime)==0){
 | 
	
		
			
				|  |  |                     activityDO.setFlag(1);
 | 
	
		
			
				|  |  |                     activityDOS.add(activityDO);
 | 
	
		
			
				|  |  |                 }
 | 
	
		
			
				|  |  |             }
 | 
	
		
			
				|  |  |         }
 | 
	
		
			
				|  |  |         return activityDOS;
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |     }
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |     /**
 | 
	
		
			
				|  |  |      * 小程序活动排名
 | 
	
		
			
				|  |  |      *
 | 
	
		
			
				|  |  |      * @param patients
 | 
	
		
			
				|  |  |      * @param taskId
 | 
	
		
			
				|  |  |      * @param size
 | 
	
		
			
				|  |  |      * @return
 | 
	
		
			
				|  |  |      */
 | 
	
		
			
				|  |  |     public JSONObject selectAppletsRanking(JSONArray patients,String taskId,Integer size,String patient){
 | 
	
		
			
				|  |  |         StringBuffer buffer = new StringBuffer();
 | 
	
		
			
				|  |  |         if (patients!= null&&patients.size()!=0){
 | 
	
		
			
				|  |  |             buffer.append("and bcd.patient_id IN(");
 | 
	
		
			
				|  |  |             for (int i=0;i<patients.size();i++){
 | 
	
		
			
				|  |  |                 buffer.append("'"+patients.getString(i)+"',");
 | 
	
		
			
				|  |  |             }
 | 
	
		
			
				|  |  |             buffer.deleteCharAt(buffer.length()-1);
 | 
	
		
			
				|  |  |             buffer.append(") ");
 | 
	
		
			
				|  |  |         }
 | 
	
		
			
				|  |  |         String sql = "SELECT @rownum :=@rownum + 1 AS rank, r.sum, r.patient_id AS patient FROM " +
 | 
	
		
			
				|  |  |                 "(SELECT@rowNum := 0) b," +
 | 
	
		
			
				|  |  |                 " (SELECT count(bcd.integrate) AS sum, bcd.patient_id, bcd.create_time FROM wlyy_health_bank_credits_detail bcd " +
 | 
	
		
			
				|  |  |                 "WHERE bcd.transaction_id = '"+taskId+"' " +buffer+
 | 
	
		
			
				|  |  |                 "GROUP BY bcd.patient_id) r ORDER BY r.sum DESC,r.create_time DESC LIMIT 0,"+size;
 | 
	
		
			
				|  |  |         List<Map<String,Object>> list = jdbcTemplate.queryForList(sql);
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |         String sql1= "select s.rank,s.sum,s.patient_id from (SELECT @rownum :=@rownum + 1 AS rank, r.sum, r.patient_id FROM " +
 | 
	
		
			
				|  |  |                 "(SELECT@rowNum := 0) b," +
 | 
	
		
			
				|  |  |                 " (SELECT count(bcd.integrate) AS sum, bcd.patient_id, bcd.create_time FROM wlyy_health_bank_credits_detail bcd\n" +
 | 
	
		
			
				|  |  |                 "WHERE bcd.transaction_id = '"+taskId+"' " +buffer+
 | 
	
		
			
				|  |  |                 "GROUP BY bcd.patient_id) r ORDER BY r.sum DESC,r.create_time DESC)s where s.patient_id ='"+patient+"'";
 | 
	
		
			
				|  |  |         List<Map<String,Object>> list1 = jdbcTemplate.queryForList(sql1);
 | 
	
		
			
				|  |  |         JSONObject object = new JSONObject();
 | 
	
		
			
				|  |  |         object.put("list",list);
 | 
	
		
			
				|  |  |         if (list1!=null&&list1.size()!=0){
 | 
	
		
			
				|  |  |             object.put("patient",list1.get(0));
 | 
	
		
			
				|  |  |         }else {
 | 
	
		
			
				|  |  |             object.put("patient",null);
 | 
	
		
			
				|  |  |         }
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |         return object;
 | 
	
		
			
				|  |  |     }
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  | }
 |