拆零优化

workplace
anthonywj 11 months ago
parent e3410ca4c2
commit d4e2b85982

@ -1,22 +1,40 @@
package com.glxp.api.controller.auth; package com.glxp.api.controller.auth;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.IdUtil; import cn.hutool.core.util.IdUtil;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.glxp.api.annotation.AuthRuleAnnotation;
import com.glxp.api.common.enums.ResultEnum;
import com.glxp.api.common.res.BaseResponse; import com.glxp.api.common.res.BaseResponse;
import com.glxp.api.common.util.ResultVOUtils; import com.glxp.api.common.util.ResultVOUtils;
import com.glxp.api.controller.BaseController; import com.glxp.api.controller.BaseController;
import com.glxp.api.entity.auth.SysWorkplace; import com.glxp.api.entity.auth.SysWorkplace;
import com.glxp.api.entity.system.SysPdfTemplateRelevanceLabelEntity;
import com.glxp.api.entity.system.SystemPDFTemplateEntity;
import com.glxp.api.exception.JsonException;
import com.glxp.api.req.auth.SysWorkplaceRequest; import com.glxp.api.req.auth.SysWorkplaceRequest;
import com.glxp.api.req.dev.DeviceInfoDetailQuery;
import com.glxp.api.res.PageSimpleResponse; import com.glxp.api.res.PageSimpleResponse;
import com.glxp.api.service.auth.SysWorkplaceService; import com.glxp.api.service.auth.SysWorkplaceService;
import com.glxp.api.service.system.SystemPDFModuleService;
import com.glxp.api.service.system.SystemPDFTemplateService;
import com.glxp.api.util.JasperUtils;
import com.glxp.api.vo.dev.DeviceInfoVo;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource; import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.util.Date; import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/** /**
* @author : zhuzhu * @author : zhuzhu
@ -32,9 +50,8 @@ public class SysWorkplaceController extends BaseController {
SysWorkplaceService sysWorkplaceService; SysWorkplaceService sysWorkplaceService;
@PostMapping("/udiwms/sysWorkplace/page") @PostMapping("/udiwms/sysWorkplace/page")
public BaseResponse page(@RequestBody SysWorkplaceRequest request){ public BaseResponse page(@RequestBody SysWorkplaceRequest request) {
// Page<SystemWorkplace> page = sysWorkplaceService.page(new Page<>(request.getPage(), request.getLimit()), Wrappers.lambdaQuery(SystemWorkplace.class) // Page<SystemWorkplace> page = sysWorkplaceService.page(new Page<>(request.getPage(), request.getLimit()), Wrappers.lambdaQuery(SystemWorkplace.class)
// .eq(StrUtil.isNotBlank(request.getInvCode()),SystemWorkplace::getInvCode,request.getInvCode()) // .eq(StrUtil.isNotBlank(request.getInvCode()),SystemWorkplace::getInvCode,request.getInvCode())
// .like(StrUtil.isNotBlank(request.getKey()),SystemWorkplace::getWorkplaceId,request.getKey()) // .like(StrUtil.isNotBlank(request.getKey()),SystemWorkplace::getWorkplaceId,request.getKey())
@ -49,22 +66,22 @@ public class SysWorkplaceController extends BaseController {
} }
@PostMapping("/udiwms/sysWorkplace/addWorkplace") @PostMapping("/udiwms/sysWorkplace/addWorkplace")
public BaseResponse addWorkplace(@RequestBody SysWorkplace sysWorkplace){ public BaseResponse addWorkplace(@RequestBody SysWorkplace sysWorkplace) {
sysWorkplace.setId(IdUtil.getSnowflakeNextId()); sysWorkplace.setId(IdUtil.getSnowflakeNextId());
sysWorkplace.setCreateTime(new Date()); sysWorkplace.setCreateTime(new Date());
sysWorkplace.setUpdateTime(new Date()); sysWorkplace.setUpdateTime(new Date());
boolean save = sysWorkplaceService.save(sysWorkplace); boolean save = sysWorkplaceService.save(sysWorkplace);
if (!save){ if (!save) {
return ResultVOUtils.error("新增错误"); return ResultVOUtils.error("新增错误");
} }
return ResultVOUtils.success("新增成功"); return ResultVOUtils.success("新增成功");
} }
@PostMapping("/udiwms/sysWorkplace/updateWorkplace") @PostMapping("/udiwms/sysWorkplace/updateWorkplace")
public BaseResponse updateWorkplace(@RequestBody SysWorkplace sysWorkplace){ public BaseResponse updateWorkplace(@RequestBody SysWorkplace sysWorkplace) {
sysWorkplace.setUpdateTime(new Date()); sysWorkplace.setUpdateTime(new Date());
boolean save = sysWorkplaceService.updateById(sysWorkplace); boolean save = sysWorkplaceService.updateById(sysWorkplace);
if (!save){ if (!save) {
return ResultVOUtils.error("更新错误"); return ResultVOUtils.error("更新错误");
} }
return ResultVOUtils.success("更新成功"); return ResultVOUtils.success("更新成功");
@ -72,23 +89,57 @@ public class SysWorkplaceController extends BaseController {
@PostMapping("/udiwms/sysWorkplace/deleteWorkplace") @PostMapping("/udiwms/sysWorkplace/deleteWorkplace")
public BaseResponse deleteWorkplace(@RequestBody SysWorkplace sysWorkplace){ public BaseResponse deleteWorkplace(@RequestBody SysWorkplace sysWorkplace) {
boolean save = sysWorkplaceService.removeById(sysWorkplace); boolean save = sysWorkplaceService.removeById(sysWorkplace);
if (!save){ if (!save) {
return ResultVOUtils.error("删除错误"); return ResultVOUtils.error("删除错误");
} }
return ResultVOUtils.success("删除成功"); return ResultVOUtils.success("删除成功");
} }
@PostMapping("/udiwms/sysWorkplace/createWorkplaceId") @PostMapping("/udiwms/sysWorkplace/createWorkplaceId")
public BaseResponse createWorkplaceId(){ public BaseResponse createWorkplaceId() {
Long workplaceId = sysWorkplaceService.maxWorkplaceId(); Long workplaceId = sysWorkplaceService.maxWorkplaceId();
if (workplaceId != null){ if (workplaceId != null) {
workplaceId = workplaceId + 1; workplaceId = workplaceId + 1;
} }
return ResultVOUtils.success(workplaceId); return ResultVOUtils.success(workplaceId);
} }
@Resource
private SystemPDFModuleService systemPDFModuleService;
@Resource
private SystemPDFTemplateService systemPDFTemplateService;
@Value("${file_path}")
private String filePath;
@AuthRuleAnnotation("")
@PostMapping("/udiwms/sysWorkplace/label/print")
public BaseResponse printLabel(@RequestBody SysWorkplace sysWorkplace, HttpServletRequest request, HttpServletResponse response) throws Exception {
SysPdfTemplateRelevanceLabelEntity sysPdfTemplateRelevanceLabelEntity = systemPDFModuleService.selectByLabelId(sysWorkplace.getLabelId() + "");
if (null == sysPdfTemplateRelevanceLabelEntity) {
return ResultVOUtils.error(ResultEnum.DATA_NOT, "所属模块错误");
}
SystemPDFTemplateEntity systemPDFTemplateEntity = systemPDFTemplateService.selectById(String.valueOf(sysPdfTemplateRelevanceLabelEntity.getTemplateId()));
if (null == systemPDFTemplateEntity) {
return ResultVOUtils.error(ResultEnum.DATA_NOT, "模板错误");
}
//打印单号标签
Map<String, Object> data = new HashMap<>(1);
Map<String, Object> supData = new HashMap<>();
supData.put("workplaceId", sysWorkplace.getWorkplaceId() + "");
supData.put("workplaceName", sysWorkplace.getWorkplaceName() == null ? ' ' : sysWorkplace.getWorkplaceName());
supData.put("invName", sysWorkplace.getInvName() == null ? ' ' : sysWorkplace.getInvName());
supData.put("remake", sysWorkplace.getRemake() == null ? ' ' : sysWorkplace.getRemake());
supData.put("qrCode", "{\"DMHotskey\":{\"workPlace\":" + sysWorkplace.getWorkplaceId() + "}}");
data.put("data", supData);
String param = JSON.toJSONString(data);
log.error(param);
JasperUtils.jasperReport(request, response, param, filePath + "pdf/template/" + systemPDFTemplateEntity.getPath(), "pdf");
return ResultVOUtils.error(ResultEnum.DATA_NOT, "模板错误");
}
} }

@ -271,19 +271,22 @@ public class IoCodeTempController extends BaseController {
if (code.endsWith("\u001D")) { if (code.endsWith("\u001D")) {
code = code.substring(0, code.length() - "\u001D".length()); code = code.substring(0, code.length() - "\u001D".length());
} }
return ResultVOUtils.success(code); udiEntity.setCode(code);
return ResultVOUtils.success(udiEntity);
} else { } else {
if (newCode.startsWith("21") || (StrUtil.isNotEmpty(udiEntity.getSerialNo()) && newCode.contains("21" + udiEntity.getSerialNo()))) { if (newCode.startsWith("21") || (StrUtil.isNotEmpty(udiEntity.getSerialNo()) && newCode.contains("21" + udiEntity.getSerialNo()))) {
if (StrUtil.isEmpty(lostMsg)) { if (StrUtil.isEmpty(lostMsg)) {
lostMsg = ","; lostMsg = ",";
} }
BaseResponse baseResponse = ResultVOUtils.error(503, "条码完整性错误,缺少" + lostMsg.substring(1) + "是否继续添加?"); BaseResponse baseResponse = ResultVOUtils.error(503, "条码完整性错误,缺少" + lostMsg.substring(1) + "是否继续添加?");
baseResponse.setData(code); udiEntity.setCode(code);
baseResponse.setData(udiEntity);
return baseResponse; return baseResponse;
} }
} }
BaseResponse baseResponse = ResultVOUtils.error(502, "校验未完成"); BaseResponse baseResponse = ResultVOUtils.error(502, "校验未完成");
baseResponse.setData(code); udiEntity.setCode(code);
baseResponse.setData(udiEntity);
return baseResponse; return baseResponse;
} }
@ -706,6 +709,7 @@ public class IoCodeTempController extends BaseController {
codeEnttity.setPreSpaceCode(addOrderRequest.getPreCurSpaceCode()); codeEnttity.setPreSpaceCode(addOrderRequest.getPreCurSpaceCode());
codeEnttity.setPreInSpaceCode(addOrderRequest.getCheckPreInSpaceCode()); codeEnttity.setPreInSpaceCode(addOrderRequest.getCheckPreInSpaceCode());
codeEnttity.setRelId(addOrderRequest.getRelId()); codeEnttity.setRelId(addOrderRequest.getRelId());
codeEnttity.setFifoSplit(addOrderRequest.getFifoSplit());
codeEnttity.setCount(1); codeEnttity.setCount(1);
String unitFk = null; String unitFk = null;
if (bussinessTypeEntity.getCorpType() == ConstantStatus.CORP_TYPE_OUT) { if (bussinessTypeEntity.getCorpType() == ConstantStatus.CORP_TYPE_OUT) {
@ -716,6 +720,7 @@ public class IoCodeTempController extends BaseController {
//产品是否禁用 //产品是否禁用
udiRelevanceResponses = udiRelevanceService.selectGroupByNameCode(codeEnttity.getNameCode(), false); udiRelevanceResponses = udiRelevanceService.selectGroupByNameCode(codeEnttity.getNameCode(), false);
if (udiRelevanceResponses.size() >= 1) { if (udiRelevanceResponses.size() >= 1) {
udiRelevanceResponse = udiRelevanceResponses.get(0);
if (udiRelevanceResponse == null) { if (udiRelevanceResponse == null) {
return ResultVOUtils.error(500, "该产品信息未维护!"); return ResultVOUtils.error(500, "该产品信息未维护!");
} else if (!udiRelevanceResponse.getUseDy() && udiRelevanceResponse.getDiType() == ConstantStatus.DITYPE_SYDY) { } else if (!udiRelevanceResponse.getUseDy() && udiRelevanceResponse.getDiType() == ConstantStatus.DITYPE_SYDY) {
@ -734,6 +739,12 @@ public class IoCodeTempController extends BaseController {
return ResultVOUtils.error(500, bussinessTypeEntity.getName() + "单只允许录入非集采产品!"); return ResultVOUtils.error(500, bussinessTypeEntity.getName() + "单只允许录入非集采产品!");
} }
if (IntUtil.value(addOrderRequest.getFifoSplit()) == 2 && IntUtil.value(udiRelevanceResponse.getSplitEnable())) {
return ResultVOUtils.error(500, "当前上货只允许录入整取产品!");
}
if (IntUtil.value(addOrderRequest.getFifoSplit()) == 1 && !IntUtil.value(udiRelevanceResponse.getSplitEnable())) {
return ResultVOUtils.error(500, "当前上货只允许录入拆零产品!");
}
//计算实际数量 //计算实际数量
codeEnttity.setReCount(codeEnttity.getMyCount() * udiCalCountUtil.getActCount(udiRelevanceResponse)); codeEnttity.setReCount(codeEnttity.getMyCount() * udiCalCountUtil.getActCount(udiRelevanceResponse));
} else if (udiRelevanceResponses.size() == 0) { } else if (udiRelevanceResponses.size() == 0) {
@ -778,6 +789,7 @@ public class IoCodeTempController extends BaseController {
orderEntity.setBusType(bussinessTypeEntity.getBusType()); orderEntity.setBusType(bussinessTypeEntity.getBusType());
orderEntity.setSickerAdNum(addOrderRequest.getSickerAdNum()); orderEntity.setSickerAdNum(addOrderRequest.getSickerAdNum());
orderEntity.setWorkPlaceCode(addOrderRequest.getWorkPlaceCode()); orderEntity.setWorkPlaceCode(addOrderRequest.getWorkPlaceCode());
orderEntity.setFifoSplit(addOrderRequest.getFifoSplit());
orderService.insertOrder(orderEntity); orderService.insertOrder(orderEntity);
} }
@ -1137,7 +1149,12 @@ public class IoCodeTempController extends BaseController {
if (bussinessTypeEntity.getVailGroupBuy() == 2 && udiRelevanceResponse.isGroupBuy()) { //只采集非集采产品 if (bussinessTypeEntity.getVailGroupBuy() == 2 && udiRelevanceResponse.isGroupBuy()) { //只采集非集采产品
return ResultVOUtils.error(500, bussinessTypeEntity.getName() + "单只允许录入非集采产品!"); return ResultVOUtils.error(500, bussinessTypeEntity.getName() + "单只允许录入非集采产品!");
} }
if (IntUtil.value(addOrderRequest.getFifoSplit()) == 2 && IntUtil.value(udiRelevanceResponse.getSplitEnable())) {
return ResultVOUtils.error(500, "当前上货只允许录入整取产品!");
}
if (IntUtil.value(addOrderRequest.getFifoSplit()) == 1 && !IntUtil.value(udiRelevanceResponse.getSplitEnable())) {
return ResultVOUtils.error(500, "当前上货只允许录入拆零产品!");
}
//计算实际数量 //计算实际数量
codeEnttity.setReCount(codeEnttity.getMyCount() * udiCalCountUtil.getActCount(udiRelevanceResponse)); codeEnttity.setReCount(codeEnttity.getMyCount() * udiCalCountUtil.getActCount(udiRelevanceResponse));
} else if (udiRelevanceResponses.size() == 0) { } else if (udiRelevanceResponses.size() == 0) {
@ -2007,7 +2024,12 @@ public class IoCodeTempController extends BaseController {
if (bussinessTypeEntity.getVailGroupBuy() == 2 && udiRelevanceResponse.isGroupBuy()) { //只采集非集采产品 if (bussinessTypeEntity.getVailGroupBuy() == 2 && udiRelevanceResponse.isGroupBuy()) { //只采集非集采产品
return ResultVOUtils.error(500, bussinessTypeEntity.getName() + "单只允许录入非集采产品!"); return ResultVOUtils.error(500, bussinessTypeEntity.getName() + "单只允许录入非集采产品!");
} }
if (IntUtil.value(addOrderRequest.getFifoSplit()) == 2 && IntUtil.value(udiRelevanceResponse.getSplitEnable())) {
return ResultVOUtils.error(500, "当前上货只允许录入整取产品!");
}
if (IntUtil.value(addOrderRequest.getFifoSplit()) == 1 && !IntUtil.value(udiRelevanceResponse.getSplitEnable())) {
return ResultVOUtils.error(500, "当前上货只允许录入拆零产品!");
}
//计算实际数量 //计算实际数量
codeEnttity.setReCount(codeEnttity.getMyCount() * udiCalCountUtil.getActCount(udiRelevanceResponse)); codeEnttity.setReCount(codeEnttity.getMyCount() * udiCalCountUtil.getActCount(udiRelevanceResponse));
} else if (udiRelevanceResponses.size() == 0) { } else if (udiRelevanceResponses.size() == 0) {

@ -7,10 +7,7 @@ import com.glxp.api.common.enums.ResultEnum;
import com.glxp.api.common.res.BaseResponse; import com.glxp.api.common.res.BaseResponse;
import com.glxp.api.common.util.ResultVOUtils; import com.glxp.api.common.util.ResultVOUtils;
import com.glxp.api.controller.BaseController; import com.glxp.api.controller.BaseController;
import com.glxp.api.entity.basic.BasicSkPrescribeDiEntity; import com.glxp.api.entity.basic.*;
import com.glxp.api.entity.basic.BasicSkPrescribeEntity;
import com.glxp.api.entity.basic.UdiEntity;
import com.glxp.api.entity.basic.UdiProductEntity;
import com.glxp.api.entity.inout.IoSplitCodeEntity; import com.glxp.api.entity.inout.IoSplitCodeEntity;
import com.glxp.api.entity.thrsys.BasicInsChdrugEntity; import com.glxp.api.entity.thrsys.BasicInsChdrugEntity;
import com.glxp.api.req.inout.AddTagCodeReqeust; import com.glxp.api.req.inout.AddTagCodeReqeust;
@ -20,13 +17,11 @@ import com.glxp.api.req.thrsys.ThrInsChDrugFeeRequest;
import com.glxp.api.res.PageSimpleResponse; import com.glxp.api.res.PageSimpleResponse;
import com.glxp.api.res.basic.UdiRelevanceResponse; import com.glxp.api.res.basic.UdiRelevanceResponse;
import com.glxp.api.res.inout.IoSplitCodeDetailResponse; import com.glxp.api.res.inout.IoSplitCodeDetailResponse;
import com.glxp.api.service.basic.BasicSkPrescribeDiService; import com.glxp.api.service.basic.*;
import com.glxp.api.service.basic.BasicSkPrescribeService;
import com.glxp.api.service.basic.UdiProductService;
import com.glxp.api.service.basic.UdiRelevanceService;
import com.glxp.api.service.inout.IoSplitCodeDetailService; import com.glxp.api.service.inout.IoSplitCodeDetailService;
import com.glxp.api.service.inout.IoSplitCodeService; import com.glxp.api.service.inout.IoSplitCodeService;
import com.glxp.api.service.inout.IoSplitFifoCodeService; import com.glxp.api.service.inout.IoSplitFifoCodeService;
import com.glxp.api.util.IntUtil;
import com.glxp.api.util.udi.FilterUdiUtils; import com.glxp.api.util.udi.FilterUdiUtils;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
@ -38,6 +33,7 @@ import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource; import javax.annotation.Resource;
import javax.validation.Valid; import javax.validation.Valid;
import java.util.Date;
import java.util.List; import java.util.List;
@Slf4j @Slf4j
@ -116,6 +112,8 @@ public class IoSplitController extends BaseController {
IoSplitFifoCodeService splitFifoCodeService; IoSplitFifoCodeService splitFifoCodeService;
@Resource @Resource
BasicSkPrescribeService basicSkPrescribeService; BasicSkPrescribeService basicSkPrescribeService;
@Resource
BasicSkPrescribeItemCodeService basicSkPrescribeItemCodeService;
/** /**
* ) * )
@ -141,10 +139,12 @@ public class IoSplitController extends BaseController {
UdiEntity udiEntity = FilterUdiUtils.getUdi(code); UdiEntity udiEntity = FilterUdiUtils.getUdi(code);
if (udiEntity == null) if (udiEntity == null)
return ResultVOUtils.error(500, "无效条码!"); return ResultVOUtils.error(500, "无效条码!");
UdiRelevanceResponse udiRelevanceResponse;
List<UdiRelevanceResponse> udiRelevanceResponses = udiRelevanceService.selectGroupByNameCode(udiEntity.getUdi(), null); List<UdiRelevanceResponse> udiRelevanceResponses = udiRelevanceService.selectGroupByNameCode(udiEntity.getUdi(), null);
if (CollUtil.isEmpty(udiRelevanceResponses)) if (CollUtil.isEmpty(udiRelevanceResponses))
return ResultVOUtils.error(500, "耗材字典不存在此产品!"); return ResultVOUtils.error(500, "耗材字典不存在此产品!");
else
udiRelevanceResponse = udiRelevanceResponses.get(0);
//2.校验是否处方单UDI码 //2.校验是否处方单UDI码
List<BasicSkPrescribeDiEntity> basicSkPrescribeDiEntities = basicSkPrescribeDiService.findByPrescribe(addTagCodeReqeust.getPrescribeNum()); List<BasicSkPrescribeDiEntity> basicSkPrescribeDiEntities = basicSkPrescribeDiService.findByPrescribe(addTagCodeReqeust.getPrescribeNum());
BasicSkPrescribeDiEntity basicSkPrescribeDiEntity = vailPrescribeProduct(udiRelevanceResponses, basicSkPrescribeDiEntities, udiEntity); BasicSkPrescribeDiEntity basicSkPrescribeDiEntity = vailPrescribeProduct(udiRelevanceResponses, basicSkPrescribeDiEntities, udiEntity);
@ -156,15 +156,31 @@ public class IoSplitController extends BaseController {
if (!b1) { if (!b1) {
return ResultVOUtils.error(500, "该UDI码未出库无法使用"); return ResultVOUtils.error(500, "该UDI码未出库无法使用");
} }
// //3.判断收费项目是否已经赋码或是否满足该收费项目数量 //4.
// splitCodeService. BasicSkPrescribeItemCode exitCode = basicSkPrescribeItemCodeService.findByCode(basicSkPrescribeDiEntity.getPrescribeCode(), code);
if (StrUtil.isEmpty(udiEntity.getSerialNo()) && exitCode != null) {
exitCode.setScanCount(IntUtil.value(exitCode.getScanCount()) + 1);
// List<IoSplitCodeDetailResponse> splitCodeEntities = splitCodeDetailService.filterList(splitDetailCodeRequest); basicSkPrescribeItemCodeService.updateById(exitCode);
// PageInfo<IoSplitCodeDetailResponse> pageInfo = new PageInfo<>(splitCodeEntities); } else if (StrUtil.isNotEmpty(udiEntity.getSerialNo()) && exitCode != null) {
// PageSimpleResponse<IoSplitCodeDetailResponse> pageSimpleResponse = new PageSimpleResponse<>(); return ResultVOUtils.error(500, "重复扫码!");
// pageSimpleResponse.setTotal(pageInfo.getTotal()); } else {
// pageSimpleResponse.setList(splitCodeEntities); BasicSkPrescribeItemCode basicSkPrescribeItemCode =
BasicSkPrescribeItemCode.builder()
.udiCode(code)
.itemCode(basicSkPrescribeDiEntity.getItemCode())
.itemName(basicSkPrescribeDiEntity.getItemName())
.relId(basicSkPrescribeDiEntity.getRelId())
.nameCode(udiRelevanceResponse.getNameCode())
.sickerCode(basicSkPrescribeDiEntity.getSickerCode())
.prescribeCode(basicSkPrescribeDiEntity.getPrescribeCode())
.createTime(new Date())
.createUser(getUserId())
.updateTime(new Date())
.updateUser(getUserId())
.scanCount(1)
.build();
basicSkPrescribeItemCodeService.save(basicSkPrescribeItemCode);
}
return ResultVOUtils.success("赋码成功"); return ResultVOUtils.success("赋码成功");
} }

@ -39,6 +39,25 @@ public class IoSplitFifoController extends BaseController {
if (bindingResult.hasErrors()) { if (bindingResult.hasErrors()) {
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage()); return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage());
} }
List<IoSplitCodeResponse> splitCodeEntities = splitFifoCodeService.filterGroupList(splitFifoCodeRequest);
PageInfo<IoSplitCodeResponse> pageInfo = new PageInfo<>(splitCodeEntities);
PageSimpleResponse<IoSplitCodeResponse> pageSimpleResponse = new PageSimpleResponse<>();
pageSimpleResponse.setTotal(pageInfo.getTotal());
pageSimpleResponse.setList(splitCodeEntities);
return ResultVOUtils.success(pageSimpleResponse);
}
/**
*
*
* @return
*/
@GetMapping("/udiwms/ioSplit/code/filter")
public BaseResponse filterList(IoSplitFifoCodeRequest splitFifoCodeRequest,
BindingResult bindingResult) {
if (bindingResult.hasErrors()) {
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage());
}
List<IoSplitCodeResponse> splitCodeEntities = splitFifoCodeService.filterList(splitFifoCodeRequest); List<IoSplitCodeResponse> splitCodeEntities = splitFifoCodeService.filterList(splitFifoCodeRequest);
PageInfo<IoSplitCodeResponse> pageInfo = new PageInfo<>(splitCodeEntities); PageInfo<IoSplitCodeResponse> pageInfo = new PageInfo<>(splitCodeEntities);
PageSimpleResponse<IoSplitCodeResponse> pageSimpleResponse = new PageSimpleResponse<>(); PageSimpleResponse<IoSplitCodeResponse> pageSimpleResponse = new PageSimpleResponse<>();

