|
|
|
@ -2,6 +2,7 @@ package com.hxhq.business.service.impl; |
|
|
|
|
|
|
|
import java.util.*; |
|
|
|
|
|
|
|
import com.alibaba.fastjson2.JSONArray; |
|
|
|
import com.alibaba.fastjson2.JSONObject; |
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
|
|
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers; |
|
|
|
@ -213,9 +214,9 @@ public class StudyFormFillServiceImpl extends ServiceImpl |
|
|
|
studyFormFillQmxxService.saveQmxx(studyFormFillOld.getId(), "废止通过", qmr, form.getRemark()); |
|
|
|
//发送通知 |
|
|
|
Study study = studyService.getById(studyFormFillOld.getStudyId()); |
|
|
|
String url = getUrlQz(study,"tbbd"); |
|
|
|
String title = StudyTypeEnum.getEnumByValue(study.getType()).getText()+"【"+study.getName()+"】下填报表单【"+studyFormFillOld.getBdmc()+"】废止通过"; |
|
|
|
noticeService.save(title,studyFormFillOld.getUserId(),url); |
|
|
|
String url = getUrlQz(study, "tbbd"); |
|
|
|
String title = StudyTypeEnum.getEnumByValue(study.getType()).getText() + "【" + study.getName() + "】下填报表单【" + studyFormFillOld.getBdmc() + "】废止通过"; |
|
|
|
noticeService.save(title, studyFormFillOld.getUserId(), url); |
|
|
|
} else { |
|
|
|
studyFormFillOld.setBdzt(StudyFormFillBdztEnum.tbz.getValue()); |
|
|
|
this.updateById(studyFormFillOld); |
|
|
|
@ -227,9 +228,9 @@ public class StudyFormFillServiceImpl extends ServiceImpl |
|
|
|
studyFormFillQmxxService.saveQmxx(studyFormFillOld.getId(), "废止拒绝", qmr, form.getRemark()); |
|
|
|
//发送通知 |
|
|
|
Study study = studyService.getById(studyFormFillOld.getStudyId()); |
|
|
|
String url = getUrlQz(study,"tbbd"); |
|
|
|
String title = StudyTypeEnum.getEnumByValue(study.getType()).getText()+"【"+study.getName()+"】下填报表单【"+studyFormFillOld.getBdmc()+"】废止拒绝"; |
|
|
|
noticeService.save(title,studyFormFillOld.getUserId(),url); |
|
|
|
String url = getUrlQz(study, "tbbd"); |
|
|
|
String title = StudyTypeEnum.getEnumByValue(study.getType()).getText() + "【" + study.getName() + "】下填报表单【" + studyFormFillOld.getBdmc() + "】废止拒绝"; |
|
|
|
noticeService.save(title, studyFormFillOld.getUserId(), url); |
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
@ -270,9 +271,9 @@ public class StudyFormFillServiceImpl extends ServiceImpl |
|
|
|
studyFormFillQmxxService.saveQmxx(studyFormFillOld.getId(), "更换归属人", qmr, studyFormFill.getRemark()); |
|
|
|
//发送通知 |
|
|
|
Study study = studyService.getById(studyFormFillOld.getStudyId()); |
|
|
|
String url = getUrlQz(study,"tbbd"); |
|
|
|
String title = StudyTypeEnum.getEnumByValue(study.getType()).getText()+"【"+study.getName()+"】下填报表单【"+studyFormFillOld.getBdmc()+"】已更换您为归属人"; |
|
|
|
noticeService.save(title,studyFormFillOld.getUserId(),url); |
|
|
|
String url = getUrlQz(study, "tbbd"); |
|
|
|
String title = StudyTypeEnum.getEnumByValue(study.getType()).getText() + "【" + study.getName() + "】下填报表单【" + studyFormFillOld.getBdmc() + "】已更换您为归属人"; |
|
|
|
noticeService.save(title, studyFormFillOld.getUserId(), url); |
|
|
|
} |
|
|
|
|
|
|
|
/** |
|
|
|
@ -326,7 +327,7 @@ public class StudyFormFillServiceImpl extends ServiceImpl |
|
|
|
*/ |
|
|
|
@Override |
|
|
|
public void bcAuto(StudyFormFill studyFormFill) { |
|
|
|
SysUser qmr=SecurityUtils.getLoginUser().getSysUser(); |
|
|
|
SysUser qmr = SecurityUtils.getLoginUser().getSysUser(); |
|
|
|
studyFormFill.setBdzt(StudyFormFillBdztEnum.tbz.getValue()); |
|
|
|
studyFormFill.setUserId(SecurityUtils.getUserId()); |
|
|
|
studyFormFill.setBdbh(getSn(studyFormFill)); |
|
|
|
@ -334,7 +335,7 @@ public class StudyFormFillServiceImpl extends ServiceImpl |
|
|
|
studyFormFill.setUserMc(SecurityUtils.getNickName()); |
|
|
|
this.save(studyFormFill); |
|
|
|
//稽查轨迹 |
|
|
|
studyFormFillJcgjService.saveJcgj(studyFormFill.getId(), JcgjlxEnum.lc.getValue(), "创建记录", JcmcysEnum.green.getValue(), null,qmr , studyFormFill.getRemark(), null); |
|
|
|
studyFormFillJcgjService.saveJcgj(studyFormFill.getId(), JcgjlxEnum.lc.getValue(), "创建记录", JcmcysEnum.green.getValue(), null, qmr, studyFormFill.getRemark(), null); |
|
|
|
//签名信息 |
|
|
|
studyFormFillQmxxService.saveQmxx(studyFormFill.getId(), "创建记录", qmr, studyFormFill.getRemark()); |
|
|
|
} |
|
|
|
@ -395,7 +396,7 @@ public class StudyFormFillServiceImpl extends ServiceImpl |
|
|
|
studyFormFillOld.setCclist(studyFormFill.getCclist()); |
|
|
|
studyFormFillOld.setCzlist(studyFormFill.getCzlist()); |
|
|
|
//生成物资 |
|
|
|
genResource(studyFormFillOld,studyFormFill.getRemark()); |
|
|
|
genResource(studyFormFillOld, studyFormFill.getRemark()); |
|
|
|
} |
|
|
|
studyFormFillOld.setSftb(NormalEnum.yes.getValue()); |
|
|
|
this.updateById(studyFormFillOld); |
|
|
|
@ -419,7 +420,7 @@ public class StudyFormFillServiceImpl extends ServiceImpl |
|
|
|
studyFormFill.setTjsj(new Date()); |
|
|
|
this.save(studyFormFill); |
|
|
|
//生成物资 |
|
|
|
genResource(studyFormFill,studyFormFill.getRemark()); |
|
|
|
genResource(studyFormFill, studyFormFill.getRemark()); |
|
|
|
//稽查轨迹 |
|
|
|
studyFormFillJcgjService.saveJcgj(studyFormFill.getId(), JcgjlxEnum.lc.getValue(), "填写并提交记录", JcmcysEnum.green.getValue(), null, SecurityUtils.getLoginUser().getSysUser(), studyFormFill.getRemark(), null); |
|
|
|
} |
|
|
|
@ -434,17 +435,17 @@ public class StudyFormFillServiceImpl extends ServiceImpl |
|
|
|
* @param studyFormFill |
|
|
|
* @param remark |
|
|
|
*/ |
|
|
|
public void genResource(StudyFormFill studyFormFill,String remark) { |
|
|
|
public void genResource(StudyFormFill studyFormFill, String remark) { |
|
|
|
Template template = templateService.getById(studyFormFill.getTemplateId()); |
|
|
|
// 处置,存放,用量 |
|
|
|
if (template.getProduct().equals(ProductEnum.Sj.getValue())) { |
|
|
|
sjService.genResource(studyFormFill, template); |
|
|
|
} |
|
|
|
if (template.getProduct().equals(ProductEnum.Gyzj.getValue())) { |
|
|
|
gyzjService.genResource(studyFormFill, template,remark); |
|
|
|
gyzjService.genResource(studyFormFill, template, remark); |
|
|
|
} |
|
|
|
if (template.getProduct().equals(ProductEnum.Mjy.getValue())) { |
|
|
|
mjyService.genResource(studyFormFill, template,remark); |
|
|
|
mjyService.genResource(studyFormFill, template, remark); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
@ -507,9 +508,9 @@ public class StudyFormFillServiceImpl extends ServiceImpl |
|
|
|
studyFormFillQmxxService.saveQmxx(studyFormFillOld.getId(), "复核通过", qmr, studyFormFill.getRemark()); |
|
|
|
//发送通知 |
|
|
|
Study study = studyService.getById(studyFormFillOld.getStudyId()); |
|
|
|
String url = getUrlQz(study,"tbbd"); |
|
|
|
String title = StudyTypeEnum.getEnumByValue(study.getType()).getText()+"【"+study.getName()+"】下填报表单【"+studyFormFillOld.getBdmc()+"】复核通过"; |
|
|
|
noticeService.save(title,studyFormFillOld.getUserId(),url); |
|
|
|
String url = getUrlQz(study, "tbbd"); |
|
|
|
String title = StudyTypeEnum.getEnumByValue(study.getType()).getText() + "【" + study.getName() + "】下填报表单【" + studyFormFillOld.getBdmc() + "】复核通过"; |
|
|
|
noticeService.save(title, studyFormFillOld.getUserId(), url); |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
@ -545,9 +546,9 @@ public class StudyFormFillServiceImpl extends ServiceImpl |
|
|
|
studyFormFillQmxxService.saveQmxx(studyFormFillOld.getId(), "复核拒绝", qmr, studyFormFill.getRemark()); |
|
|
|
//发送通知 |
|
|
|
Study study = studyService.getById(studyFormFillOld.getStudyId()); |
|
|
|
String url = getUrlQz(study,"tbbd"); |
|
|
|
String title = StudyTypeEnum.getEnumByValue(study.getType()).getText()+"【"+study.getName()+"】下填报表单【"+studyFormFillOld.getBdmc()+"】复核拒绝"; |
|
|
|
noticeService.save(title,studyFormFillOld.getUserId(),url); |
|
|
|
String url = getUrlQz(study, "tbbd"); |
|
|
|
String title = StudyTypeEnum.getEnumByValue(study.getType()).getText() + "【" + study.getName() + "】下填报表单【" + studyFormFillOld.getBdmc() + "】复核拒绝"; |
|
|
|
noticeService.save(title, studyFormFillOld.getUserId(), url); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
@ -583,9 +584,9 @@ public class StudyFormFillServiceImpl extends ServiceImpl |
|
|
|
studyFormFillQmxxService.saveQmxx(studyFormFillOld.getId(), "免复核通过", qmr, studyFormFill.getRemark()); |
|
|
|
//发送通知 |
|
|
|
Study study = studyService.getById(studyFormFillOld.getStudyId()); |
|
|
|
String url = getUrlQz(study,"tbbd"); |
|
|
|
String title = StudyTypeEnum.getEnumByValue(study.getType()).getText()+"【"+study.getName()+"】下填报表单【"+studyFormFillOld.getBdmc()+"】免复核通过"; |
|
|
|
noticeService.save(title,studyFormFillOld.getUserId(),url); |
|
|
|
String url = getUrlQz(study, "tbbd"); |
|
|
|
String title = StudyTypeEnum.getEnumByValue(study.getType()).getText() + "【" + study.getName() + "】下填报表单【" + studyFormFillOld.getBdmc() + "】免复核通过"; |
|
|
|
noticeService.save(title, studyFormFillOld.getUserId(), url); |
|
|
|
} |
|
|
|
|
|
|
|
/** |
|
|
|
@ -616,9 +617,9 @@ public class StudyFormFillServiceImpl extends ServiceImpl |
|
|
|
studyFormFillQmxxService.saveQmxx(studyFormFillOld.getId(), "已审阅", qmr, studyFormFill.getRemark()); |
|
|
|
//发送通知 |
|
|
|
Study study = studyService.getById(studyFormFillOld.getStudyId()); |
|
|
|
String url = getUrlQz(study,"tbbd"); |
|
|
|
String title = StudyTypeEnum.getEnumByValue(study.getType()).getText()+"【"+study.getName()+"】下填报表单【"+studyFormFillOld.getBdmc()+"】已审阅"; |
|
|
|
noticeService.save(title,studyFormFillOld.getUserId(),url); |
|
|
|
String url = getUrlQz(study, "tbbd"); |
|
|
|
String title = StudyTypeEnum.getEnumByValue(study.getType()).getText() + "【" + study.getName() + "】下填报表单【" + studyFormFillOld.getBdmc() + "】已审阅"; |
|
|
|
noticeService.save(title, studyFormFillOld.getUserId(), url); |
|
|
|
} |
|
|
|
|
|
|
|
/** |
|
|
|
@ -640,35 +641,39 @@ public class StudyFormFillServiceImpl extends ServiceImpl |
|
|
|
@Override |
|
|
|
public void updateBdnr(StudyFormUpdateForm form) { |
|
|
|
SysUser qmr = SecurityUtils.getLoginUser().getSysUser(); |
|
|
|
baseMapper.updateBdnr(form.getId(), form.getBdnr(),form.getZdxgjl()); |
|
|
|
baseMapper.updateBdnr(form.getId(), form.getBdnr(), form.getZdxgjl()); |
|
|
|
//稽查轨迹 |
|
|
|
if (StringUtils.isNoneBlank(form.getFiledValue())) { |
|
|
|
JSONObject jsonObject = JSONObject.parseObject(form.getFiledValue()); |
|
|
|
Map<String, String> formData = new LinkedHashMap<>(); |
|
|
|
Map<String, String> formDataEn = new LinkedHashMap<>(); |
|
|
|
JSONArray jsonArray = JSONArray.parseArray(form.getFiledValue()); |
|
|
|
List<StudyFormFillJcgj> studyFormFillJcgjs = new ArrayList<>(); |
|
|
|
if (StringUtils.isNoneBlank(jsonObject.getString("oldValue"))) { |
|
|
|
//zh |
|
|
|
formData.put("字段名", jsonObject.getString("fieldCn")); |
|
|
|
formData.put("原值", jsonObject.getString("oldValue")); |
|
|
|
formData.put("新值", jsonObject.getString("value")); |
|
|
|
formData.put("原因", jsonObject.getString("reason")); |
|
|
|
//en |
|
|
|
formDataEn.put("字段名", jsonObject.getString("fieldEn")); |
|
|
|
formDataEn.put("原值", jsonObject.getString("oldValue")); |
|
|
|
formDataEn.put("新值", jsonObject.getString("value")); |
|
|
|
formDataEn.put("原因", jsonObject.getString("reason")); |
|
|
|
studyFormFillJcgjs.add(studyFormFillJcgjService.getJcgj(form.getId(), JcgjlxEnum.xg.getValue(), "修改记录", JcmcysEnum.orange.getValue(), JctUtil.formatStr(formData), StudyFormUtil.getJcnrEn(formDataEn), qmr, null)); |
|
|
|
} else { |
|
|
|
//zh |
|
|
|
formData.put("字段名", jsonObject.getString("fieldCn")); |
|
|
|
formData.put("填入值", jsonObject.getString("value")); |
|
|
|
formData.put("填写人", qmr.getNickName()); |
|
|
|
//en |
|
|
|
formDataEn.put("字段名", jsonObject.getString("fieldEn")); |
|
|
|
formDataEn.put("填入值", jsonObject.getString("value")); |
|
|
|
formDataEn.put("填写人", qmr.getNickName()); |
|
|
|
studyFormFillJcgjs.add(studyFormFillJcgjService.getJcgj(form.getId(), JcgjlxEnum.bj.getValue(), "填写", JcmcysEnum.green.getValue(), JctUtil.formatStr(formData), StudyFormUtil.getJcnrEn(formDataEn), null, null)); |
|
|
|
for (int i = 0; i < jsonArray.size(); i++) { |
|
|
|
JSONObject jsonObject = jsonArray.getJSONObject(i); |
|
|
|
Map<String, String> formData = new LinkedHashMap<>(); |
|
|
|
Map<String, String> formDataEn = new LinkedHashMap<>(); |
|
|
|
if (StringUtils.isNoneBlank(jsonObject.getString("oldValue"))) { |
|
|
|
//zh |
|
|
|
formData.put("字段名", jsonObject.getString("fieldCn")); |
|
|
|
formData.put("原值", jsonObject.getString("oldValue")); |
|
|
|
formData.put("新值", jsonObject.getString("value")); |
|
|
|
formData.put("原因", jsonObject.getString("reason")); |
|
|
|
//en |
|
|
|
formDataEn.put("字段名", jsonObject.getString("fieldEn")); |
|
|
|
formDataEn.put("原值", jsonObject.getString("oldValue")); |
|
|
|
formDataEn.put("新值", jsonObject.getString("value")); |
|
|
|
formDataEn.put("原因", jsonObject.getString("reason")); |
|
|
|
studyFormFillJcgjs.add(studyFormFillJcgjService.getJcgj(form.getId(), JcgjlxEnum.xg.getValue(), "修改记录", JcmcysEnum.orange.getValue(), JctUtil.formatStr(formData), StudyFormUtil.getJcnrEn(formDataEn), qmr, null)); |
|
|
|
} else { |
|
|
|
//zh |
|
|
|
formData.put("字段名", jsonObject.getString("fieldCn")); |
|
|
|
formData.put("填入值", jsonObject.getString("value")); |
|
|
|
formData.put("填写人", qmr.getNickName()); |
|
|
|
//en |
|
|
|
formDataEn.put("字段名", jsonObject.getString("fieldEn")); |
|
|
|
formDataEn.put("填入值", jsonObject.getString("value")); |
|
|
|
formDataEn.put("填写人", qmr.getNickName()); |
|
|
|
studyFormFillJcgjs.add(studyFormFillJcgjService.getJcgj(form.getId(), JcgjlxEnum.bj.getValue(), "填写", JcmcysEnum.green.getValue(), JctUtil.formatStr(formData), StudyFormUtil.getJcnrEn(formDataEn), null, null)); |
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
studyFormFillJcgjService.saveBatch(studyFormFillJcgjs); |
|
|
|
} |
|
|
|
@ -686,7 +691,7 @@ public class StudyFormFillServiceImpl extends ServiceImpl |
|
|
|
Map<String, String> formDataEn = new LinkedHashMap<>(); |
|
|
|
List<StudyFormFillJcgj> studyFormFillJcgjs = new ArrayList<>(); |
|
|
|
if (StringUtils.isNoneBlank(form.getContent())) { |
|
|
|
JSONObject jsonObject = JSONObject.parseObject(form.getContent()); |
|
|
|
JSONObject jsonObject = JSONArray.parseArray(form.getContent()).getJSONObject(0); |
|
|
|
//zh |
|
|
|
formData.put("字段名", jsonObject.getString("fieldCn")); |
|
|
|
formData.put("复核意见", jsonObject.getString("content")); |
|
|
|
@ -694,8 +699,8 @@ public class StudyFormFillServiceImpl extends ServiceImpl |
|
|
|
formDataEn.put("字段名", jsonObject.getString("fieldEn")); |
|
|
|
formDataEn.put("复核意见", jsonObject.getString("content")); |
|
|
|
studyFormFillJcgjs.add(studyFormFillJcgjService.getJcgj(form.getId(), JcgjlxEnum.lc.getValue(), "复核意见", JcmcysEnum.blue.getValue(), JctUtil.formatStr(formData), StudyFormUtil.getJcnrEn(formDataEn), qmr, null)); |
|
|
|
} else { |
|
|
|
JSONObject jsonObject = JSONObject.parseObject(form.getReply()); |
|
|
|
} else if (StringUtils.isNoneBlank(form.getReply())) { |
|
|
|
JSONObject jsonObject = JSONArray.parseArray(form.getReply()).getJSONObject(0); |
|
|
|
//zh |
|
|
|
formData.put("字段名", jsonObject.getString("fieldCn")); |
|
|
|
formData.put("意见回复", jsonObject.getString("reply")); |
|
|
|
@ -713,40 +718,42 @@ public class StudyFormFillServiceImpl extends ServiceImpl |
|
|
|
@Override |
|
|
|
public void updateZdgxjl(StudyFormUpdateForm form) { |
|
|
|
//更新勾选记录 |
|
|
|
baseMapper.updateZdgxjl(form.getId(), form.getZdgxjl()); |
|
|
|
baseMapper.updateZdgxjl(form.getId(), form.getZdgxjl()); |
|
|
|
} |
|
|
|
|
|
|
|
/** |
|
|
|
* 生成编号 |
|
|
|
* |
|
|
|
* @param studyFormFill |
|
|
|
* @return |
|
|
|
*/ |
|
|
|
public String getSn(StudyFormFill studyFormFill){ |
|
|
|
Study study=studyService.getById(studyFormFill.getStudyId()); |
|
|
|
if(study==null){ |
|
|
|
public String getSn(StudyFormFill studyFormFill) { |
|
|
|
Study study = studyService.getById(studyFormFill.getStudyId()); |
|
|
|
if (study == null) { |
|
|
|
throw new ServiceException("试验不存在或已删除"); |
|
|
|
} |
|
|
|
Template template=templateService.getById(studyFormFill.getTemplateId()); |
|
|
|
if(template==null){ |
|
|
|
Template template = templateService.getById(studyFormFill.getTemplateId()); |
|
|
|
if (template == null) { |
|
|
|
throw new ServiceException("模板不存在或已删除"); |
|
|
|
} |
|
|
|
SysDept dep=sysDeptService.selectDeptById(template.getDeptId()); |
|
|
|
if(dep==null){ |
|
|
|
SysDept dep = sysDeptService.selectDeptById(template.getDeptId()); |
|
|
|
if (dep == null) { |
|
|
|
throw new ServiceException("学科不存在或已删除"); |
|
|
|
} |
|
|
|
// MB+表单名缩写(底层模板名称)+版本号+试验编号+学科缩写+流水号+流水号 |
|
|
|
return template.getShowSn()+"-"+study.getSn()+"-"+dep.getAbbr()+"-"+snGenService.getNewSn(SnTypeEnum.tbbd.getValue())+"-"+snGenService.getNewSn(SnTypeEnum.tbbd.getValue()); |
|
|
|
return template.getShowSn() + "-" + study.getSn() + "-" + dep.getAbbr() + "-" + snGenService.getNewSn(SnTypeEnum.tbbd.getValue()) + "-" + snGenService.getNewSn(SnTypeEnum.tbbd.getValue()); |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
* 获取通知的跳转url |
|
|
|
* |
|
|
|
* @param study |
|
|
|
* @param tab |
|
|
|
* @return |
|
|
|
*/ |
|
|
|
private String getUrlQz(Study study,String tab){ |
|
|
|
return study.getType().equals(StudyTypeEnum.sy.getValue())?("/study/enter/"+study.getId()+"/"+tab):study.getType().equals(StudyTypeEnum.fsy.getValue())?("/nonTrial/enter/"+study.getId()+"/"+tab):study.getType().equals(StudyTypeEnum.mjy.getValue())?("/drug/enter/"+study.getId()+"/"+tab):""; |
|
|
|
private String getUrlQz(Study study, String tab) { |
|
|
|
return study.getType().equals(StudyTypeEnum.sy.getValue()) ? ("/study/enter/" + study.getId() + "/" + tab) : study.getType().equals(StudyTypeEnum.fsy.getValue()) ? ("/nonTrial/enter/" + study.getId() + "/" + tab) : study.getType().equals(StudyTypeEnum.mjy.getValue()) ? ("/drug/enter/" + study.getId() + "/" + tab) : ""; |
|
|
|
} |
|
|
|
|
|
|
|
} |