TSetlDeptConfService.java 2.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. package thyyxxk.webserver.service.medicalinsurance;
  2. import cn.hutool.core.collection.CollUtil;
  3. import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
  4. import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
  5. import org.springframework.beans.factory.annotation.Autowired;
  6. import org.springframework.scheduling.annotation.Async;
  7. import org.springframework.stereotype.Service;
  8. import thyyxxk.webserver.dao.his.medicalinsurance.TSetlDeptConfDao;
  9. import thyyxxk.webserver.entity.querydata.TSetlDeptConf;
  10. import thyyxxk.webserver.service.wxapi.SendWxInfoService;
  11. import thyyxxk.webserver.utils.ListUtil;
  12. import thyyxxk.webserver.utils.StringUtil;
  13. import java.util.List;
  14. import java.util.stream.Collectors;
  15. /**
  16. * <p>
  17. * 结算单上传科室配置表 服务实现类
  18. * </p>
  19. *
  20. * @author lihong
  21. * @since 2023-01-09
  22. */
  23. @Service
  24. public class TSetlDeptConfService extends ServiceImpl<TSetlDeptConfDao, TSetlDeptConf> {
  25. @Autowired
  26. private SendWxInfoService sendWxInfoService;
  27. public List<TSetlDeptConf> querySetlDeptConfInfo(TSetlDeptConf query) {
  28. QueryWrapper queryWrapper = new QueryWrapper();
  29. queryWrapper.eq(StringUtil.notBlank(query.getCode()), "code", query.getCode());
  30. queryWrapper.eq(query.getTypeFlag() != null,"type_flag" ,query.getTypeFlag());
  31. return baseMapper.selectList(queryWrapper);
  32. }
  33. public void batchSaveData(List<TSetlDeptConf> list) {
  34. baseMapper.batchSaveData(list);
  35. }
  36. /**
  37. * @description:给编码员发送消息
  38. * @author: lihong
  39. * @date: 2023/1/10 9:33
  40. * @param: deptCode
  41. * @param: name
  42. * @param: patNo
  43. **/
  44. @Async
  45. public void asynSendAuditMessge(String deptCode,String deptName,String name,String patNo){
  46. QueryWrapper<TSetlDeptConf> queryWrapper = new QueryWrapper<>();
  47. queryWrapper.eq("dept_code",deptCode);
  48. queryWrapper.eq("type_flag",1);
  49. List<TSetlDeptConf> list = baseMapper.selectList(queryWrapper);
  50. List<String> codeRs ;
  51. if(ListUtil.notBlank(list)){
  52. List<String> codes = list.stream().map(TSetlDeptConf::getCode).distinct().collect(Collectors.toList());
  53. if(CollUtil.isEmpty(codes)) return;
  54. codeRs = baseMapper.getCodeRs(codes);
  55. }else {
  56. // 给所有的编码员发送消息
  57. codeRs = baseMapper.getBmyCodeRs();
  58. }
  59. if(CollUtil.isNotEmpty(codeRs)){
  60. codeRs.forEach(code->{
  61. sendWxInfoService.sendCorpWxMsg(code, String.format("医保结算单上传\n发起申请审核\n患者姓名:【%s】\n住院号:【%s】\n出院科室:【%s】", name,patNo,deptName));
  62. });
  63. }
  64. }
  65. }