|
|
|
@ -1,22 +1,17 @@ |
|
|
|
package com.hxhq.business.service.impl; |
|
|
|
|
|
|
|
import java.math.BigDecimal; |
|
|
|
import java.util.ArrayList; |
|
|
|
import java.util.Date; |
|
|
|
import java.util.List; |
|
|
|
import java.util.*; |
|
|
|
import java.util.stream.Collectors; |
|
|
|
|
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
|
|
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers; |
|
|
|
import com.hxhq.business.domain.*; |
|
|
|
import com.hxhq.business.dto.mjy.MjyDto; |
|
|
|
import com.hxhq.business.enums.zykgl.JcgjlxEnum; |
|
|
|
import com.hxhq.business.enums.zykgl.JcmcysEnum; |
|
|
|
import com.hxhq.business.enums.zykgl.ZjztEnum; |
|
|
|
import com.hxhq.business.dto.mjy.MjyDetailDto; |
|
|
|
import com.hxhq.business.dto.mjy.MjyListDto; |
|
|
|
import com.hxhq.business.enums.zykgl.*; |
|
|
|
import com.hxhq.business.form.mjy.*; |
|
|
|
import com.hxhq.business.service.IMjyFfjlService; |
|
|
|
import com.hxhq.business.service.IMjyJcgjService; |
|
|
|
import com.hxhq.business.service.IZcgService; |
|
|
|
import com.hxhq.business.service.*; |
|
|
|
import com.hxhq.common.core.utils.StringUtils; |
|
|
|
import com.hxhq.common.security.utils.SecurityUtils; |
|
|
|
import com.hxhq.system.api.domain.SysUser; |
|
|
|
@ -25,7 +20,6 @@ import org.springframework.beans.factory.annotation.Autowired; |
|
|
|
import org.springframework.stereotype.Service; |
|
|
|
import com.hxhq.business.mapper.MjyMapper; |
|
|
|
import com.hxhq.business.domain.Mjy; |
|
|
|
import com.hxhq.business.service.IMjyService; |
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
|
|
|
import org.springframework.transaction.annotation.Transactional; |
|
|
|
import org.springframework.web.bind.annotation.RequestBody; |
|
|
|
@ -46,6 +40,8 @@ public class MjyServiceImpl extends ServiceImpl implements IMjyS |
|
|
|
private IMjyFfjlService mjyFfjlService; |
|
|
|
@Autowired |
|
|
|
private IZcgService zcgService; |
|
|
|
@Autowired |
|
|
|
private IMjyTzService mjyTzService; |
|
|
|
|
|
|
|
/** |
|
|
|
* 查询麻精药列表 |
|
|
|
@ -55,7 +51,7 @@ public class MjyServiceImpl extends ServiceImpl implements IMjyS |
|
|
|
*/ |
|
|
|
@Override |
|
|
|
@Transactional(rollbackFor = Exception.class) |
|
|
|
public List<MjyDto> queryList(MjySearchForm form) { |
|
|
|
public List<MjyListDto> queryList(MjySearchForm form) { |
|
|
|
QueryWrapper<Mjy> queryWrapper = Wrappers.query(); |
|
|
|
queryWrapper.eq("t.del_flag", "0"); |
|
|
|
if (form.getJyzt() != null && form.getJyzt().intValue() > 0) { |
|
|
|
@ -88,7 +84,7 @@ public class MjyServiceImpl extends ServiceImpl implements IMjyS |
|
|
|
*/ |
|
|
|
@Override |
|
|
|
@Transactional(rollbackFor = Exception.class) |
|
|
|
public Mjy queryInfo(Long id) { |
|
|
|
public MjyDetailDto queryInfo(Long id) { |
|
|
|
if (id == null || id.longValue() < 0) { |
|
|
|
throw new SecurityException("参数id不正确"); |
|
|
|
} |
|
|
|
@ -345,11 +341,14 @@ public class MjyServiceImpl extends ServiceImpl implements IMjyS |
|
|
|
throw new SecurityException("麻精药不是入库状态,不能处置药剂"); |
|
|
|
} |
|
|
|
List<MjyJcgj> mjyJcgjList = new ArrayList<>(); |
|
|
|
List<MjyTz> mjyTzList = new ArrayList<>(); |
|
|
|
|
|
|
|
for (Mjy mjy : mjyList) { |
|
|
|
List<MjyPlczyjItem> mjyPlffItemFilter = form.getList().stream() |
|
|
|
.filter(p -> p.getId().equals(mjy.getId())) |
|
|
|
.collect(Collectors.toList()); |
|
|
|
if (mjyPlffItemFilter.size() > 0) { |
|
|
|
//region 验证 |
|
|
|
try { |
|
|
|
if (StringUtils.isBlank(mjyPlffItemFilter.get(0).getCzl())) { |
|
|
|
throw new SecurityException("处置量不能为空"); |
|
|
|
@ -368,6 +367,7 @@ public class MjyServiceImpl extends ServiceImpl implements IMjyS |
|
|
|
} catch (Exception ex) { |
|
|
|
throw new SecurityException("麻精药【" + mjy.getMc() + "】处置量不正确,请填写正确的数字"); |
|
|
|
} |
|
|
|
//endregion |
|
|
|
|
|
|
|
//region 稽查轨迹 |
|
|
|
MjyJcgj mjyJcgj = new MjyJcgj(); |
|
|
|
@ -387,7 +387,17 @@ public class MjyServiceImpl extends ServiceImpl implements IMjyS |
|
|
|
mjyJcgjList.add(mjyJcgj); |
|
|
|
//endregion |
|
|
|
|
|
|
|
//台账 todo |
|
|
|
//region 台账 |
|
|
|
MjyTz mjyTz = new MjyTz(); |
|
|
|
mjyTz.setMjyId(mjy.getId()); |
|
|
|
mjyTz.setQmyy("处置药剂"); |
|
|
|
mjyTz.setQmrId(clr.getUserId()); |
|
|
|
mjyTz.setQmrMc(clr.getNickName()); |
|
|
|
mjyTz.setCzl(mjyPlffItemFilter.get(0).getCzl()); |
|
|
|
mjyTz.setCzldw(mjy.getKcdw()); |
|
|
|
mjyTz.setRemark(mjyPlffItemFilter.get(0).getCzyy()); |
|
|
|
mjyTzList.add(mjyTz); |
|
|
|
//endregion |
|
|
|
|
|
|
|
} else { |
|
|
|
throw new SecurityException("麻精药【" + mjy.getMc() + "】不存在或已删除"); |
|
|
|
@ -395,6 +405,7 @@ public class MjyServiceImpl extends ServiceImpl implements IMjyS |
|
|
|
} |
|
|
|
this.saveOrUpdateBatch(mjyList); |
|
|
|
mjyJcgjService.saveBatch(mjyJcgjList); |
|
|
|
mjyTzService.saveBatch(mjyTzList); |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
@ -459,8 +470,13 @@ public class MjyServiceImpl extends ServiceImpl implements IMjyS |
|
|
|
mjyJcgjService.saveJcgj(mjyOld.getId(), JcgjlxEnum.lc.getValue(), "处置药剂", JcmcysEnum.wsd.getValue(), jcnr, SecurityUtils.getUserId(), SecurityUtils.getLoginUser().getSysUser().getNickName()); |
|
|
|
//endregion |
|
|
|
|
|
|
|
//region 台账 |
|
|
|
mjyTzService.saveTz(mjyOld.getId(), "", "", |
|
|
|
"", "", clr.getUserId(), clr.getNickName(), |
|
|
|
"处置药剂", form.getCzl(), mjyOld.getKcdw(), form.getCzyy()); |
|
|
|
//endregion |
|
|
|
|
|
|
|
this.updateById(mjyOld); |
|
|
|
//台账 todo |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
@ -493,6 +509,8 @@ public class MjyServiceImpl extends ServiceImpl implements IMjyS |
|
|
|
queryWrapper.eq("zjzt", ZjztEnum.rk.getValue()); |
|
|
|
List<Mjy> mjyList = this.list(queryWrapper); |
|
|
|
List<MjyJcgj> mjyJcgjList = new ArrayList<>(); |
|
|
|
List<MjyTz> mjyTzList = new ArrayList<>(); |
|
|
|
|
|
|
|
if (mjyList.size() <= 0) { |
|
|
|
throw new SecurityException("麻精药不是入库状态,不能处置容器"); |
|
|
|
} |
|
|
|
@ -508,8 +526,8 @@ public class MjyServiceImpl extends ServiceImpl implements IMjyS |
|
|
|
mjyJcgj.setJcgjlx(JcgjlxEnum.lc.getValue()); |
|
|
|
mjyJcgj.setJcmc("处置容器"); |
|
|
|
mjyJcgj.setJcmcys(JcmcysEnum.wsd.getValue()); |
|
|
|
String jcnr = "处置方式:" + form.getCzfs() |
|
|
|
+ ";处置原因:" + form.getCzyy() |
|
|
|
String jcnr = "处置方式:" + mjyPlffItemFilter.get(0).getCzfs() |
|
|
|
+ ";处置原因:" + mjyPlffItemFilter.get(0).getCzyy() |
|
|
|
+ ";处置人:" + clr.getNickName() |
|
|
|
+ ";复核人:" + fhr.getNickName() |
|
|
|
+ ";监督人:" + jdr.getNickName(); |
|
|
|
@ -519,12 +537,21 @@ public class MjyServiceImpl extends ServiceImpl implements IMjyS |
|
|
|
mjyJcgjList.add(mjyJcgj); |
|
|
|
//endregion |
|
|
|
|
|
|
|
//台账 todo |
|
|
|
//region 台账 |
|
|
|
MjyTz mjyTz = new MjyTz(); |
|
|
|
mjyTz.setMjyId(mjy.getId()); |
|
|
|
mjyTz.setQmyy("处置容器"); |
|
|
|
mjyTz.setQmrId(clr.getUserId()); |
|
|
|
mjyTz.setQmrMc(clr.getNickName()); |
|
|
|
mjyTz.setRemark(mjyPlffItemFilter.get(0).getCzyy()); |
|
|
|
mjyTzList.add(mjyTz); |
|
|
|
//endregion |
|
|
|
} else { |
|
|
|
throw new SecurityException("麻精药【" + mjy.getMc() + "】不存在或已删除"); |
|
|
|
} |
|
|
|
} |
|
|
|
mjyJcgjService.saveBatch(mjyJcgjList); |
|
|
|
mjyTzService.saveBatch(mjyTzList); |
|
|
|
} |
|
|
|
|
|
|
|
/** |
|
|
|
@ -568,7 +595,11 @@ public class MjyServiceImpl extends ServiceImpl implements IMjyS |
|
|
|
mjyJcgjService.saveJcgj(mjyOld.getId(), JcgjlxEnum.lc.getValue(), "处置容器", JcmcysEnum.wsd.getValue(), jcnr, SecurityUtils.getUserId(), SecurityUtils.getLoginUser().getSysUser().getNickName()); |
|
|
|
//endregion |
|
|
|
|
|
|
|
//台账 todo |
|
|
|
//region 台账 |
|
|
|
mjyTzService.saveTz(mjyOld.getId(), "", "", |
|
|
|
"", "", clr.getUserId(), clr.getNickName(), |
|
|
|
"处置容器", "", "", form.getCzyy()); |
|
|
|
//endregion |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
@ -727,11 +758,14 @@ public class MjyServiceImpl extends ServiceImpl implements IMjyS |
|
|
|
+ ";出库毛重:" + form.getCkmz() + mjyOld.getKcdw() |
|
|
|
+ ";目的:" + form.getXmId() |
|
|
|
+ ";备注:" + form.getRemark(); |
|
|
|
mjyJcgjService.saveJcgj(mjyOld.getId(), JcgjlxEnum.lc.getValue(), "领取发放", JcmcysEnum.wsd.getValue(), jcnr, SecurityUtils.getUserId(), SecurityUtils.getLoginUser().getSysUser().getNickName()); |
|
|
|
mjyJcgjService.saveJcgj(mjyOld.getId(), JcgjlxEnum.lc.getValue(), "领取发放", JcmcysEnum.wsd.getValue(), jcnr, |
|
|
|
SecurityUtils.getUserId(), SecurityUtils.getLoginUser().getSysUser().getNickName()); |
|
|
|
//endregion |
|
|
|
|
|
|
|
//region 台账 todo |
|
|
|
|
|
|
|
//region 台账 |
|
|
|
mjyTzService.saveTz(mjyOld.getId(), lqr1.getNickName() + "," + lqr2.getNickName(), "", |
|
|
|
ffr1.getNickName() + "," + ffr2.getNickName(), "", null, "", |
|
|
|
"领取发放", mjyOld.getKc(), mjyOld.getKcdw(), form.getRemark()); |
|
|
|
//endregion |
|
|
|
|
|
|
|
//更新状态为已发放,修改库存为0 是否关联最后一次发放记录? todo |
|
|
|
@ -779,6 +813,7 @@ public class MjyServiceImpl extends ServiceImpl implements IMjyS |
|
|
|
List<Mjy> mjyList = this.list(queryWrapper); |
|
|
|
List<MjyJcgj> mjyJcgjList = new ArrayList<>(); |
|
|
|
List<MjyFfjl> mjyFfjlList = new ArrayList<>(); |
|
|
|
List<MjyTz> mjyTzList = new ArrayList<>(); |
|
|
|
if (mjyList.size() <= 0) { |
|
|
|
throw new SecurityException("麻精药不是入库状态,不能发放"); |
|
|
|
} |
|
|
|
@ -842,7 +877,17 @@ public class MjyServiceImpl extends ServiceImpl implements IMjyS |
|
|
|
mjyJcgjList.add(mjyJcgj); |
|
|
|
//endregion |
|
|
|
|
|
|
|
//台账 todo |
|
|
|
//region 台账 |
|
|
|
MjyTz mjyTz = new MjyTz(); |
|
|
|
mjyTz.setMjyId(mjy.getId()); |
|
|
|
mjyTz.setLqrMc(lqr1.getNickName() + "," + lqr2.getNickName()); |
|
|
|
mjyTz.setFfrMc(ffr1.getNickName() + "," + ffr2.getNickName()); |
|
|
|
mjyTz.setQmyy("领取发放"); |
|
|
|
mjyTz.setCzl(mjy.getKc()); |
|
|
|
mjyTz.setCzldw(mjy.getKcdw()); |
|
|
|
mjyTz.setRemark(mjyPlffItemFilter.get(0).getRemark()); |
|
|
|
mjyTzList.add(mjyTz); |
|
|
|
//endregion |
|
|
|
|
|
|
|
//发放 是否关联最后一次发放记录? todo |
|
|
|
mjy.setZjzt(ZjztEnum.yff.getValue()); |
|
|
|
@ -853,8 +898,479 @@ public class MjyServiceImpl extends ServiceImpl implements IMjyS |
|
|
|
} |
|
|
|
mjyJcgjService.saveBatch(mjyJcgjList); |
|
|
|
mjyFfjlService.saveBatch(mjyFfjlList); |
|
|
|
mjyTzService.saveBatch(mjyTzList); |
|
|
|
this.saveOrUpdateBatch(mjyList); |
|
|
|
} |
|
|
|
|
|
|
|
/** |
|
|
|
* 编辑 ok |
|
|
|
* |
|
|
|
* @param form |
|
|
|
*/ |
|
|
|
@Override |
|
|
|
@Transactional(rollbackFor = Exception.class) |
|
|
|
public void bj(@RequestBody MjyBjForm form){ |
|
|
|
SysUser qmr = sysUserService.selectUserById(form.getQmrId()); |
|
|
|
//验证签名人密码 todo |
|
|
|
if (form.getId() == null || form.getId().longValue() < 0) { |
|
|
|
throw new SecurityException("参数id不正确"); |
|
|
|
} |
|
|
|
Mjy mjyOld = this.getById(form.getId()); |
|
|
|
if (mjyOld == null) { |
|
|
|
throw new SecurityException("麻精药不存在或已删除"); |
|
|
|
} |
|
|
|
if (!mjyOld.getBjzt().equals(BjEnum.wbj.getValue())) { |
|
|
|
throw new SecurityException("麻精药【" + mjyOld.getMc() + "】已经提交编辑申请,请等待审核"); |
|
|
|
} |
|
|
|
if (!(mjyOld.getZjzt().equals(ZjztEnum.rk.getValue())||mjyOld.getZjzt().equals(ZjztEnum.yff.getValue()))) { |
|
|
|
throw new SecurityException("麻精药【" + mjyOld.getMc() + "】不是入库或已发放状态,不能编辑"); |
|
|
|
} |
|
|
|
List<MjyJcgj> mjyJcgjList = new ArrayList<>(); |
|
|
|
|
|
|
|
//region 名称 |
|
|
|
if(!mjyOld.getMc().equals(form.getMcBj())){ |
|
|
|
MjyJcgj mjyJcgj = new MjyJcgj(); |
|
|
|
mjyJcgj.setMjyId(mjyOld.getId()); |
|
|
|
mjyJcgj.setJcgjlx(JcgjlxEnum.lc.getValue()); |
|
|
|
mjyJcgj.setJcmc("编辑"); |
|
|
|
mjyJcgj.setJcmcys(JcmcysEnum.gd.getValue()); |
|
|
|
String jcnr = "字段名:名称" |
|
|
|
+ ";原值:" + mjyOld.getMc() |
|
|
|
+ ";新值:" + form.getMcBj() |
|
|
|
+ ";备注:" + form.getRemark(); |
|
|
|
mjyJcgj.setJcnr(jcnr); |
|
|
|
mjyJcgj.setJcrId(qmr.getUserId()); |
|
|
|
mjyJcgj.setJcrMc(qmr.getNickName()); |
|
|
|
mjyJcgjList.add(mjyJcgj); |
|
|
|
|
|
|
|
mjyOld.setMcBj(form.getMcBj()); |
|
|
|
} |
|
|
|
//endregion |
|
|
|
|
|
|
|
//region 浓度 |
|
|
|
if(!mjyOld.getNd().equals(form.getNdBj())){ |
|
|
|
MjyJcgj mjyJcgj = new MjyJcgj(); |
|
|
|
mjyJcgj.setMjyId(mjyOld.getId()); |
|
|
|
mjyJcgj.setJcgjlx(JcgjlxEnum.lc.getValue()); |
|
|
|
mjyJcgj.setJcmc("编辑"); |
|
|
|
mjyJcgj.setJcmcys(JcmcysEnum.gd.getValue()); |
|
|
|
String jcnr = "字段名:浓度" |
|
|
|
+ ";原值:" + mjyOld.getNd() |
|
|
|
+ ";新值:" + form.getNdBj() |
|
|
|
+ ";备注:" + form.getRemark(); |
|
|
|
mjyJcgj.setJcnr(jcnr); |
|
|
|
mjyJcgj.setJcrId(qmr.getUserId()); |
|
|
|
mjyJcgj.setJcrMc(qmr.getNickName()); |
|
|
|
mjyJcgjList.add(mjyJcgj); |
|
|
|
|
|
|
|
mjyOld.setNdBj(form.getNdBj()); |
|
|
|
} |
|
|
|
//endregion |
|
|
|
|
|
|
|
//region 浓度单位 |
|
|
|
if(!mjyOld.getNddw().equals(form.getNddwBj())){ |
|
|
|
MjyJcgj mjyJcgj = new MjyJcgj(); |
|
|
|
mjyJcgj.setMjyId(mjyOld.getId()); |
|
|
|
mjyJcgj.setJcgjlx(JcgjlxEnum.lc.getValue()); |
|
|
|
mjyJcgj.setJcmc("编辑"); |
|
|
|
mjyJcgj.setJcmcys(JcmcysEnum.gd.getValue()); |
|
|
|
String jcnr = "字段名:浓度单位" |
|
|
|
+ ";原值:" + mjyOld.getNddw() |
|
|
|
+ ";新值:" + form.getNddwBj() |
|
|
|
+ ";备注:" + form.getRemark(); |
|
|
|
mjyJcgj.setJcnr(jcnr); |
|
|
|
mjyJcgj.setJcrId(qmr.getUserId()); |
|
|
|
mjyJcgj.setJcrMc(qmr.getNickName()); |
|
|
|
mjyJcgjList.add(mjyJcgj); |
|
|
|
|
|
|
|
mjyOld.setNddwBj(form.getNddwBj()); |
|
|
|
} |
|
|
|
//endregion |
|
|
|
|
|
|
|
//region 失效日期 |
|
|
|
if(!mjyOld.getSxrq().equals(form.getSxrqBj())){ |
|
|
|
MjyJcgj mjyJcgj = new MjyJcgj(); |
|
|
|
mjyJcgj.setMjyId(mjyOld.getId()); |
|
|
|
mjyJcgj.setJcgjlx(JcgjlxEnum.lc.getValue()); |
|
|
|
mjyJcgj.setJcmc("编辑"); |
|
|
|
mjyJcgj.setJcmcys(JcmcysEnum.gd.getValue()); |
|
|
|
String jcnr = "字段名:失效日期" |
|
|
|
+ ";原值:" + mjyOld.getSxrq() |
|
|
|
+ ";新值:" + form.getSxrqBj() |
|
|
|
+ ";备注:" + form.getRemark(); |
|
|
|
mjyJcgj.setJcnr(jcnr); |
|
|
|
mjyJcgj.setJcrId(qmr.getUserId()); |
|
|
|
mjyJcgj.setJcrMc(qmr.getNickName()); |
|
|
|
mjyJcgjList.add(mjyJcgj); |
|
|
|
|
|
|
|
mjyOld.setSxrqBj(form.getSxrqBj()); |
|
|
|
} |
|
|
|
//endregion |
|
|
|
|
|
|
|
//region 存储条件 |
|
|
|
if(!mjyOld.getCctj().equals(form.getCctjBj())){ |
|
|
|
MjyJcgj mjyJcgj = new MjyJcgj(); |
|
|
|
mjyJcgj.setMjyId(mjyOld.getId()); |
|
|
|
mjyJcgj.setJcgjlx(JcgjlxEnum.lc.getValue()); |
|
|
|
mjyJcgj.setJcmc("编辑"); |
|
|
|
mjyJcgj.setJcmcys(JcmcysEnum.gd.getValue()); |
|
|
|
String jcnr = "字段名:存储条件" |
|
|
|
+ ";原值:" + mjyOld.getCctj() |
|
|
|
+ ";新值:" + form.getCctjBj() |
|
|
|
+ ";备注:" + form.getRemark(); |
|
|
|
mjyJcgj.setJcnr(jcnr); |
|
|
|
mjyJcgj.setJcrId(qmr.getUserId()); |
|
|
|
mjyJcgj.setJcrMc(qmr.getNickName()); |
|
|
|
mjyJcgjList.add(mjyJcgj); |
|
|
|
|
|
|
|
mjyOld.setCctjBj(form.getCctjBj()); |
|
|
|
} |
|
|
|
//endregion |
|
|
|
|
|
|
|
//region 存储位置 |
|
|
|
if(!mjyOld.getCcwz().equals(form.getCcwzBj())){ |
|
|
|
MjyJcgj mjyJcgj = new MjyJcgj(); |
|
|
|
mjyJcgj.setMjyId(mjyOld.getId()); |
|
|
|
mjyJcgj.setJcgjlx(JcgjlxEnum.lc.getValue()); |
|
|
|
mjyJcgj.setJcmc("编辑"); |
|
|
|
mjyJcgj.setJcmcys(JcmcysEnum.gd.getValue()); |
|
|
|
String jcnr = "字段名:存储位置" |
|
|
|
+ ";原值:" + mjyOld.getCcwz() |
|
|
|
+ ";新值:" + form.getCcwzBj() |
|
|
|
+ ";备注:" + form.getRemark(); |
|
|
|
mjyJcgj.setJcnr(jcnr); |
|
|
|
mjyJcgj.setJcrId(qmr.getUserId()); |
|
|
|
mjyJcgj.setJcrMc(qmr.getNickName()); |
|
|
|
mjyJcgjList.add(mjyJcgj); |
|
|
|
mjyOld.setNdBj(form.getNdBj()); |
|
|
|
|
|
|
|
mjyOld.setCcwzBj(form.getCcwzBj()); |
|
|
|
} |
|
|
|
//endregion |
|
|
|
|
|
|
|
if(mjyJcgjList.size()>0){ |
|
|
|
mjyOld.setBjzt(BjEnum.shz.getValue()); |
|
|
|
this.updateById(mjyOld); |
|
|
|
mjyJcgjService.saveBatch(mjyJcgjList); |
|
|
|
}else{ |
|
|
|
throw new SecurityException("你没有修改任何内容"); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
/** |
|
|
|
* 审核编辑 ok |
|
|
|
* |
|
|
|
* @param form |
|
|
|
*/ |
|
|
|
@Override |
|
|
|
@Transactional(rollbackFor = Exception.class) |
|
|
|
public void shbj(@RequestBody MjyBjForm form){ |
|
|
|
SysUser qmr = sysUserService.selectUserById(form.getQmrId()); |
|
|
|
//验证签名人密码 todo |
|
|
|
if (form.getId() == null || form.getId().longValue() < 0) { |
|
|
|
throw new SecurityException("参数id不正确"); |
|
|
|
} |
|
|
|
Mjy mjyOld = this.getById(form.getId()); |
|
|
|
if (mjyOld == null) { |
|
|
|
throw new SecurityException("麻精药不存在或已删除"); |
|
|
|
} |
|
|
|
if (!mjyOld.getBjzt().equals(BjEnum.shz.getValue())) { |
|
|
|
throw new SecurityException("麻精药【" + mjyOld.getMc() + "】没有提交编辑申请,不能审核编辑"); |
|
|
|
} |
|
|
|
if (!(mjyOld.getZjzt().equals(ZjztEnum.rk.getValue())||mjyOld.getZjzt().equals(ZjztEnum.yff.getValue()))) { |
|
|
|
throw new SecurityException("麻精药【" + mjyOld.getMc() + "】不是入库或已发放状态,不能审核编辑"); |
|
|
|
} |
|
|
|
List<MjyJcgj> mjyJcgjList = new ArrayList<>(); |
|
|
|
|
|
|
|
//region 名称 |
|
|
|
if(!mjyOld.getMc().equals(form.getMcBj())){ |
|
|
|
MjyJcgj mjyJcgj = new MjyJcgj(); |
|
|
|
mjyJcgj.setMjyId(mjyOld.getId()); |
|
|
|
mjyJcgj.setJcgjlx(JcgjlxEnum.lc.getValue()); |
|
|
|
mjyJcgj.setJcmc("审核编辑"); |
|
|
|
mjyJcgj.setJcmcys(JcmcysEnum.gd.getValue()); |
|
|
|
String jcnr = "字段名:名称" |
|
|
|
+ ";原值:" + mjyOld.getMc() |
|
|
|
+ ";新值:" + form.getMcBj() |
|
|
|
+ ";备注:" + form.getRemark(); |
|
|
|
mjyJcgj.setJcnr(jcnr); |
|
|
|
mjyJcgj.setJcrId(qmr.getUserId()); |
|
|
|
mjyJcgj.setJcrMc(qmr.getNickName()); |
|
|
|
mjyJcgjList.add(mjyJcgj); |
|
|
|
|
|
|
|
mjyOld.setMc(form.getMcBj()); |
|
|
|
} |
|
|
|
//endregion |
|
|
|
|
|
|
|
//region 浓度 |
|
|
|
if(!mjyOld.getNd().equals(form.getNdBj())){ |
|
|
|
MjyJcgj mjyJcgj = new MjyJcgj(); |
|
|
|
mjyJcgj.setMjyId(mjyOld.getId()); |
|
|
|
mjyJcgj.setJcgjlx(JcgjlxEnum.lc.getValue()); |
|
|
|
mjyJcgj.setJcmc("审核编辑"); |
|
|
|
mjyJcgj.setJcmcys(JcmcysEnum.gd.getValue()); |
|
|
|
String jcnr = "字段名:浓度" |
|
|
|
+ ";原值:" + mjyOld.getNd() |
|
|
|
+ ";新值:" + form.getNdBj() |
|
|
|
+ ";备注:" + form.getRemark(); |
|
|
|
mjyJcgj.setJcnr(jcnr); |
|
|
|
mjyJcgj.setJcrId(qmr.getUserId()); |
|
|
|
mjyJcgj.setJcrMc(qmr.getNickName()); |
|
|
|
mjyJcgjList.add(mjyJcgj); |
|
|
|
|
|
|
|
mjyOld.setNd(form.getNdBj()); |
|
|
|
} |
|
|
|
//endregion |
|
|
|
|
|
|
|
//region 浓度单位 |
|
|
|
if(!mjyOld.getNddw().equals(form.getNddwBj())){ |
|
|
|
MjyJcgj mjyJcgj = new MjyJcgj(); |
|
|
|
mjyJcgj.setMjyId(mjyOld.getId()); |
|
|
|
mjyJcgj.setJcgjlx(JcgjlxEnum.lc.getValue()); |
|
|
|
mjyJcgj.setJcmc("审核编辑"); |
|
|
|
mjyJcgj.setJcmcys(JcmcysEnum.gd.getValue()); |
|
|
|
String jcnr = "字段名:浓度单位" |
|
|
|
+ ";原值:" + mjyOld.getNddw() |
|
|
|
+ ";新值:" + form.getNddwBj() |
|
|
|
+ ";备注:" + form.getRemark(); |
|
|
|
mjyJcgj.setJcnr(jcnr); |
|
|
|
mjyJcgj.setJcrId(qmr.getUserId()); |
|
|
|
mjyJcgj.setJcrMc(qmr.getNickName()); |
|
|
|
mjyJcgjList.add(mjyJcgj); |
|
|
|
|
|
|
|
mjyOld.setNddw(form.getNddwBj()); |
|
|
|
} |
|
|
|
//endregion |
|
|
|
|
|
|
|
//region 失效日期 |
|
|
|
if(!mjyOld.getSxrq().equals(form.getSxrqBj())){ |
|
|
|
MjyJcgj mjyJcgj = new MjyJcgj(); |
|
|
|
mjyJcgj.setMjyId(mjyOld.getId()); |
|
|
|
mjyJcgj.setJcgjlx(JcgjlxEnum.lc.getValue()); |
|
|
|
mjyJcgj.setJcmc("审核编辑"); |
|
|
|
mjyJcgj.setJcmcys(JcmcysEnum.gd.getValue()); |
|
|
|
String jcnr = "字段名:失效日期" |
|
|
|
+ ";原值:" + mjyOld.getSxrq() |
|
|
|
+ ";新值:" + form.getSxrqBj() |
|
|
|
+ ";备注:" + form.getRemark(); |
|
|
|
mjyJcgj.setJcnr(jcnr); |
|
|
|
mjyJcgj.setJcrId(qmr.getUserId()); |
|
|
|
mjyJcgj.setJcrMc(qmr.getNickName()); |
|
|
|
mjyJcgjList.add(mjyJcgj); |
|
|
|
|
|
|
|
mjyOld.setSxrq(form.getSxrqBj()); |
|
|
|
} |
|
|
|
//endregion |
|
|
|
|
|
|
|
//region 存储条件 |
|
|
|
if(!mjyOld.getCctj().equals(form.getCctjBj())){ |
|
|
|
MjyJcgj mjyJcgj = new MjyJcgj(); |
|
|
|
mjyJcgj.setMjyId(mjyOld.getId()); |
|
|
|
mjyJcgj.setJcgjlx(JcgjlxEnum.lc.getValue()); |
|
|
|
mjyJcgj.setJcmc("审核编辑"); |
|
|
|
mjyJcgj.setJcmcys(JcmcysEnum.gd.getValue()); |
|
|
|
String jcnr = "字段名:存储条件" |
|
|
|
+ ";原值:" + mjyOld.getCctj() |
|
|
|
+ ";新值:" + form.getCctjBj() |
|
|
|
+ ";备注:" + form.getRemark(); |
|
|
|
mjyJcgj.setJcnr(jcnr); |
|
|
|
mjyJcgj.setJcrId(qmr.getUserId()); |
|
|
|
mjyJcgj.setJcrMc(qmr.getNickName()); |
|
|
|
mjyJcgjList.add(mjyJcgj); |
|
|
|
|
|
|
|
mjyOld.setCctj(form.getCctjBj()); |
|
|
|
} |
|
|
|
//endregion |
|
|
|
|
|
|
|
//region 存储位置 |
|
|
|
if(!mjyOld.getCcwz().equals(form.getCcwzBj())){ |
|
|
|
MjyJcgj mjyJcgj = new MjyJcgj(); |
|
|
|
mjyJcgj.setMjyId(mjyOld.getId()); |
|
|
|
mjyJcgj.setJcgjlx(JcgjlxEnum.lc.getValue()); |
|
|
|
mjyJcgj.setJcmc("审核编辑"); |
|
|
|
mjyJcgj.setJcmcys(JcmcysEnum.gd.getValue()); |
|
|
|
String jcnr = "字段名:存储位置" |
|
|
|
+ ";原值:" + mjyOld.getCcwz() |
|
|
|
+ ";新值:" + form.getCcwzBj() |
|
|
|
+ ";备注:" + form.getRemark(); |
|
|
|
mjyJcgj.setJcnr(jcnr); |
|
|
|
mjyJcgj.setJcrId(qmr.getUserId()); |
|
|
|
mjyJcgj.setJcrMc(qmr.getNickName()); |
|
|
|
mjyJcgjList.add(mjyJcgj); |
|
|
|
mjyOld.setNdBj(form.getNdBj()); |
|
|
|
|
|
|
|
mjyOld.setCcwz(form.getCcwzBj()); |
|
|
|
} |
|
|
|
//endregion |
|
|
|
|
|
|
|
mjyOld.setMcBj(null); |
|
|
|
mjyOld.setNddwBj(null); |
|
|
|
mjyOld.setNdBj(null); |
|
|
|
mjyOld.setSxrqBj(null); |
|
|
|
mjyOld.setCctjBj(null); |
|
|
|
mjyOld.setCcwzBj(null); |
|
|
|
mjyOld.setBjzt(BjEnum.wbj.getValue()); |
|
|
|
this.updateById(mjyOld); |
|
|
|
if(mjyJcgjList.size()>0){ |
|
|
|
mjyJcgjService.saveBatch(mjyJcgjList); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
* 修改库存 |
|
|
|
* |
|
|
|
* @param form |
|
|
|
*/ |
|
|
|
@Override |
|
|
|
@Transactional(rollbackFor = Exception.class) |
|
|
|
public void xgkc(@RequestBody MjyXgkcForm form){ |
|
|
|
SysUser qmr = sysUserService.selectUserById(form.getQmrId()); |
|
|
|
//验证签名人密码 todo |
|
|
|
if (form.getId() == null || form.getId().longValue() < 0) { |
|
|
|
throw new SecurityException("参数id不正确"); |
|
|
|
} |
|
|
|
Mjy mjyOld = this.getById(form.getId()); |
|
|
|
if (mjyOld == null) { |
|
|
|
throw new SecurityException("麻精药不存在或已删除"); |
|
|
|
} |
|
|
|
if (!mjyOld.getKczt().equals(KcEnum.wbj.getValue())) { |
|
|
|
throw new SecurityException("麻精药【" + mjyOld.getMc() + "】已经提交修改库存申请,请等待审核"); |
|
|
|
} |
|
|
|
if (!(mjyOld.getZjzt().equals(ZjztEnum.rk.getValue())||mjyOld.getZjzt().equals(ZjztEnum.yff.getValue()))) { |
|
|
|
throw new SecurityException("麻精药【" + mjyOld.getMc() + "】不是入库或已发放状态,不能修改库存"); |
|
|
|
} |
|
|
|
List<MjyJcgj> mjyJcgjList = new ArrayList<>(); |
|
|
|
|
|
|
|
//region 库存 |
|
|
|
if(!mjyOld.getKc().equals(form.getKcBj())){ |
|
|
|
MjyJcgj mjyJcgj = new MjyJcgj(); |
|
|
|
mjyJcgj.setMjyId(mjyOld.getId()); |
|
|
|
mjyJcgj.setJcgjlx(JcgjlxEnum.lc.getValue()); |
|
|
|
mjyJcgj.setJcmc("修改库存"); |
|
|
|
mjyJcgj.setJcmcys(JcmcysEnum.gd.getValue()); |
|
|
|
String jcnr = "字段名:库存" |
|
|
|
+ ";原值:" + mjyOld.getKc() |
|
|
|
+ ";新值:" + form.getKcBj() |
|
|
|
+ ";备注:" + form.getRemark(); |
|
|
|
mjyJcgj.setJcnr(jcnr); |
|
|
|
mjyJcgj.setJcrId(qmr.getUserId()); |
|
|
|
mjyJcgj.setJcrMc(qmr.getNickName()); |
|
|
|
mjyJcgjList.add(mjyJcgj); |
|
|
|
|
|
|
|
mjyOld.setKcBj(form.getKcBj()); |
|
|
|
} |
|
|
|
//endregion |
|
|
|
|
|
|
|
//region 库存单位 |
|
|
|
if(!mjyOld.getKcdw().equals(form.getKcdwBj())){ |
|
|
|
MjyJcgj mjyJcgj = new MjyJcgj(); |
|
|
|
mjyJcgj.setMjyId(mjyOld.getId()); |
|
|
|
mjyJcgj.setJcgjlx(JcgjlxEnum.lc.getValue()); |
|
|
|
mjyJcgj.setJcmc("修改库存"); |
|
|
|
mjyJcgj.setJcmcys(JcmcysEnum.gd.getValue()); |
|
|
|
String jcnr = "字段名:库存单位" |
|
|
|
+ ";原值:" + mjyOld.getKcdw() |
|
|
|
+ ";新值:" + form.getKcdwBj() |
|
|
|
+ ";备注:" + form.getRemark(); |
|
|
|
mjyJcgj.setJcnr(jcnr); |
|
|
|
mjyJcgj.setJcrId(qmr.getUserId()); |
|
|
|
mjyJcgj.setJcrMc(qmr.getNickName()); |
|
|
|
mjyJcgjList.add(mjyJcgj); |
|
|
|
|
|
|
|
mjyOld.setKcdw(form.getKcdwBj()); |
|
|
|
} |
|
|
|
//endregion |
|
|
|
|
|
|
|
if(mjyJcgjList.size()>0){ |
|
|
|
mjyOld.setKczt(KcEnum.shz.getValue()); |
|
|
|
this.updateById(mjyOld); |
|
|
|
mjyJcgjService.saveBatch(mjyJcgjList); |
|
|
|
}else{ |
|
|
|
throw new SecurityException("你没有修改任何内容"); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
* 审核修改库存 |
|
|
|
* |
|
|
|
* @param form |
|
|
|
*/ |
|
|
|
@Override |
|
|
|
@Transactional(rollbackFor = Exception.class) |
|
|
|
public void shxgkc(@RequestBody MjyXgkcForm form){ |
|
|
|
SysUser qmr = sysUserService.selectUserById(form.getQmrId()); |
|
|
|
//验证签名人密码 todo |
|
|
|
if (form.getId() == null || form.getId().longValue() < 0) { |
|
|
|
throw new SecurityException("参数id不正确"); |
|
|
|
} |
|
|
|
Mjy mjyOld = this.getById(form.getId()); |
|
|
|
if (mjyOld == null) { |
|
|
|
throw new SecurityException("麻精药不存在或已删除"); |
|
|
|
} |
|
|
|
if (!mjyOld.getKczt().equals(KcEnum.shz.getValue())) { |
|
|
|
throw new SecurityException("麻精药【" + mjyOld.getMc() + "】没有提交修改库存申请,不能审核修改库存"); |
|
|
|
} |
|
|
|
if (!(mjyOld.getZjzt().equals(ZjztEnum.rk.getValue())||mjyOld.getZjzt().equals(ZjztEnum.yff.getValue()))) { |
|
|
|
throw new SecurityException("麻精药【" + mjyOld.getMc() + "】不是入库或已发放状态,不能审核修改库存"); |
|
|
|
} |
|
|
|
List<MjyJcgj> mjyJcgjList = new ArrayList<>(); |
|
|
|
|
|
|
|
//region 库存 |
|
|
|
if(!mjyOld.getKc().equals(form.getKcBj())){ |
|
|
|
MjyJcgj mjyJcgj = new MjyJcgj(); |
|
|
|
mjyJcgj.setMjyId(mjyOld.getId()); |
|
|
|
mjyJcgj.setJcgjlx(JcgjlxEnum.lc.getValue()); |
|
|
|
mjyJcgj.setJcmc("审核修改库存"); |
|
|
|
mjyJcgj.setJcmcys(JcmcysEnum.gd.getValue()); |
|
|
|
String jcnr = "字段名:库存" |
|
|
|
+ ";原值:" + mjyOld.getKc() |
|
|
|
+ ";新值:" + form.getKcBj() |
|
|
|
+ ";备注:" + form.getRemark(); |
|
|
|
mjyJcgj.setJcnr(jcnr); |
|
|
|
mjyJcgj.setJcrId(qmr.getUserId()); |
|
|
|
mjyJcgj.setJcrMc(qmr.getNickName()); |
|
|
|
mjyJcgjList.add(mjyJcgj); |
|
|
|
|
|
|
|
mjyOld.setKc(form.getKcBj()); |
|
|
|
} |
|
|
|
//endregion |
|
|
|
|
|
|
|
//region 库存单位 |
|
|
|
if(!mjyOld.getKcdw().equals(form.getKcdwBj())){ |
|
|
|
MjyJcgj mjyJcgj = new MjyJcgj(); |
|
|
|
mjyJcgj.setMjyId(mjyOld.getId()); |
|
|
|
mjyJcgj.setJcgjlx(JcgjlxEnum.lc.getValue()); |
|
|
|
mjyJcgj.setJcmc("审核修改库存"); |
|
|
|
mjyJcgj.setJcmcys(JcmcysEnum.gd.getValue()); |
|
|
|
String jcnr = "字段名:库存单位" |
|
|
|
+ ";原值:" + mjyOld.getKcdw() |
|
|
|
+ ";新值:" + form.getKcdwBj() |
|
|
|
+ ";备注:" + form.getRemark(); |
|
|
|
mjyJcgj.setJcnr(jcnr); |
|
|
|
mjyJcgj.setJcrId(qmr.getUserId()); |
|
|
|
mjyJcgj.setJcrMc(qmr.getNickName()); |
|
|
|
mjyJcgjList.add(mjyJcgj); |
|
|
|
|
|
|
|
mjyOld.setKcdw(form.getKcdwBj()); |
|
|
|
} |
|
|
|
//endregion |
|
|
|
|
|
|
|
mjyOld.setKcBj(null); |
|
|
|
mjyOld.setKcdwBj(null); |
|
|
|
mjyOld.setKczt(KcEnum.wbj.getValue()); |
|
|
|
this.updateById(mjyOld); |
|
|
|
|
|
|
|
//region 台账 |
|
|
|
mjyTzService.saveTz(mjyOld.getId(), "", "", |
|
|
|
"", "", qmr.getUserId(), qmr.getNickName(), |
|
|
|
"修改库存", form.getKcBj(), form.getKcdwBj(), form.getRemark()); |
|
|
|
//endregion |
|
|
|
|
|
|
|
if(mjyJcgjList.size()>0){ |
|
|
|
mjyJcgjService.saveBatch(mjyJcgjList); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
} |