From fa62cd499086237f12c7f7a6128c5e6611f91bd5 Mon Sep 17 00:00:00 2001 From: HanLong <404402223@qq.com> Date: Fri, 20 Mar 2026 14:38:38 +0800 Subject: [PATCH] =?UTF-8?q?feat:[=E8=B5=84=E6=BA=90=E5=BA=93=E7=AE=A1?= =?UTF-8?q?=E7=90=86][=E4=BE=9B=E8=AF=95=E5=93=81=E7=AE=A1=E7=90=86]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../hxhq/business/controller/GspController.java | 41 ++++++++++--- .../com/hxhq/business/controller/SjController.java | 19 +++--- .../com/hxhq/business/service/IGspService.java | 12 ++++ .../hxhq/business/service/impl/GspServiceImpl.java | 71 ++++++++++++++++++++++ 4 files changed, 126 insertions(+), 17 deletions(-) diff --git a/hxhq-modules/hxhq-system/src/main/java/com/hxhq/business/controller/GspController.java b/hxhq-modules/hxhq-system/src/main/java/com/hxhq/business/controller/GspController.java index db5916e..d13bb41 100644 --- a/hxhq-modules/hxhq-system/src/main/java/com/hxhq/business/controller/GspController.java +++ b/hxhq-modules/hxhq-system/src/main/java/com/hxhq/business/controller/GspController.java @@ -6,6 +6,7 @@ import com.hxhq.business.domain.*; import com.hxhq.business.dto.gsp.GspListDto; import com.hxhq.business.enums.zykgl.DaztEnum; import com.hxhq.business.form.gsp.*; +import com.hxhq.business.form.gyzj.CcForm; import com.hxhq.business.form.gyzj.SearchForm; import com.hxhq.business.service.IGspJcgjService; import com.hxhq.business.service.IGspTzService; @@ -56,7 +57,7 @@ public class GspController extends BaseController { /** * 导出 */ - @RequiresPermissions(value={"business:resource:mjy:xq","business:archive:mjy:xq"}, logical= Logical.OR) + @RequiresPermissions(value={"business:resource:gsp:xq","business:archive:gsp:xq"}, logical= Logical.OR) @GetMapping(value = "/exportDetail") public AjaxResult exportDetail(Long id,String lang,String version) { GspJcgj gspJcgj = new GspJcgj(); @@ -80,6 +81,7 @@ public class GspController extends BaseController { * 试验物资列表 */ @GetMapping("/studyList") + @RequiresPermissions(value={"business:studyGsp:list"}, logical= Logical.OR) public TableDataInfo studyList(GspSearchListForm form) { startPage(); @@ -114,7 +116,7 @@ public class GspController extends BaseController { * 稽查轨迹列表 */ @GetMapping("/jcgjList") - @RequiresPermissions("business:resource:gsp:list") + @RequiresPermissions(value={"business:resource:gsp:xq","business:archive:gsp:xq", "business:studyGsp:xq"}, logical= Logical.OR) public TableDataInfo jcgjList(GspJcgj form) { startPage(); @@ -126,7 +128,7 @@ public class GspController extends BaseController { * 台账列表 */ @GetMapping("/tzList") - @RequiresPermissions("business:resource:gsp:list") + @RequiresPermissions(value={"business:resource:gsp:xq","business:archive:gsp:xq", "business:studyGsp:xq"}, logical= Logical.OR) public TableDataInfo tzList(GspTz form) { startPage(); @@ -138,7 +140,7 @@ public class GspController extends BaseController { * 获取供试品管理详细信息 */ @GetMapping(value = "/info") - @RequiresPermissions("business:resource:gsp:xq") + @RequiresPermissions(value={"business:resource:gsp:xq","business:archive:gsp:xq", "business:studyGsp:xq"}, logical= Logical.OR) public AjaxResult getInfo(Long id) { return AjaxResult.success(gspService.queryInfo(id)); } @@ -158,7 +160,7 @@ public class GspController extends BaseController { * 编辑供试品管理信息 */ @PostMapping("/edit") - @RequiresPermissions("business:resource:gsp:bj") + @RequiresPermissions(value={"business:resource:gsp:bj", "business:studyGsp:bj"}, logical= Logical.OR) public AjaxResult edit(@RequestBody @Validated GspBjForm form) { form.setQmrId(SecurityUtils.getUserId()); gspService.edit(form); @@ -224,7 +226,7 @@ public class GspController extends BaseController { * 修改库存 */ @PostMapping("xgkc") - @RequiresPermissions("business:resource:gsp:xgkc") + @RequiresPermissions(value={"business:resource:gsp:xgkc", "business:studyGsp:xgkc"}, logical= Logical.OR) public AjaxResult xgkc(@RequestBody GspXgkcForm form) { form.setQmrId(SecurityUtils.getUserId()); @@ -283,7 +285,7 @@ public class GspController extends BaseController { /** 处置 */ @PostMapping("/cz") - @RequiresPermissions("business:resource:gsp:cz") + @RequiresPermissions(value={"business:resource:gsp:cz", "business:studyGsp:cz"}, logical= Logical.OR) public AjaxResult cz(@RequestBody @Validated GspCzForm form) { form.setQmrId(SecurityUtils.getUserId()); @@ -293,7 +295,7 @@ public class GspController extends BaseController { /** 批量处置 */ @PostMapping("/plcz") - @RequiresPermissions("business:resource:gsp:cz") + @RequiresPermissions(value={"business:resource:gsp:cz", "business:studyGsp:cz"}, logical= Logical.OR) public AjaxResult plcz(@RequestBody @Validated GspPlczForm form) { form.setQmrId(SecurityUtils.getUserId()); @@ -349,4 +351,27 @@ public class GspController extends BaseController { return AjaxResult.success("操作成功"); } + /** + * 存储 + */ + @PostMapping("cc") + @RequiresPermissions(value={"business:studyGsp:cc","business:nonTrialGsp:cc","business:drugGsp:cc"}, logical= Logical.OR) + public AjaxResult cc(@RequestBody CcForm form) + { + gspService.cc(form); + return AjaxResult.success("操作成功"); + } + + + /** + * 取出 + */ + @PostMapping("qc") + @RequiresPermissions(value={"business:studyGystudyGspc","business:nonTrialGsp","business:drugGsp:qc"}, logical= Logical.OR) + public AjaxResult qc(@RequestBody CcForm form) + { + gspService.qc(form); + return AjaxResult.success("操作成功"); + } + } diff --git a/hxhq-modules/hxhq-system/src/main/java/com/hxhq/business/controller/SjController.java b/hxhq-modules/hxhq-system/src/main/java/com/hxhq/business/controller/SjController.java index ac5cf00..44b1f4c 100644 --- a/hxhq-modules/hxhq-system/src/main/java/com/hxhq/business/controller/SjController.java +++ b/hxhq-modules/hxhq-system/src/main/java/com/hxhq/business/controller/SjController.java @@ -63,6 +63,7 @@ public class SjController extends BaseController * 试验物资列表 */ @GetMapping("/studyList") + @RequiresPermissions(value = {"business:studySj:list"}, logical= Logical.OR) public TableDataInfo studyList(GspSearchListForm form) { startPage(); @@ -74,7 +75,7 @@ public class SjController extends BaseController * 稽查轨迹列表 */ @GetMapping("/jcgjList") - @RequiresPermissions("business:resource:sj:list") + @RequiresPermissions(value={"business:resource:sj:xq", "business:studySj:xq", "business:archive:sj:xq"}, logical= Logical.OR) public TableDataInfo jcgjList(SjJcgj form) { startPage(); @@ -85,7 +86,7 @@ public class SjController extends BaseController /** * 导出 */ - @RequiresPermissions(value={"business:resource:sj:xq","business:archive:sj:xq"}, logical= Logical.OR) + @RequiresPermissions(value={"business:resource:sj:xq", "business:studySj:xq", "business:archive:sj:xq"}, logical= Logical.OR) @GetMapping(value = "/exportDetail") public AjaxResult exportDetail(Long id,String lang) { SjJcgj sjJcgj = new SjJcgj(); @@ -110,7 +111,7 @@ public class SjController extends BaseController * 台账列表 */ @GetMapping("/tzList") - @RequiresPermissions("business:resource:sj:list") + @RequiresPermissions(value={"business:resource:sj:xq", "business:studySj:xq", "business:archive:sj:xq"}, logical= Logical.OR) public TableDataInfo tzList(SjTz form) { startPage(); @@ -122,7 +123,7 @@ public class SjController extends BaseController * 查询试剂列表 */ @GetMapping("/list") - @RequiresPermissions("business:resource:sj:list") + @RequiresPermissions(value = {"business:resource:sj:list"}, logical= Logical.OR) public TableDataInfo list(SjSearchListForm form) { startPage(); @@ -134,7 +135,7 @@ public class SjController extends BaseController * 获取试剂详细信息 */ @GetMapping(value = "/info") - @RequiresPermissions("business:resource:sj:xq") + @RequiresPermissions(value={"business:resource:sj:xq", "business:studySj:xq", "business:archive:sj:xq"}, logical= Logical.OR) public AjaxResult getInfo(Long id) { return AjaxResult.success(sjService.getInfo(id)); @@ -144,7 +145,7 @@ public class SjController extends BaseController * 编辑试剂信息 */ @PostMapping("/bj") - @RequiresPermissions("business:resource:sj:bj") + @RequiresPermissions(value={"business:resource:sj:bj", "business:studySj:bj"}, logical= Logical.OR) public AjaxResult save(@RequestBody SjBjForm form) { form.setQmrId(SecurityUtils.getUserId()); @@ -156,7 +157,7 @@ public class SjController extends BaseController * 修改库存 */ @PostMapping("xgkc") - @RequiresPermissions("business:resource:sj:xgkc") + @RequiresPermissions(value={"business:resource:sj:xgkc", "business:studySj:xgkc"}, logical= Logical.OR) public AjaxResult xgkc(@RequestBody @Validated SjXgkcForm form) { form.setQmrId(SecurityUtils.getUserId()); @@ -166,7 +167,7 @@ public class SjController extends BaseController /** 处置 */ @PostMapping("/cz") - @RequiresPermissions("business:resource:sj:cz") + @RequiresPermissions(value={"business:resource:sj:cz", "business:studySj:cz"}, logical= Logical.OR) public AjaxResult cz(@RequestBody @Validated CzSjForm form) { form.setQmrId(SecurityUtils.getUserId()); @@ -176,7 +177,7 @@ public class SjController extends BaseController /** 批量处置 */ @PostMapping("/plcz") - @RequiresPermissions("business:resource:sj:cz") + @RequiresPermissions(value={"business:resource:sj:cz", "business:studySj:cz"}, logical= Logical.OR) public AjaxResult plcz(@RequestBody @Validated PlczSjForm form) { form.setQmrId(SecurityUtils.getUserId()); diff --git a/hxhq-modules/hxhq-system/src/main/java/com/hxhq/business/service/IGspService.java b/hxhq-modules/hxhq-system/src/main/java/com/hxhq/business/service/IGspService.java index 28c1ae0..3f9ff72 100644 --- a/hxhq-modules/hxhq-system/src/main/java/com/hxhq/business/service/IGspService.java +++ b/hxhq-modules/hxhq-system/src/main/java/com/hxhq/business/service/IGspService.java @@ -8,6 +8,7 @@ import com.hxhq.business.domain.Template; import com.hxhq.business.dto.gsp.GspDto; import com.hxhq.business.dto.gsp.GspListDto; import com.hxhq.business.form.gsp.*; +import com.hxhq.business.form.gyzj.CcForm; import com.hxhq.business.form.gyzj.SearchForm; import com.hxhq.business.form.study.StudyFormConfigurationForm; @@ -207,4 +208,15 @@ public interface IGspService extends IService */ void storageResource(StudyFormFill studyFormFill, Template template, String remark); + /** + * 存储 + * @param form + */ + void cc(CcForm form); + + /** + * 取出 + * @param form + */ + void qc(CcForm form); } diff --git a/hxhq-modules/hxhq-system/src/main/java/com/hxhq/business/service/impl/GspServiceImpl.java b/hxhq-modules/hxhq-system/src/main/java/com/hxhq/business/service/impl/GspServiceImpl.java index c79c47a..9b173c9 100644 --- a/hxhq-modules/hxhq-system/src/main/java/com/hxhq/business/service/impl/GspServiceImpl.java +++ b/hxhq-modules/hxhq-system/src/main/java/com/hxhq/business/service/impl/GspServiceImpl.java @@ -18,11 +18,13 @@ 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.*; +import com.hxhq.business.form.gyzj.CcForm; import com.hxhq.business.form.study.StudyFormConfigurationForm; import com.hxhq.business.service.*; import com.hxhq.business.utils.JctUtil; import com.hxhq.business.utils.ObjectCompareUtil; import com.hxhq.business.utils.UnitTools; +import com.hxhq.business.utils.lang.GspJcnrUtil; import com.hxhq.business.utils.lang.GyzjJcnrUtil; import com.hxhq.common.core.exception.ServiceException; import com.hxhq.common.core.utils.DateUtils; @@ -115,6 +117,75 @@ public class GspServiceImpl extends ServiceImpl implements IGspS } } + @Override + public void cc(CcForm form) { + SysUser qmr = SecurityUtils.getLoginUser().getSysUser(); + sysUserService.checkPassword(qmr, form.getQmr1mm(), true); + SysUser qmr2 = null; + if(form.getQmr2Id() != null) { + qmr2 = sysUserService.selectUserById(form.getQmr2Id()); + sysUserService.checkPassword(qmr2, form.getQmr2mm(), true); + } + + if (form.getId() == null || form.getId().longValue() < 0) { + throw new ServiceException("参数id不正确"); + } + Gsp gspOld = this.getById(form.getId()); + if (gspOld == null) { + throw new ServiceException("供试品不存在或已删除"); + } + gspOld.setCcwz(form.getCcwz()); + gspOld.setCctj(form.getCctj()); + gspOld.setCczt(CcztEnum.Cc.getValue()); + this.updateById(gspOld); + //稽查轨迹 + Map formData = new LinkedHashMap<>(); + formData.put("存储位置", form.getCcwz()); + formData.put("存储条件", form.getCctj()); + formData.put("签名人1", qmr.getNickName()); + if(qmr2 != null) { + formData.put("签名人2", qmr2.getNickName()); + } + formData.put("备注", form.getRemark()); + + gspJcgjService.saveJcgj(gspOld, JcgjlxEnum.lc.getValue(), "存储", "Storage", + JcmcysEnum.green.getValue(), JctUtil.formatStr(formData), GspJcnrUtil.getJcnrEn(formData), qmr); + //台账 + gspTzService.saveTz(gspOld.getId(), qmr, "存储", "Storage", gspOld.getKc(), gspOld.getKcdw(), form.getRemark()); + + } + + @Override + public void qc(CcForm form) { + SysUser qmr = SecurityUtils.getLoginUser().getSysUser(); + sysUserService.checkPassword(qmr, form.getQmr1mm(), true); + SysUser qmr2 = null; + if(form.getQmr2Id() != null) { + qmr2 = sysUserService.selectUserById(form.getQmr2Id()); + sysUserService.checkPassword(qmr2, form.getQmr2mm(), true); + } + + Gsp gspOld = this.getById(form.getId()); + if (gspOld == null) { + throw new ServiceException("供试品不存在或已删除"); + } + gspOld.setCczt(CcztEnum.Qc.getValue()); + this.updateById(gspOld); + + //稽查轨迹 + Map formData = new LinkedHashMap<>(); + formData.put("签名人1", qmr.getNickName()); + if(qmr2 != null) { + formData.put("签名人2", qmr2.getNickName()); + } + formData.put("备注", form.getRemark()); + + gspJcgjService.saveJcgj(gspOld, JcgjlxEnum.lc.getValue(), "取出", "Take Out", + JcmcysEnum.green.getValue(), JctUtil.formatStr(formData), GspJcnrUtil.getJcnrEn(formData), qmr); + //台账 + gspTzService.saveTz(gspOld.getId(), qmr, "取出", "Take Out", gspOld.getKc(), gspOld.getKcdw(), form.getRemark()); + } + /** * 存储 *