|  | @ -1,170 +1,170 @@
 | 
												
													
														
															|  | package com.yihu.wlyy.web.third.gateway.controller.doctor;
 |  | 
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  | import com.yihu.es.entity.HealthEduArticlePatient;
 |  | 
 | 
												
													
														
															|  | import com.yihu.wlyy.entity.patient.Patient;
 |  | 
 | 
												
													
														
															|  | import com.yihu.wlyy.service.app.consult.ConsultService;
 |  | 
 | 
												
													
														
															|  | import com.yihu.wlyy.service.common.account.PatientService;
 |  | 
 | 
												
													
														
															|  | import com.yihu.wlyy.task.PushMsgTask;
 |  | 
 | 
												
													
														
															|  | import com.yihu.wlyy.web.WeixinBaseController;
 |  | 
 | 
												
													
														
															|  | import com.yihu.wlyy.web.third.gateway.service.GcEduArticleService;
 |  | 
 | 
												
													
														
															|  | import com.yihu.wlyy.web.third.gateway.vo.HealthEduArticlePatientModel;
 |  | 
 | 
												
													
														
															|  | import com.yihu.wlyy.web.third.gateway.vo.base.BaseResultModel;
 |  | 
 | 
												
													
														
															|  | import com.yihu.wlyy.web.third.gateway.vo.base.ResultPageListModel;
 |  | 
 | 
												
													
														
															|  | import com.yihu.wlyy.wechat.util.WeiXinOpenIdUtils;
 |  | 
 | 
												
													
														
															|  | import io.swagger.annotations.Api;
 |  | 
 | 
												
													
														
															|  | import io.swagger.annotations.ApiOperation;
 |  | 
 | 
												
													
														
															|  | import io.swagger.annotations.ApiParam;
 |  | 
 | 
												
													
														
															|  | import org.slf4j.Logger;
 |  | 
 | 
												
													
														
															|  | import org.slf4j.LoggerFactory;
 |  | 
 | 
												
													
														
															|  | import org.springframework.beans.factory.annotation.Autowired;
 |  | 
 | 
												
													
														
															|  | import org.springframework.beans.factory.annotation.Value;
 |  | 
 | 
												
													
														
															|  | import org.springframework.data.redis.core.StringRedisTemplate;
 |  | 
 | 
												
													
														
															|  | import org.springframework.http.MediaType;
 |  | 
 | 
												
													
														
															|  | import org.springframework.jms.core.JmsTemplate;
 |  | 
 | 
												
													
														
															|  | import org.springframework.jms.core.MessageCreator;
 |  | 
 | 
												
													
														
															|  | import org.springframework.stereotype.Controller;
 |  | 
 | 
												
													
														
															|  | import org.springframework.web.bind.annotation.RequestMapping;
 |  | 
 | 
												
													
														
															|  | import org.springframework.web.bind.annotation.RequestMethod;
 |  | 
 | 
												
													
														
															|  | import org.springframework.web.bind.annotation.RequestParam;
 |  | 
 | 
												
													
														
															|  | import org.springframework.web.bind.annotation.ResponseBody;
 |  | 
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  | import javax.jms.JMSException;
 |  | 
 | 
												
													
														
															|  | import javax.jms.Message;
 |  | 
 | 
												
													
														
															|  | import javax.jms.Session;
 |  | 
 | 
												
													
														
															|  | import javax.jms.TextMessage;
 |  | 
 | 
												
													
														
															|  | import java.util.HashSet;
 |  | 
 | 
												
													
														
															|  | import java.util.List;
 |  | 
 | 
												
													
														
															|  | import java.util.Set;
 |  | 
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  | /**
 |  | 
 | 
												
													
														
															|  |  * Created by chenweida on 2017/8/30...
 |  | 
 | 
												
													
														
															|  |  */
 |  | 
 | 
												
													
														
															|  | @Controller
 |  | 
 | 
												
													
														
															|  | @RequestMapping(value = "/wlyygc/doctor/edu/article", produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
 |  | 
 | 
												
													
														
															|  | @ResponseBody
 |  | 
 | 
												
													
														
															|  | @Api(description = "医生文章相关服务")
 |  | 
 | 
												
													
														
															|  | public class GcEduArticleController extends WeixinBaseController {
 |  | 
 | 
												
													
														
															|  |     private Logger logger = LoggerFactory.getLogger(GcEduArticleController.class);
 |  | 
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  |     @Autowired
 |  | 
 | 
												
													
														
															|  |     private WeiXinOpenIdUtils weiXinOpenIdUtils;
 |  | 
 | 
												
													
														
															|  |     @Autowired
 |  | 
 | 
												
													
														
															|  |     private PushMsgTask pushMsgTask;
 |  | 
 | 
												
													
														
															|  |     @Autowired
 |  | 
 | 
												
													
														
															|  |     private PatientService patientService;
 |  | 
 | 
												
													
														
															|  |     @Autowired
 |  | 
 | 
												
													
														
															|  |     private ConsultService consultService;
 |  | 
 | 
												
													
														
															|  |     @Autowired
 |  | 
 | 
												
													
														
															|  |     private GcEduArticleService gcEduArticleService;
 |  | 
 | 
												
													
														
															|  |     @Autowired
 |  | 
 | 
												
													
														
															|  |     private StringRedisTemplate redisTemplate;
 |  | 
 | 
												
													
														
															|  |     @Autowired
 |  | 
 | 
												
													
														
															|  |     private JmsTemplate jmsTemplate;
 |  | 
 | 
												
													
														
															|  |     @Value("${activemq.queue.healtHarticleQueue}")
 |  | 
 | 
												
													
														
															|  |     private String channelName;
 |  | 
 | 
												
													
														
															|  |     @Value("${jkEdu.web.articleBaseUrl}")
 |  | 
 | 
												
													
														
															|  |     private String articleBaseUrl;
 |  | 
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  |     /**
 |  | 
 | 
												
													
														
															|  |      * 发送到redis
 |  | 
 | 
												
													
														
															|  |      *
 |  | 
 | 
												
													
														
															|  |      */
 |  | 
 | 
												
													
														
															|  |     public void sender(HealthEduArticlePatient healthEduArticlePatient) {
 |  | 
 | 
												
													
														
															|  |         //送到到队列
 |  | 
 | 
												
													
														
															|  |         List<Patient> patients = healthEduArticlePatient.getPatients();
 |  | 
 | 
												
													
														
															|  |         patients.stream().forEach(one -> {
 |  | 
 | 
												
													
														
															|  |             healthEduArticlePatient.setPatient(one.getCode());
 |  | 
 | 
												
													
														
															|  |             healthEduArticlePatient.setPatients(null);
 |  | 
 | 
												
													
														
															|  |             healthEduArticlePatient.setArticleUrl(articleBaseUrl+"JkEduWeb/web/jkEdu/articleDetail.html?behavior=4&articleId="+healthEduArticlePatient.getArticleId()+"&userId="+one);
 |  | 
 | 
												
													
														
															|  |             jmsTemplate.send(channelName, new MessageCreator() {
 |  | 
 | 
												
													
														
															|  |                 @Override
 |  | 
 | 
												
													
														
															|  |                 public Message createMessage(Session session) throws JMSException {
 |  | 
 | 
												
													
														
															|  |                     TextMessage textMessage = session.createTextMessage();
 |  | 
 | 
												
													
														
															|  |                     textMessage.setText(net.sf.json.JSONObject.fromObject(healthEduArticlePatient).toString());
 |  | 
 | 
												
													
														
															|  |                     return textMessage;
 |  | 
 | 
												
													
														
															|  |                 }
 |  | 
 | 
												
													
														
															|  |             });
 |  | 
 | 
												
													
														
															|  |         });
 |  | 
 | 
												
													
														
															|  |     }
 |  | 
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  |     /**PC端
 |  | 
 | 
												
													
														
															|  |      * @param doctorCode
 |  | 
 | 
												
													
														
															|  |      * @param page
 |  | 
 | 
												
													
														
															|  |      * @param pagesize
 |  | 
 | 
												
													
														
															|  |      * @return
 |  | 
 | 
												
													
														
															|  |      */
 |  | 
 | 
												
													
														
															|  |     @RequestMapping(value = "logs", method = RequestMethod.GET)
 |  | 
 | 
												
													
														
															|  |     @ApiOperation("查询医生给患者推送记录 ")
 |  | 
 | 
												
													
														
															|  |     public ResultPageListModel<HealthEduArticlePatientModel> getPatientHealthLogs(
 |  | 
 | 
												
													
														
															|  |             @ApiParam(name = "articleType", value = "文章类别", required = false) @RequestParam(value = "articleType", required = false) String articleType,
 |  | 
 | 
												
													
														
															|  |             @ApiParam(name = "level1Type", value = "一级分类", required = false) @RequestParam(value = "level1Type", required = false) String level1Type,
 |  | 
 | 
												
													
														
															|  |             @ApiParam(name = "level2Type", value = "二级分类", required = false) @RequestParam(value = "level2Type", required = false) String level2Type,
 |  | 
 | 
												
													
														
															|  |             @ApiParam(name = "level", value = "等级", required = false) @RequestParam(value = "level", required = false) String level,
 |  | 
 | 
												
													
														
															|  |             @ApiParam(name = "doctorCode", value = "医生code,为空从useragent取", required = false) @RequestParam(value = "doctorCode", required = false) String doctorCode,
 |  | 
 | 
												
													
														
															|  |             @ApiParam(name = "patientCode", value = "接收人code", required = false) @RequestParam(value = "patientCode", required = false) String patientCode,
 |  | 
 | 
												
													
														
															|  |             @ApiParam(name = "articleTitle", value = "文章标题", required = false) @RequestParam(value = "articleTitle", required = false) String articleTitle,
 |  | 
 | 
												
													
														
															|  |             @ApiParam(name = "startTime", value = "开始时间yyyy-Mm-dd", required = false) @RequestParam(value = "startTime", required = false) String startTime,
 |  | 
 | 
												
													
														
															|  |             @ApiParam(name = "endTime", value = "结束时间yyyy-Mm-dd", required = false) @RequestParam(value = "endTime", required = false) String endTime,
 |  | 
 | 
												
													
														
															|  |             @ApiParam(name = "page", value = "当前页 起始1", required = true) @RequestParam(value = "page", required = true) Integer page,
 |  | 
 | 
												
													
														
															|  |             @ApiParam(name = "pagesize", value = "每页显示条数", required = true) @RequestParam(value = "pagesize", required = true) Integer pagesize) {
 |  | 
 | 
												
													
														
															|  |         try {
 |  | 
 | 
												
													
														
															|  |             if (org.springframework.util.StringUtils.isEmpty(doctorCode)) {
 |  | 
 | 
												
													
														
															|  |                 doctorCode = getUID();
 |  | 
 | 
												
													
														
															|  |             }
 |  | 
 | 
												
													
														
															|  |             //最大1000
 |  | 
 | 
												
													
														
															|  |             if (pagesize > 1000) {
 |  | 
 | 
												
													
														
															|  |                 pagesize = 1000;
 |  | 
 | 
												
													
														
															|  |             }
 |  | 
 | 
												
													
														
															|  |             List<HealthEduArticlePatientModel> eduArticlePatients = gcEduArticleService.getPatientHealthLogs(doctorCode, articleType, level1Type, level2Type, level, articleTitle, startTime, endTime, page, pagesize);
 |  | 
 | 
												
													
														
															|  |             Long count = gcEduArticleService.getPatientHealthLogsCount(getUID(), articleType, level1Type, level2Type, level, articleTitle, startTime, endTime);
 |  | 
 | 
												
													
														
															|  |             return new ResultPageListModel(
 |  | 
 | 
												
													
														
															|  |                     page,
 |  | 
 | 
												
													
														
															|  |                     pagesize,
 |  | 
 | 
												
													
														
															|  |                     count.intValue()
 |  | 
 | 
												
													
														
															|  |                     , eduArticlePatients);
 |  | 
 | 
												
													
														
															|  |         } catch (Exception e) {
 |  | 
 | 
												
													
														
															|  |             return new ResultPageListModel(BaseResultModel.statusEm.find_error.getCode(), BaseResultModel.statusEm.find_error.getMessage() + "," + e.getMessage());
 |  | 
 | 
												
													
														
															|  |         }
 |  | 
 | 
												
													
														
															|  |     }
 |  | 
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  |     /**
 |  | 
 | 
												
													
														
															|  |      * * 参考原来的教育文章推送
 |  | 
 | 
												
													
														
															|  |      * http://172.19.103.88:9092/wlyy//doctor/health/edu/send?code=2e6467b5bb2f4b81b598633624d7f98e&patient=e911d1b756cd4680ab241ab76a463282&teamCode=1&attachedContent=
 |  | 
 | 
												
													
														
															|  |      *
 |  | 
 | 
												
													
														
															|  |      * @return
 |  | 
 | 
												
													
														
															|  |      */
 |  | 
 | 
												
													
														
															|  |     @RequestMapping(value = "send", method = RequestMethod.POST)
 |  | 
 | 
												
													
														
															|  |     @ApiOperation("文章推送")
 |  | 
 | 
												
													
														
															|  |     public BaseResultModel send(
 |  | 
 | 
												
													
														
															|  |             @ApiParam(name = "sendType", value = "发送类型 1医生发送 2卫纪委发送", required = true) @RequestParam(value = "sendType", required = true) Integer sendType,
 |  | 
 | 
												
													
														
															|  |             @ApiParam(name = "sendCode", value = "发送人code", required = true) @RequestParam(value = "sendCode", required = true) String sendCode,
 |  | 
 | 
												
													
														
															|  |             @ApiParam(name = "sendName", value = "发送人名", required = true) @RequestParam(value = "sendName", required = true) String sendName,
 |  | 
 | 
												
													
														
															|  |             @ApiParam(name = "sendMessage", value = "发送人信息", required = false) @RequestParam(value = "sendMessage", required = false) String sendMessage,
 |  | 
 | 
												
													
														
															|  |             @ApiParam(name = "teamId", value = "发送人是医生的时候,医生所属的团队", required = false) @RequestParam(value = "teamId", required = false) Long teamId,
 |  | 
 | 
												
													
														
															|  |             @ApiParam(name = "labelCode", value = "所选群组,多个用逗号分隔", required = true) @RequestParam(value = "labelCode", required = false, defaultValue = "") String labelCode,
 |  | 
 | 
												
													
														
															|  |             @ApiParam(name = "labelType", value = "标签类型  1:服务类型(卫计委分组) 2:健康情况 3:疾病类型 4:团队标签(自定义标签)", required = false) @RequestParam(value = "labelType", required = false, defaultValue = "") String labelType,
 |  | 
 | 
												
													
														
															|  |             @ApiParam(name = "receiveCodes", value = "接收人code,多个逗号分割", required = false) @RequestParam(value = "receiveCodes", required = false, defaultValue = "") String receiveCodes,
 |  | 
 | 
												
													
														
															|  |             @ApiParam(name = "unReceiveCodes", value = "不接收人code,多个逗号分割(如果同时存在receiveCodes和unReceiveCodes,也不会发送)", required = false) @RequestParam(value = "unReceiveCodes", required = false, defaultValue = "") String unReceiveCodes,
 |  | 
 | 
												
													
														
															|  |             @ApiParam(name = "articleId", value = "文章ID", required = true) @RequestParam(value = "articleId", required = true) String articleId
 |  | 
 | 
												
													
														
															|  |     ) {
 |  | 
 | 
												
													
														
															|  |         try {
 |  | 
 | 
												
													
														
															|  |             String[] patients = receiveCodes.split(",");//接收人的code
 |  | 
 | 
												
													
														
															|  |             String[] unPatients = unReceiveCodes.split(",");//接收人的code
 |  | 
 | 
												
													
														
															|  |             Set<String> patientSet = new HashSet<>(); //放入set中可以去重复
 |  | 
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  |             //得到需要发送的患者
 |  | 
 | 
												
													
														
															|  |             gcEduArticleService.initPatient(patientSet, patients, unPatients, labelType, labelCode, teamId);
 |  | 
 | 
												
													
														
															|  |             //获取保存发送记录
 |  | 
 | 
												
													
														
															|  |             HealthEduArticlePatient healthEduArticlePatients = gcEduArticleService.getSaveArticle(patientSet, sendCode, sendName, sendType, sendMessage, teamId, articleId);
 |  | 
 | 
												
													
														
															|  |             //推送微信模板消息和发送im消息
 |  | 
 | 
												
													
														
															|  |             new Thread(() -> {
 |  | 
 | 
												
													
														
															|  |                 //发送任务到redis
 |  | 
 | 
												
													
														
															|  |                 sender(healthEduArticlePatients);
 |  | 
 | 
												
													
														
															|  |             }).start();
 |  | 
 | 
												
													
														
															|  |             return new BaseResultModel();
 |  | 
 | 
												
													
														
															|  |         } catch (Exception e) {
 |  | 
 | 
												
													
														
															|  |             return new BaseResultModel(BaseResultModel.statusEm.opera_error.getCode(), BaseResultModel.statusEm.opera_error.getMessage() + ":" + e.getMessage());
 |  | 
 | 
												
													
														
															|  |         }
 |  | 
 | 
												
													
														
															|  |     }
 |  | 
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  | }
 |  | 
 | 
												
													
														
															|  | 
 |  | //package com.yihu.wlyy.web.third.gateway.controller.doctor;
 | 
												
													
														
															|  | 
 |  | //
 | 
												
													
														
															|  | 
 |  | //import com.yihu.es.entity.HealthEduArticlePatient;
 | 
												
													
														
															|  | 
 |  | //import com.yihu.wlyy.entity.patient.Patient;
 | 
												
													
														
															|  | 
 |  | //import com.yihu.wlyy.service.app.consult.ConsultService;
 | 
												
													
														
															|  | 
 |  | //import com.yihu.wlyy.service.common.account.PatientService;
 | 
												
													
														
															|  | 
 |  | //import com.yihu.wlyy.task.PushMsgTask;
 | 
												
													
														
															|  | 
 |  | //import com.yihu.wlyy.web.WeixinBaseController;
 | 
												
													
														
															|  | 
 |  | //import com.yihu.wlyy.web.third.gateway.service.GcEduArticleService;
 | 
												
													
														
															|  | 
 |  | //import com.yihu.wlyy.web.third.gateway.vo.HealthEduArticlePatientModel;
 | 
												
													
														
															|  | 
 |  | //import com.yihu.wlyy.web.third.gateway.vo.base.BaseResultModel;
 | 
												
													
														
															|  | 
 |  | //import com.yihu.wlyy.web.third.gateway.vo.base.ResultPageListModel;
 | 
												
													
														
															|  | 
 |  | //import com.yihu.wlyy.wechat.util.WeiXinOpenIdUtils;
 | 
												
													
														
															|  | 
 |  | //import io.swagger.annotations.Api;
 | 
												
													
														
															|  | 
 |  | //import io.swagger.annotations.ApiOperation;
 | 
												
													
														
															|  | 
 |  | //import io.swagger.annotations.ApiParam;
 | 
												
													
														
															|  | 
 |  | //import org.slf4j.Logger;
 | 
												
													
														
															|  | 
 |  | //import org.slf4j.LoggerFactory;
 | 
												
													
														
															|  | 
 |  | //import org.springframework.beans.factory.annotation.Autowired;
 | 
												
													
														
															|  | 
 |  | //import org.springframework.beans.factory.annotation.Value;
 | 
												
													
														
															|  | 
 |  | //import org.springframework.data.redis.core.StringRedisTemplate;
 | 
												
													
														
															|  | 
 |  | //import org.springframework.http.MediaType;
 | 
												
													
														
															|  | 
 |  | //import org.springframework.jms.core.JmsTemplate;
 | 
												
													
														
															|  | 
 |  | //import org.springframework.jms.core.MessageCreator;
 | 
												
													
														
															|  | 
 |  | //import org.springframework.stereotype.Controller;
 | 
												
													
														
															|  | 
 |  | //import org.springframework.web.bind.annotation.RequestMapping;
 | 
												
													
														
															|  | 
 |  | //import org.springframework.web.bind.annotation.RequestMethod;
 | 
												
													
														
															|  | 
 |  | //import org.springframework.web.bind.annotation.RequestParam;
 | 
												
													
														
															|  | 
 |  | //import org.springframework.web.bind.annotation.ResponseBody;
 | 
												
													
														
															|  | 
 |  | //
 | 
												
													
														
															|  | 
 |  | //import javax.jms.JMSException;
 | 
												
													
														
															|  | 
 |  | //import javax.jms.Message;
 | 
												
													
														
															|  | 
 |  | //import javax.jms.Session;
 | 
												
													
														
															|  | 
 |  | //import javax.jms.TextMessage;
 | 
												
													
														
															|  | 
 |  | //import java.util.HashSet;
 | 
												
													
														
															|  | 
 |  | //import java.util.List;
 | 
												
													
														
															|  | 
 |  | //import java.util.Set;
 | 
												
													
														
															|  | 
 |  | //
 | 
												
													
														
															|  | 
 |  | ///**
 | 
												
													
														
															|  | 
 |  | // * Created by chenweida on 2017/8/30...
 | 
												
													
														
															|  | 
 |  | // */
 | 
												
													
														
															|  | 
 |  | //@Controller
 | 
												
													
														
															|  | 
 |  | //@RequestMapping(value = "/wlyygc/doctor/edu/article", produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
 | 
												
													
														
															|  | 
 |  | //@ResponseBody
 | 
												
													
														
															|  | 
 |  | //@Api(description = "医生文章相关服务")
 | 
												
													
														
															|  | 
 |  | //public class GcEduArticleController extends WeixinBaseController {
 | 
												
													
														
															|  | 
 |  | //    private Logger logger = LoggerFactory.getLogger(GcEduArticleController.class);
 | 
												
													
														
															|  | 
 |  | //
 | 
												
													
														
															|  | 
 |  | //    @Autowired
 | 
												
													
														
															|  | 
 |  | //    private WeiXinOpenIdUtils weiXinOpenIdUtils;
 | 
												
													
														
															|  | 
 |  | //    @Autowired
 | 
												
													
														
															|  | 
 |  | //    private PushMsgTask pushMsgTask;
 | 
												
													
														
															|  | 
 |  | //    @Autowired
 | 
												
													
														
															|  | 
 |  | //    private PatientService patientService;
 | 
												
													
														
															|  | 
 |  | //    @Autowired
 | 
												
													
														
															|  | 
 |  | //    private ConsultService consultService;
 | 
												
													
														
															|  | 
 |  | //    @Autowired
 | 
												
													
														
															|  | 
 |  | //    private GcEduArticleService gcEduArticleService;
 | 
												
													
														
															|  | 
 |  | //    @Autowired
 | 
												
													
														
															|  | 
 |  | //    private StringRedisTemplate redisTemplate;
 | 
												
													
														
															|  | 
 |  | //    @Autowired
 | 
												
													
														
															|  | 
 |  | //    private JmsTemplate jmsTemplate;
 | 
												
													
														
															|  | 
 |  | //    @Value("${activemq.queue.healtHarticleQueue}")
 | 
												
													
														
															|  | 
 |  | //    private String channelName;
 | 
												
													
														
															|  | 
 |  | //    @Value("${jkEdu.web.articleBaseUrl}")
 | 
												
													
														
															|  | 
 |  | //    private String articleBaseUrl;
 | 
												
													
														
															|  | 
 |  | //
 | 
												
													
														
															|  | 
 |  | //    /**
 | 
												
													
														
															|  | 
 |  | //     * 发送到redis
 | 
												
													
														
															|  | 
 |  | //     *
 | 
												
													
														
															|  | 
 |  | //     */
 | 
												
													
														
															|  | 
 |  | //    public void sender(HealthEduArticlePatient healthEduArticlePatient) {
 | 
												
													
														
															|  | 
 |  | //        //送到到队列
 | 
												
													
														
															|  | 
 |  | //        List<Patient> patients = healthEduArticlePatient.getPatients();
 | 
												
													
														
															|  | 
 |  | //        patients.stream().forEach(one -> {
 | 
												
													
														
															|  | 
 |  | //            healthEduArticlePatient.setPatient(one.getCode());
 | 
												
													
														
															|  | 
 |  | //            healthEduArticlePatient.setPatients(null);
 | 
												
													
														
															|  | 
 |  | //            healthEduArticlePatient.setArticleUrl(articleBaseUrl+"JkEduWeb/web/jkEdu/articleDetail.html?behavior=4&articleId="+healthEduArticlePatient.getArticleId()+"&userId="+one);
 | 
												
													
														
															|  | 
 |  | //            jmsTemplate.send(channelName, new MessageCreator() {
 | 
												
													
														
															|  | 
 |  | //                @Override
 | 
												
													
														
															|  | 
 |  | //                public Message createMessage(Session session) throws JMSException {
 | 
												
													
														
															|  | 
 |  | //                    TextMessage textMessage = session.createTextMessage();
 | 
												
													
														
															|  | 
 |  | //                    textMessage.setText(net.sf.json.JSONObject.fromObject(healthEduArticlePatient).toString());
 | 
												
													
														
															|  | 
 |  | //                    return textMessage;
 | 
												
													
														
															|  | 
 |  | //                }
 | 
												
													
														
															|  | 
 |  | //            });
 | 
												
													
														
															|  | 
 |  | //        });
 | 
												
													
														
															|  | 
 |  | //    }
 | 
												
													
														
															|  | 
 |  | //
 | 
												
													
														
															|  | 
 |  | //    /**PC端
 | 
												
													
														
															|  | 
 |  | //     * @param doctorCode
 | 
												
													
														
															|  | 
 |  | //     * @param page
 | 
												
													
														
															|  | 
 |  | //     * @param pagesize
 | 
												
													
														
															|  | 
 |  | //     * @return
 | 
												
													
														
															|  | 
 |  | //     */
 | 
												
													
														
															|  | 
 |  | //    @RequestMapping(value = "logs", method = RequestMethod.GET)
 | 
												
													
														
															|  | 
 |  | //    @ApiOperation("查询医生给患者推送记录 ")
 | 
												
													
														
															|  | 
 |  | //    public ResultPageListModel<HealthEduArticlePatientModel> getPatientHealthLogs(
 | 
												
													
														
															|  | 
 |  | //            @ApiParam(name = "articleType", value = "文章类别", required = false) @RequestParam(value = "articleType", required = false) String articleType,
 | 
												
													
														
															|  | 
 |  | //            @ApiParam(name = "level1Type", value = "一级分类", required = false) @RequestParam(value = "level1Type", required = false) String level1Type,
 | 
												
													
														
															|  | 
 |  | //            @ApiParam(name = "level2Type", value = "二级分类", required = false) @RequestParam(value = "level2Type", required = false) String level2Type,
 | 
												
													
														
															|  | 
 |  | //            @ApiParam(name = "level", value = "等级", required = false) @RequestParam(value = "level", required = false) String level,
 | 
												
													
														
															|  | 
 |  | //            @ApiParam(name = "doctorCode", value = "医生code,为空从useragent取", required = false) @RequestParam(value = "doctorCode", required = false) String doctorCode,
 | 
												
													
														
															|  | 
 |  | //            @ApiParam(name = "patientCode", value = "接收人code", required = false) @RequestParam(value = "patientCode", required = false) String patientCode,
 | 
												
													
														
															|  | 
 |  | //            @ApiParam(name = "articleTitle", value = "文章标题", required = false) @RequestParam(value = "articleTitle", required = false) String articleTitle,
 | 
												
													
														
															|  | 
 |  | //            @ApiParam(name = "startTime", value = "开始时间yyyy-Mm-dd", required = false) @RequestParam(value = "startTime", required = false) String startTime,
 | 
												
													
														
															|  | 
 |  | //            @ApiParam(name = "endTime", value = "结束时间yyyy-Mm-dd", required = false) @RequestParam(value = "endTime", required = false) String endTime,
 | 
												
													
														
															|  | 
 |  | //            @ApiParam(name = "page", value = "当前页 起始1", required = true) @RequestParam(value = "page", required = true) Integer page,
 | 
												
													
														
															|  | 
 |  | //            @ApiParam(name = "pagesize", value = "每页显示条数", required = true) @RequestParam(value = "pagesize", required = true) Integer pagesize) {
 | 
												
													
														
															|  | 
 |  | //        try {
 | 
												
													
														
															|  | 
 |  | //            if (org.springframework.util.StringUtils.isEmpty(doctorCode)) {
 | 
												
													
														
															|  | 
 |  | //                doctorCode = getUID();
 | 
												
													
														
															|  | 
 |  | //            }
 | 
												
													
														
															|  | 
 |  | //            //最大1000
 | 
												
													
														
															|  | 
 |  | //            if (pagesize > 1000) {
 | 
												
													
														
															|  | 
 |  | //                pagesize = 1000;
 | 
												
													
														
															|  | 
 |  | //            }
 | 
												
													
														
															|  | 
 |  | //            List<HealthEduArticlePatientModel> eduArticlePatients = gcEduArticleService.getPatientHealthLogs(doctorCode, articleType, level1Type, level2Type, level, articleTitle, startTime, endTime, page, pagesize);
 | 
												
													
														
															|  | 
 |  | //            Long count = gcEduArticleService.getPatientHealthLogsCount(getUID(), articleType, level1Type, level2Type, level, articleTitle, startTime, endTime);
 | 
												
													
														
															|  | 
 |  | //            return new ResultPageListModel(
 | 
												
													
														
															|  | 
 |  | //                    page,
 | 
												
													
														
															|  | 
 |  | //                    pagesize,
 | 
												
													
														
															|  | 
 |  | //                    count.intValue()
 | 
												
													
														
															|  | 
 |  | //                    , eduArticlePatients);
 | 
												
													
														
															|  | 
 |  | //        } catch (Exception e) {
 | 
												
													
														
															|  | 
 |  | //            return new ResultPageListModel(BaseResultModel.statusEm.find_error.getCode(), BaseResultModel.statusEm.find_error.getMessage() + "," + e.getMessage());
 | 
												
													
														
															|  | 
 |  | //        }
 | 
												
													
														
															|  | 
 |  | //    }
 | 
												
													
														
															|  | 
 |  | //
 | 
												
													
														
															|  | 
 |  | //    /**
 | 
												
													
														
															|  | 
 |  | //     * * 参考原来的教育文章推送
 | 
												
													
														
															|  | 
 |  | //     * http://172.19.103.88:9092/wlyy//doctor/health/edu/send?code=2e6467b5bb2f4b81b598633624d7f98e&patient=e911d1b756cd4680ab241ab76a463282&teamCode=1&attachedContent=
 | 
												
													
														
															|  | 
 |  | //     *
 | 
												
													
														
															|  | 
 |  | //     * @return
 | 
												
													
														
															|  | 
 |  | //     */
 | 
												
													
														
															|  | 
 |  | //    @RequestMapping(value = "send", method = RequestMethod.POST)
 | 
												
													
														
															|  | 
 |  | //    @ApiOperation("文章推送")
 | 
												
													
														
															|  | 
 |  | //    public BaseResultModel send(
 | 
												
													
														
															|  | 
 |  | //            @ApiParam(name = "sendType", value = "发送类型 1医生发送 2卫纪委发送", required = true) @RequestParam(value = "sendType", required = true) Integer sendType,
 | 
												
													
														
															|  | 
 |  | //            @ApiParam(name = "sendCode", value = "发送人code", required = true) @RequestParam(value = "sendCode", required = true) String sendCode,
 | 
												
													
														
															|  | 
 |  | //            @ApiParam(name = "sendName", value = "发送人名", required = true) @RequestParam(value = "sendName", required = true) String sendName,
 | 
												
													
														
															|  | 
 |  | //            @ApiParam(name = "sendMessage", value = "发送人信息", required = false) @RequestParam(value = "sendMessage", required = false) String sendMessage,
 | 
												
													
														
															|  | 
 |  | //            @ApiParam(name = "teamId", value = "发送人是医生的时候,医生所属的团队", required = false) @RequestParam(value = "teamId", required = false) Long teamId,
 | 
												
													
														
															|  | 
 |  | //            @ApiParam(name = "labelCode", value = "所选群组,多个用逗号分隔", required = true) @RequestParam(value = "labelCode", required = false, defaultValue = "") String labelCode,
 | 
												
													
														
															|  | 
 |  | //            @ApiParam(name = "labelType", value = "标签类型  1:服务类型(卫计委分组) 2:健康情况 3:疾病类型 4:团队标签(自定义标签)", required = false) @RequestParam(value = "labelType", required = false, defaultValue = "") String labelType,
 | 
												
													
														
															|  | 
 |  | //            @ApiParam(name = "receiveCodes", value = "接收人code,多个逗号分割", required = false) @RequestParam(value = "receiveCodes", required = false, defaultValue = "") String receiveCodes,
 | 
												
													
														
															|  | 
 |  | //            @ApiParam(name = "unReceiveCodes", value = "不接收人code,多个逗号分割(如果同时存在receiveCodes和unReceiveCodes,也不会发送)", required = false) @RequestParam(value = "unReceiveCodes", required = false, defaultValue = "") String unReceiveCodes,
 | 
												
													
														
															|  | 
 |  | //            @ApiParam(name = "articleId", value = "文章ID", required = true) @RequestParam(value = "articleId", required = true) String articleId
 | 
												
													
														
															|  | 
 |  | //    ) {
 | 
												
													
														
															|  | 
 |  | //        try {
 | 
												
													
														
															|  | 
 |  | //            String[] patients = receiveCodes.split(",");//接收人的code
 | 
												
													
														
															|  | 
 |  | //            String[] unPatients = unReceiveCodes.split(",");//接收人的code
 | 
												
													
														
															|  | 
 |  | //            Set<String> patientSet = new HashSet<>(); //放入set中可以去重复
 | 
												
													
														
															|  | 
 |  | //
 | 
												
													
														
															|  | 
 |  | //            //得到需要发送的患者
 | 
												
													
														
															|  | 
 |  | //            gcEduArticleService.initPatient(patientSet, patients, unPatients, labelType, labelCode, teamId);
 | 
												
													
														
															|  | 
 |  | //            //获取保存发送记录
 | 
												
													
														
															|  | 
 |  | //            HealthEduArticlePatient healthEduArticlePatients = gcEduArticleService.getSaveArticle(patientSet, sendCode, sendName, sendType, sendMessage, teamId, articleId);
 | 
												
													
														
															|  | 
 |  | //            //推送微信模板消息和发送im消息
 | 
												
													
														
															|  | 
 |  | //            new Thread(() -> {
 | 
												
													
														
															|  | 
 |  | //                //发送任务到redis
 | 
												
													
														
															|  | 
 |  | //                sender(healthEduArticlePatients);
 | 
												
													
														
															|  | 
 |  | //            }).start();
 | 
												
													
														
															|  | 
 |  | //            return new BaseResultModel();
 | 
												
													
														
															|  | 
 |  | //        } catch (Exception e) {
 | 
												
													
														
															|  | 
 |  | //            return new BaseResultModel(BaseResultModel.statusEm.opera_error.getCode(), BaseResultModel.statusEm.opera_error.getMessage() + ":" + e.getMessage());
 | 
												
													
														
															|  | 
 |  | //        }
 | 
												
													
														
															|  | 
 |  | //    }
 | 
												
													
														
															|  | 
 |  | //
 | 
												
													
														
															|  | 
 |  | //}
 |