@ -13,6 +13,8 @@ import java.util.List;
@Mapper @Mapper
public interface IoSplitFifoCodeMapper extends BaseMapper<IoSplitFifoCodeEntity> { public interface IoSplitFifoCodeMapper extends BaseMapper<IoSplitFifoCodeEntity> {
List<IoSplitCodeResponse> filterGroupList(IoSplitFifoCodeRequest splitFifoCodeRequest);
List<IoSplitCodeResponse> filterList(IoSplitFifoCodeRequest splitFifoCodeRequest); List<IoSplitCodeResponse> filterList(IoSplitFifoCodeRequest splitFifoCodeRequest);
} }

@ -71,7 +71,8 @@ public class SysWorkplace implements Serializable {
@TableField(exist = false) @TableField(exist = false)
private String invName; private String invName;
@TableField(exist = false)
private String labelId;
} }

@ -6,104 +6,116 @@ import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable; import java.io.Serializable;
import java.util.Date; import java.util.Date;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data; import lombok.Data;
import lombok.NoArgsConstructor;
/** /**
* *
*/ */
@ApiModel(value="com-glxp-api-entity-basic-BasicSkPrescribeItemCode") @ApiModel(value = "com-glxp-api-entity-basic-BasicSkPrescribeItemCode")
@Data @Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
@TableName(value = "basic_sk_prescribe_item_code") @TableName(value = "basic_sk_prescribe_item_code")
public class BasicSkPrescribeItemCode implements Serializable { public class BasicSkPrescribeItemCode implements Serializable {
@TableId(value = "id", type = IdType.INPUT) @TableId(value = "id", type = IdType.INPUT)
@ApiModelProperty(value="") @ApiModelProperty(value = "")
private Integer id; private Integer id;
/** /**
* UDI * UDI
*/ */
@TableField(value = "udiCode") @TableField(value = "udiCode")
@ApiModelProperty(value="绑定UDI码") @ApiModelProperty(value = "绑定UDI码")
private String udiCode; private String udiCode;
/** /**
* *
*/ */
@TableField(value = "itemCode") @TableField(value = "itemCode")
@ApiModelProperty(value="收费项目编码") @ApiModelProperty(value = "收费项目编码")
private String itemCode; private String itemCode;
/** /**
* *
*/ */
@TableField(value = "itemName") @TableField(value = "itemName")
@ApiModelProperty(value="收费项目名称") @ApiModelProperty(value = "收费项目名称")
private String itemName; private String itemName;
/** /**
* ID * ID
*/ */
@TableField(value = "relId") @TableField(value = "relId")
@ApiModelProperty(value="物资字典ID") @ApiModelProperty(value = "物资字典ID")
private Long relId; private Long relId;
/** /**
* *
*/ */
@TableField(value = "nameCode") @TableField(value = "nameCode")
@ApiModelProperty(value="最小销售产品标识") @ApiModelProperty(value = "最小销售产品标识")
private String nameCode; private String nameCode;
/** /**
* *
*/ */
@TableField(value = "sickerCode") @TableField(value = "sickerCode")
@ApiModelProperty(value="患者编码") @ApiModelProperty(value = "患者编码")
private String sickerCode; private String sickerCode;
/** /**
* *
*/ */
@TableField(value = "prescribeCode") @TableField(value = "prescribeCode")
@ApiModelProperty(value="处方编码") @ApiModelProperty(value = "处方编码")
private String prescribeCode; private String prescribeCode;
/** /**
* *
*/ */
@TableField(value = "remark") @TableField(value = "remark")
@ApiModelProperty(value="备注") @ApiModelProperty(value = "备注")
private String remark; private String remark;
/** /**
* *
*/ */
@TableField(value = "createTime") @TableField(value = "createTime")
@ApiModelProperty(value="创建时间") @ApiModelProperty(value = "创建时间")
private Date createTime; private Date createTime;
/** /**
* *
*/ */
@TableField(value = "`createUser`") @TableField(value = "`createUser`")
@ApiModelProperty(value="创建人") @ApiModelProperty(value = "创建人")
private String createUser; private Long createUser;
/** /**
* *
*/ */
@TableField(value = "updateTime") @TableField(value = "updateTime")
@ApiModelProperty(value="更新时间") @ApiModelProperty(value = "更新时间")
private Date updateTime; private Date updateTime;
/** /**
* *
*/ */
@TableField(value = "updateUser") @TableField(value = "updateUser")
@ApiModelProperty(value="更新人") @ApiModelProperty(value = "更新人")
private String updateUser; private Long updateUser;
@TableField(value = "scanCount")
@ApiModelProperty(value = "扫码数量")
private Integer scanCount;
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
} }

