From 636de0d74339055044b2c0e0750141e60e10dbae Mon Sep 17 00:00:00 2001 From: jiangs <373297395@qq.com> Date: Mon, 16 Mar 2026 17:39:38 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E5=AD=97=E5=85=B8=E7=BC=93?= =?UTF-8?q?=E5=AD=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/constant/CacheConstants.java | 6 +- .../core/domain/entity/reg/RegApply.java | 1 + .../domain/entity/reg/RegTransitSample.java | 4 + .../common/utils/ComDictUtils.java | 61 ---- .../common/utils/ComOptionUtils.java | 90 ------ .../constants/SysLogConstants.java | 30 +- .../utils/cache/RegDictCache.java | 67 +++++ .../main/resources/mapper/RegApplyMapper.xml | 3 + .../controller/RegRequestInfoController.java | 32 +- .../RegTransitSampleController.java | 12 +- .../controller/dict/RegDictController.java | 17 +- .../transitPF/mapper/RegDictMapper.java | 3 + .../mapper/RegRequestInfoMapper.java | 2 +- .../DTO/{ => reqinfo}/RegRequestInfoDTO.java | 2 +- .../transitPF/pojo/DTO/reqinfo/printDTO.java | 13 + .../transitPF/service/RegDictService.java | 4 + .../service/RegRequestInfoService.java | 7 +- .../service/impl/RegDictServiceImpl.java | 49 ++- .../impl/RegRequestInfoServiceImpl.java | 282 +++++++++--------- .../impl/RegTransitSampleServiceImpl.java | 6 +- .../main/resources/mapper/RegDictMapper.xml | 4 + .../resources/mapper/RegRequestInfoMapper.xml | 4 +- .../mapper/RegTransitSampleMapper.xml | 3 + 23 files changed, 352 insertions(+), 350 deletions(-) delete mode 100644 pf_common/src/main/java/com/transitPlatForm/common/utils/ComDictUtils.java delete mode 100644 pf_common/src/main/java/com/transitPlatForm/common/utils/ComOptionUtils.java create mode 100644 pf_interfaceCommon/src/main/java/com/transitPlatForm/interfaceCommon/utils/cache/RegDictCache.java rename pf_transitPF/src/main/java/com/transitPlatForm/transitPF/pojo/DTO/{ => reqinfo}/RegRequestInfoDTO.java (85%) create mode 100644 pf_transitPF/src/main/java/com/transitPlatForm/transitPF/pojo/DTO/reqinfo/printDTO.java diff --git a/pf_common/src/main/java/com/transitPlatForm/common/constant/CacheConstants.java b/pf_common/src/main/java/com/transitPlatForm/common/constant/CacheConstants.java index 25118ca..82b6e3b 100644 --- a/pf_common/src/main/java/com/transitPlatForm/common/constant/CacheConstants.java +++ b/pf_common/src/main/java/com/transitPlatForm/common/constant/CacheConstants.java @@ -43,11 +43,11 @@ public class CacheConstants public static final String PWD_ERR_CNT_KEY = "pwd_err_cnt:"; /** - * lis字典缓存 + * 字典缓存 */ - public static final String COM_DICT_KEY = "com_dict:"; + public static final String REG_DICT_KEY = "reg_dict:"; /** - * lis设置缓存 + * 参数 */ public static final String COM_OPT_KEY = "com_opt:"; diff --git a/pf_common/src/main/java/com/transitPlatForm/common/core/domain/entity/reg/RegApply.java b/pf_common/src/main/java/com/transitPlatForm/common/core/domain/entity/reg/RegApply.java index 8677683..494585e 100644 --- a/pf_common/src/main/java/com/transitPlatForm/common/core/domain/entity/reg/RegApply.java +++ b/pf_common/src/main/java/com/transitPlatForm/common/core/domain/entity/reg/RegApply.java @@ -55,4 +55,5 @@ public class RegApply { private String applyid; private String reqDetailName; private String bz; + private String slzq; } diff --git a/pf_common/src/main/java/com/transitPlatForm/common/core/domain/entity/reg/RegTransitSample.java b/pf_common/src/main/java/com/transitPlatForm/common/core/domain/entity/reg/RegTransitSample.java index 6d9e6ab..0cc8c20 100644 --- a/pf_common/src/main/java/com/transitPlatForm/common/core/domain/entity/reg/RegTransitSample.java +++ b/pf_common/src/main/java/com/transitPlatForm/common/core/domain/entity/reg/RegTransitSample.java @@ -302,6 +302,10 @@ public class RegTransitSample { * 标本退回时间 */ private Date BackTime; + /** + * 生理周期 + */ + private String slzq; private String DateType; private Date DateStart; diff --git a/pf_common/src/main/java/com/transitPlatForm/common/utils/ComDictUtils.java b/pf_common/src/main/java/com/transitPlatForm/common/utils/ComDictUtils.java deleted file mode 100644 index 8b55de8..0000000 --- a/pf_common/src/main/java/com/transitPlatForm/common/utils/ComDictUtils.java +++ /dev/null @@ -1,61 +0,0 @@ -package com.transitPlatForm.common.utils; - -import com.alibaba.fastjson2.JSONArray; -import com.transitPlatForm.common.constant.CacheConstants; -//import com.transitPlatForm.common.core.domain.entity.lis.ComDict; -import com.transitPlatForm.common.core.redis.RedisCache; -import com.transitPlatForm.common.utils.spring.SpringUtils; - -import java.util.Collection; -import java.util.List; - -/** - * lis字典工具类 - */ -public class ComDictUtils { - - /** - * 设置代码字典缓存 - * - * @param zdlb 字典类别 - * @param dictDatas 字典数据列表 - */ -// public static void setDictCache(String zdlb, List dictDatas) { -// //先清除该key的所有缓存,然后再重新设置该key的缓存 -// SpringUtils.getBean(RedisCache.class).deleteObject(zdlb); -// SpringUtils.getBean(RedisCache.class).setCacheObject(getCacheKey(zdlb), dictDatas); -// } - - /** - * 清空字典缓存 - */ - public static void clearDictCache() { - Collection keys = SpringUtils.getBean(RedisCache.class).keys(CacheConstants.COM_DICT_KEY + "*"); - SpringUtils.getBean(RedisCache.class).deleteObject(keys); - } - /** - * 获取字典缓存 - * - * @param zdlb 字典类别 - * @return dictDatas 字典数据列表 - */ -// public static List getDictCache(String zdlb) { -// JSONArray arrayCache = SpringUtils.getBean(RedisCache.class).getCacheObject(getCacheKey(zdlb)); -// if (StringUtils.isNotNull(arrayCache)) { -// return arrayCache.toList(ComDict.class); -// } -// return null; -// } - - - - /** - * 设置cache key - * - * @param configKey 参数键 - * @return 缓存键key - */ - public static String getCacheKey(String configKey) { - return CacheConstants.COM_DICT_KEY + configKey; - } -} diff --git a/pf_common/src/main/java/com/transitPlatForm/common/utils/ComOptionUtils.java b/pf_common/src/main/java/com/transitPlatForm/common/utils/ComOptionUtils.java deleted file mode 100644 index 8266dc5..0000000 --- a/pf_common/src/main/java/com/transitPlatForm/common/utils/ComOptionUtils.java +++ /dev/null @@ -1,90 +0,0 @@ -package com.transitPlatForm.common.utils; - - -import cn.hutool.json.JSONUtil; -import com.transitPlatForm.common.constant.CacheConstants; -//import com.transitPlatForm.common.core.domain.entity.lis.ComOpt; -import com.transitPlatForm.common.core.redis.RedisCache; -import com.transitPlatForm.common.utils.spring.SpringUtils; - -import java.util.Collection; -import java.util.HashMap; -import java.util.List; -import java.util.Map; - - -public class ComOptionUtils { - - /** - * 设置参数缓存 - * 缓存格式:com_opt:HISOPT:SP_INTER com_opt:yq:xxdh - * @param yq 仪器 - * @param xxdh 项目代码 - * @param comOpt 参数数据 - */ -// public static void setOptCache(String yq,String xxdh, ComOpt comOpt) { -// //先清除该key的所有缓存,然后再重新设置该key的缓存 -// yq=yq.trim(); -// xxdh=xxdh.toUpperCase(); -// String key = yq+":"+xxdh; -// SpringUtils.getBean(RedisCache.class).deleteObject(key); -// SpringUtils.getBean(RedisCache.class).setCacheObject(getCacheKey(key), comOpt); -// } - /** - * 清空参数缓存 - */ - public static void clearOptCache() { - Collection keys = SpringUtils.getBean(RedisCache.class).keys(CacheConstants.COM_OPT_KEY + "*"); - SpringUtils.getBean(RedisCache.class).deleteObject(keys); - } - - public static void clearOptCache(String yq,String xxdh) { - xxdh=xxdh.toUpperCase(); - yq=yq.trim(); - Collection keys = SpringUtils.getBean(RedisCache.class).keys(CacheConstants.COM_OPT_KEY + yq+":"+xxdh); - SpringUtils.getBean(RedisCache.class).deleteObject(keys); - } - /** - * 获取参数缓存 - * 根据现在的参数,获取到的数据应该只有一条 - * @param yq 仪器 - * @param xxdh 项目代码 - * @return ComOpt 参数数据 - */ -// public static ComOpt getOptCache(String yq,String xxdh) { -// xxdh=xxdh.toUpperCase(); -// yq=yq.trim(); -// String key = yq+":"+xxdh; -// Object cacheObject = SpringUtils.getBean(RedisCache.class).getCacheObject(getCacheKey(key)); -// if (StringUtils.isNotNull(cacheObject)) { -// return (ComOpt) cacheObject; -// } -// return null; -// } - - - - /** - * 设置cache key - * - * @param configKey 参数键 - * @return 缓存键key - */ - public static String getCacheKey(String configKey) { - return CacheConstants.COM_OPT_KEY + configKey; - } - - - /** - * 设置参数值域 - * @param dddwList - * @param inputList - * @return - */ - public static String setValueRange(List dddwList,List inputList){ - Map map = new HashMap(); - map.put("dddwList",dddwList); - map.put("inputList",inputList); - return JSONUtil.toJsonStr(map); - } -} diff --git a/pf_interfaceCommon/src/main/java/com/transitPlatForm/interfaceCommon/constants/SysLogConstants.java b/pf_interfaceCommon/src/main/java/com/transitPlatForm/interfaceCommon/constants/SysLogConstants.java index 56335fd..b78cb80 100644 --- a/pf_interfaceCommon/src/main/java/com/transitPlatForm/interfaceCommon/constants/SysLogConstants.java +++ b/pf_interfaceCommon/src/main/java/com/transitPlatForm/interfaceCommon/constants/SysLogConstants.java @@ -4,32 +4,6 @@ package com.transitPlatForm.interfaceCommon.constants; * 系统日志 */ public class SysLogConstants { - public static final String FEEITEMCLASS_LOG = "条码类别"; - public static final String FEEITEMVSCLASS_LOG = "条码类别与项目对照"; - public static final String MZCX_LOG = "门诊采血"; - public static final String RPTGETRULE_LOG = "报告领取规则"; - public static final String XMFEE_LOG = "收费项目维护"; - public static final String DICT_LOG = "常见字典"; - public static final String INSTR_LOG = "仪器维护"; - public static final String REPORTITEM_LOG = "检验项目"; - public static final String XMFILTER_LOG = "光片波长对照表"; - public static final String XMLOT_LOG = "试剂维护"; - public static final String XMALARMDETAIL_LOG = "危急值特定判断条件"; - public static final String XMBASE_LOG = "报告项目"; - public static final String XMFEEINSTR_LOG = "仪器收费项目对照"; - public static final String XMREQITEMVSREPORTITEM_LOG = "收费项目报告项目"; - public static final String LISWORK_LOG = "主界面"; - public static final String COMOPT_LOG = "后台参数"; - public static final String LABINPUTMDL_LOG = "项目模板"; - public static final String LABINSTRVSREQCLASS_LOG = "仪器条码类别对照"; - public static final String LABTATCTRL_LOG = "TAT设定"; - public static final String XMCOMP_LOG = "项目组合"; - public static final String XMMED_LOG = "常用抗生素"; - public static final String XMMEDGROUP_LOG = "常用抗生素组"; - public static final String XMMEDINSTR_LOG = "抗生素通道号设定"; - public static final String XMMEDMAIN_LOG = "细菌抗生素组对照"; - public static final String XMKNOWLEDGE_LOG = "知识库"; - public static final String LABCHECKRULES_LOG = "高级审核条件"; - public static final String QCRULES_LOG = "质控设置"; - public static final String REQINPUT = "科内开单"; + public static final String REQINPUT = "自助开单"; + public static final String DICT = "字典管理"; } diff --git a/pf_interfaceCommon/src/main/java/com/transitPlatForm/interfaceCommon/utils/cache/RegDictCache.java b/pf_interfaceCommon/src/main/java/com/transitPlatForm/interfaceCommon/utils/cache/RegDictCache.java new file mode 100644 index 0000000..167b9d2 --- /dev/null +++ b/pf_interfaceCommon/src/main/java/com/transitPlatForm/interfaceCommon/utils/cache/RegDictCache.java @@ -0,0 +1,67 @@ +package com.transitPlatForm.interfaceCommon.utils.cache; + +import com.alibaba.fastjson2.JSONArray; +import com.transitPlatForm.common.constant.CacheConstants; +import com.transitPlatForm.common.core.domain.entity.reg.RegDict; +import com.transitPlatForm.common.core.redis.RedisCache; +import com.transitPlatForm.common.utils.StringUtils; +import com.transitPlatForm.common.utils.spring.SpringUtils; + +import java.util.Collection; +import java.util.List; + +public class RegDictCache { + + /** + * 设置字典缓存 + * + * @param key 参数键 + * @param regDictList 字典数据列表 + */ + public static void setDictCache(String key, List regDictList) { + SpringUtils.getBean(RedisCache.class).setCacheObject(getCacheKey(key), regDictList); + } + + + /** + * 设置cache key + * + * @param configKey 参数键 + * @return 缓存键key + */ + public static String getCacheKey(String configKey) { + return CacheConstants.REG_DICT_KEY + configKey; + } + + /** + * 获取字典缓存 + * + * @param key 参数键 + * @return dictDatas 字典数据列表 + */ + public static List getDictCache(String key) { + JSONArray arrayCache = SpringUtils.getBean(RedisCache.class).getCacheObject(getCacheKey(key)); + if (StringUtils.isNotNull(arrayCache)) { + return arrayCache.toList(RegDict.class); + } + return null; + } + + /** + * 删除指定字典缓存 + * + * @param key 字典键 + */ + public static void removeDictCache(String key) { + SpringUtils.getBean(RedisCache.class).deleteObject(getCacheKey(key)); + } + + /** + * 清空字典缓存 + */ + public static void clearDictCache() { + Collection keys = SpringUtils.getBean(RedisCache.class).keys(CacheConstants.REG_DICT_KEY + "*"); + SpringUtils.getBean(RedisCache.class).deleteObject(keys); + } + +} diff --git a/pf_interfaceCommon/src/main/resources/mapper/RegApplyMapper.xml b/pf_interfaceCommon/src/main/resources/mapper/RegApplyMapper.xml index 425dd1b..7d6a1d0 100644 --- a/pf_interfaceCommon/src/main/resources/mapper/RegApplyMapper.xml +++ b/pf_interfaceCommon/src/main/resources/mapper/RegApplyMapper.xml @@ -44,6 +44,7 @@ Status, reqDetailName, bz, + slzq, create_by,create_time ) values ( @@ -87,6 +88,7 @@ #{Status}, #{reqDetailName}, #{bz}, + #{slzq}, #{create_by},#{create_time} ) @@ -141,6 +143,7 @@ Status = #{Status}, reqDetailName = #{reqDetailName}, bz = #{bz}, + slzq = #{slzq}, applyid = #{applyid} where applyid = #{applyid} diff --git a/pf_transitPF/src/main/java/com/transitPlatForm/transitPF/controller/RegRequestInfoController.java b/pf_transitPF/src/main/java/com/transitPlatForm/transitPF/controller/RegRequestInfoController.java index f149ab5..1f3aaaa 100644 --- a/pf_transitPF/src/main/java/com/transitPlatForm/transitPF/controller/RegRequestInfoController.java +++ b/pf_transitPF/src/main/java/com/transitPlatForm/transitPF/controller/RegRequestInfoController.java @@ -1,9 +1,13 @@ package com.transitPlatForm.transitPF.controller; +import com.transitPlatForm.common.annotation.Log; import com.transitPlatForm.common.core.controller.BaseController; import com.transitPlatForm.common.core.domain.Result; -import com.transitPlatForm.transitPF.pojo.DTO.RegRequestInfoDTO; +import com.transitPlatForm.common.enums.BusinessType; +import com.transitPlatForm.interfaceCommon.constants.SysLogConstants; +import com.transitPlatForm.transitPF.pojo.DTO.reqinfo.RegRequestInfoDTO; import com.transitPlatForm.transitPF.pojo.DTO.ReqApplyInfoDTO; +import com.transitPlatForm.transitPF.pojo.DTO.reqinfo.printDTO; import com.transitPlatForm.transitPF.service.RegRequestInfoService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -11,6 +15,8 @@ import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; +import java.util.List; + /** * 自助开单界面 */ @@ -32,21 +38,24 @@ public class RegRequestInfoController extends BaseController { @ApiOperation("获取病人明细信息") @GetMapping("/queryReqDetail") - public Result queryReqDetail(String applyId){ + public Result queryReqDetail(String applyId) { return regRequestInfoService.queryReqDetail(applyId); } @ApiOperation("开单项目信息") @GetMapping("/getItemInfo") - public Result getItemInfo(){ + public Result getItemInfo() { return regRequestInfoService.getItemInfo(); } + @Log(title = SysLogConstants.REQINPUT, businessType = BusinessType.INSERT) @ApiOperation("保存申请单信息") @PostMapping("/saveReqInfo") - public Result saveReqInfo(@RequestBody ReqApplyInfoDTO reqApplyInfoDTO){ + public Result saveReqInfo(@RequestBody ReqApplyInfoDTO reqApplyInfoDTO) { //设置操作员和登录机构 + String loginYLJG = getLoginUser().getSysLoginParam().getLoginYLJG(); + if (loginYLJG == null || loginYLJG.equals("")) return new Result("-1", "获取登录的医疗机构失败!"); reqApplyInfoDTO.getRegApply().setUserCode(getUsername()); reqApplyInfoDTO.getRegApply().setUserName(getLoginUser().getUser().getNickName()); reqApplyInfoDTO.getRegApply().setSrcHospCode(getLoginUser().getSysLoginParam().getLoginYLJG()); @@ -57,24 +66,29 @@ public class RegRequestInfoController extends BaseController { /** * 打印条码 + * * @return */ + @Log(title = SysLogConstants.REQINPUT, businessType = BusinessType.PRINT) @ApiOperation("打印条码") - @GetMapping("/print") - public Result printBarCode(String applyId){ - return regRequestInfoService.printBarCode(applyId,getUsername()); + @PostMapping("/print") + public Result printBarCode(@RequestBody List barCodeList) { + return regRequestInfoService.printBarCode(barCodeList, getUsername()); } + @Log(title = SysLogConstants.REQINPUT, businessType = BusinessType.DELETE) @ApiOperation("作废申请单") @GetMapping("/cancelReq") - public Result cancelReq(String applyId){ - return regRequestInfoService.cancelReq(applyId); + public Result cancelReq(String applyId) { + return regRequestInfoService.cancelReq(applyId); } + @ApiOperation("打印机插件设置") @GetMapping("/printsetup") public Result printsetup() { return regRequestInfoService.printsetup(); } + @ApiOperation("打印机插件检查") @GetMapping("/printcheck") public Result printcheck() { diff --git a/pf_transitPF/src/main/java/com/transitPlatForm/transitPF/controller/RegTransitSampleController.java b/pf_transitPF/src/main/java/com/transitPlatForm/transitPF/controller/RegTransitSampleController.java index 2fc3a0b..74d5b27 100644 --- a/pf_transitPF/src/main/java/com/transitPlatForm/transitPF/controller/RegTransitSampleController.java +++ b/pf_transitPF/src/main/java/com/transitPlatForm/transitPF/controller/RegTransitSampleController.java @@ -59,12 +59,12 @@ public class RegTransitSampleController extends BaseController { } //@ApiOperation("条码退回") - @PostMapping("/sampleSignBack") - public Result sampleSignBack(@RequestBody SampleSignVO sampleSignVO){ - List barcode = sampleSignVO.getBarcode(); - String status = sampleSignVO.getStatus(); - return regTransitSampleService.sampleSignBack(barcode,getUsername(),status); - } +// @PostMapping("/sampleSignBack") +// public Result sampleSignBack(@RequestBody SampleSignVO sampleSignVO){ +// List barcode = sampleSignVO.getBarcode(); +// String status = sampleSignVO.getStatus(); +// return regTransitSampleService.sampleSignBack(barcode,getUsername(),status); +// } @ApiOperation("获取标本条码退回数据") @GetMapping("querySampleSignBack") diff --git a/pf_transitPF/src/main/java/com/transitPlatForm/transitPF/controller/dict/RegDictController.java b/pf_transitPF/src/main/java/com/transitPlatForm/transitPF/controller/dict/RegDictController.java index 5210593..0e7f883 100644 --- a/pf_transitPF/src/main/java/com/transitPlatForm/transitPF/controller/dict/RegDictController.java +++ b/pf_transitPF/src/main/java/com/transitPlatForm/transitPF/controller/dict/RegDictController.java @@ -8,6 +8,7 @@ import com.transitPlatForm.common.core.page.TableDataInfo; import com.transitPlatForm.common.enums.BusinessType; import com.transitPlatForm.common.utils.poi.ExcelUtil; import com.transitPlatForm.common.core.domain.entity.reg.RegDict; +import com.transitPlatForm.interfaceCommon.constants.SysLogConstants; import com.transitPlatForm.transitPF.service.RegDictService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -37,7 +38,7 @@ public class RegDictController extends BaseController { return getDataTable(list); } @ApiOperation("字典导出") - @Log(title = "字典导出", businessType = BusinessType.EXPORT) + @Log(title = SysLogConstants.DICT, businessType = BusinessType.EXPORT) @PostMapping("/export") public void export(HttpServletResponse response, RegDict post) { List list = regDictService.selectDictList(post); @@ -64,7 +65,7 @@ public class RegDictController extends BaseController { * 新增字典 */ @ApiOperation("新增字典") - @Log(title = "字典管理", businessType = BusinessType.INSERT) + @Log(title = SysLogConstants.DICT, businessType = BusinessType.INSERT) @PostMapping public AjaxResult add(@Validated @RequestBody RegDict post) { if (!regDictService.checkDictNameUnique(post)) { @@ -80,7 +81,7 @@ public class RegDictController extends BaseController { * 修改字典 */ @ApiOperation("修改字典") - @Log(title = "字典管理", businessType = BusinessType.UPDATE) + @Log(title = SysLogConstants.DICT, businessType = BusinessType.UPDATE) @PutMapping public AjaxResult edit(@Validated @RequestBody RegDict post) { if (!regDictService.checkDictNameUnique(post)) { @@ -96,7 +97,7 @@ public class RegDictController extends BaseController { * 删除字典 */ @ApiOperation("删除字典") - @Log(title = "字典管理", businessType = BusinessType.DELETE) + @Log(title = SysLogConstants.DICT, businessType = BusinessType.DELETE) @DeleteMapping("/{dictIds}") public AjaxResult remove(@PathVariable Long[] dictIds) { return toAjax(regDictService.deleteDictByIds(dictIds)); @@ -111,4 +112,12 @@ public class RegDictController extends BaseController { List posts = regDictService.selectDictAll(); return success(posts); } + + @ApiOperation("获取字典最大编码") + @GetMapping("/getMaxDictCode") + public AjaxResult getMaxDictCode(String dictType) { + String loginYLJG = getLoginUser().getSysLoginParam().getLoginYLJG(); + if(loginYLJG==null || loginYLJG.equals("")) return AjaxResult.error("获取登录的医疗机构失败!"); + return regDictService.getMaxDictCode(dictType,loginYLJG); + } } diff --git a/pf_transitPF/src/main/java/com/transitPlatForm/transitPF/mapper/RegDictMapper.java b/pf_transitPF/src/main/java/com/transitPlatForm/transitPF/mapper/RegDictMapper.java index 96c2d73..06f9549 100644 --- a/pf_transitPF/src/main/java/com/transitPlatForm/transitPF/mapper/RegDictMapper.java +++ b/pf_transitPF/src/main/java/com/transitPlatForm/transitPF/mapper/RegDictMapper.java @@ -80,4 +80,7 @@ public interface RegDictMapper { RegDict checkDictCodeUnique(@Param("dictCode") String DictCode,@Param("dictType") String dictType); List getInfoOne(String dict_type); + + String getMaxDictCode(@Param("dict_type")String dict_type,@Param("hospital_id")String hospital_id); + } diff --git a/pf_transitPF/src/main/java/com/transitPlatForm/transitPF/mapper/RegRequestInfoMapper.java b/pf_transitPF/src/main/java/com/transitPlatForm/transitPF/mapper/RegRequestInfoMapper.java index 9c47dde..1b99765 100644 --- a/pf_transitPF/src/main/java/com/transitPlatForm/transitPF/mapper/RegRequestInfoMapper.java +++ b/pf_transitPF/src/main/java/com/transitPlatForm/transitPF/mapper/RegRequestInfoMapper.java @@ -3,7 +3,7 @@ package com.transitPlatForm.transitPF.mapper; import com.transitPlatForm.common.core.domain.entity.reg.RegApply; import com.transitPlatForm.common.core.domain.entity.reg.RegApplyDetail; import com.transitPlatForm.common.core.domain.entity.reg.RegTransitSampleDetail; -import com.transitPlatForm.transitPF.pojo.DTO.RegRequestInfoDTO; +import com.transitPlatForm.transitPF.pojo.DTO.reqinfo.RegRequestInfoDTO; import org.apache.ibatis.annotations.Param; import java.util.List; diff --git a/pf_transitPF/src/main/java/com/transitPlatForm/transitPF/pojo/DTO/RegRequestInfoDTO.java b/pf_transitPF/src/main/java/com/transitPlatForm/transitPF/pojo/DTO/reqinfo/RegRequestInfoDTO.java similarity index 85% rename from pf_transitPF/src/main/java/com/transitPlatForm/transitPF/pojo/DTO/RegRequestInfoDTO.java rename to pf_transitPF/src/main/java/com/transitPlatForm/transitPF/pojo/DTO/reqinfo/RegRequestInfoDTO.java index ee825af..4204fbd 100644 --- a/pf_transitPF/src/main/java/com/transitPlatForm/transitPF/pojo/DTO/RegRequestInfoDTO.java +++ b/pf_transitPF/src/main/java/com/transitPlatForm/transitPF/pojo/DTO/reqinfo/RegRequestInfoDTO.java @@ -1,4 +1,4 @@ -package com.transitPlatForm.transitPF.pojo.DTO; +package com.transitPlatForm.transitPF.pojo.DTO.reqinfo; import lombok.AllArgsConstructor; import lombok.Data; diff --git a/pf_transitPF/src/main/java/com/transitPlatForm/transitPF/pojo/DTO/reqinfo/printDTO.java b/pf_transitPF/src/main/java/com/transitPlatForm/transitPF/pojo/DTO/reqinfo/printDTO.java new file mode 100644 index 0000000..f0d95a3 --- /dev/null +++ b/pf_transitPF/src/main/java/com/transitPlatForm/transitPF/pojo/DTO/reqinfo/printDTO.java @@ -0,0 +1,13 @@ +package com.transitPlatForm.transitPF.pojo.DTO.reqinfo; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +@Data +@NoArgsConstructor +@AllArgsConstructor +public class printDTO { + private String applyId; + private String barcode; +} diff --git a/pf_transitPF/src/main/java/com/transitPlatForm/transitPF/service/RegDictService.java b/pf_transitPF/src/main/java/com/transitPlatForm/transitPF/service/RegDictService.java index 55f7f54..961d5e8 100644 --- a/pf_transitPF/src/main/java/com/transitPlatForm/transitPF/service/RegDictService.java +++ b/pf_transitPF/src/main/java/com/transitPlatForm/transitPF/service/RegDictService.java @@ -1,5 +1,6 @@ package com.transitPlatForm.transitPF.service; +import com.transitPlatForm.common.core.domain.AjaxResult; import com.transitPlatForm.common.core.domain.Result; import com.transitPlatForm.common.core.domain.entity.reg.RegDict; @@ -87,4 +88,7 @@ public interface RegDictService { int updateDict(RegDict Dict); Result getInfoOne(String dictType); + + AjaxResult getMaxDictCode(String dictType,String loginYLJG); + } diff --git a/pf_transitPF/src/main/java/com/transitPlatForm/transitPF/service/RegRequestInfoService.java b/pf_transitPF/src/main/java/com/transitPlatForm/transitPF/service/RegRequestInfoService.java index 0955844..737c4ca 100644 --- a/pf_transitPF/src/main/java/com/transitPlatForm/transitPF/service/RegRequestInfoService.java +++ b/pf_transitPF/src/main/java/com/transitPlatForm/transitPF/service/RegRequestInfoService.java @@ -1,8 +1,11 @@ package com.transitPlatForm.transitPF.service; import com.transitPlatForm.common.core.domain.Result; -import com.transitPlatForm.transitPF.pojo.DTO.RegRequestInfoDTO; +import com.transitPlatForm.transitPF.pojo.DTO.reqinfo.RegRequestInfoDTO; import com.transitPlatForm.transitPF.pojo.DTO.ReqApplyInfoDTO; +import com.transitPlatForm.transitPF.pojo.DTO.reqinfo.printDTO; + +import java.util.List; public interface RegRequestInfoService { Result queryRegRequestInfo(RegRequestInfoDTO regRequestInfoDTO); @@ -13,7 +16,7 @@ public interface RegRequestInfoService { Result saveReqInfo(ReqApplyInfoDTO reqApplyInfoDTO); - Result printBarCode(String applyId,String userName); + Result printBarCode(List barCodeList, String userName); Result cancelReq(String applyId); Result printcheck(); diff --git a/pf_transitPF/src/main/java/com/transitPlatForm/transitPF/service/impl/RegDictServiceImpl.java b/pf_transitPF/src/main/java/com/transitPlatForm/transitPF/service/impl/RegDictServiceImpl.java index fc4e18f..8576bfb 100644 --- a/pf_transitPF/src/main/java/com/transitPlatForm/transitPF/service/impl/RegDictServiceImpl.java +++ b/pf_transitPF/src/main/java/com/transitPlatForm/transitPF/service/impl/RegDictServiceImpl.java @@ -1,9 +1,12 @@ package com.transitPlatForm.transitPF.service.impl; import com.transitPlatForm.common.constant.UserConstants; +import com.transitPlatForm.common.core.domain.AjaxResult; import com.transitPlatForm.common.core.domain.Result; import com.transitPlatForm.common.exception.ServiceException; import com.transitPlatForm.common.utils.StringUtils; +import com.transitPlatForm.interfaceCommon.utils.LisUtil; +import com.transitPlatForm.interfaceCommon.utils.cache.RegDictCache; import com.transitPlatForm.transitPF.mapper.RegDictMapper; import com.transitPlatForm.common.core.domain.entity.reg.RegDict; import com.transitPlatForm.transitPF.service.RegDictService; @@ -13,6 +16,8 @@ import org.springframework.stereotype.Service; import java.util.List; +import static com.transitPlatForm.common.core.domain.AjaxResult.success; + @Service @Slf4j public class RegDictServiceImpl implements RegDictService { @@ -103,7 +108,11 @@ public class RegDictServiceImpl implements RegDictService { */ @Override public int deleteDictById(Long DictId) { - return dictMapper.deleteDictById(DictId); + int i = dictMapper.deleteDictById(DictId); + //设置缓存 + RegDict regDict = dictMapper.selectDictById(DictId); + RegDictCache.setDictCache(regDict.getDictType(),dictMapper.getInfoOne(regDict.getDictType())); + return i; } /** @@ -131,7 +140,11 @@ public class RegDictServiceImpl implements RegDictService { */ @Override public int insertDict(RegDict Dict) { - return dictMapper.insertDict(Dict); + int i = dictMapper.insertDict(Dict); + //设置缓存 + List regDictList = dictMapper.getInfoOne(Dict.getDictType()); + RegDictCache.setDictCache(Dict.getDictType(),regDictList); + return i; } /** @@ -142,12 +155,38 @@ public class RegDictServiceImpl implements RegDictService { */ @Override public int updateDict(RegDict Dict) { - return dictMapper.updateDict(Dict); + int i = dictMapper.updateDict(Dict); + //设置缓存 + List regDictList = dictMapper.getInfoOne(Dict.getDictType()); + RegDictCache.setDictCache(Dict.getDictType(),regDictList); + return i; } @Override public Result getInfoOne(String dictType) { - List regDictList = dictMapper.getInfoOne(dictType); - return new Result("0","获取数据成功!",regDictList); + List dictCacheList = RegDictCache.getDictCache(dictType); + if(dictCacheList == null) { + //没取到缓存,则设置缓存 + dictCacheList = dictMapper.getInfoOne(dictType); + RegDictCache.setDictCache(dictType,dictCacheList); + } + return new Result("0","获取数据成功!",dictCacheList); + } + + /** + * 获取字典的最大值 + * @param dictType + * @return + */ + @Override + public AjaxResult getMaxDictCode(String dictType,String loginYLJG) { + String maxDictCode = getMaxNo(dictType,loginYLJG); + return success((Object) maxDictCode); + } + + public synchronized String getMaxNo(String dictType,String loginYLJG){ + String maxDictCode = dictMapper.getMaxDictCode(dictType,loginYLJG); + if(LisUtil.isBank(maxDictCode).equals("")) maxDictCode = "0"; + return LisUtil.isBank(Integer.parseInt(maxDictCode)+1); } } diff --git a/pf_transitPF/src/main/java/com/transitPlatForm/transitPF/service/impl/RegRequestInfoServiceImpl.java b/pf_transitPF/src/main/java/com/transitPlatForm/transitPF/service/impl/RegRequestInfoServiceImpl.java index 56b6f19..ad62788 100644 --- a/pf_transitPF/src/main/java/com/transitPlatForm/transitPF/service/impl/RegRequestInfoServiceImpl.java +++ b/pf_transitPF/src/main/java/com/transitPlatForm/transitPF/service/impl/RegRequestInfoServiceImpl.java @@ -14,15 +14,15 @@ import com.transitPlatForm.interfaceCommon.mapper.RegApplyDetailMapper; import com.transitPlatForm.interfaceCommon.mapper.RegApplyMapper; import com.transitPlatForm.interfaceCommon.utils.CommonUtil; import com.transitPlatForm.interfaceCommon.utils.LisUtil; -import com.transitPlatForm.interfaceCommon.utils.LoginConfigParamUtil; import com.transitPlatForm.interfaceCommon.websocket.ChatWebSocketServer; import com.transitPlatForm.interfaceCommon.websocket.WebSocketMessage; import com.transitPlatForm.interfaceCommon.websocket.WebSocketUser; import com.transitPlatForm.transitPF.mapper.LabIntersendListMapper; import com.transitPlatForm.transitPF.mapper.RegRequestInfoMapper; import com.transitPlatForm.transitPF.mapper.RegTransitSampleMapper; -import com.transitPlatForm.transitPF.pojo.DTO.RegRequestInfoDTO; +import com.transitPlatForm.transitPF.pojo.DTO.reqinfo.RegRequestInfoDTO; import com.transitPlatForm.transitPF.pojo.DTO.ReqApplyInfoDTO; +import com.transitPlatForm.transitPF.pojo.DTO.reqinfo.printDTO; import com.transitPlatForm.transitPF.service.RegRequestInfoService; import com.transitPlatForm.transitPF.service.util.RequestInfoUtil; import lombok.extern.slf4j.Slf4j; @@ -34,8 +34,6 @@ import org.springframework.transaction.annotation.Transactional; import javax.annotation.Resource; import java.math.BigDecimal; import java.util.*; -import java.util.stream.Collectors; -import java.util.stream.Stream; @Service @Slf4j @@ -63,36 +61,39 @@ public class RegRequestInfoServiceImpl implements RegRequestInfoService { /** * 获取申请单列表 + * * @param regRequestInfoDTO * @return */ @Override public Result queryRegRequestInfo(RegRequestInfoDTO regRequestInfoDTO) { List regApplyList = regRequestInfoMapper.queryRegRequestInfo(regRequestInfoDTO); - return new Result("0","查询成功!",regApplyList); + return new Result("0", "查询成功!", regApplyList); } /** * 获取明细信息 + * * @param applyId * @return */ @Override public Result queryReqDetail(String applyId) { RegApply regApply = regApplyMapper.queryOne(applyId); - List regApplyDetailList = regRequestInfoMapper.queryReqDetail(applyId); - ReqApplyInfoDTO reqApplyInfoDTO = new ReqApplyInfoDTO(regApply,regApplyDetailList); - return new Result("0","查询成功!",reqApplyInfoDTO); + List regApplyDetailList = regRequestInfoMapper.queryReqDetail(applyId); + ReqApplyInfoDTO reqApplyInfoDTO = new ReqApplyInfoDTO(regApply, regApplyDetailList); + return new Result("0", "查询成功!", reqApplyInfoDTO); } @Override public Result getItemInfo() { List> regItemList = regRequestInfoMapper.getItemInfo(); - return new Result("0","查询成功!",regItemList); + return new Result("0", "查询成功!", regItemList); } /** * 保存申请单信息和条码信息 + * * @param reqApplyInfoDTO * @return */ @@ -101,19 +102,19 @@ public class RegRequestInfoServiceImpl implements RegRequestInfoService { RegApply regApply = reqApplyInfoDTO.getRegApply(); List regApplyDetailList = reqApplyInfoDTO.getRegApplyDetailList(); String status = regApply.getStatus(); - if(status == null) status = ""; - if(!status.equals("10") && !status.equals("")) return new Result("-1","不是新增状态不能修改申请单!"); + if (status == null) status = ""; + if (!status.equals("10") && !status.equals("")) return new Result("-1", "不是新增状态不能修改申请单!"); //修改数据 - if(!status.equals("")){ + if (!status.equals("")) { //修改申请单信息 - applicationContext.getBean(RegRequestInfoServiceImpl.class).updateApply(regApply,regApplyDetailList); + applicationContext.getBean(RegRequestInfoServiceImpl.class).updateApply(regApply, regApplyDetailList); //删除条码信息 applicationContext.getBean(RegRequestInfoServiceImpl.class).delSampleInfo(regApply.getApplyid()); //重新生成条码信息 createBarcode(regApply.getApplyid()); - }else{ + } else { //申请单号 - String applyId = "PT"+regApply.getSrcHospCode()+DateUtil.format(commonUtil.getCurrentTime(),"yyyyMMdd")+commonUtil.getNextSeq_pro("applyno",4); + String applyId = "PT" + regApply.getSrcHospCode() + DateUtil.format(commonUtil.getCurrentTime(), "yyyyMMdd") + commonUtil.getNextSeq_pro("applyno", 4); regApply.setApplyid(applyId); regApply.setStatus("10"); //申请单状态 regApply.setCreate_by(regApply.getUserCode()); @@ -126,63 +127,60 @@ public class RegRequestInfoServiceImpl implements RegRequestInfoService { String xmmc = ""; for (RegApplyDetail regApplyDetail : regApplyDetailList) { regApplyDetail.setApplyid(applyId); - xmmc = xmmc + "," + regApplyDetail.getOrderItemName(); + xmmc = xmmc + "," + regApplyDetail.getOrderItemName(); } regApply.setReqDetailName(xmmc.substring(1)); //保存申请单信息 - applicationContext.getBean(RegRequestInfoServiceImpl.class).saveReqInfo(regApply,regApplyDetailList); + applicationContext.getBean(RegRequestInfoServiceImpl.class).saveReqInfo(regApply, regApplyDetailList); } //生成条码信息 Result result = createBarcode(regApply.getApplyid()); - if(!result.getCode().equals("0")) return result; + if (!result.getCode().equals("0")) return result; - return new Result("0","保存成功!"); + return new Result("0", "保存成功!"); } /** * 打印条码 - * @param applyId + * + * @param barCodeList + * @param userName * @return */ @Override - public Result printBarCode(String applyId,String userName) { - //产生条码信息 - Result result1 = createBarcode(applyId); - if(!result1.getCode().equals("0")) return result1; - RegTransitSampleDetail regTransitSampleDetail = new RegTransitSampleDetail(); - regTransitSampleDetail.setApplyid(applyId); - List regTransitSampleDetailList = regTransitSampleMapper.getRegTransitSampleDetail(regTransitSampleDetail); - if(regTransitSampleDetailList.size() <= 0) return new Result("-1","没有找到对应的条码信息!"); - List barcodeList = new ArrayList<>(); - for (RegTransitSampleDetail transitSampleDetail : regTransitSampleDetailList) { - if(barcodeList.contains(transitSampleDetail.getBarcode())) continue; - barcodeList.add(transitSampleDetail.getBarcode()); + public Result printBarCode(List barCodeList, String userName) { + List barcodeList1 = new ArrayList<>(); + for (printDTO printDTO : barCodeList) { + String barcode = printDTO.getBarcode(); + barcodeList1.add(barcode); + String applyId = printDTO.getApplyId(); + RegTransitSample regTransitSample = new RegTransitSample(); + regTransitSample.setBarcode(barcode); + List regTransitSampleList = regTransitSampleMapper.getRegTransitSample(regTransitSample); + if (regTransitSampleList.size() <= 0) return new Result("-1", "没有查到该标本的条码信息,请先保存数据!"); + //修改打印状态 + applicationContext.getBean(RegRequestInfoServiceImpl.class).updatePrintStatus(applyId, barcode); } - Result result = printBar(barcodeList,userName); - if(!result.equals("0")) return result; - for (String barCode: barcodeList) { - //修改状态 - applicationContext.getBean(RegRequestInfoServiceImpl.class).updatePrintStatus(applyId,barCode); - } - return new Result("0","打印成功!"); + printBar(barcodeList1, userName); + return new Result("0", "打印成功!"); } @Override public Result cancelReq(String applyId) { RegApply regApply = regApplyMapper.queryOne(applyId); - if(regApply == null) return new Result("-1","没有找到申请单信息!"); + if (regApply == null) return new Result("-1", "没有找到申请单信息!"); int status = Integer.parseInt(regApply.getStatus()); - if(status > 40 && status != 100) return new Result("-1","条码已经签收,不允许作废!"); + if (status > 40 && status != 100) return new Result("-1", "条码已经签收或者已经作废,不允许作废!"); List barcodeList = getBarcodeList(applyId); - requestInfoUtil.cancelRequest(applyId,barcodeList); - return new Result("0","作废申请单成功!"); + requestInfoUtil.cancelRequest(applyId, barcodeList); + return new Result("0", "作废申请单成功!"); } @Transactional(rollbackFor = Exception.class) - public void saveReqInfo(RegApply regApply,List regApplyDetailList){ + public void saveReqInfo(RegApply regApply, List regApplyDetailList) { regApplyMapper.insert(regApply); for (RegApplyDetail regApplyDetail : regApplyDetailList) { regApplyDetailMapper.insert(regApplyDetail); @@ -192,22 +190,23 @@ public class RegRequestInfoServiceImpl implements RegRequestInfoService { /** * 产生条码信息 + * * @param applyId * @return */ - public Result createBarcode(String applyId){ + public Result createBarcode(String applyId) { String ls_nopriceitems = ""; - if(applyId == null || applyId.equals("")) return new Result("-1","申请单号不能为空!"); + if (applyId == null || applyId.equals("")) return new Result("-1", "申请单号不能为空!"); RegApply regApply = regApplyMapper.queryOne(applyId); - if(regApply == null) return new Result("0","没有找到申请单信息!"); + if (regApply == null) return new Result("0", "没有找到申请单信息!"); RegApplyDetail regApplyDetail1 = new RegApplyDetail(); regApplyDetail1.setApplyid(applyId); List regApplyDetailList = regApplyDetailMapper.queryList(regApplyDetail1); - if(regApplyDetailList.size() <= 0) return new Result("0","没有找到申请单明细信息!"); + if (regApplyDetailList.size() <= 0) return new Result("0", "没有找到申请单明细信息!"); List regTransitSampleList = new ArrayList<>(); List regTransitSampleDetailList = new ArrayList<>(); - List> reqSqdInfoList = new ArrayList<>(); + List> reqSqdInfoList = new ArrayList<>(); //获取项目的对照信息列表 List> feeClassList = commonMapper.getFeeClassList(); @@ -218,62 +217,62 @@ public class RegRequestInfoServiceImpl implements RegRequestInfoService { //判断申请单是否已经产生条码 List regItemList = regRequestInfoMapper.existSQD(regApplyDetail.getApplyid(), String.valueOf(regApplyDetail.getUid())); - if(regItemList.size() > 0) continue; + if (regItemList.size() > 0) continue; //判断是否对照 - Map feeClass = commonUtil.getFeeClass(feeClassList,orderItemCode); - if(feeClass.size() <= 0) { - ls_nopriceitems += "~r~n"+orderItemCode + "|" + orderItemName; + Map feeClass = commonUtil.getFeeClass(feeClassList, orderItemCode); + if (feeClass.size() <= 0) { + ls_nopriceitems += "~r~n" + orderItemCode + "|" + orderItemName; continue; } - String itemClass = LisUtil.isBank(feeClass.get("itemclass")); + String itemClass = LisUtil.isBank(feeClass.get("itemclass")); - Map reqSqdInfo = new HashMap<>(); - reqSqdInfo.put("sample_PatId",regApply.getPatId()); - reqSqdInfo.put("sample_PatCardType",regApply.getPatCardType()); - reqSqdInfo.put("sample_PatCardNo",regApply.getPatCardNo()); - reqSqdInfo.put("sample_PatType",regApply.getPatType()); - reqSqdInfo.put("sample_RegNo",regApply.getRegNo()); - reqSqdInfo.put("sample_PatName",regApply.getPatName()); - reqSqdInfo.put("sample_PatSex",regApply.getPatSex()); - reqSqdInfo.put("sample_PatAge",regApply.getPatAge()); - reqSqdInfo.put("sample_AgeUnit",regApply.getAgeUnit()); - reqSqdInfo.put("sample_PatAgeShow",regApply.getPatAgeShow()); - reqSqdInfo.put("sample_PatBirthday",DateUtil.format(regApply.getPatBirthday(),"yyyy-MM-dd")); - reqSqdInfo.put("sample_PatIdentity",regApply.getPatIdentity()); - reqSqdInfo.put("sample_Phone",regApply.getPhone()); - reqSqdInfo.put("sample_Address",regApply.getAddress()); - reqSqdInfo.put("sample_PatFeeType",regApply.getPatFeeType()); - reqSqdInfo.put("sample_DepartCode",regApply.getDepartCode()); - reqSqdInfo.put("sample_DepartName",regApply.getDepartName()); - reqSqdInfo.put("sample_AreaCode",regApply.getAreaCode()); - reqSqdInfo.put("sample_AreaName",regApply.getAreaName()); - reqSqdInfo.put("sample_PatBed",regApply.getPatBed()); - reqSqdInfo.put("sample_DiagnosisCode",regApply.getDiagnosisCode()); - reqSqdInfo.put("sample_DiagnosisName",regApply.getDiagnosisName()); - reqSqdInfo.put("sample_OrderUserCode",regApply.getDoctorCode()); - reqSqdInfo.put("sample_OrderUserName",regApply.getDoctorName()); - reqSqdInfo.put("sample_OrderTime",DateUtil.format(regApply.getOrderTime(),"yyyy-MM-dd HH:mm:ss")); - reqSqdInfo.put("sample_SrcHospCode",regApply.getSrcHospCode()); - reqSqdInfo.put("sample_SrcHospName",regApply.getSrcHospName()); - reqSqdInfo.put("sample_SampleTypeCode",regApplyDetail.getSampleTypeCode()); - reqSqdInfo.put("sample_SampleTypeName",regApplyDetail.getSampleTypeName()); - reqSqdInfo.put("sample_IsER","0"); //是否急查 - reqSqdInfo.put("sample_Status","10"); //开单状态 - reqSqdInfo.put("sample_SrcHospBarcode",itemClass); //条码类别 - reqSqdInfo.put("sample_UserCode",regApply.getUserCode()); - reqSqdInfo.put("sample_UserName",regApply.getUserName()); - reqSqdInfo.put("sample_bz",regApply.getBz()); + Map reqSqdInfo = new HashMap<>(); + reqSqdInfo.put("sample_PatId", regApply.getPatId()); + reqSqdInfo.put("sample_PatCardType", regApply.getPatCardType()); + reqSqdInfo.put("sample_PatCardNo", regApply.getPatCardNo()); + reqSqdInfo.put("sample_PatType", regApply.getPatType()); + reqSqdInfo.put("sample_RegNo", regApply.getRegNo()); + reqSqdInfo.put("sample_PatName", regApply.getPatName()); + reqSqdInfo.put("sample_PatSex", regApply.getPatSex()); + reqSqdInfo.put("sample_PatAge", regApply.getPatAge()); + reqSqdInfo.put("sample_AgeUnit", regApply.getAgeUnit()); + reqSqdInfo.put("sample_PatAgeShow", regApply.getPatAgeShow()); + reqSqdInfo.put("sample_PatBirthday", DateUtil.format(regApply.getPatBirthday(), "yyyy-MM-dd")); + reqSqdInfo.put("sample_PatIdentity", regApply.getPatIdentity()); + reqSqdInfo.put("sample_Phone", regApply.getPhone()); + reqSqdInfo.put("sample_Address", regApply.getAddress()); + reqSqdInfo.put("sample_PatFeeType", regApply.getPatFeeType()); + reqSqdInfo.put("sample_DepartCode", regApply.getDepartCode()); + reqSqdInfo.put("sample_DepartName", regApply.getDepartName()); + reqSqdInfo.put("sample_AreaCode", regApply.getAreaCode()); + reqSqdInfo.put("sample_AreaName", regApply.getAreaName()); + reqSqdInfo.put("sample_PatBed", regApply.getPatBed()); + reqSqdInfo.put("sample_DiagnosisCode", regApply.getDiagnosisCode()); + reqSqdInfo.put("sample_DiagnosisName", regApply.getDiagnosisName()); + reqSqdInfo.put("sample_OrderUserCode", regApply.getDoctorCode()); + reqSqdInfo.put("sample_OrderUserName", regApply.getDoctorName()); + reqSqdInfo.put("sample_OrderTime", DateUtil.format(regApply.getOrderTime(), "yyyy-MM-dd HH:mm:ss")); + reqSqdInfo.put("sample_SrcHospCode", regApply.getSrcHospCode()); + reqSqdInfo.put("sample_SrcHospName", regApply.getSrcHospName()); + reqSqdInfo.put("sample_SampleTypeCode", regApplyDetail.getSampleTypeCode()); + reqSqdInfo.put("sample_SampleTypeName", regApplyDetail.getSampleTypeName()); + reqSqdInfo.put("sample_IsER", "0"); //是否急查 + reqSqdInfo.put("sample_Status", "10"); //开单状态 + reqSqdInfo.put("sample_SrcHospBarcode", itemClass); //条码类别 + reqSqdInfo.put("sample_UserCode", regApply.getUserCode()); + reqSqdInfo.put("sample_UserName", regApply.getUserName()); + reqSqdInfo.put("sample_bz", regApply.getBz()); - reqSqdInfo.put("detail_OrderItemCode",regApplyDetail.getOrderItemCode()); - reqSqdInfo.put("detail_OrderItemName",regApplyDetail.getOrderItemName()); - reqSqdInfo.put("detail_SrcOrderItemCode",regApplyDetail.getOrderItemCode()); - reqSqdInfo.put("detail_SrcOrderItemName",regApplyDetail.getOrderItemName()); - reqSqdInfo.put("detail_cost",regApplyDetail.getAmount()); - reqSqdInfo.put("detail_DataSource","1"); - reqSqdInfo.put("detail_applyid",regApply.getApplyid()); - reqSqdInfo.put("detail_applyDetailId",regApplyDetail.getUid()); + reqSqdInfo.put("detail_OrderItemCode", regApplyDetail.getOrderItemCode()); + reqSqdInfo.put("detail_OrderItemName", regApplyDetail.getOrderItemName()); + reqSqdInfo.put("detail_SrcOrderItemCode", regApplyDetail.getOrderItemCode()); + reqSqdInfo.put("detail_SrcOrderItemName", regApplyDetail.getOrderItemName()); + reqSqdInfo.put("detail_cost", regApplyDetail.getAmount()); + reqSqdInfo.put("detail_DataSource", "1"); + reqSqdInfo.put("detail_applyid", regApply.getApplyid()); + reqSqdInfo.put("detail_applyDetailId", regApplyDetail.getUid()); reqSqdInfoList.add(reqSqdInfo); } @@ -288,11 +287,11 @@ public class RegRequestInfoServiceImpl implements RegRequestInfoService { } }); - String itemClassOne = "" ; - int xh = 0,k = -1; + String itemClassOne = ""; + int xh = 0, k = -1; String barcode = ""; String jymd = ""; - RegTransitSample regTransitSample = null; + RegTransitSample regTransitSample = null; for (Map stringObjectMap : reqSqdInfoList) { String itemClass = LisUtil.isBank(stringObjectMap.get("sample_SrcHospBarcode")); @@ -318,7 +317,11 @@ public class RegRequestInfoServiceImpl implements RegRequestInfoService { } else { xh = 1; //条码号 - barcode = regApply.getSrcHospCode() + DateUtil.format(commonUtil.getCurrentTime(), "yyyyMMdd") + commonUtil.getNextSeq_pro("barcode", 4); + String srcHospCode = regApply.getSrcHospCode(); + if (srcHospCode.length() == 1) { + srcHospCode = String.format("%02d", Integer.valueOf(srcHospCode)); + } + barcode = DateUtil.format(commonUtil.getCurrentTime(), "yyyyMMdd") + srcHospCode + commonUtil.getNextSeq_pro("barcode", 4); itemClassOne = itemClass; } @@ -376,18 +379,18 @@ public class RegRequestInfoServiceImpl implements RegRequestInfoService { regTransitSample.setCreate_by(LisUtil.isBank(stringObjectMap.get("sample_UserCode"))); regTransitSample.setCreate_time(commonUtil.getCurrentTime()); regTransitSample.setExpressNum(LisUtil.isBank(stringObjectMap.get("sample_bz"))); - regTransitSampleList.add(k,regTransitSample); + regTransitSampleList.add(k, regTransitSample); } //保存数据 applicationContext.getBean(RegRequestInfoServiceImpl.class).saveTransitSample(regTransitSampleList, regTransitSampleDetailList); - if(!ls_nopriceitems.equals("")){ - return new Result("-1","有如下项目未分类无法生成条码,请先分类:"+ls_nopriceitems); + if (!ls_nopriceitems.equals("")) { + return new Result("-1", "有如下项目未分类无法生成条码,请先分类:" + ls_nopriceitems); } - return new Result("0","生成条码成功!"); + return new Result("0", "生成条码成功!"); } @@ -403,7 +406,7 @@ public class RegRequestInfoServiceImpl implements RegRequestInfoService { @Transactional(rollbackFor = Exception.class) - public void updateApply(RegApply regApply, List regApplyDetailList){ + public void updateApply(RegApply regApply, List regApplyDetailList) { RegApplyDetail regApplyDetail1 = new RegApplyDetail(); regApplyDetail1.setApplyid(regApply.getApplyid()); String xmmc = ""; @@ -420,10 +423,11 @@ public class RegRequestInfoServiceImpl implements RegRequestInfoService { /** * 删除条码信息 + * * @param applyId */ @Transactional(rollbackFor = Exception.class) - public void delSampleInfo(String applyId){ + public void delSampleInfo(String applyId) { RegTransitSampleDetail regTransitSampleDetail = new RegTransitSampleDetail(); regTransitSampleDetail.setApplyid(applyId); List regTransitSampleDetailList = regTransitSampleMapper.getRegTransitSampleDetail(regTransitSampleDetail); @@ -435,9 +439,10 @@ public class RegRequestInfoServiceImpl implements RegRequestInfoService { /** * 打印条码 + * * @param barcode */ - public Result printBar(List barcode,String userName){ + public Result printBar(List barcode, String userName) { String sqhStr = StrUtil.join(",", barcode); LabIntersendList labIntersendList = new LabIntersendList(); String guid = UUID.randomUUID().toString(); @@ -447,16 +452,16 @@ public class RegRequestInfoServiceImpl implements RegRequestInfoService { labIntersendList.setUserid(userName); labIntersendList.setCreatedate(commonUtil.getCurrentTime()); labIntersendListMapper.insert(labIntersendList); - WebSocketMessage wsMessage=new WebSocketMessage(); + WebSocketMessage wsMessage = new WebSocketMessage(); wsMessage.setMsgType("lisbarprint"); - wsMessage.setData("lisbarprint://"+guid); + wsMessage.setData("lisbarprint://" + guid); wsMessage.setSenderId(SecurityUtils.getUsername()); return sendprintmsg(JSONUtil.toJsonStr(wsMessage)); } @Transactional(rollbackFor = Exception.class) - public void updatePrintStatus(String applyId,String barCode){ + public void updatePrintStatus(String applyId, String barCode) { //修改申请单状态 RegApply regApply = new RegApply(); regApply.setStatus("20"); @@ -471,63 +476,66 @@ public class RegRequestInfoServiceImpl implements RegRequestInfoService { } - public List getBarcodeList(String applyId){ + public List getBarcodeList(String applyId) { List barcodeList = new ArrayList<>(); - if(applyId == null || applyId.equals("")) return barcodeList; + if (applyId == null || applyId.equals("")) return barcodeList; RegTransitSampleDetail regTransitSampleDetail = new RegTransitSampleDetail(); regTransitSampleDetail.setApplyid(applyId); List regTransitSampleDetailList = regTransitSampleMapper.getRegTransitSampleDetail(regTransitSampleDetail); - if(regTransitSampleDetailList.size() <= 0) return barcodeList; + if (regTransitSampleDetailList.size() <= 0) return barcodeList; for (RegTransitSampleDetail transitSampleDetail : regTransitSampleDetailList) { - if(barcodeList.contains(transitSampleDetail.getBarcode())) continue; + if (barcodeList.contains(transitSampleDetail.getBarcode())) continue; barcodeList.add(transitSampleDetail.getBarcode()); } return barcodeList; } - public Result sendprintmsg(String msg){ - String ip= IpUtils.getIpAddr(); - System.out.println("请求业务的IP:"+ip); + public Result sendprintmsg(String msg) { + String ip = IpUtils.getIpAddr(); + System.out.println("请求业务的IP:" + ip); List printUsers = ChatWebSocketServer.getOnlineUsersByLoginIp(ip); if (printUsers.isEmpty()) { - String webid=getLocalid(); - printUsers= ChatWebSocketServer.getOnlineUsersByWebId(webid); + String webid = getLocalid(); + printUsers = ChatWebSocketServer.getOnlineUsersByWebId(webid); } if (printUsers.isEmpty()) { System.out.println("当前客户端打印插件不在线"); - return new Result("-1","当前客户端打印插件不在线"); + return new Result("-1", "当前客户端打印插件不在线"); } - WebSocketUser webSocketUser=printUsers.get(0); + WebSocketUser webSocketUser = printUsers.get(0); ChatWebSocketServer.sendToUser(webSocketUser.getUserId(), msg); System.out.println("已给客户端[" + webSocketUser.getUsername() + "]推送打印通知,IP:" + webSocketUser.getLoginIp()); - return new Result("0","打印成功"); + return new Result("0", "打印成功"); } + @Override - public Result printcheck(){ - String ip= IpUtils.getIpAddr(); + public Result printcheck() { + String ip = IpUtils.getIpAddr(); String UserId = ChatWebSocketServer.getUserIdByIp(ip); - if(UserId==null||"".equals(UserId)){ - String webid=getLocalid(); - UserId=ChatWebSocketServer.getUsersByWebId(webid); - if(UserId!=null&&!"".equals(UserId)){ - return new Result("0","客户端插件正常"); + if (UserId == null || "".equals(UserId)) { + String webid = getLocalid(); + UserId = ChatWebSocketServer.getUsersByWebId(webid); + if (UserId != null && !"".equals(UserId)) { + return new Result("0", "客户端插件正常"); } - return new Result("-1","当前客户端打印插件不在线或未安装"); + return new Result("-1", "当前客户端打印插件不在线或未安装"); } - return new Result("0","客户端插件正常"); + return new Result("0", "客户端插件正常"); } + @Override - public Result printsetup(){ - WebSocketMessage wsMessage=new WebSocketMessage(); + public Result printsetup() { + WebSocketMessage wsMessage = new WebSocketMessage(); wsMessage.setMsgType("lisbarprint"); wsMessage.setData("lisbarprint://setup"); wsMessage.setSenderId(SecurityUtils.getUsername()); return sendprintmsg(JSONUtil.toJsonStr(wsMessage)); } + private String getLocalid() { - SysLoginParam user= SecurityUtils.getLoginUser().getSysLoginParam(); - if(user!=null) { + SysLoginParam user = SecurityUtils.getLoginUser().getSysLoginParam(); + if (user != null) { return user.getLocalid(); } return null; diff --git a/pf_transitPF/src/main/java/com/transitPlatForm/transitPF/service/impl/RegTransitSampleServiceImpl.java b/pf_transitPF/src/main/java/com/transitPlatForm/transitPF/service/impl/RegTransitSampleServiceImpl.java index a5e6088..d0872b2 100644 --- a/pf_transitPF/src/main/java/com/transitPlatForm/transitPF/service/impl/RegTransitSampleServiceImpl.java +++ b/pf_transitPF/src/main/java/com/transitPlatForm/transitPF/service/impl/RegTransitSampleServiceImpl.java @@ -94,9 +94,11 @@ public class RegTransitSampleServiceImpl implements RegTransitSampleService { SysUser sysUserOne = commonUtil.getSysUserOne(userId); if(sysUserOne == null) return new Result("-1","未查询到员工信息!"); String nickName = sysUserOne.getNickName(); + String statusSample = regTransitSample.getStatus(); switch (status){ case "20": //标本采集 if(affirmTime == null) return new Result("-1","affirmTime标本采集时间不能为空!"); + if(statusSample.equals("20")) return new Result("0","该标本已经采集!"); if(affirmUserName == null || affirmUserName.equals("")) return new Result("-1","affirmUserName标本采集人姓名不能为空!"); regTransitSample.setAffirmTime(affirmTime); regTransitSample.setAffirmUserCode(affirmUserCode); @@ -105,6 +107,7 @@ public class RegTransitSampleServiceImpl implements RegTransitSampleService { if(dstHospName == null || dstHospName.equals("")) return new Result("-1","dstHospName不能为空!"); if(sendPackTime == null) return new Result("-1","sendPackTime不能为空!"); if(sendUserName == null || sendUserName.equals("")) return new Result("-1","sendUserName不能为空!"); + if(statusSample.equals("30")) return new Result("0","该标本已经送检!"); regTransitSample.setDstHospCode(dstHospCode); regTransitSample.setDstHospName(dstHospName); regTransitSample.setSendPackTime(sendPackTime); @@ -112,12 +115,13 @@ public class RegTransitSampleServiceImpl implements RegTransitSampleService { regTransitSample.setSendUserName(sendUserName); break; case "50": //标本签收 + if(statusSample.equals("50")) return new Result("0","该标本已经签收!"); regTransitSample.setSignInTime(commonUtil.getCurrentTime()); regTransitSample.setSignInUserCode(userId); regTransitSample.setSignInUserName(nickName); break; case "100": //标本退回 - regTransitSample.setBackReasons(backReasons); + if(statusSample.equals("100")) return new Result("0","该标本已经退回!"); regTransitSample.setBackUserCode(userId); regTransitSample.setBackUserName(nickName); regTransitSample.setBackTime(commonUtil.getCurrentTime()); diff --git a/pf_transitPF/src/main/resources/mapper/RegDictMapper.xml b/pf_transitPF/src/main/resources/mapper/RegDictMapper.xml index d005496..00e5674 100644 --- a/pf_transitPF/src/main/resources/mapper/RegDictMapper.xml +++ b/pf_transitPF/src/main/resources/mapper/RegDictMapper.xml @@ -122,5 +122,9 @@ select * from reg_dict where dict_type = #{dict_type} + + \ No newline at end of file diff --git a/pf_transitPF/src/main/resources/mapper/RegRequestInfoMapper.xml b/pf_transitPF/src/main/resources/mapper/RegRequestInfoMapper.xml index 32746cb..bfbf7d4 100644 --- a/pf_transitPF/src/main/resources/mapper/RegRequestInfoMapper.xml +++ b/pf_transitPF/src/main/resources/mapper/RegRequestInfoMapper.xml @@ -11,12 +11,12 @@