|
|
|
@ -14,6 +14,7 @@ import com.hxhq.business.dto.study.StudyFormFillCc; |
|
|
|
import com.hxhq.business.dto.study.StudyFormFillCz; |
|
|
|
import com.hxhq.business.dto.study.StudyFormFillResource; |
|
|
|
import com.hxhq.business.enums.archive.ArchiveLogTypeEnum; |
|
|
|
import com.hxhq.business.enums.study.StudyFormFillResourceTypeEnum; |
|
|
|
import com.hxhq.business.enums.zykgl.*; |
|
|
|
import com.hxhq.business.form.gsp.GspGdForm; |
|
|
|
import com.hxhq.business.form.gsp.GspJyForm; |
|
|
|
@ -43,8 +44,7 @@ import org.springframework.transaction.annotation.Transactional; |
|
|
|
* @date 2025-12-22 |
|
|
|
*/ |
|
|
|
@Service |
|
|
|
public class SjServiceImpl extends ServiceImpl<SjMapper, Sj> implements ISjService |
|
|
|
{ |
|
|
|
public class SjServiceImpl extends ServiceImpl<SjMapper, Sj> implements ISjService { |
|
|
|
@Autowired |
|
|
|
private ISysUserService sysUserService; |
|
|
|
|
|
|
|
@ -73,35 +73,34 @@ public class SjServiceImpl extends ServiceImpl implements ISjServi |
|
|
|
* @return 试剂库存 |
|
|
|
*/ |
|
|
|
@Override |
|
|
|
public List<SjListDto> queryList(SjSearchListForm form) |
|
|
|
{ |
|
|
|
public List<SjListDto> queryList(SjSearchListForm form) { |
|
|
|
QueryWrapper<Sj> queryWrapper = Wrappers.query(); |
|
|
|
queryWrapper.eq("s.del_flag", 0); |
|
|
|
if(StringUtils.isNotEmpty(form.getMc())) { |
|
|
|
if (StringUtils.isNotEmpty(form.getMc())) { |
|
|
|
queryWrapper.like("s.mc", form.getMc()); |
|
|
|
} |
|
|
|
if(StringUtils.isNotEmpty(form.getBh())) { |
|
|
|
if (StringUtils.isNotEmpty(form.getBh())) { |
|
|
|
queryWrapper.like("s.bh", form.getBh()); |
|
|
|
} |
|
|
|
if(StringUtils.isNotEmpty(form.getStartDate())) { |
|
|
|
if (StringUtils.isNotEmpty(form.getStartDate())) { |
|
|
|
queryWrapper.ge("s.sxr", form.getStartDate()); |
|
|
|
} |
|
|
|
if(StringUtils.isNotEmpty(form.getEndDate())) { |
|
|
|
if (StringUtils.isNotEmpty(form.getEndDate())) { |
|
|
|
queryWrapper.le("s.sxr", form.getEndDate()); |
|
|
|
} |
|
|
|
if(form.getZjzt() != null) { |
|
|
|
if (form.getZjzt() != null) { |
|
|
|
queryWrapper.eq("s.zjzt", form.getZjzt()); |
|
|
|
} |
|
|
|
if(form.getJyzt() != null) { |
|
|
|
if (form.getJyzt() != null) { |
|
|
|
queryWrapper.eq("s.jyzt", form.getJyzt()); |
|
|
|
} |
|
|
|
if(StringUtils.isNotEmpty(form.getDeptName())) { |
|
|
|
if (StringUtils.isNotEmpty(form.getDeptName())) { |
|
|
|
queryWrapper.like("d.dept_name", form.getDeptName()); |
|
|
|
} |
|
|
|
if(StringUtils.isNotEmpty(form.getStudyName())) { |
|
|
|
if (StringUtils.isNotEmpty(form.getStudyName())) { |
|
|
|
queryWrapper.like("t.name", form.getStudyName()); |
|
|
|
} |
|
|
|
if(form.getArchive() != null && form.getArchive() == DaztEnum.ygd.getValue()) { |
|
|
|
if (form.getArchive() != null && form.getArchive() == DaztEnum.ygd.getValue()) { |
|
|
|
queryWrapper.in("s.zjzt", ZjztEnum.dgd.getValue(), ZjztEnum.gd.getValue(), ZjztEnum.djd.getValue()); |
|
|
|
} else { |
|
|
|
queryWrapper.isNotNull("s.zjzt"); |
|
|
|
@ -116,13 +115,13 @@ public class SjServiceImpl extends ServiceImpl implements ISjServi |
|
|
|
queryWrapper.eq("s.del_flag", 0); |
|
|
|
queryWrapper.and(p -> p.apply("(s.zjzt = {0} OR (s.zjzt IS NULL AND s.study_form_id = {1}))" |
|
|
|
, ZjztEnum.rk.getValue(), form.getStudyFormId())); |
|
|
|
if(StringUtils.isNotEmpty(form.getMc())) { |
|
|
|
if (StringUtils.isNotEmpty(form.getMc())) { |
|
|
|
queryWrapper.like("s.mc", form.getMc()); |
|
|
|
} |
|
|
|
if(StringUtils.isNotEmpty(form.getBh())) { |
|
|
|
if (StringUtils.isNotEmpty(form.getBh())) { |
|
|
|
queryWrapper.like("s.bh", form.getBh()); |
|
|
|
} |
|
|
|
if(StringUtils.isNotEmpty(form.getStudyName())) { |
|
|
|
if (StringUtils.isNotEmpty(form.getStudyName())) { |
|
|
|
queryWrapper.like("t.name", form.getStudyName()); |
|
|
|
} |
|
|
|
queryWrapper.orderByDesc("s.id"); |
|
|
|
@ -186,7 +185,7 @@ public class SjServiceImpl extends ServiceImpl implements ISjServi |
|
|
|
|
|
|
|
// 台账 |
|
|
|
sjTzService.saveTz(sjOld.getId(), qmr.getUserId(), qmr.getNickName(), qmr.getUserName(), |
|
|
|
"修改库存", "Change Inventory", form.getKc(), form.getKcdw(), form.getKcbjbz()); |
|
|
|
"修改库存", "Change Inventory", form.getKc(), form.getKcdw(), form.getKcbjbz()); |
|
|
|
} |
|
|
|
|
|
|
|
@Override |
|
|
|
@ -205,12 +204,12 @@ public class SjServiceImpl extends ServiceImpl implements ISjServi |
|
|
|
if (!sjOld.getZjzt().equals(ZjztEnum.rk.getValue())) { |
|
|
|
throw new SecurityException("试剂【" + sjOld.getMc() + "】不是入库状态,不能处置"); |
|
|
|
} |
|
|
|
if(!NumberUtils.isParsable(form.getCzl())) { |
|
|
|
if (!NumberUtils.isParsable(form.getCzl())) { |
|
|
|
throw new ServiceException("请输入正确的处置量"); |
|
|
|
} |
|
|
|
BigDecimal czl = new BigDecimal(form.getCzl()); |
|
|
|
BigDecimal kc = new BigDecimal(sjOld.getKc()); |
|
|
|
if(czl.compareTo(kc) > 0) { |
|
|
|
if (czl.compareTo(kc) > 0) { |
|
|
|
throw new ServiceException("处置量不应大于库存量"); |
|
|
|
} |
|
|
|
kc = kc.subtract(czl); |
|
|
|
@ -264,12 +263,12 @@ public class SjServiceImpl extends ServiceImpl implements ISjServi |
|
|
|
if (!sj.getZjzt().equals(ZjztEnum.rk.getValue())) { |
|
|
|
throw new SecurityException("试剂【" + sj.getMc() + "】不是入库状态,不能处置"); |
|
|
|
} |
|
|
|
if(!NumberUtils.isParsable(itemForm.getCzl())) { |
|
|
|
if (!NumberUtils.isParsable(itemForm.getCzl())) { |
|
|
|
throw new ServiceException("请输入正确的处置量"); |
|
|
|
} |
|
|
|
BigDecimal czl = new BigDecimal(itemForm.getCzl()); |
|
|
|
BigDecimal kc = new BigDecimal(sj.getKc()); |
|
|
|
if(czl.compareTo(kc) > 0) { |
|
|
|
if (czl.compareTo(kc) > 0) { |
|
|
|
throw new ServiceException("处置量不应大于库存量"); |
|
|
|
} |
|
|
|
kc = kc.subtract(czl); |
|
|
|
@ -347,7 +346,7 @@ public class SjServiceImpl extends ServiceImpl implements ISjServi |
|
|
|
|
|
|
|
Map<String, String> formDataEn = new LinkedHashMap<>(); |
|
|
|
formDataEn.put("Comment", form.getRemark()); |
|
|
|
sjJcgjService.saveJcgj(sj.getId(), JcgjlxEnum.lc.getValue(), "锁定试剂", "Lock Reagent",JcmcysEnum.green.getValue(), |
|
|
|
sjJcgjService.saveJcgj(sj.getId(), JcgjlxEnum.lc.getValue(), "锁定试剂", "Lock Reagent", JcmcysEnum.green.getValue(), |
|
|
|
JctUtil.formatStr(formData), JctUtil.formatStr(formDataEn)); |
|
|
|
} |
|
|
|
|
|
|
|
@ -410,7 +409,7 @@ public class SjServiceImpl extends ServiceImpl implements ISjServi |
|
|
|
|
|
|
|
Map<String, String> formDataEn = new LinkedHashMap<>(); |
|
|
|
formDataEn.put("Comment", form.getRemark()); |
|
|
|
sjJcgjService.saveJcgj(sjOld.getId(), JcgjlxEnum.lc.getValue(), "解锁试剂","Unlock Reagent", |
|
|
|
sjJcgjService.saveJcgj(sjOld.getId(), JcgjlxEnum.lc.getValue(), "解锁试剂", "Unlock Reagent", |
|
|
|
JcmcysEnum.green.getValue(), JctUtil.formatStr(formData), JctUtil.formatStr(formDataEn)); |
|
|
|
} |
|
|
|
|
|
|
|
@ -432,7 +431,7 @@ public class SjServiceImpl extends ServiceImpl implements ISjServi |
|
|
|
if (!sjOld.getJyzt().equals(JyztEnum.wjy.getValue())) { |
|
|
|
throw new SecurityException("试剂【" + sjOld.getMc() + "】不是未借阅状态,不能借阅"); |
|
|
|
} |
|
|
|
if(!sjOld.getGdsqrId().equals(qmr.getUserId())){ |
|
|
|
if (!sjOld.getGdsqrId().equals(qmr.getUserId())) { |
|
|
|
throw new ServiceException("只有归档申请人才能操作"); |
|
|
|
} |
|
|
|
//申请借阅后,借阅状态更新为待借阅,等待档案员审核期间无法进行其他操作; |
|
|
|
@ -472,7 +471,7 @@ public class SjServiceImpl extends ServiceImpl implements ISjServi |
|
|
|
if (!sjOld.getZjzt().equals(ZjztEnum.gd.getValue())) { |
|
|
|
throw new SecurityException("试剂【" + sjOld.getMc() + "】未归档,不能解档"); |
|
|
|
} |
|
|
|
if(!sjOld.getGdsqrId().equals(qmr.getUserId())){ |
|
|
|
if (!sjOld.getGdsqrId().equals(qmr.getUserId())) { |
|
|
|
throw new ServiceException("只有归档申请人才能操作"); |
|
|
|
} |
|
|
|
//申请解档后,制剂状态更新为待解档,等待档案员审核期间无法进行其他操作; |
|
|
|
@ -618,7 +617,7 @@ public class SjServiceImpl extends ServiceImpl implements ISjServi |
|
|
|
} else { |
|
|
|
queryWrapper.isNotNull("t.zjzt"); |
|
|
|
} |
|
|
|
if(StringUtils.isNotEmpty(form.getLy())) { |
|
|
|
if (StringUtils.isNotEmpty(form.getLy())) { |
|
|
|
queryWrapper.like("t.ly", form.getLy()); |
|
|
|
} |
|
|
|
if (StringUtils.isNoneBlank(form.getMc())) { |
|
|
|
@ -639,6 +638,7 @@ public class SjServiceImpl extends ServiceImpl implements ISjServi |
|
|
|
|
|
|
|
@Override |
|
|
|
public void genResource(StudyFormFill studyFormFill, Template template) { |
|
|
|
Boolean mark = template.getProduct().equals(StudyFormFillResourceTypeEnum.sj.getValue()) ? true : false; |
|
|
|
SysUser qmr = sysUserService.selectUserById(SecurityUtils.getUserId()); |
|
|
|
|
|
|
|
Long studyId = studyFormFill.getStudyId(); |
|
|
|
@ -651,143 +651,166 @@ public class SjServiceImpl extends ServiceImpl implements ISjServi |
|
|
|
List<Sj> sjList = new ArrayList<>(); |
|
|
|
LinkedList<SjJcgj> jcgjList = new LinkedList<>(); |
|
|
|
LinkedList<SjTz> tzList = new LinkedList<>(); |
|
|
|
if(StringUtils.isNotEmpty(resource) && !StringUtils.equals("[]", resource)) { |
|
|
|
if (StringUtils.isNotEmpty(resource) && !StringUtils.equals("[]", resource)) { |
|
|
|
List<StudyFormFillResource> studyFormFillResourceList = JSONUtil.toList(resource, StudyFormFillResource.class); |
|
|
|
List<String> bhList = studyFormFillResourceList.stream().filter(p->p.getType()==null).map(StudyFormFillResource::getBh).collect(Collectors.toList()); |
|
|
|
// 根据编号获取需要处置的试剂列表 |
|
|
|
LambdaQueryWrapper<Sj> queryWrapper = new LambdaQueryWrapper<>(); |
|
|
|
queryWrapper.in(Sj::getBh, bhList); |
|
|
|
sjList = this.list(queryWrapper); |
|
|
|
for (Sj sj : sjList) { |
|
|
|
sjMap.put(sj.getBh(), sj); |
|
|
|
} |
|
|
|
|
|
|
|
for (StudyFormFillResource studyFormFillResource : studyFormFillResourceList) { |
|
|
|
Sj sj = sjMap.get(studyFormFillResource.getBh()); |
|
|
|
if(sj == null) { |
|
|
|
sj = new Sj(); |
|
|
|
sj.setStudyId(studyId); |
|
|
|
sj.setStudyFormId(studyFormId); |
|
|
|
sj.setDeptId(deptId); |
|
|
|
sj.setZjzt(ZjztEnum.rk.getValue()); |
|
|
|
sj.setJyzt(JyztEnum.wjy.getValue()); |
|
|
|
sj.setDeptId(template.getDeptId()); |
|
|
|
} |
|
|
|
sj.setMc(studyFormFillResource.getMc()); |
|
|
|
sj.setBh(studyFormFillResource.getBh()); |
|
|
|
sj.setNd(String.valueOf(studyFormFillResource.getNdz())); |
|
|
|
sj.setNddw(studyFormFillResource.getNddw()); |
|
|
|
sj.setKc(studyFormFillResource.getKc()); |
|
|
|
sj.setKcdw(studyFormFillResource.getKcdw()); |
|
|
|
sj.setLy(studyFormFillResource.getSource()); |
|
|
|
sj.setSxr(DateUtils.parseDate(studyFormFillResource.getSxrq())); |
|
|
|
sj.setPzrq(studyFormFill.getStartDate()); |
|
|
|
sj.setYxzq(studyFormFillResource.getYxzq()); |
|
|
|
sj.setYxzqdw(studyFormFillResource.getYxzqdw()); |
|
|
|
if(sj.getId() == null) { |
|
|
|
this.save(sj); |
|
|
|
sjList.add(sj); |
|
|
|
List<String> bhList = studyFormFillResourceList.stream().filter(p -> (p.getType() == null && mark) || p.getType().equals(StudyFormFillResourceTypeEnum.sj.getValue())).map(StudyFormFillResource::getBh).collect(Collectors.toList()); |
|
|
|
// 根据编号获取需要处置的列表 |
|
|
|
if (bhList.size() > 0) { |
|
|
|
LambdaQueryWrapper<Sj> queryWrapper = new LambdaQueryWrapper<>(); |
|
|
|
queryWrapper.in(Sj::getBh, bhList); |
|
|
|
sjList = this.list(queryWrapper); |
|
|
|
for (Sj sj : sjList) { |
|
|
|
sjMap.put(sj.getBh(), sj); |
|
|
|
|
|
|
|
// 稽查轨迹 |
|
|
|
SjJcgj sjJcgj = sjJcgjService.genJcgj(sj.getId(), JcgjlxEnum.lc.getValue(), "配制完成", "Formulation Completed", |
|
|
|
JcmcysEnum.green.getValue(), null, null, qmr); |
|
|
|
jcgjList.add(sjJcgj); |
|
|
|
|
|
|
|
// 台账 |
|
|
|
SjTz sjTz = sjTzService.genTz(sj.getId(), "配制完成", "Formulation Completed", sj.getKc(), sj.getKcdw(), null, qmr); |
|
|
|
tzList.add(sjTz); |
|
|
|
} else { |
|
|
|
this.updateById(sj); |
|
|
|
} |
|
|
|
// 使用 |
|
|
|
String syl = studyFormFillResource.getSyl(); |
|
|
|
if(StringUtils.isNotEmpty(syl) && NumberUtils.isParsable(syl)) { |
|
|
|
BigDecimal kc = new BigDecimal(sj.getKc()); |
|
|
|
kc = kc.subtract(new BigDecimal(syl)); |
|
|
|
baseMapper.updateKc(sj.getId(), kc.toString()); |
|
|
|
|
|
|
|
// 使用稽查轨迹 |
|
|
|
Map<String, String> jcnrMap = new LinkedHashMap<>(); |
|
|
|
jcnrMap.put("使用量", syl + studyFormFillResource.getSyldw()); |
|
|
|
|
|
|
|
Map<String, String> jcnrEnMap = new LinkedHashMap<>(); |
|
|
|
jcnrEnMap.put("Usage Amount", syl + studyFormFillResource.getSyldw()); |
|
|
|
|
|
|
|
SjJcgj sjJcgj = sjJcgjService.genJcgj(sj.getId(), JcgjlxEnum.lc.getValue(), "使用", "Usage", |
|
|
|
JcmcysEnum.green.getValue(), JctUtil.formatStr(jcnrMap), JctUtil.formatStr(jcnrEnMap), qmr); |
|
|
|
jcgjList.add(sjJcgj); |
|
|
|
|
|
|
|
|
|
|
|
// 台账 |
|
|
|
SjTz sjTz = sjTzService.genTz(sj.getId(), "使用", "Usage", syl, studyFormFillResource.getKcdw(), null, qmr); |
|
|
|
tzList.add(sjTz); |
|
|
|
for (StudyFormFillResource studyFormFillResource : studyFormFillResourceList) { |
|
|
|
Sj sj = sjMap.get(studyFormFillResource.getBh()); |
|
|
|
//配置的才保存,或更新 |
|
|
|
if (studyFormFillResource.getType() == null) { |
|
|
|
if (sj == null) { |
|
|
|
sj = new Sj(); |
|
|
|
sj.setStudyId(studyId); |
|
|
|
sj.setStudyFormId(studyFormId); |
|
|
|
sj.setDeptId(deptId); |
|
|
|
sj.setZjzt(ZjztEnum.rk.getValue()); |
|
|
|
sj.setJyzt(JyztEnum.wjy.getValue()); |
|
|
|
sj.setDeptId(template.getDeptId()); |
|
|
|
} |
|
|
|
sj.setMc(studyFormFillResource.getMc()); |
|
|
|
sj.setBh(studyFormFillResource.getBh()); |
|
|
|
sj.setNd(String.valueOf(studyFormFillResource.getNdz())); |
|
|
|
sj.setNddw(studyFormFillResource.getNddw()); |
|
|
|
sj.setKc(studyFormFillResource.getKc()); |
|
|
|
sj.setKcdw(studyFormFillResource.getKcdw()); |
|
|
|
sj.setLy(studyFormFillResource.getSource()); |
|
|
|
sj.setSxr(DateUtils.parseDate(studyFormFillResource.getSxrq())); |
|
|
|
sj.setPzrq(studyFormFill.getStartDate()); |
|
|
|
sj.setYxzq(studyFormFillResource.getYxzq()); |
|
|
|
sj.setYxzqdw(studyFormFillResource.getYxzqdw()); |
|
|
|
if (sj.getId() == null) { |
|
|
|
this.save(sj); |
|
|
|
sjList.add(sj); |
|
|
|
sjMap.put(sj.getBh(), sj); |
|
|
|
|
|
|
|
// 稽查轨迹 |
|
|
|
SjJcgj sjJcgj = sjJcgjService.genJcgj(sj.getId(), JcgjlxEnum.lc.getValue(), "配制完成", "Formulation Completed", |
|
|
|
JcmcysEnum.green.getValue(), null, null, qmr); |
|
|
|
jcgjList.add(sjJcgj); |
|
|
|
|
|
|
|
// 台账 |
|
|
|
SjTz sjTz = sjTzService.genTz(sj.getId(), "配制完成", "Formulation Completed", sj.getKc(), sj.getKcdw(), null, qmr); |
|
|
|
tzList.add(sjTz); |
|
|
|
} else { |
|
|
|
this.updateById(sj); |
|
|
|
} |
|
|
|
} |
|
|
|
// 使用 |
|
|
|
String syl = studyFormFillResource.getSyl(); |
|
|
|
if (StringUtils.isNotEmpty(syl) && NumberUtils.isParsable(syl)) { |
|
|
|
BigDecimal kc = new BigDecimal(sj.getKc()); |
|
|
|
kc = kc.subtract(new BigDecimal(syl)); |
|
|
|
baseMapper.updateKc(sj.getId(), kc.toString()); |
|
|
|
|
|
|
|
// 使用稽查轨迹 |
|
|
|
Map<String, String> jcnrMap = new LinkedHashMap<>(); |
|
|
|
jcnrMap.put("使用量", syl + studyFormFillResource.getSyldw()); |
|
|
|
|
|
|
|
Map<String, String> jcnrEnMap = new LinkedHashMap<>(); |
|
|
|
jcnrEnMap.put("Usage Amount", syl + studyFormFillResource.getSyldw()); |
|
|
|
|
|
|
|
SjJcgj sjJcgj = sjJcgjService.genJcgj(sj.getId(), JcgjlxEnum.lc.getValue(), "使用", "Usage", |
|
|
|
JcmcysEnum.green.getValue(), JctUtil.formatStr(jcnrMap), JctUtil.formatStr(jcnrEnMap), qmr); |
|
|
|
jcgjList.add(sjJcgj); |
|
|
|
|
|
|
|
|
|
|
|
// 台账 |
|
|
|
SjTz sjTz = sjTzService.genTz(sj.getId(), "使用", "Usage", syl, studyFormFillResource.getKcdw(), null, qmr); |
|
|
|
tzList.add(sjTz); |
|
|
|
} |
|
|
|
sjMap.put(sj.getBh(), sj); |
|
|
|
} |
|
|
|
sjMap.put(sj.getBh(), sj); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
// 存储 |
|
|
|
String cclist = studyFormFill.getCclist(); |
|
|
|
if(StringUtils.isNotEmpty(cclist) && !StringUtils.equals("[]", cclist)) { |
|
|
|
List<StudyFormFillCc> studyFormFillCcList = JSONUtil.toList(cclist, StudyFormFillCc.class); |
|
|
|
for (StudyFormFillCc studyFormFillCc : studyFormFillCcList) { |
|
|
|
baseMapper.updateCc(studyFormFillCc.getList(), studyFormFillCc.getCctj(), studyFormFillCc.getCcwz()); |
|
|
|
for (String bh : studyFormFillCc.getList()) { |
|
|
|
Sj sj = sjMap.get(bh); |
|
|
|
|
|
|
|
// 稽查轨迹 |
|
|
|
LinkedHashMap<String, String> jcnrMap = new LinkedHashMap<>(); |
|
|
|
jcnrMap.put("存储位置", studyFormFillCc.getCcwz()); |
|
|
|
jcnrMap.put("存储条件", studyFormFillCc.getCctj()); |
|
|
|
|
|
|
|
LinkedHashMap<String, String> jcnrEnMap = new LinkedHashMap<>(); |
|
|
|
jcnrEnMap.put("Storage Location", studyFormFillCc.getCcwz()); |
|
|
|
jcnrEnMap.put("Storage Condition", studyFormFillCc.getCctj()); |
|
|
|
|
|
|
|
SjJcgj sjJcgj = sjJcgjService.genJcgj(sj.getId(), JcgjlxEnum.lc.getValue(), "存储", "Storage", |
|
|
|
JcmcysEnum.green.getValue(), JctUtil.formatStr(jcnrMap), JctUtil.formatStr(jcnrEnMap), qmr); |
|
|
|
jcgjList.add(sjJcgj); |
|
|
|
|
|
|
|
// 台账 |
|
|
|
SjTz sjTz = sjTzService.genTz(sj.getId(), "存储", "Storage", sj.getKc(), sj.getKcdw(), null, qmr); |
|
|
|
tzList.add(sjTz); |
|
|
|
if (sjMap.size() > 0) { |
|
|
|
// 存储 |
|
|
|
String cclist = studyFormFill.getCclist(); |
|
|
|
if (StringUtils.isNotEmpty(cclist) && !StringUtils.equals("[]", cclist)) { |
|
|
|
List<StudyFormFillCc> studyFormFillCcList = JSONUtil.toList(cclist, StudyFormFillCc.class); |
|
|
|
for (StudyFormFillCc studyFormFillCc : studyFormFillCcList) { |
|
|
|
List<String> list = new ArrayList<>(); |
|
|
|
for (String bh : studyFormFillCc.getList()) { |
|
|
|
Sj sj = sjMap.get(bh); |
|
|
|
if (sj != null) { |
|
|
|
list.add(bh); |
|
|
|
// 稽查轨迹 |
|
|
|
LinkedHashMap<String, String> jcnrMap = new LinkedHashMap<>(); |
|
|
|
jcnrMap.put("存储位置", studyFormFillCc.getCcwz()); |
|
|
|
jcnrMap.put("存储条件", studyFormFillCc.getCctj()); |
|
|
|
|
|
|
|
LinkedHashMap<String, String> jcnrEnMap = new LinkedHashMap<>(); |
|
|
|
jcnrEnMap.put("Storage Location", studyFormFillCc.getCcwz()); |
|
|
|
jcnrEnMap.put("Storage Condition", studyFormFillCc.getCctj()); |
|
|
|
|
|
|
|
SjJcgj sjJcgj = sjJcgjService.genJcgj(sj.getId(), JcgjlxEnum.lc.getValue(), "存储", "Storage", |
|
|
|
JcmcysEnum.green.getValue(), JctUtil.formatStr(jcnrMap), JctUtil.formatStr(jcnrEnMap), qmr); |
|
|
|
jcgjList.add(sjJcgj); |
|
|
|
|
|
|
|
// 台账 |
|
|
|
SjTz sjTz = sjTzService.genTz(sj.getId(), "存储", "Storage", sj.getKc(), sj.getKcdw(), null, qmr); |
|
|
|
tzList.add(sjTz); |
|
|
|
} |
|
|
|
} |
|
|
|
if(list.size()>0){ |
|
|
|
baseMapper.updateCc(list, studyFormFillCc.getCctj(), studyFormFillCc.getCcwz()); |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
// 处置,库存全变为0 |
|
|
|
String czlist = studyFormFill.getCzlist(); |
|
|
|
if(StringUtils.isNotEmpty(czlist) && !StringUtils.equals("[]", czlist)) { |
|
|
|
List<StudyFormFillCz> studyFormFillCzList = JSONUtil.toList(czlist, StudyFormFillCz.class); |
|
|
|
for (StudyFormFillCz studyFormFillCz : studyFormFillCzList) { |
|
|
|
for (String bh : studyFormFillCz.getList()) { |
|
|
|
Sj sj = sjMap.get(bh); |
|
|
|
|
|
|
|
// 稽查轨迹 |
|
|
|
LinkedHashMap<String, String> jcnrMap = new LinkedHashMap<>(); |
|
|
|
jcnrMap.put("处置方式", studyFormFillCz.getCzfs()); |
|
|
|
jcnrMap.put("处置量", sj.getKc() + sj.getKcdw()); |
|
|
|
|
|
|
|
LinkedHashMap<String, String> jcnrEnMap = new LinkedHashMap<>(); |
|
|
|
jcnrEnMap.put("Dispose Method", studyFormFillCz.getCzfs()); |
|
|
|
jcnrEnMap.put("Amount", sj.getKc() + sj.getKcdw()); |
|
|
|
|
|
|
|
SjJcgj sjJcgj = sjJcgjService.genJcgj(sj.getId(), JcgjlxEnum.lc.getValue(), "处置", "Dispose", |
|
|
|
JcmcysEnum.green.getValue(), JctUtil.formatStr(jcnrMap), JctUtil.formatStr(jcnrEnMap), qmr); |
|
|
|
jcgjList.add(sjJcgj); |
|
|
|
|
|
|
|
|
|
|
|
// 台账 |
|
|
|
SjTz sjTz = sjTzService.genTz(sj.getId(), "处置", "Dispose", sj.getKc(), sj.getKcdw(), null, qmr); |
|
|
|
tzList.add(sjTz); |
|
|
|
// 处置,库存全变为0 |
|
|
|
String czlist = studyFormFill.getCzlist(); |
|
|
|
if (StringUtils.isNotEmpty(czlist) && !StringUtils.equals("[]", czlist)) { |
|
|
|
List<StudyFormFillCz> studyFormFillCzList = JSONUtil.toList(czlist, StudyFormFillCz.class); |
|
|
|
for (StudyFormFillCz studyFormFillCz : studyFormFillCzList) { |
|
|
|
List<String> list = new ArrayList<>(); |
|
|
|
for (String bh : studyFormFillCz.getList()) { |
|
|
|
Sj sj = sjMap.get(bh); |
|
|
|
if (sj != null) { |
|
|
|
list.add(bh); |
|
|
|
// 稽查轨迹 |
|
|
|
LinkedHashMap<String, String> jcnrMap = new LinkedHashMap<>(); |
|
|
|
jcnrMap.put("处置方式", studyFormFillCz.getCzfs()); |
|
|
|
jcnrMap.put("处置量", sj.getKc() + sj.getKcdw()); |
|
|
|
|
|
|
|
LinkedHashMap<String, String> jcnrEnMap = new LinkedHashMap<>(); |
|
|
|
jcnrEnMap.put("Dispose Method", studyFormFillCz.getCzfs()); |
|
|
|
jcnrEnMap.put("Amount", sj.getKc() + sj.getKcdw()); |
|
|
|
|
|
|
|
SjJcgj sjJcgj = sjJcgjService.genJcgj(sj.getId(), JcgjlxEnum.lc.getValue(), "处置", "Dispose", |
|
|
|
JcmcysEnum.green.getValue(), JctUtil.formatStr(jcnrMap), JctUtil.formatStr(jcnrEnMap), qmr); |
|
|
|
jcgjList.add(sjJcgj); |
|
|
|
|
|
|
|
|
|
|
|
// 台账 |
|
|
|
SjTz sjTz = sjTzService.genTz(sj.getId(), "处置", "Dispose", sj.getKc(), sj.getKcdw(), null, qmr); |
|
|
|
tzList.add(sjTz); |
|
|
|
} |
|
|
|
} |
|
|
|
if(list.size()>0){ |
|
|
|
baseMapper.updateKcBatch(list, "0"); |
|
|
|
} |
|
|
|
} |
|
|
|
baseMapper.updateKcBatch(studyFormFillCz.getList(), "0"); |
|
|
|
} |
|
|
|
} |
|
|
|
sjJcgjService.saveBatch(jcgjList); |
|
|
|
sjTzService.saveBatch(tzList); |
|
|
|
studySjService.saveBatch(studyId, sjList); |
|
|
|
if(jcgjList.size()>0){ |
|
|
|
sjJcgjService.saveBatch(jcgjList); |
|
|
|
} |
|
|
|
if(jcgjList.size()>0){ |
|
|
|
sjTzService.saveBatch(tzList); |
|
|
|
} |
|
|
|
if(jcgjList.size()>0){ |
|
|
|
studySjService.saveBatch(studyId, sjList); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
@Override |
|
|
|
@ -812,12 +835,12 @@ public class SjServiceImpl extends ServiceImpl implements ISjServi |
|
|
|
|
|
|
|
Map<String, String> formDataEn = new LinkedHashMap<>(); |
|
|
|
formDataEn.put("Comment", form.getRemark()); |
|
|
|
sjJcgjService.saveJcgj(sj.getId(), JcgjlxEnum.lc.getValue(), "同意归档", "Approve Archiving", |
|
|
|
sjJcgjService.saveJcgj(sj.getId(), JcgjlxEnum.lc.getValue(), "同意归档", "Approve Archiving", |
|
|
|
JcmcysEnum.green.getValue(), JctUtil.formatStr(formData), JctUtil.formatStr(formDataEn)); |
|
|
|
|
|
|
|
archiveLogService.saveInfo(ArchiveLogTypeEnum.sj, sj.getId(), sj.getMc(), sj.getBh(), sj.getNd() + sj.getNddw(), "同意归档"); |
|
|
|
|
|
|
|
noticeService.save("试剂【"+sj.getMc()+"】同意归档",sj.getGdsqrId(),getUrlQz()); |
|
|
|
noticeService.save("试剂【" + sj.getMc() + "】同意归档", sj.getGdsqrId(), getUrlQz()); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
@ -843,12 +866,12 @@ public class SjServiceImpl extends ServiceImpl implements ISjServi |
|
|
|
|
|
|
|
Map<String, String> formDataEn = new LinkedHashMap<>(); |
|
|
|
formDataEn.put("Comment", form.getRemark()); |
|
|
|
sjJcgjService.saveJcgj(sj.getId(), JcgjlxEnum.lc.getValue(), "拒绝归档", "Reject Archiving", |
|
|
|
sjJcgjService.saveJcgj(sj.getId(), JcgjlxEnum.lc.getValue(), "拒绝归档", "Reject Archiving", |
|
|
|
JcmcysEnum.green.getValue(), JctUtil.formatStr(formData), JctUtil.formatStr(formDataEn)); |
|
|
|
|
|
|
|
archiveLogService.saveInfo(ArchiveLogTypeEnum.sj, sj.getId(), sj.getMc(), sj.getBh(), sj.getNd() + sj.getNddw(), "拒绝归档"); |
|
|
|
|
|
|
|
noticeService.save("试剂【"+sj.getMc()+"】拒绝归档",sj.getGdsqrId(),getUrlQz()); |
|
|
|
noticeService.save("试剂【" + sj.getMc() + "】拒绝归档", sj.getGdsqrId(), getUrlQz()); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
@ -874,12 +897,12 @@ public class SjServiceImpl extends ServiceImpl implements ISjServi |
|
|
|
|
|
|
|
Map<String, String> formDataEn = new LinkedHashMap<>(); |
|
|
|
formDataEn.put("Comment", form.getRemark()); |
|
|
|
sjJcgjService.saveJcgj(sj.getId(), JcgjlxEnum.lc.getValue(), "同意解档", "Approve De-archiving", |
|
|
|
sjJcgjService.saveJcgj(sj.getId(), JcgjlxEnum.lc.getValue(), "同意解档", "Approve De-archiving", |
|
|
|
JcmcysEnum.green.getValue(), JctUtil.formatStr(formData), JctUtil.formatStr(formDataEn)); |
|
|
|
|
|
|
|
archiveLogService.saveInfo(ArchiveLogTypeEnum.sj, sj.getId(), sj.getMc(), sj.getBh(), sj.getNd() + sj.getNddw(), "同意解档"); |
|
|
|
|
|
|
|
noticeService.save("试剂【"+sj.getMc()+"】同意解档",sj.getGdsqrId(),getUrlQz()); |
|
|
|
noticeService.save("试剂【" + sj.getMc() + "】同意解档", sj.getGdsqrId(), getUrlQz()); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
@ -905,12 +928,12 @@ public class SjServiceImpl extends ServiceImpl implements ISjServi |
|
|
|
|
|
|
|
Map<String, String> formDataEn = new LinkedHashMap<>(); |
|
|
|
formDataEn.put("Comment", form.getRemark()); |
|
|
|
sjJcgjService.saveJcgj(sj.getId(), JcgjlxEnum.lc.getValue(), "拒绝解档", "Reject De-archiving", |
|
|
|
sjJcgjService.saveJcgj(sj.getId(), JcgjlxEnum.lc.getValue(), "拒绝解档", "Reject De-archiving", |
|
|
|
JcmcysEnum.green.getValue(), JctUtil.formatStr(formData), JctUtil.formatStr(formDataEn)); |
|
|
|
|
|
|
|
archiveLogService.saveInfo(ArchiveLogTypeEnum.sj, sj.getId(), sj.getMc(), sj.getBh(), sj.getNd() + sj.getNddw(), "拒绝解档"); |
|
|
|
|
|
|
|
noticeService.save("试剂【"+sj.getMc()+"】拒绝解档",sj.getGdsqrId(),getUrlQz()); |
|
|
|
noticeService.save("试剂【" + sj.getMc() + "】拒绝解档", sj.getGdsqrId(), getUrlQz()); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
@ -938,12 +961,12 @@ public class SjServiceImpl extends ServiceImpl implements ISjServi |
|
|
|
|
|
|
|
Map<String, String> formDataEn = new LinkedHashMap<>(); |
|
|
|
formDataEn.put("Comment", form.getRemark()); |
|
|
|
sjJcgjService.saveJcgj(sj.getId(), JcgjlxEnum.lc.getValue(), "同意借阅", "Approve Check-out", |
|
|
|
sjJcgjService.saveJcgj(sj.getId(), JcgjlxEnum.lc.getValue(), "同意借阅", "Approve Check-out", |
|
|
|
JcmcysEnum.green.getValue(), JctUtil.formatStr(formData), JctUtil.formatStr(formDataEn)); |
|
|
|
|
|
|
|
archiveLogService.saveInfo(ArchiveLogTypeEnum.sj, sj.getId(), sj.getMc(), sj.getBh(), sj.getNd() + sj.getNddw(), "同意借阅"); |
|
|
|
|
|
|
|
noticeService.save("试剂【"+sj.getMc()+"】同意借阅",sj.getGdsqrId(),getUrlQz()); |
|
|
|
noticeService.save("试剂【" + sj.getMc() + "】同意借阅", sj.getGdsqrId(), getUrlQz()); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
@ -969,12 +992,12 @@ public class SjServiceImpl extends ServiceImpl implements ISjServi |
|
|
|
|
|
|
|
Map<String, String> formDataEn = new LinkedHashMap<>(); |
|
|
|
formDataEn.put("Comment", form.getRemark()); |
|
|
|
sjJcgjService.saveJcgj(sj.getId(), JcgjlxEnum.lc.getValue(), "拒绝借阅", "Reject Check-out", |
|
|
|
sjJcgjService.saveJcgj(sj.getId(), JcgjlxEnum.lc.getValue(), "拒绝借阅", "Reject Check-out", |
|
|
|
JcmcysEnum.green.getValue(), JctUtil.formatStr(formData), JctUtil.formatStr(formDataEn)); |
|
|
|
|
|
|
|
archiveLogService.saveInfo(ArchiveLogTypeEnum.sj, sj.getId(), sj.getMc(), sj.getBh(), sj.getNd() + sj.getNddw(), "拒绝借阅"); |
|
|
|
|
|
|
|
noticeService.save("试剂【"+sj.getMc()+"】拒绝借阅",sj.getGdsqrId(),getUrlQz()); |
|
|
|
noticeService.save("试剂【" + sj.getMc() + "】拒绝借阅", sj.getGdsqrId(), getUrlQz()); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
@ -1000,7 +1023,7 @@ public class SjServiceImpl extends ServiceImpl implements ISjServi |
|
|
|
|
|
|
|
Map<String, String> formDataEn = new LinkedHashMap<>(); |
|
|
|
formDataEn.put("Comment", form.getRemark()); |
|
|
|
sjJcgjService.saveJcgj(sj.getId(), JcgjlxEnum.lc.getValue(), "确认归还", "Check-out End Confirmation", |
|
|
|
sjJcgjService.saveJcgj(sj.getId(), JcgjlxEnum.lc.getValue(), "确认归还", "Check-out End Confirmation", |
|
|
|
JcmcysEnum.green.getValue(), JctUtil.formatStr(formData), JctUtil.formatStr(formDataEn)); |
|
|
|
|
|
|
|
archiveLogService.saveInfo(ArchiveLogTypeEnum.sj, sj.getId(), sj.getMc(), sj.getBh(), sj.getNd() + sj.getNddw(), "确认归还"); |
|
|
|
@ -1009,9 +1032,10 @@ public class SjServiceImpl extends ServiceImpl implements ISjServi |
|
|
|
|
|
|
|
/** |
|
|
|
* 获取通知的跳转url |
|
|
|
* |
|
|
|
* @return |
|
|
|
*/ |
|
|
|
private String getUrlQz(){ |
|
|
|
return "/resource/reagent"; |
|
|
|
private String getUrlQz() { |
|
|
|
return "/resource/reagent"; |
|
|
|
} |
|
|
|
} |