@ -1,59 +1,23 @@
package com.glxp.api.entity.basic; package com.glxp.api.entity.basic;
import cn.hutool.core.util.StrUtil; import cn.hutool.core.util.StrUtil;
import lombok.Data;
/** /**
* @author * @author
* @date 2020/9/22. * @date 2020/9/22.
*/ */
@Data
public class UdiEntity { public class UdiEntity {
private String code;
private String batchNo; private String batchNo;
private String produceDate; private String produceDate;
private String expireDate; private String expireDate;
private String serialNo; private String serialNo;
private String udi; private String udi;
public String getBatchNo() {
return batchNo;
}
public void setBatchNo(String batchNo) {
this.batchNo = batchNo;
}
public String getProduceDate() {
return produceDate;
}
public void setProduceDate(String produceDate) {
this.produceDate = produceDate;
}
public String getExpireDate() {
return expireDate;
}
public void setExpireDate(String expireDate) {
this.expireDate = expireDate;
}
public String getSerialNo() {
return serialNo;
}
public void setSerialNo(String serialNo) {
this.serialNo = serialNo;
}
public String getUdi() {
return udi;
}
public void setUdi(String udi) {
this.udi = udi;
}
@Override @Override
public String toString() { public String toString() {
return "UdiEntity{" + return "UdiEntity{" +

@ -244,6 +244,13 @@ public class UdiRelevanceEntity {
private Integer useLeverCount; private Integer useLeverCount;
/**
*
*/
@TableField(value = "splitEnable")
private Boolean splitEnable;
/** /**
* *
*/ */

@ -166,6 +166,11 @@ public class IoCodeEntity implements Serializable {
@TableField(exist = false) @TableField(exist = false)
private int scanCount; private int scanCount;
/**
* 1:2:
*/
@TableField(value = "fifoSplit")
private Integer fifoSplit;
@JsonIgnore @JsonIgnore
public int getMyCount() { public int getMyCount() {

@ -182,6 +182,12 @@ public class IoCodeTempEntity {
@TableField(value = "productType") @TableField(value = "productType")
private Integer productType; private Integer productType;
/**
* 1:2:
*/
@TableField(value = "fifoSplit")
private Integer fifoSplit;
public int getMyCount() { public int getMyCount() {
if (count == null) if (count == null)
return 0; return 0;

@ -329,5 +329,10 @@ public class IoOrderEntity {
@TableField(value = "productType") @TableField(value = "productType")
private Integer productType; private Integer productType;
/**
* 1:2:
*/
@TableField(value = "fifoSplit")
private Integer fifoSplit;
} }

@ -191,5 +191,11 @@ public class IoSplitFifoCodeEntity implements Serializable {
@ApiModelProperty(value = "备注") @ApiModelProperty(value = "备注")
private String remark; private String remark;
/**
* 1:2:
*/
@TableField(value = "fifoSplit")
private Integer fifoSplit;
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
} }

@ -271,6 +271,7 @@ public class AddProductRequest {
private String useLevelDi; private String useLevelDi;
private String useLevelUnit; private String useLevelUnit;
private Integer useLeverCount; private Integer useLeverCount;
private Boolean splitEnable;
/** /**
* *

@ -116,6 +116,7 @@ public class UdiRelevanceSaveRequest {
private Boolean needCert; //是否需要资质材料 private Boolean needCert; //是否需要资质材料
private String certIdFk; private String certIdFk;
private Integer zdcfsycs; private Integer zdcfsycs;
private Boolean splitEnable;
/** /**
* *

@ -46,4 +46,9 @@ public class AddOrderRequest {
private String workPlaceCode; private String workPlaceCode;
private Integer productType; private Integer productType;
/**
* 1:2:
*/
private Integer fifoSplit;
} }

@ -130,4 +130,6 @@ public class IoSplitFifoCodeRequest extends ListPageRequest {
* *
*/ */
private String remark; private String remark;
private Integer fifoSplit;
} }

@ -82,7 +82,10 @@ public class BasicSkPrescribeResponse {
private String sickName; private String sickName;
private String clinicNumber;
private String workPlaceCode;
private String workPlaceName;
/** /**
* *
*/ */

@ -126,7 +126,7 @@ public class UdiRelevanceResponse {
private boolean dispatch; //是否可配送 private boolean dispatch; //是否可配送
private boolean groupBuy; //是否集采产品 private boolean groupBuy; //是否集采产品
private boolean needCert; //是否需要资质材料 private boolean needCert; //是否需要资质材料
private Boolean splitEnable;
private String classifyName; //物资分类名称 private String classifyName; //物资分类名称
private Integer zdcfsycs; private Integer zdcfsycs;
@ -241,7 +241,6 @@ public class UdiRelevanceResponse {
private String useLevelDi; private String useLevelDi;
private String useLevelUnit; private String useLevelUnit;
private Integer useLeverCount; private Integer useLeverCount;
private String payFeeCode; private String payFeeCode;

@ -66,6 +66,8 @@ public class IoSplitCodeResponse {
*/ */
private Long supId; private Long supId;
private String supName;
/** /**
* *
*/ */
@ -86,6 +88,8 @@ public class IoSplitCodeResponse {
*/ */
private String workPlaceCode; private String workPlaceCode;
private String workPlaceName;
/** /**
* 1:2 * 1:2
*/ */
@ -132,7 +136,7 @@ public class IoSplitCodeResponse {
private String remark; private String remark;
private Integer groupCount; private Integer groupCount;
private Integer fifoSplit;
//产品信息----------------------------start---------------------- //产品信息----------------------------start----------------------
private String cpmctymc; private String cpmctymc;
private String ggxh; private String ggxh;

@ -1,12 +1,23 @@
package com.glxp.api.service.basic; package com.glxp.api.service.basic;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.util.List; import java.util.List;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.glxp.api.entity.basic.BasicSkPrescribeItemCode; import com.glxp.api.entity.basic.BasicSkPrescribeItemCode;
import com.glxp.api.dao.basic.BasicSkPrescribeItemCodeMapper; import com.glxp.api.dao.basic.BasicSkPrescribeItemCodeMapper;
@Service @Service
public class BasicSkPrescribeItemCodeService extends ServiceImpl<BasicSkPrescribeItemCodeMapper, BasicSkPrescribeItemCode> { public class BasicSkPrescribeItemCodeService extends ServiceImpl<BasicSkPrescribeItemCodeMapper, BasicSkPrescribeItemCode> {
@Resource
BasicSkPrescribeItemCodeMapper basicSkPrescribeItemCodeMapper;
public BasicSkPrescribeItemCode findByCode(String prescribeCode, String code) {
return basicSkPrescribeItemCodeMapper.selectOne(new LambdaQueryWrapper<BasicSkPrescribeItemCode>().eq(BasicSkPrescribeItemCode::getPrescribeCode, prescribeCode)
.eq(BasicSkPrescribeItemCode::getUdiCode, code).last("limit 1"));
}
} }

@ -227,6 +227,7 @@ public class UdiProductService {
udiRelevanceEntity.setIsUseDy(false); udiRelevanceEntity.setIsUseDy(false);
udiRelevanceEntity.setUuid(udiProductEntity.getUuid()); udiRelevanceEntity.setUuid(udiProductEntity.getUuid());
udiRelevanceEntity.setNeedCert(false); udiRelevanceEntity.setNeedCert(false);
udiRelevanceEntity.setSplitEnable(false);
udiRelevanceEntity.setPurType(1); udiRelevanceEntity.setPurType(1);
udiRelevanceEntity.setAttributeType(addProductRequest.getAttributeType()); udiRelevanceEntity.setAttributeType(addProductRequest.getAttributeType());
udiRelevanceEntity.setHcType(addProductRequest.getHcType()); udiRelevanceEntity.setHcType(addProductRequest.getHcType());
@ -268,6 +269,7 @@ public class UdiProductService {
//修改关联表 //修改关联表
udiRelevanceEntity.setUseLeverCount(addProductRequest.getUseLeverCount()); udiRelevanceEntity.setUseLeverCount(addProductRequest.getUseLeverCount());
udiRelevanceEntity.setSplitEnable(addProductRequest.getSplitEnable());
udiRelevanceEntity.setUseLevelDi(addProductRequest.getUseLevelDi()); udiRelevanceEntity.setUseLevelDi(addProductRequest.getUseLevelDi());
udiRelevanceEntity.setUseLevelUnit(addProductRequest.getUseLevelUnit()); udiRelevanceEntity.setUseLevelUnit(addProductRequest.getUseLevelUnit());
udiRelevanceEntity.setDistributeLevelDi(addProductRequest.getDistributeLevelDi()); udiRelevanceEntity.setDistributeLevelDi(addProductRequest.getDistributeLevelDi());
@ -284,6 +286,7 @@ public class UdiProductService {
udiRelevanceEntity.setIsUseDy(false); udiRelevanceEntity.setIsUseDy(false);
udiRelevanceEntity.setUuid(IdUtil.getSnowflakeNextId() + ""); udiRelevanceEntity.setUuid(IdUtil.getSnowflakeNextId() + "");
udiRelevanceEntity.setNeedCert(false); udiRelevanceEntity.setNeedCert(false);
udiRelevanceEntity.setSplitEnable(false);
udiRelevanceEntity.setPurType(1); udiRelevanceEntity.setPurType(1);
udiRelevanceEntity.setProductsType(2); udiRelevanceEntity.setProductsType(2);
udiRelevanceEntity.setAttributeType(addProductRequest.getAttributeType()); udiRelevanceEntity.setAttributeType(addProductRequest.getAttributeType());

@ -1226,12 +1226,27 @@ public class IoCheckInoutService {
List<IoSplitFifoCodeEntity> splitCodeEntities = new ArrayList<>(); List<IoSplitFifoCodeEntity> splitCodeEntities = new ArrayList<>();
if (CollUtil.isNotEmpty(codeList)) { if (CollUtil.isNotEmpty(codeList)) {
for (IoCodeEntity codeEntity : codeList) { for (IoCodeEntity codeEntity : codeList) {
IoSplitFifoCodeEntity splitCodeEntity = new IoSplitFifoCodeEntity(); IoSplitFifoCodeEntity ioSplitFifoCodeEntity = null;
BeanUtils.copyProperties(codeEntity, splitCodeEntity); if (StrUtil.isEmpty(codeEntity.getSerialNo())) {
splitCodeEntity.setInBactchNo(codeEntity.getInBatchNo()); ioSplitFifoCodeEntity = splitFifoCodeService.findByCode(codeEntity.getCode(), orderEntity.getWorkPlaceCode());
splitCodeEntity.setTotalCount(codeEntity.getReCount()); }
splitCodeEntity.setId(null); if (ioSplitFifoCodeEntity != null) {
splitCodeEntities.add(splitCodeEntity); ioSplitFifoCodeEntity.setScanCount(IntUtil.value(ioSplitFifoCodeEntity.getScanCount()) + IntUtil.value(codeEntity.getCount()));
ioSplitFifoCodeEntity.setTotalCount(IntUtil.value(ioSplitFifoCodeEntity.getTotalCount()) + IntUtil.value(codeEntity.getReCount()));
ioSplitFifoCodeEntity.setUpdateTime(new Date());
splitFifoCodeService.updateById(ioSplitFifoCodeEntity);
} else {
IoSplitFifoCodeEntity splitCodeEntity = new IoSplitFifoCodeEntity();
BeanUtils.copyProperties(codeEntity, splitCodeEntity);
splitCodeEntity.setInBactchNo(codeEntity.getInBatchNo());
splitCodeEntity.setScanCount(codeEntity.getCount());
splitCodeEntity.setTotalCount(codeEntity.getReCount());
splitCodeEntity.setSupId(Long.parseLong(codeEntity.getSupId()));
splitCodeEntity.setWorkPlaceCode(orderEntity.getWorkPlaceCode());
splitCodeEntity.setFifoSplit(codeEntity.getFifoSplit());
splitCodeEntity.setId(null);
splitCodeEntities.add(splitCodeEntity);
}
} }
} }
splitFifoCodeService.saveBatch(splitCodeEntities); splitFifoCodeService.saveBatch(splitCodeEntities);
@ -1241,14 +1256,21 @@ public class IoCheckInoutService {
List<IoSplitFifoCodeEntity> splitCodeEntities = new ArrayList<>(); List<IoSplitFifoCodeEntity> splitCodeEntities = new ArrayList<>();
if (CollUtil.isNotEmpty(codeList)) { if (CollUtil.isNotEmpty(codeList)) {
for (IoCodeEntity codeEntity : codeList) { for (IoCodeEntity codeEntity : codeList) {
IoSplitFifoCodeEntity splitCodeEntity = new IoSplitFifoCodeEntity(); IoSplitFifoCodeEntity ioSplitFifoCodeEntity = null;
BeanUtils.copyProperties(codeEntity, splitCodeEntity); ioSplitFifoCodeEntity = splitFifoCodeService.findByCode(codeEntity.getCode(), orderEntity.getWorkPlaceCode());
splitCodeEntity.setInBactchNo(codeEntity.getInBatchNo()); if (StrUtil.isEmpty(codeEntity.getSerialNo())) {
splitCodeEntity.setTotalCount(codeEntity.getReCount()); if (ioSplitFifoCodeEntity != null) {
splitCodeEntity.setId(null); ioSplitFifoCodeEntity.setScanCount(IntUtil.value(ioSplitFifoCodeEntity.getScanCount()) - IntUtil.value(codeEntity.getCount()));
ioSplitFifoCodeEntity.setTotalCount(IntUtil.value(ioSplitFifoCodeEntity.getTotalCount()) - IntUtil.value(codeEntity.getReCount()));
ioSplitFifoCodeEntity.setUpdateTime(new Date());
splitFifoCodeService.updateById(ioSplitFifoCodeEntity);
}
} else {
splitCodeEntities.add(ioSplitFifoCodeEntity);
}
} }
} }
splitFifoCodeService.saveBatch(splitCodeEntities); splitFifoCodeService.removeBatchByIds(splitCodeEntities);
} }
} }
} else { } else {

@ -59,9 +59,9 @@ public class IoSplitCodeService extends ServiceImpl<IoSplitCodeMapper, IoSplitCo
/** /**
* *
*/ */
public void prescribeTagCode(BasicSkPrescribeEntity basicSkPrescribeEntity) { public void prescribeAutoTagCode(BasicSkPrescribeEntity basicSkPrescribeEntity) {
List<BasicSkPrescribeDiEntity> basicSkPrescribeDiEntities = basicSkPrescribeDiService.findByPrescribe(basicSkPrescribeEntity.getAdNum()); List<BasicSkPrescribeDiEntity> basicSkPrescribeDiEntities = basicSkPrescribeDiService.findByPrescribe(basicSkPrescribeEntity.getAdNum());
//处方赋码状态 1未赋码2部分赋码3全部赋码 //处方赋码状态 1未赋码2部分赋码3全部赋码
@ -131,6 +131,14 @@ public class IoSplitCodeService extends ServiceImpl<IoSplitCodeMapper, IoSplitCo
} }
/**
*
*/
public void prescribeManuTagCode(BasicSkPrescribeEntity basicSkPrescribeEntity) {
}
/** /**
* *
*/ */

@ -20,6 +20,18 @@ public class IoSplitFifoCodeService extends ServiceImpl<IoSplitFifoCodeMapper, I
@Resource @Resource
IoSplitFifoCodeMapper splitFifoCodeMapper; IoSplitFifoCodeMapper splitFifoCodeMapper;
public List<IoSplitCodeResponse> filterGroupList(IoSplitFifoCodeRequest splitFifoCodeRequest) {
if (splitFifoCodeRequest == null) {
return Collections.emptyList();
}
if (splitFifoCodeRequest.getPage() != null) {
int offset = (splitFifoCodeRequest.getPage() - 1) * splitFifoCodeRequest.getLimit();
PageHelper.offsetPage(offset, splitFifoCodeRequest.getLimit());
}
return super.baseMapper.filterGroupList(splitFifoCodeRequest);
}
public List<IoSplitCodeResponse> filterList(IoSplitFifoCodeRequest splitFifoCodeRequest) { public List<IoSplitCodeResponse> filterList(IoSplitFifoCodeRequest splitFifoCodeRequest) {
if (splitFifoCodeRequest == null) { if (splitFifoCodeRequest == null) {
return Collections.emptyList(); return Collections.emptyList();
@ -41,4 +53,14 @@ public class IoSplitFifoCodeService extends ServiceImpl<IoSplitFifoCodeMapper, I
} }
public IoSplitFifoCodeEntity findByCode(String code, String workPlaceCode) {
return splitFifoCodeMapper.selectOne(
new LambdaQueryWrapper<IoSplitFifoCodeEntity>()
.eq(IoSplitFifoCodeEntity::getCode, code)
.eq(StrUtil.isNotEmpty(workPlaceCode), IoSplitFifoCodeEntity::getWorkPlaceCode, workPlaceCode)
.last("limit 1")
);
}
} }

@ -62,7 +62,7 @@ public class WebSocketComponent implements CommandLineRunner {
initConnect(client); initConnect(client);
//等待服务端响应 //等待服务端响应
while (!client.getReadyState().equals(ReadyState.OPEN)) { while (!client.getReadyState().equals(ReadyState.OPEN)) {
log.info("连接中···请稍后"); // log.info("连接中···请稍后");
Thread.sleep(1000); Thread.sleep(1000);
} }
//等待WebSocket服务端响应 //等待WebSocket服务端响应
@ -94,9 +94,9 @@ public class WebSocketComponent implements CommandLineRunner {
} catch (URISyntaxException e) { } catch (URISyntaxException e) {
e.printStackTrace(); // e.printStackTrace();
} catch (InterruptedException e) { } catch (InterruptedException e) {
e.printStackTrace(); // e.printStackTrace();
} }
}); });
@ -111,7 +111,7 @@ public class WebSocketComponent implements CommandLineRunner {
log.info("重新建立连接"); log.info("重新建立连接");
client.connect(); client.connect();
while (!client.getReadyState().equals(ReadyState.OPEN)) { while (!client.getReadyState().equals(ReadyState.OPEN)) {
log.info("连接中···请稍后"); // log.info("连接中···请稍后");
try { try {
Thread.sleep(3000); Thread.sleep(3000);
} catch (InterruptedException e) { } catch (InterruptedException e) {

@ -1,12 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.glxp.api.dao.basic.BasicSkPrescribeMapper"> <mapper namespace="com.glxp.api.dao.basic.BasicSkPrescribeMapper">
<select id="filterList" parameterType="com.glxp.api.req.basic.BasicSkPrescribeRequest" <select id="filterList" parameterType="com.glxp.api.req.basic.BasicSkPrescribeRequest"
resultType="com.glxp.api.res.basic.BasicSkPrescribeResponse"> resultType="com.glxp.api.res.basic.BasicSkPrescribeResponse">
SELECT basic_sk_prescribe.*, basic_sk_sicker.name sickName SELECT basic_sk_prescribe.*, basic_sk_sicker.name sickName, sys_workplace.workplaceName
FROM basic_sk_prescribe FROM basic_sk_prescribe
inner join basic_sk_sicker on basic_sk_prescribe.sickerCode = basic_sk_sicker.code inner join basic_sk_sicker on basic_sk_prescribe.sickerCode = basic_sk_sicker.code
left join sys_workplace on basic_sk_prescribe.workPlaceCode = sys_workplace.workplaceId
<where> <where>
<if test="code != '' and code != null"> <if test="code != '' and code != null">
AND code LIKE concat('%', #{code}, '%') AND code LIKE concat('%', #{code}, '%')

@ -273,7 +273,7 @@
<select id="filterUdiJoinSup" parameterType="com.glxp.api.req.basic.FilterUdiRelRequest" <select id="filterUdiJoinSup" parameterType="com.glxp.api.req.basic.FilterUdiRelRequest"
resultType="com.glxp.api.res.basic.UdiRelevanceResponse"> resultType="com.glxp.api.res.basic.UdiRelevanceResponse">
select basic_udirel.*, select basic_udirel.*,
basic_products.id as PRId, basic_products.id as PRId,
basic_products.originUuid, basic_products.originUuid,
basic_products.nameCode, basic_products.nameCode,
basic_products.deviceRecordKey, basic_products.deviceRecordKey,
@ -347,9 +347,9 @@
basic_products.medicareType, basic_products.medicareType,
basic_products.price as productPrice, basic_products.price as productPrice,
company_product_relevance.unitFk, company_product_relevance.unitFk,
basic_corp.erpId as customerId, basic_corp.erpId as customerId,
basic_corp.name companyName, basic_corp.name companyName,
th.hsmc hslbName th.hsmc hslbName
FROM basic_udirel FROM basic_udirel
inner JOIN basic_products inner JOIN basic_products
ON basic_products.uuid = basic_udirel.uuid ON basic_products.uuid = basic_udirel.uuid
@ -649,7 +649,7 @@
AND udplatCode = #{udplatCode} AND udplatCode = #{udplatCode}
</if> </if>
<if test="zczbhhzbapzbh != '' and zczbhhzbapzbh != null"> <if test="zczbhhzbapzbh != '' and zczbhhzbapzbh != null">
AND basic_products.zczbhhzbapzbh LIKE concat('%',#{zczbhhzbapzbh}, '%') AND basic_products.zczbhhzbapzbh LIKE concat('%', #{zczbhhzbapzbh}, '%')
</if> </if>
<if test="diType != '' and diType != null"> <if test="diType != '' and diType != null">
AND diType = #{diType} AND diType = #{diType}
@ -1271,74 +1271,74 @@
<insert id="insertUdiRelevance" keyProperty="id" parameterType="com.glxp.api.entity.basic.UdiRelevanceEntity"> <insert id="insertUdiRelevance" keyProperty="id" parameterType="com.glxp.api.entity.basic.UdiRelevanceEntity">
replace replace
INTO basic_udirel INTO basic_udirel
(id, uuid, mainId, thirdId, thirdId1, thirdId2, thirdId3, thirdId4, udplatCode, isUseDy, isDisable, (id, uuid, mainId, thirdId, thirdId1, thirdId2, thirdId3, thirdId4, udplatCode, isUseDy, isDisable,
isLock, isLock,
lockStatus, isAdavence, purType, attributeType, hcType, useMuti, useNum, supName, createTime, lockStatus, isAdavence, purType, attributeType, hcType, useMuti, useNum, supName, createTime,
updateTime, modifyTime, updateTime, modifyTime,
createUser, createUser,
updateUser, updateUser,
remark, useExpireTime, dispatch,payFeeCode, groupBuy, needCert) remark, useExpireTime, dispatch, payFeeCode, groupBuy, needCert, splitEnable)
values (#{id}, values (#{id},
#{uuid}, #{uuid},
#{mainId}, #{mainId},
#{thirdId}, #{thirdId},
#{thirdId1}, #{thirdId1},
#{thirdId2}, #{thirdId2},
#{thirdId3}, #{thirdId3},
#{thirdId4}, #{thirdId4},
#{udplatCode}, #{udplatCode},
#{isUseDy}, #{isUseDy},
#{isDisable}, #{isDisable},
#{isLock}, #{isLock},
#{lockStatus}, #{lockStatus},
#{isAdavence}, #{purType}, #{attributeType}, #{hcType}, #{isAdavence}, #{purType}, #{attributeType}, #{hcType},
#{useMuti}, #{useMuti},
#{useNum}, #{useNum},
#{supName}, #{supName},
#{createTime}, #{createTime},
#{updateTime}, #{updateTime},
#{modifyTime}, #{modifyTime},
#{createUser}, #{createUser},
#{updateUser}, #{updateUser},
#{remark}, #{useExpireTime}, #{dispatch},#{payFeeCode}, #{groupBuy}, #{needCert}) #{remark}, #{useExpireTime}, #{dispatch}, #{payFeeCode}, #{groupBuy}, #{needCert}, #{splitEnable})
</insert> </insert>
<insert id="insertUdiRelevanceignore" <insert id="insertUdiRelevanceignore"
parameterType="com.glxp.api.entity.basic.UdiRelevanceEntity"> parameterType="com.glxp.api.entity.basic.UdiRelevanceEntity">
insert insert
ignore ignore
INTO basic_udirel INTO basic_udirel
(id, uuid, mainId, thirdId, thirdId1, thirdId2, thirdId3, thirdId4, udplatCode, isUseDy, isDisable, (id, uuid, mainId, thirdId, thirdId1, thirdId2, thirdId3, thirdId4, udplatCode, isUseDy, isDisable,
isLock, isLock,
lockStatus, isAdavence, purType, attributeType, hcType, useMuti, useNum, supName, createTime, lockStatus, isAdavence, purType, attributeType, hcType, useMuti, useNum, supName, createTime,
updateTime, modifyTime, updateTime, modifyTime,
createUser, createUser,
updateUser, updateUser,
remark, useExpireTime, dispatch, groupBuy, needCert) remark, useExpireTime, dispatch, groupBuy, needCert, splitEnable)
values (#{id}, values (#{id},
#{uuid}, #{uuid},
#{mainId}, #{mainId},
#{thirdId}, #{thirdId},
#{thirdId1}, #{thirdId1},
#{thirdId2}, #{thirdId2},
#{thirdId3}, #{thirdId3},
#{thirdId4}, #{thirdId4},
#{udplatCode}, #{udplatCode},
#{isUseDy}, #{isUseDy},
#{isDisable}, #{isDisable},
#{isLock}, #{isLock},
#{lockStatus}, #{lockStatus},
#{isAdavence}, #{purType}, #{attributeType}, #{hcType}, #{isAdavence}, #{purType}, #{attributeType}, #{hcType},
#{useMuti}, #{useMuti},
#{useNum}, #{useNum},
#{supName}, #{supName},
#{createTime}, #{createTime},
#{updateTime}, #{updateTime},
#{modifyTime}, #{modifyTime},
#{createUser}, #{createUser},
#{updateUser}, #{updateUser},
#{remark}, #{useExpireTime}, #{dispatch}, #{groupBuy}, #{needCert}) #{remark}, #{useExpireTime}, #{dispatch}, #{groupBuy}, #{needCert}, #{splitEnable})
</insert> </insert>
<delete id="deleteById" parameterType="Map"> <delete id="deleteById" parameterType="Map">
@ -1469,6 +1469,9 @@
<if test="payFeeCode != null"> <if test="payFeeCode != null">
payFeeCode=#{payFeeCode}, payFeeCode=#{payFeeCode},
</if> </if>
<if test="splitEnable != null">
splitEnable=#{splitEnable},
</if>
</trim> </trim>
WHERE id = #{id} WHERE id = #{id}
</update> </update>
@ -1498,7 +1501,7 @@
modifyTime, modifyTime,
createUser, createUser,
updateUser, updateUser,
remark, useExpireTime, dispatch, groupBuy, needCert) remark, useExpireTime, dispatch, groupBuy, needCert,splitEnable)
values values
<foreach collection="udiRelevanceEntities" item="item" index="index" separator=","> <foreach collection="udiRelevanceEntities" item="item" index="index" separator=",">
@ -1524,7 +1527,8 @@
#{item.modifyTime}, #{item.modifyTime},
#{item.createUser}, #{item.createUser},
#{item.updateUser}, #{item.updateUser},
#{item.remark}, #{item.useExpireTime}, #{item.dispatch}, #{item.groupBuy}, #{item.needCert}) #{item.remark}, #{item.useExpireTime}, #{item.dispatch}, #{item.groupBuy},
#{item.needCert},#{item.splitEnable})
</foreach> </foreach>
</insert> </insert>

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.glxp.api.dao.inout.IoSplitFifoCodeMapper"> <mapper namespace="com.glxp.api.dao.inout.IoSplitFifoCodeMapper">
<select id="filterList" parameterType="com.glxp.api.req.inout.IoSplitFifoCodeRequest" <select id="filterGroupList" parameterType="com.glxp.api.req.inout.IoSplitFifoCodeRequest"
resultType="com.glxp.api.res.inout.IoSplitCodeResponse"> resultType="com.glxp.api.res.inout.IoSplitCodeResponse">
SELECT io_split_fifo_code.*, SELECT io_split_fifo_code.*,
sum(totalCount) as groupCount, sum(totalCount) as groupCount,
@ -11,10 +11,15 @@
bp.manufactory, bp.manufactory,
bp.measname, bp.measname,
bp.zczbhhzbapzbh, bp.zczbhhzbapzbh,
bp.ybbm,bp.zxxsdycpbs bp.ybbm,
bp.zxxsdycpbs,
bc.name supName,
sw.workPlaceName
FROM io_split_fifo_code FROM io_split_fifo_code
LEFT JOIN basic_udirel bu ON bu.id = io_split_fifo_code.relId LEFT JOIN basic_udirel bu ON bu.id = io_split_fifo_code.relId
LEFT JOIN basic_products bp ON bu.uuid = bp.uuid LEFT JOIN basic_products bp ON bu.uuid = bp.uuid
left join basic_corp bc on bc.erpId = io_split_fifo_code.supId
left join sys_workplace sw on sw.workplaceId = io_split_fifo_code.workPlaceCode
<where> <where>
<if test="code != '' and code != null"> <if test="code != '' and code != null">
AND code LIKE #{code} AND code LIKE #{code}
@ -37,6 +42,10 @@
<if test="supId != null"> <if test="supId != null">
AND supId = #{supId} AND supId = #{supId}
</if> </if>
<if test="fifoSplit != null">
AND fifoSplit = #{fifoSplit}
</if>
<if test="productType != null"> <if test="productType != null">
AND productType = #{productType} AND productType = #{productType}
</if> </if>
@ -46,4 +55,50 @@
</where> </where>
group by relId, batchNo, supId, workPlaceCode group by relId, batchNo, supId, workPlaceCode
</select> </select>
<select id="filterList" parameterType="com.glxp.api.req.inout.IoSplitFifoCodeRequest"
resultType="com.glxp.api.res.inout.IoSplitCodeResponse">
SELECT io_split_fifo_code.*,
bp.cpmctymc,
bp.ggxh,
bp.ylqxzcrbarmc,
bp.manufactory,
bp.measname,
bp.zczbhhzbapzbh,
bp.ybbm,
bp.zxxsdycpbs
FROM io_split_fifo_code
LEFT JOIN basic_udirel bu ON bu.id = io_split_fifo_code.relId
LEFT JOIN basic_products bp ON bu.uuid = bp.uuid
<where>
<if test="code != '' and code != null">
AND code LIKE #{code}
</if>
<if test="relId != null">
AND relId = #{relId}
</if>
<if test="nameCode != '' and nameCode != null">
AND nameCode = #{nameCode}
</if>
<if test="batchNo != '' and batchNo != null">
AND batchNo = #{batchNo}
</if>
<if test="supId != null">
AND supId = #{supId}
</if>
<if test="invCode != null">
AND invCode = #{invCode}
</if>
<if test="supId != null">
AND supId = #{supId}
</if>
<if test="productType != null">
AND productType = #{productType}
</if>
<if test="workPlaceCode != '' and workPlaceCode != null">
AND workPlaceCode = #{workPlaceCode}
</if>
</where>
</select>
</mapper> </mapper>

@ -67,9 +67,9 @@ CALL Pro_Temp_ColumnWork('basic_udirel', 'dispatch', 'tinyint', 1);
CALL Pro_Temp_ColumnWork('basic_udirel', 'groupBuy', 'tinyint', 1); CALL Pro_Temp_ColumnWork('basic_udirel', 'groupBuy', 'tinyint', 1);
CALL Pro_Temp_ColumnWork('basic_udirel', 'isDateBy', 'tinyint', 1); CALL Pro_Temp_ColumnWork('basic_udirel', 'isDateBy', 'tinyint', 1);
CALL Pro_Temp_ColumnWork('basic_udirel', 'needCert', 'tinyint', 1); CALL Pro_Temp_ColumnWork('basic_udirel', 'needCert', 'tinyint', 1);
CALL Pro_Temp_ColumnWork('basic_udirel', 'splitEnable', 'tinyint', 1);
CALL Pro_Temp_ColumnWork('basic_udirel', 'certIdFk', 'varchar(255)', 1); CALL Pro_Temp_ColumnWork('basic_udirel', 'certIdFk', 'varchar(255)', 1);
CALL Pro_Temp_ColumnWork('basic_products', 'allowNoSerial', 'tinyint', 1); CALL Pro_Temp_ColumnWork('basic_products', 'allowNoSerial', 'tinyint', 1);

@ -4147,3 +4147,16 @@ CALL Pro_Temp_ColumnWork('basic_sk_prescribe', 'id',
CALL Pro_Temp_ColumnWork('basic_products', 'cphhhbh', 'varchar(255)', 1); CALL Pro_Temp_ColumnWork('basic_products', 'cphhhbh', 'varchar(255)', 1);
CALL Pro_Temp_ColumnWork('basic_udirel', 'splitEnable', 'tinyint', 1);
CALL Pro_Temp_ColumnWork('io_order', 'fifoSplit',
' tinyint NULL DEFAULT NULL COMMENT ''上货方式1:拆零上货2:整取上货''',
1);
CALL Pro_Temp_ColumnWork('io_code', 'fifoSplit',
' tinyint NULL DEFAULT NULL COMMENT ''上货方式1:拆零上货2:整取上货''',
1);
CALL Pro_Temp_ColumnWork('io_code_temp', 'fifoSplit',
' tinyint NULL DEFAULT NULL COMMENT ''上货方式1:拆零上货2:整取上货''',
1);
CALL Pro_Temp_ColumnWork('io_split_fifo_code', 'fifoSplit',
' tinyint NULL DEFAULT NULL COMMENT ''上货方式1:拆零上货2:整取上货''',
1);

Loading…
Cancel
Save