拆零优化

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,7 +50,6 @@ 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)
@ -89,6 +106,40 @@ public class SysWorkplaceController extends BaseController {
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,15 +6,23 @@ 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)
@ -89,7 +97,7 @@ public class BasicSkPrescribeItemCode implements Serializable {
*/ */
@TableField(value = "`createUser`") @TableField(value = "`createUser`")
@ApiModelProperty(value = "创建人") @ApiModelProperty(value = "创建人")
private String createUser; private Long createUser;
/** /**
* *
@ -103,7 +111,11 @@ public class BasicSkPrescribeItemCode implements Serializable {
*/ */
@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,14 +1226,29 @@ 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 ioSplitFifoCodeEntity = null;
if (StrUtil.isEmpty(codeEntity.getSerialNo())) {
ioSplitFifoCodeEntity = splitFifoCodeService.findByCode(codeEntity.getCode(), orderEntity.getWorkPlaceCode());
}
if (ioSplitFifoCodeEntity != 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 {
IoSplitFifoCodeEntity splitCodeEntity = new IoSplitFifoCodeEntity(); IoSplitFifoCodeEntity splitCodeEntity = new IoSplitFifoCodeEntity();
BeanUtils.copyProperties(codeEntity, splitCodeEntity); BeanUtils.copyProperties(codeEntity, splitCodeEntity);
splitCodeEntity.setInBactchNo(codeEntity.getInBatchNo()); splitCodeEntity.setInBactchNo(codeEntity.getInBatchNo());
splitCodeEntity.setScanCount(codeEntity.getCount());
splitCodeEntity.setTotalCount(codeEntity.getReCount()); splitCodeEntity.setTotalCount(codeEntity.getReCount());
splitCodeEntity.setSupId(Long.parseLong(codeEntity.getSupId()));
splitCodeEntity.setWorkPlaceCode(orderEntity.getWorkPlaceCode());
splitCodeEntity.setFifoSplit(codeEntity.getFifoSplit());
splitCodeEntity.setId(null); splitCodeEntity.setId(null);
splitCodeEntities.add(splitCodeEntity); splitCodeEntities.add(splitCodeEntity);
} }
} }
}
splitFifoCodeService.saveBatch(splitCodeEntities); splitFifoCodeService.saveBatch(splitCodeEntities);
} else if (orderEntity.getAction().equals("SC72249388338364")) { } else if (orderEntity.getAction().equals("SC72249388338364")) {
//拆零预出库退回 //拆零预出库退回
@ -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}, '%')

@ -1278,7 +1278,7 @@
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},
@ -1301,7 +1301,7 @@
#{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"
@ -1315,7 +1315,7 @@
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},
@ -1338,7 +1338,7 @@
#{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