Merge remote-tracking branch 'origin/dev_fifo_z' into dev_fifo_z

workplace
wangwei 10 months ago
commit e6e0ece77a

@ -0,0 +1,33 @@
package com.glxp.api.constant;
public enum BusTypeConstant {
YPCF002("药品处方单","YPCF002"),
CGJH001("采购计划","CGJH001"),
LYRK("领药入库","LYRK"),
GMRK("购买入库","GMRK"),
LYCK("领药出库","LYCK"),
;
private String name;
private String busType;
BusTypeConstant(String name, String busType) {
this.name = name;
this.busType = busType;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getBusType() {
return busType;
}
public void setBusType(String busType) {
this.busType = busType;
}
}

@ -10,4 +10,7 @@ public interface ConstantType {
String SPLIT_RETURN = "SC72249388338364"; //拆零退货 String SPLIT_RETURN = "SC72249388338364"; //拆零退货
String SPLIT_OUT = "SC72197936495755"; //拆零出库 String SPLIT_OUT = "SC72197936495755"; //拆零出库
String SPLIT_CORP = "72198012799726";
} }

@ -1,5 +1,6 @@
package com.glxp.api.controller.collect; package com.glxp.api.controller.collect;
import cn.hutool.core.collection.CollUtil;
import com.github.pagehelper.PageInfo; import com.github.pagehelper.PageInfo;
import com.glxp.api.common.enums.ResultEnum; import com.glxp.api.common.enums.ResultEnum;
import com.glxp.api.common.res.BaseResponse; import com.glxp.api.common.res.BaseResponse;
@ -11,6 +12,8 @@ import com.glxp.api.req.inout.AddTagCodeReqeust;
import com.glxp.api.req.inout.DeleteTageCodeRequest; import com.glxp.api.req.inout.DeleteTageCodeRequest;
import com.glxp.api.res.PageSimpleResponse; import com.glxp.api.res.PageSimpleResponse;
import com.glxp.api.res.collect.CollectOrderCodeManResponse; import com.glxp.api.res.collect.CollectOrderCodeManResponse;
import com.glxp.api.res.inout.VailCodeResultResponse;
import com.glxp.api.res.inout.VailTagResultResponse;
import com.glxp.api.service.auth.SysWorkplaceService; import com.glxp.api.service.auth.SysWorkplaceService;
import com.glxp.api.service.basic.UdiRelevanceService; import com.glxp.api.service.basic.UdiRelevanceService;
import com.glxp.api.service.collect.IoCollectOrderBizService; import com.glxp.api.service.collect.IoCollectOrderBizService;
@ -18,6 +21,7 @@ import com.glxp.api.service.collect.IoCollectOrderCodeManService;
import com.glxp.api.service.collect.IoCollectOrderService; import com.glxp.api.service.collect.IoCollectOrderService;
import com.glxp.api.util.GennerOrderUtils; import com.glxp.api.util.GennerOrderUtils;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.json.JSONException;
import org.springframework.validation.BindingResult; import org.springframework.validation.BindingResult;
import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.PostMapping;
@ -26,6 +30,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.ArrayList;
import java.util.List; import java.util.List;
@Slf4j @Slf4j
@ -37,15 +42,6 @@ public class IoCollectOrderCodeManController extends BaseController {
IoCollectOrderService collectOrderService; IoCollectOrderService collectOrderService;
@Resource @Resource
IoCollectOrderCodeManService collectOrderCodeManService; IoCollectOrderCodeManService collectOrderCodeManService;
@Resource
IoCollectOrderBizService collectOrderBizService;
@Resource
UdiRelevanceService udiRelevanceService;
@Resource
GennerOrderUtils gennerOrderUtils;
@Resource
SysWorkplaceService sysWorkPlaceService;
/** /**
* *
@ -82,6 +78,38 @@ public class IoCollectOrderCodeManController extends BaseController {
return ResultVOUtils.success(collectOrder); return ResultVOUtils.success(collectOrder);
} }
/**
* )
*
* @return
*/
@PostMapping("/udiwms/ioSplit/collect/order/batchAddCode")
public BaseResponse batchAddCode(@RequestBody @Valid AddTagCodeReqeust addTagCodeReqeust,
BindingResult bindingResult) {
if (bindingResult.hasErrors()) {
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage());
}
IoCollectOrder collectOrder = null;
VailTagResultResponse vailTagResultResponse = new VailTagResultResponse();
List<VailCodeResultResponse> vailCodeResultResponses = new ArrayList<>();
if (CollUtil.isNotEmpty(addTagCodeReqeust.getCodeList())) {
for (String code : addTagCodeReqeust.getCodeList()) {
VailCodeResultResponse vailCodeResultResponse = new VailCodeResultResponse();
addTagCodeReqeust.setCode(code);
vailCodeResultResponse.setCode(code);
try {
collectOrder = collectOrderCodeManService.prescribeTagCode(addTagCodeReqeust);
} catch (JSONException e) {
vailCodeResultResponse.setErrMsg(e.getMessage());
vailCodeResultResponse.setStatus(2);
}
}
}
vailTagResultResponse.setCollectOrder(collectOrder);
vailTagResultResponse.setVailCodeResultResponses(vailCodeResultResponses);
return ResultVOUtils.success(vailCodeResultResponses);
}
@PostMapping("/udiwms/ioSplit/collect/code/remove") @PostMapping("/udiwms/ioSplit/collect/code/remove")
public BaseResponse removeCode(@RequestBody @Valid DeleteTageCodeRequest deleteTageCodeRequest, public BaseResponse removeCode(@RequestBody @Valid DeleteTageCodeRequest deleteTageCodeRequest,

@ -30,6 +30,7 @@ public class IoCollectOriginController {
/** /**
* *
*
* @param collectOrderRequest * @param collectOrderRequest
* @return * @return
*/ */

@ -8,6 +8,7 @@ import com.glxp.api.entity.inv.InvProductDetailEntity;
import com.glxp.api.exception.JsonException; import com.glxp.api.exception.JsonException;
import com.glxp.api.req.collect.CollectOrderRequest; import com.glxp.api.req.collect.CollectOrderRequest;
import com.glxp.api.res.inout.IoOrderDetailCodeResponse; import com.glxp.api.res.inout.IoOrderDetailCodeResponse;
import com.glxp.api.res.inout.VailCodeResultResponse;
import com.glxp.api.service.collect.IoCollectOrderService; import com.glxp.api.service.collect.IoCollectOrderService;
import com.glxp.api.service.collect.IoCollectOriginService; import com.glxp.api.service.collect.IoCollectOriginService;
import com.glxp.api.service.inout.impl.IoCodeService; import com.glxp.api.service.inout.impl.IoCodeService;
@ -44,6 +45,7 @@ import com.glxp.api.util.*;
import com.glxp.api.util.udi.FilterUdiUtils; import com.glxp.api.util.udi.FilterUdiUtils;
import com.glxp.api.util.udi.UdiCalCountUtil; import com.glxp.api.util.udi.UdiCalCountUtil;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.validation.BindingResult; import org.springframework.validation.BindingResult;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
@ -91,8 +93,6 @@ public class IoCodeTempController extends BaseController {
@Resource @Resource
IoCodeService codeService; IoCodeService codeService;
@Resource @Resource
InvPreProductDetailService invPreProductDetailService;
@Resource
IoAddInoutService ioAddInoutService; IoAddInoutService ioAddInoutService;
@Resource @Resource
IoOrderDetailCodeService ioOrderDetailCodeService; IoOrderDetailCodeService ioOrderDetailCodeService;
@ -225,9 +225,9 @@ public class IoCodeTempController extends BaseController {
UdiEntity udiEntity = FilterUdiUtils.getUdi(code); UdiEntity udiEntity = FilterUdiUtils.getUdi(code);
if (udiEntity == null) { if (udiEntity == null) {
String viewType = addEnterCodeRequest.getViewType(); String viewType = addEnterCodeRequest.getViewType();
if (viewType.equals("tagCode")){ if (viewType.equals("tagCode")) {
IoCollectOrder collectOrder = collectOrderService.getByBillNo(code); IoCollectOrder collectOrder = collectOrderService.getByBillNo(code);
if (collectOrder == null ){ if (collectOrder == null) {
//=============================================// //=============================================//
//本地数据库 无此单据时 触发 用billNo 到 处方下载方法 进行下载 //本地数据库 无此单据时 触发 用billNo 到 处方下载方法 进行下载
CollectOrderRequest collectOrderRequest = new CollectOrderRequest(); CollectOrderRequest collectOrderRequest = new CollectOrderRequest();
@ -235,23 +235,23 @@ public class IoCodeTempController extends BaseController {
collectOrderRequest.setWorkPlaceCode(collectOrderRequest.getWorkPlaceCode()); collectOrderRequest.setWorkPlaceCode(collectOrderRequest.getWorkPlaceCode());
collectOrderRequest.setBillNo(code); collectOrderRequest.setBillNo(code);
BaseResponse baseResponse = collectOriginService.downloadOrderV2(collectOrderRequest); BaseResponse baseResponse = collectOriginService.downloadOrderV2(collectOrderRequest);
if (ResultEnum.SUCCESS.getCode() == baseResponse.getCode()){ if (ResultEnum.SUCCESS.getCode() == baseResponse.getCode()) {
collectOrder = collectOrderService.getByBillNo(code); collectOrder = collectOrderService.getByBillNo(code);
//=============================================// //=============================================//
BaseResponse response = ResultVOUtils.error(601, code); BaseResponse response = ResultVOUtils.error(601, code);
response.setData(collectOrder); response.setData(collectOrder);
return response; return response;
}else { } else {
BaseResponse response = ResultVOUtils.error(501, "UDI码格式错误"); BaseResponse response = ResultVOUtils.error(501, "UDI码格式错误");
response.setData(originCode); response.setData(originCode);
return response; return response;
} }
}else { } else {
BaseResponse response = ResultVOUtils.error(601, code); BaseResponse response = ResultVOUtils.error(601, code);
response.setData(collectOrder); response.setData(collectOrder);
return response; return response;
} }
} else{ } else {
String sptmtodi = systemParamConfigService.selectValueByParamKey(Constant.SPTM_TO_DI); String sptmtodi = systemParamConfigService.selectValueByParamKey(Constant.SPTM_TO_DI);
if (sptmtodi.equals("1")) { if (sptmtodi.equals("1")) {
if (code.length() == 13) { if (code.length() == 13) {
@ -282,7 +282,7 @@ public class IoCodeTempController extends BaseController {
UdiRelevanceResponse checkUdi = udiRelevanceService.selectByNameCode(udiEntity.getUdi()); UdiRelevanceResponse checkUdi = udiRelevanceService.selectByNameCode(udiEntity.getUdi());
if (checkUdi == null) { if (checkUdi == null) {
return ResultVOUtils.error(500, "耗材字典不存在此产品!"); return ResultVOUtils.error(500, "产品字典不存在此产品!");
} }
boolean checkSuccess = true; boolean checkSuccess = true;
String lostMsg = ""; String lostMsg = "";
@ -338,6 +338,110 @@ public class IoCodeTempController extends BaseController {
} }
@AuthRuleAnnotation("")
@PostMapping("warehouse/inout/batchVailCode")
public BaseResponse batchVailCode(@RequestBody AddEnterCodeRequest addEnterCodeRequest) {
List<String> codeList = addEnterCodeRequest.getCodeList();
if (CollUtil.isEmpty(codeList))
return ResultVOUtils.error(500, "追溯码不能为空");
codeList = codeList.stream().distinct().collect(Collectors.toList());
List<VailCodeResultResponse> vailCodeResultResponses = new ArrayList<>();
for (String code : codeList) {
VailCodeResultResponse vailCodeResultResponse = new VailCodeResultResponse();
UdiEntity udiEntity = FilterUdiUtils.getUdi(code);
vailCodeResultResponse.setCode(code);
vailCodeResultResponse.setStatus(1);
vailCodeResultResponse.setErrMsg("解析正确");
vailCodeResultResponses.add(vailCodeResultResponse);
if (udiEntity == null) {
vailCodeResultResponse.setStatus(2);
vailCodeResultResponse.setErrMsg("追溯码格式错误");
continue;
}
UdiRelevanceResponse checkUdi = udiRelevanceService.selectByNameCode(udiEntity.getUdi());
if (checkUdi == null) {
vailCodeResultResponse.setStatus(2);
vailCodeResultResponse.setErrMsg("产品字典不存在此产品");
continue;
}
}
return ResultVOUtils.success(vailCodeResultResponses);
}
@RepeatSubmit()
@AuthRuleAnnotation("")
@PostMapping("warehouse/inout/batchAddCode")
@CusRedissonAnnotation(cacheName = RedissonCacheKey.WEB_ADD_CODE, key = {"#addOrderCodeRequest.corpOrderId", "#addOrderCodeRequest.codeList"}, timeOutMsg = "系统正在处理,请勿重复提交")
@Log(title = "单据管理", businessType = BusinessType.INSERT)
public BaseResponse batchAddCode(@RequestBody AddOrderCodeRequest addOrderCodeRequest, BindingResult bindingResult) {
if (bindingResult.hasErrors()) {
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage());
}
AddCodeResult addCodeResult = new AddCodeResult();
List<String> codeList = addOrderCodeRequest.getCodeList();
if (CollUtil.isEmpty(codeList))
return ResultVOUtils.error(500, "追溯码不能为空");
List<VailCodeResultResponse> vailCodeResultResponses = new ArrayList<>();
for (String code : codeList) {
AddOrderRequest addOrderRequest = new AddOrderRequest();
BeanUtils.copyProperties(addOrderCodeRequest, addOrderRequest);
if (StringUtils.isBlank(code)) return ResultVOUtils.error(ResultEnum.DATA_ERROR);
if (code.endsWith("\u001D")) {
code = code.replace("\u001D", "");
}
UdiEntity udiEntity = FilterUdiUtils.getUdi(code);
if (udiEntity == null)
return ResultVOUtils.error(500, "无效条码!");
if (StrUtil.isNotEmpty(addOrderRequest.getBatchNo())) {
udiEntity.setBatchNo(addOrderRequest.getBatchNo());
}
if (StrUtil.isNotEmpty(addOrderRequest.getProduceDate())) {
udiEntity.setProduceDate(addOrderRequest.getProduceDate());
}
if (StrUtil.isNotEmpty(addOrderRequest.getExpireDate())) {
udiEntity.setExpireDate(addOrderRequest.getExpireDate());
}
if (StrUtil.isNotEmpty(addOrderRequest.getSerialNo())) {
udiEntity.setSerialNo(addOrderRequest.getSerialNo());
}
AuthAdmin authAdmin = getUser();
addOrderRequest.setInvCode(authAdmin.getLocInvCode());
if (IntUtil.value(addOrderCodeRequest.getInoutType()) == 2) {
addOrderRequest.setAction(ConstantType.SPLIT_RETURN);
} else {
addOrderRequest.setAction(ConstantType.SPLIT_OUT);
}
addOrderRequest.setFromCorp(ConstantType.SPLIT_CORP);
BaseResponse baseResponse = null;
if (IntUtil.value(udiEntity.getProductType()) == 2) {
baseResponse = adddGrugOrder(addOrderRequest, udiEntity, code);
} else {
baseResponse = addMaterOrder(addOrderRequest, udiEntity, code);
}
VailCodeResultResponse vailCodeResultResponse = new VailCodeResultResponse();
if (baseResponse.getCode() == 20000) {
vailCodeResultResponse.setCode(code);
vailCodeResultResponse.setStatus(1);
vailCodeResultResponse.setErrMsg("正确");
AddCodeResult temp = (AddCodeResult) baseResponse.getData();
addCodeResult.setOrderId(temp.getOrderId());
} else {
vailCodeResultResponse.setCode(code);
vailCodeResultResponse.setStatus(2);
vailCodeResultResponse.setErrMsg(baseResponse.getMessage());
}
vailCodeResultResponses.add(vailCodeResultResponse);
}
addCodeResult.setVailCodeResultResponses(vailCodeResultResponses);
return ResultVOUtils.success();
}
public String checkNewCode(UdiEntity originEnity, String newCode) { public String checkNewCode(UdiEntity originEnity, String newCode) {
UdiEntity newEntity = FilterUdiUtils.getUdi(originEnity.getUdi() + newCode); UdiEntity newEntity = FilterUdiUtils.getUdi(originEnity.getUdi() + newCode);
if (newEntity == null || originEnity == null) { if (newEntity == null || originEnity == null) {
@ -396,10 +500,9 @@ public class IoCodeTempController extends BaseController {
} else { } else {
return addMaterOrder(addOrderRequest, udiEntity, code); return addMaterOrder(addOrderRequest, udiEntity, code);
} }
} }
@Transactional(rollbackFor = Exception.class)
public BaseResponse addMaterOrder(AddOrderRequest addOrderRequest, UdiEntity udiEntity, String code) { public BaseResponse addMaterOrder(AddOrderRequest addOrderRequest, UdiEntity udiEntity, String code) {
AddCodeResult addCodeResult = new AddCodeResult(); AddCodeResult addCodeResult = new AddCodeResult();
@ -981,12 +1084,12 @@ public class IoCodeTempController extends BaseController {
return ResultVOUtils.success(addCodeResult); return ResultVOUtils.success(addCodeResult);
} }
@Transactional(rollbackFor = Exception.class)
public BaseResponse adddGrugOrder(AddOrderRequest addOrderRequest, UdiEntity udiEntity, String code) { public BaseResponse adddGrugOrder(AddOrderRequest addOrderRequest, UdiEntity udiEntity, String code) {
AddCodeResult addCodeResult = new AddCodeResult(); AddCodeResult addCodeResult = new AddCodeResult();
BasicBussinessTypeEntity bussinessTypeEntity = basicBussinessTypeService.findByAction(addOrderRequest.getAction()); BasicBussinessTypeEntity bussinessTypeEntity = basicBussinessTypeService.findByAction(addOrderRequest.getAction());
InvWarehouseEntity invWarehouseEntity = invWarehouseService.findByInvSubByCode(addOrderRequest.getInvCode()); InvWarehouseEntity invWarehouseEntity = invWarehouseService.findByInvSubByCode(addOrderRequest.getInvCode());
//批次号校验 //批次号校验
//判断此产品是否开启允许无批次号 //判断此产品是否开启允许无批次号
UdiProductEntity udiInfoEntity = udiProductService.findByNameCode(udiEntity.getUdi()); UdiProductEntity udiInfoEntity = udiProductService.findByNameCode(udiEntity.getUdi());

@ -12,6 +12,7 @@ import com.glxp.api.entity.basic.BasicSkProjectEntity;
import com.glxp.api.entity.basic.BasicSkSickerEntity; import com.glxp.api.entity.basic.BasicSkSickerEntity;
import com.glxp.api.entity.collect.IoCollectOrder; import com.glxp.api.entity.collect.IoCollectOrder;
import com.glxp.api.entity.thrsys.ThrManufacturerEntity; import com.glxp.api.entity.thrsys.ThrManufacturerEntity;
import com.glxp.api.entity.thrsys.ThrOrderEntity;
import com.glxp.api.entity.thrsys.ThrSystemBusApiEntity; import com.glxp.api.entity.thrsys.ThrSystemBusApiEntity;
import com.glxp.api.entity.thrsys.ThrSystemEntity; import com.glxp.api.entity.thrsys.ThrSystemEntity;
import com.glxp.api.exception.JsonException; import com.glxp.api.exception.JsonException;
@ -32,6 +33,7 @@ import com.glxp.api.res.basic.BasicSkSickerResponse;
import com.glxp.api.res.chs.YbHcflEntityResponse; import com.glxp.api.res.chs.YbHcflEntityResponse;
import com.glxp.api.res.collect.IoCollectOrderResponse; import com.glxp.api.res.collect.IoCollectOrderResponse;
import com.glxp.api.res.thrsys.ThrCorpsResponse; import com.glxp.api.res.thrsys.ThrCorpsResponse;
import com.glxp.api.res.thrsys.ThrOrderResponse;
import com.glxp.api.res.thrsys.ThrProductsResponse; import com.glxp.api.res.thrsys.ThrProductsResponse;
import com.glxp.api.res.thrsys.UdiwmsWarehouseDetail; import com.glxp.api.res.thrsys.UdiwmsWarehouseDetail;
import com.glxp.api.service.thrsys.ThrSystemService; import com.glxp.api.service.thrsys.ThrSystemService;
@ -233,6 +235,28 @@ public class ErpBasicClient {
} }
/**
*
* @param filterThrOrderRequest
* @return
*/
public BaseResponse<PageSimpleResponse<ThrOrderResponse>> getThrOrders(FilterThrOrderRequest filterThrOrderRequest) {
ThrSystemEntity basicThirdSysEntity = basicThirdSysService.selectByThirdId(filterThrOrderRequest.getThirdSys());
String url = basicThirdSysEntity.getThridUrl() + "/udiwms/erp/getThrOrders";
try {
String response = httpOkClient.uCloudPost(url, filterThrOrderRequest);
BaseResponse<PageSimpleResponse<ThrOrderResponse>> listBaseResponse =
JSONObject.parseObject(response, new TypeReference<BaseResponse<PageSimpleResponse<ThrOrderResponse>>>() {
});
return listBaseResponse;
} catch (Exception e) {
log.error("获取三方单据信息", e);
return ResultVOUtils.error(500, "连接第三方系统接口服务出错");
}
}
/** /**
* *
* *

@ -2,10 +2,14 @@ package com.glxp.api.req.inout;
import lombok.Data; import lombok.Data;
import java.util.List;
@Data @Data
public class AddEnterCodeRequest { public class AddEnterCodeRequest {
private String originCode; private String originCode;
private String workPlaceCode; private String workPlaceCode;
private String busType;
private String code; private String code;
private List<String> codeList;
private String viewType; private String viewType;
} }

@ -0,0 +1,47 @@
package com.glxp.api.req.inout;
import lombok.Data;
import javax.validation.constraints.NotNull;
import java.util.List;
@Data
public class AddOrderCodeRequest {
/**
*
*/
@NotNull(message = "工位编码不能为空")
private Long workPlaceCode;
/**
*
*/
@NotNull(message = "业务类型不能为空")
private String splitBusType;
/**
*
*/
@NotNull(message = "本地单号不能为空")
private String corpOrderId;
/**
*
*/
private String code;
/**
*
*/
@NotNull(message = "溯码不能为空")
private List<String> codeList;
/**
* 1:2退
*/
@NotNull(message = "上货方式不能为空")
private Integer inoutType;
/**
*
*/
private String billNo;
}

@ -3,6 +3,7 @@ package com.glxp.api.req.inout;
import lombok.Data; import lombok.Data;
import javax.validation.constraints.NotNull; import javax.validation.constraints.NotNull;
import java.util.List;
@Data @Data
public class AddTagCodeReqeust { public class AddTagCodeReqeust {
@ -15,16 +16,40 @@ public class AddTagCodeReqeust {
/** /**
* udi/ * udi/
*/ */
@NotNull(message = "追溯码不能为空")
private String code; private String code;
/**
*
*/
private List<String> codeList;
/**
*
*/
private String billNo; private String billNo;
/**
*
*/
private Long workPlaceCode; private Long workPlaceCode;
/**
*
*/
private String fromCorp; private String fromCorp;
/**
*
*/
private String fromCorpName;
/**
*
*/
private String invCode; private String invCode;
/**
*
*/
private Boolean insert; private Boolean insert;
/**
*
*/
private String busType; private String busType;

@ -33,5 +33,14 @@ public class FilterThrOrderRequest extends ListPageRequest {
private String thirdAction; private String thirdAction;
private String thirdOrderFk; private String thirdOrderFk;
private Integer allocateStatus; private Integer allocateStatus;
/**
*
*/
private Long workPlaceCode;
/**
*
*/
private String fromType;
private String busType;
private List<ThrOrderResponse> erpOrderResponses; private List<ThrOrderResponse> erpOrderResponses;
} }

@ -2,8 +2,11 @@ package com.glxp.api.res.inout;
import lombok.Data; import lombok.Data;
import java.util.List;
@Data @Data
public class AddCodeResult { public class AddCodeResult {
private String orderId; private String orderId;
private String errMsg; private String errMsg;
List<VailCodeResultResponse> vailCodeResultResponses;
} }

@ -0,0 +1,14 @@
package com.glxp.api.res.inout;
import lombok.Data;
@Data
public class VailCodeResultResponse {
private String code;
/**
* 1:2
*/
private Integer status;
private String errMsg;
}

@ -0,0 +1,13 @@
package com.glxp.api.res.inout;
import com.glxp.api.entity.collect.IoCollectOrder;
import lombok.Data;
import java.util.List;
@Data
public class VailTagResultResponse {
IoCollectOrder collectOrder;
private List<VailCodeResultResponse> vailCodeResultResponses;
}

@ -1,6 +1,7 @@
package com.glxp.api.res.thrsys; package com.glxp.api.res.thrsys;
import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableField;
import com.glxp.api.entity.thrsys.ThrOrderDetailEntity;
import lombok.Data; import lombok.Data;
import java.math.BigDecimal; import java.math.BigDecimal;
@ -20,7 +21,7 @@ public class ThrOrderResponse {
private String fromInvCode; //往来仓库 private String fromInvCode; //往来仓库
private String thirdSysFk; private String thirdSysFk;
private List<ThrOrderDetailEntity> detailList;
private List<ThrOrderResponse.SubErpOrder> subErpOrders; private List<ThrOrderResponse.SubErpOrder> subErpOrders;
//增加字段 //增加字段

@ -0,0 +1,49 @@
package com.glxp.api.service.collect;
import com.glxp.api.common.res.BaseResponse;
import com.glxp.api.common.util.ResultVOUtils;
import com.glxp.api.constant.BusTypeConstant;
import com.glxp.api.req.collect.CollectOrderRequest;
import com.glxp.api.service.collect.down.*;
import org.springframework.stereotype.Component;
import javax.annotation.Resource;
/**
*
*/
@Component
public class DownloadFactory {
@Resource
private YPCF002Download ypcf002Download;
@Resource
private ThrOrderDownload thrOrderDownload;
/**
*
*
* @param collectOrderRequest
* @return
*/
public BaseResponse downloadOrder(CollectOrderRequest collectOrderRequest) {
String busType = collectOrderRequest.getBusType();
if (busType == null) {
return ResultVOUtils.error("下载失败,未配置业务类型");
}
if (busType.equals(BusTypeConstant.YPCF002.getBusType())) {
return ypcf002Download.downloadOrder(collectOrderRequest);
} else if (busType.equals(BusTypeConstant.CGJH001.getBusType())) {
return thrOrderDownload.downloadOrder(collectOrderRequest);
} else if (busType.equals(BusTypeConstant.LYRK.getBusType())) {
return thrOrderDownload.downloadOrder(collectOrderRequest);
} else if (busType.equals(BusTypeConstant.GMRK.getBusType())) {
return thrOrderDownload.downloadOrder(collectOrderRequest);
} else if (busType.equals(BusTypeConstant.LYCK.getBusType())) {
return thrOrderDownload.downloadOrder(collectOrderRequest);
}
return ResultVOUtils.error("下载失败,未配置业务类型");
}
}

@ -141,6 +141,7 @@ public class IoCollectOrderCodeManService extends ServiceImpl<IoCollectOrderCode
.billNo(orderNo) .billNo(orderNo)
.busType(sysWorkplaceDocumentEntity.getDocumentTypeCode()) .busType(sysWorkplaceDocumentEntity.getDocumentTypeCode())
.fromCorp(addTagCodeReqeust.getFromCorp()) .fromCorp(addTagCodeReqeust.getFromCorp())
.fromCorpName(addTagCodeReqeust.getFromCorpName())
.billTime(new Date()) .billTime(new Date())
.workPlaceCode(workPlace.getWorkplaceId()) .workPlaceCode(workPlace.getWorkplaceId())
.createTime(new Date()) .createTime(new Date())
@ -430,7 +431,7 @@ public class IoCollectOrderCodeManService extends ServiceImpl<IoCollectOrderCode
.payFeeCode(udiRelevanceResponse.getPayFeeCode()) .payFeeCode(udiRelevanceResponse.getPayFeeCode())
.cpmctymc(udiRelevanceResponse.getCpmctymc()) .cpmctymc(udiRelevanceResponse.getCpmctymc())
.nameCode(udiRelevanceResponse.getNameCode()) .nameCode(udiRelevanceResponse.getNameCode())
.ggxh(udiRelevanceResponse.getGgxh()) .ggxh(StrUtil.isNotEmpty(udiRelevanceResponse.getGgxh()) ? udiRelevanceResponse.getGgxh() : udiRelevanceResponse.getBzgg())
.batchNo(udiEntity.getBatchNo()) .batchNo(udiEntity.getBatchNo())
.productDate(udiEntity.getProduceDate()) .productDate(udiEntity.getProduceDate())
.expireDate(udiEntity.getExpireDate()) .expireDate(udiEntity.getExpireDate())

@ -420,7 +420,6 @@ public class IoCollectOrderService extends ServiceImpl<IoCollectOrderMapper, IoC
.payFeeCode(udiRelevanceResponse.getPayFeeCode()) .payFeeCode(udiRelevanceResponse.getPayFeeCode())
.cpmctymc(bizEntity.getItemName()) .cpmctymc(bizEntity.getItemName())
.nameCode(udiRelevanceResponse.getNameCode()) .nameCode(udiRelevanceResponse.getNameCode())
.ggxh(bizEntity.getGgxh())
.batchNo(bizEntity.getBatchNo()) .batchNo(bizEntity.getBatchNo())
.count((int) doubleValue) .count((int) doubleValue)
.measureUnit(bizEntity.getMeasureUnit()) .measureUnit(bizEntity.getMeasureUnit())
@ -428,7 +427,6 @@ public class IoCollectOrderService extends ServiceImpl<IoCollectOrderMapper, IoC
.unTagCount(bizEntity.getCount()).build(); .unTagCount(bizEntity.getCount()).build();
if (IntUtil.value(udiRelevanceResponse.getProductsType()) == 2) { if (IntUtil.value(udiRelevanceResponse.getProductsType()) == 2) {
collectOrderBiz.setGgxh(udiRelevanceResponse.getBzgg());
collectOrderBiz.setMeasureUnit(udiRelevanceResponse.getPrepnUnit()); collectOrderBiz.setMeasureUnit(udiRelevanceResponse.getPrepnUnit());
} }
collectOrderBizs.add(collectOrderBiz); collectOrderBizs.add(collectOrderBiz);
@ -447,22 +445,23 @@ public class IoCollectOrderService extends ServiceImpl<IoCollectOrderMapper, IoC
/** /**
* *
*
* @param ioCollectOrderList * @param ioCollectOrderList
* @param addr * @param addr
*/ */
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public void importPrescribe(List<IoCollectOrder> ioCollectOrderList,String addr) { public void importPrescribe(List<IoCollectOrder> ioCollectOrderList, String addr) {
//下载处方 //下载处方
if (CollUtil.isNotEmpty(ioCollectOrderList)){ if (CollUtil.isNotEmpty(ioCollectOrderList)) {
for (IoCollectOrder collectOrder : ioCollectOrderList) { for (IoCollectOrder collectOrder : ioCollectOrderList) {
if (collectOrderMapper.exists(new LambdaQueryWrapper<IoCollectOrder>().eq(IoCollectOrder::getBillNo, collectOrder.getBillNo()))) { if (collectOrderMapper.exists(new LambdaQueryWrapper<IoCollectOrder>().eq(IoCollectOrder::getBillNo, collectOrder.getBillNo()))) {
continue; continue;
} }
SysWorkplaceDocumentEntity sysWorkplaceDocumentEntity = sysWorkplaceDocumentService.findByBusType(addr); SysWorkplaceDocumentEntity sysWorkplaceDocumentEntity = sysWorkplaceDocumentService.findByBusType(addr);
if (sysWorkplaceDocumentEntity == null){ if (sysWorkplaceDocumentEntity == null) {
continue; continue;
} }
if(collectOrder.getWorkPlaceCode() == null){ if (collectOrder.getWorkPlaceCode() == null) {
//自动分配工位 //自动分配工位
final Long[] defaultWorkplace = {null}; final Long[] defaultWorkplace = {null};
List<SysWorkplaceResponse> sysWorkplaces = sysWorkplaceService.getAllByBusType(addr); List<SysWorkplaceResponse> sysWorkplaces = sysWorkplaceService.getAllByBusType(addr);
@ -499,16 +498,15 @@ public class IoCollectOrderService extends ServiceImpl<IoCollectOrderMapper, IoC
} }
this.save(collectOrder); this.save(collectOrder);
List<IoCollectOrderBiz> bizList = collectOrder.getBizList(); List<IoCollectOrderBiz> bizList = collectOrder.getBizList();
if (CollUtil.isNotEmpty(bizList)){ if (CollUtil.isNotEmpty(bizList)) {
for(IoCollectOrderBiz collectOrderBiz : bizList){ for (IoCollectOrderBiz collectOrderBiz : bizList) {
if(collectOrderBiz.getRelId() != null){ if (collectOrderBiz.getRelId() != null) {
UdiRelevanceResponse udiRelevanceResponse = udiRelevanceService.selectByRelId(collectOrderBiz.getRelId() + ""); UdiRelevanceResponse udiRelevanceResponse = udiRelevanceService.selectByRelId(collectOrderBiz.getRelId() + "");
if (udiRelevanceResponse != null) { if (udiRelevanceResponse != null) {
collectOrderBiz.setYbbm(udiRelevanceResponse.getYbbm()); collectOrderBiz.setYbbm(udiRelevanceResponse.getYbbm());
collectOrderBiz.setPayFeeCode(udiRelevanceResponse.getPayFeeCode()); collectOrderBiz.setPayFeeCode(udiRelevanceResponse.getPayFeeCode());
collectOrderBiz.setNameCode(udiRelevanceResponse.getNameCode()); collectOrderBiz.setNameCode(udiRelevanceResponse.getNameCode());
if (IntUtil.value(udiRelevanceResponse.getProductsType()) == 2) { if (IntUtil.value(udiRelevanceResponse.getProductsType()) == 2) {
collectOrderBiz.setGgxh(udiRelevanceResponse.getBzgg());
collectOrderBiz.setMeasureUnit(udiRelevanceResponse.getPrepnUnit()); collectOrderBiz.setMeasureUnit(udiRelevanceResponse.getPrepnUnit());
} }
} }
@ -688,6 +686,9 @@ public class IoCollectOrderService extends ServiceImpl<IoCollectOrderMapper, IoC
} }
@Resource
UdiRlSupService udiRlSupService;
private IoCodeTempEntity buildCodeEntity(IoCollectOrderCodeMan collectOrderCodeMan, IoOrderEntity orderEntity) { private IoCodeTempEntity buildCodeEntity(IoCollectOrderCodeMan collectOrderCodeMan, IoOrderEntity orderEntity) {
IoCodeTempEntity tempEntity = new IoCodeTempEntity(); IoCodeTempEntity tempEntity = new IoCodeTempEntity();
tempEntity.setOrderId(orderEntity.getBillNo()); tempEntity.setOrderId(orderEntity.getBillNo());
@ -704,6 +705,9 @@ public class IoCollectOrderService extends ServiceImpl<IoCollectOrderMapper, IoC
tempEntity.setReCount(collectOrderCodeMan.getScanCount()); tempEntity.setReCount(collectOrderCodeMan.getScanCount());
tempEntity.setCreateTime(new Date()); tempEntity.setCreateTime(new Date());
tempEntity.setUpdateTime(new Date()); tempEntity.setUpdateTime(new Date());
CompanyProductRelevanceEntity udiRlSupEntity = udiRlSupService.selOneByRlId(tempEntity.getRelId());
if (udiRlSupEntity != null)
tempEntity.setSupId(udiRlSupEntity.getCustomerId());
tempEntity.setDeptCode(orderEntity.getDeptCode()); tempEntity.setDeptCode(orderEntity.getDeptCode());
return tempEntity; return tempEntity;
} }

@ -47,6 +47,8 @@ public class IoCollectOriginService {
IoCollectOrderService collectOrderService; IoCollectOrderService collectOrderService;
@Resource @Resource
IoCollectOrderBizService collectOrderBizService; IoCollectOrderBizService collectOrderBizService;
@Resource
private DownloadFactory downloadFactory;
public BaseResponse downloadOrder(CollectOrderRequest collectOrderRequest) { public BaseResponse downloadOrder(CollectOrderRequest collectOrderRequest) {
@ -90,23 +92,8 @@ public class IoCollectOriginService {
} }
public BaseResponse downloadOrderV2(CollectOrderRequest collectOrderRequest) { public BaseResponse downloadOrderV2(CollectOrderRequest collectOrderRequest) {
//拉取药品处方 //条件
if (collectOrderRequest.getBusType().equals("YPCF002")) { return downloadFactory.downloadOrder(collectOrderRequest);
GetSickPrescribeRequest getSickPrescribeRequest = new GetSickPrescribeRequest();
getSickPrescribeRequest.setPage(1);
getSickPrescribeRequest.setLimit(100);
getSickPrescribeRequest.setCode(collectOrderRequest.getBillNo());
getSickPrescribeRequest.setThirdSys("thirdId");
getSickPrescribeRequest.setWorkPlaceCode(collectOrderRequest.getWorkPlaceCode());
getSickPrescribeRequest.setFromType(collectOrderRequest.getFromType());
BaseResponse<PageSimpleResponse<IoCollectOrder>> baseResponse = erpBasicClient.getPrescribeV2(getSickPrescribeRequest);
if (baseResponse.getCode() == 20000) {
List<IoCollectOrder> list = baseResponse.getData().getList();
collectOrderService.importPrescribe(list,collectOrderRequest.getBusType());
return ResultVOUtils.success("下载成功");
}
}
return ResultVOUtils.error("下载失败");
} }

@ -0,0 +1,12 @@
package com.glxp.api.service.collect.down;
import com.glxp.api.common.res.BaseResponse;
import com.glxp.api.req.collect.CollectOrderRequest;
/**
*
*/
public interface IDownload {
BaseResponse downloadOrder(CollectOrderRequest collectOrderRequest);
}

@ -0,0 +1,149 @@
package com.glxp.api.service.collect.down;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.glxp.api.common.res.BaseResponse;
import com.glxp.api.common.util.ResultVOUtils;
import com.glxp.api.dao.thrsys.ThrOrderDao;
import com.glxp.api.dao.thrsys.ThrOrderDetailDao;
import com.glxp.api.entity.collect.IoCollectOrder;
import com.glxp.api.entity.collect.IoCollectOrderBiz;
import com.glxp.api.entity.thrsys.ThrOrderDetailEntity;
import com.glxp.api.entity.thrsys.ThrOrderEntity;
import com.glxp.api.http.ErpBasicClient;
import com.glxp.api.req.collect.CollectOrderRequest;
import com.glxp.api.req.thrsys.FilterThrOrderRequest;
import com.glxp.api.res.PageSimpleResponse;
import com.glxp.api.res.thrsys.ThrOrderResponse;
import com.glxp.api.service.collect.IoCollectOrderService;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
/**
* CGJH001
* LYRK GMRK LYCK
*/
@Service
public class ThrOrderDownload implements IDownload {
@Resource
private ErpBasicClient erpBasicClient;
@Resource
private IoCollectOrderService collectOrderService;
@Resource
private ThrOrderDao thrOrderDao;
@Resource
private ThrOrderDetailDao thrOrderDetailDao;
@Override
public BaseResponse downloadOrder(CollectOrderRequest collectOrderRequest) {
LambdaQueryWrapper<ThrOrderEntity> w = new LambdaQueryWrapper<>();
w.eq(StrUtil.isNotBlank(collectOrderRequest.getBillNo()), ThrOrderEntity::getBillNo, collectOrderRequest.getBillNo());
List<ThrOrderEntity> thrOrderEntities = thrOrderDao.selectList(w);
if (CollUtil.isNotEmpty(thrOrderEntities)) {
return this.importThrOrder(thrOrderEntities, collectOrderRequest);
} else {
//三方拉取
FilterThrOrderRequest filterThrOrderRequest = new FilterThrOrderRequest();
filterThrOrderRequest.setPage(1);
filterThrOrderRequest.setLimit(100);
filterThrOrderRequest.setBillNo(collectOrderRequest.getBillNo());
filterThrOrderRequest.setThirdSys("thirdId");
filterThrOrderRequest.setBusType(collectOrderRequest.getBusType());
filterThrOrderRequest.setWorkPlaceCode(collectOrderRequest.getWorkPlaceCode());
filterThrOrderRequest.setFromType(collectOrderRequest.getFromType());
BaseResponse<PageSimpleResponse<ThrOrderResponse>> baseResponse = erpBasicClient.getThrOrders(filterThrOrderRequest);
if (baseResponse.getCode() == 20000) {
List<ThrOrderResponse> list = baseResponse.getData().getList();
if (CollUtil.isNotEmpty(list)) {
list.forEach(item -> {
ThrOrderEntity thrOrderEntity = new ThrOrderEntity();
BeanUtil.copyProperties(item, thrOrderEntity);
thrOrderEntity.setCreateTime(new Date());
thrOrderEntity.setUpdateTime(new Date());
List<ThrOrderDetailEntity> detailList = item.getDetailList();
if (CollUtil.isNotEmpty(detailList)) {
thrOrderDetailDao.delete(new LambdaQueryWrapper<ThrOrderDetailEntity>().eq(ThrOrderDetailEntity::getOrderIdFk, item.getBillNo()));
for (ThrOrderDetailEntity detail : detailList) {
detail.setCreateTime(thrOrderEntity.getCreateTime());
detail.setUpdateTime(thrOrderEntity.getUpdateTime());
thrOrderDetailDao.insert(detail);
}
}
thrOrderDao.insertOrUpdate(thrOrderEntity);
});
//再次获取
thrOrderEntities = thrOrderDao.selectList(w);
return this.importThrOrder(thrOrderEntities, collectOrderRequest);
}
}
}
return ResultVOUtils.error("下载失败");
}
/**
*
*
* @param thrOrderEntities
* @param collectOrderRequest
*/
private BaseResponse importThrOrder(List<ThrOrderEntity> thrOrderEntities, CollectOrderRequest collectOrderRequest) {
List<IoCollectOrder> ioCollectOrderList = new ArrayList<>();
if (CollUtil.isNotEmpty(thrOrderEntities)) {
for (ThrOrderEntity thrOrder : thrOrderEntities) {
IoCollectOrder ioCollectOrder = new IoCollectOrder();
StringBuilder errorMsg = new StringBuilder();
ioCollectOrder.setBillNo(thrOrder.getBillNo());
ioCollectOrder.setFromType("HIS系统");
ioCollectOrder.setFromCorp(null);
ioCollectOrder.setWorkPlaceCode(collectOrderRequest.getWorkPlaceCode());
ioCollectOrder.setFromCorpName("");
ioCollectOrder.setBillTime(DateUtil.parseTime(thrOrder.getBilldate()));
ioCollectOrder.setCreateTime(new Date());
ioCollectOrder.setCreateUser(collectOrderRequest.getCreateUser());
ioCollectOrder.setBackupOrderRemark1(null);
ioCollectOrder.setUpdateTime(new Date());
ioCollectOrder.setSplitStatus(0);
ioCollectOrder.setTagStatus(0);
List<ThrOrderDetailEntity> thrOrderDetailEntities = thrOrderDetailDao.selectList(new LambdaQueryWrapper<ThrOrderDetailEntity>().eq(ThrOrderDetailEntity::getOrderIdFk, thrOrder.getBillNo()));
List<IoCollectOrderBiz> bizList = new ArrayList<>();
for (ThrOrderDetailEntity entity : thrOrderDetailEntities) {
IoCollectOrderBiz collectOrderBiz = new IoCollectOrderBiz();
// BasicUdirelEntity basicUdirelEntity = basicUdirelDao.selectOne(new LambdaQueryWrapper<BasicUdirelEntity>().eq(BasicUdirelEntity::getMainId, entity.getPHYSIC_CODE()));
// if (basicUdirelEntity != null) {
// collectOrderBiz.setRelId(basicUdirelEntity.getId());
// } else {
// errorMsg.append(entity.getPHYSIC_NAME()).append("字典未对照").append(";");
// }
collectOrderBiz.setThrCode(null);
collectOrderBiz.setCpmctymc(null);
collectOrderBiz.setGgxh(null);
collectOrderBiz.setBatchNo(entity.getBatchNo());
collectOrderBiz.setOrderIdFk(ioCollectOrder.getBillNo());
collectOrderBiz.setCount(entity.getCount());
collectOrderBiz.setMeasureUnit(null);
collectOrderBiz.setTagStatus(1);
collectOrderBiz.setUnTagCount(0);
bizList.add(collectOrderBiz);
}
if (StrUtil.isNotBlank(errorMsg)) {
ioCollectOrder.setErrorMsg(errorMsg.toString());
ioCollectOrder.setTagStatus(4);
}
ioCollectOrder.setBizList(bizList);
ioCollectOrderList.add(ioCollectOrder);
}
collectOrderService.importPrescribe(ioCollectOrderList, collectOrderRequest.getBusType());
return ResultVOUtils.success("下载成功");
}
return ResultVOUtils.error("下载失败");
}
}

@ -0,0 +1,40 @@
package com.glxp.api.service.collect.down;
import com.glxp.api.common.res.BaseResponse;
import com.glxp.api.common.util.ResultVOUtils;
import com.glxp.api.entity.collect.IoCollectOrder;
import com.glxp.api.http.ErpBasicClient;
import com.glxp.api.req.basic.GetSickPrescribeRequest;
import com.glxp.api.req.collect.CollectOrderRequest;
import com.glxp.api.res.PageSimpleResponse;
import com.glxp.api.service.collect.IoCollectOrderService;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.List;
@Service
public class YPCF002Download implements IDownload{
@Resource
private ErpBasicClient erpBasicClient;
@Resource
private IoCollectOrderService collectOrderService;
@Override
public BaseResponse downloadOrder(CollectOrderRequest collectOrderRequest) {
GetSickPrescribeRequest getSickPrescribeRequest = new GetSickPrescribeRequest();
getSickPrescribeRequest.setPage(1);
getSickPrescribeRequest.setLimit(100);
getSickPrescribeRequest.setCode(collectOrderRequest.getBillNo());
getSickPrescribeRequest.setThirdSys("thirdId");
getSickPrescribeRequest.setWorkPlaceCode(collectOrderRequest.getWorkPlaceCode());
getSickPrescribeRequest.setFromType(collectOrderRequest.getFromType());
BaseResponse<PageSimpleResponse<IoCollectOrder>> baseResponse = erpBasicClient.getPrescribeV2(getSickPrescribeRequest);
if (baseResponse.getCode() == 20000) {
List<IoCollectOrder> list = baseResponse.getData().getList();
collectOrderService.importPrescribe(list,collectOrderRequest.getBusType());
return ResultVOUtils.success("下载成功");
}
return ResultVOUtils.error("下载失败");
}
}

@ -587,10 +587,11 @@ public class IoSplitCodeService extends ServiceImpl<IoSplitCodeMapper, IoSplitCo
removeIds.add(splitFifoCodeEntity.getId()); removeIds.add(splitFifoCodeEntity.getId());
IoSplitFifoInv splitFifoInv = splitFifoInvService.findByFifoCode(splitFifoCodeEntity); IoSplitFifoInv splitFifoInv = splitFifoInvService.findByFifoCode(splitFifoCodeEntity);
if (splitFifoInv != null) { if (splitFifoInv != null) {
splitFifoInv.setOutCount(IntUtil.value(splitFifoInv.getOutCount()) + IntUtil.value(splitCodeEntity.getTotalCount())); splitFifoInv.setOutCount(IntUtil.value(splitFifoInv.getOutCount()) + IntUtil.value(splitFifoCodeEntity.getTotalCount()));
splitFifoInv.setLockCount(IntUtil.value(splitFifoInv.getLockCount()) - IntUtil.value(splitCodeEntity.getTotalCount())); int lockCount = IntUtil.value(splitFifoInv.getLockCount()) - IntUtil.value(splitFifoCodeEntity.getTotalCount());
splitFifoInv.setReCount(IntUtil.value(splitFifoInv.getInCount() - IntUtil.value(splitFifoInv.getOutCount()))); splitFifoInv.setLockCount(lockCount > 0 ? lockCount : 0);
splitFifoInv.setAvailableCount(IntUtil.value(splitFifoInv.getInCount() - IntUtil.value(splitFifoInv.getLockCount()) - IntUtil.value(splitFifoInv.getOutCount()))); splitFifoInv.setReCount(IntUtil.value(splitFifoInv.getInCount()) - IntUtil.value(splitFifoInv.getOutCount()));
splitFifoInv.setAvailableCount(IntUtil.value(splitFifoInv.getInCount()) - IntUtil.value(splitFifoInv.getLockCount()) - IntUtil.value(splitFifoInv.getOutCount()));
splitFifoInvService.updateById(splitFifoInv); splitFifoInvService.updateById(splitFifoInv);
} }
if (count >= needCount) { if (count >= needCount) {

@ -3,7 +3,11 @@
<mapper namespace="com.glxp.api.dao.collect.IoCollectOrderBizMapper"> <mapper namespace="com.glxp.api.dao.collect.IoCollectOrderBizMapper">
<select id="filterList" parameterType="com.glxp.api.req.collect.CollectOrderBizRequest" <select id="filterList" parameterType="com.glxp.api.req.collect.CollectOrderBizRequest"
resultType="com.glxp.api.res.collect.CollectOrderBizResponse"> resultType="com.glxp.api.res.collect.CollectOrderBizResponse">
SELECT icob.*, bp.nameCode diCode, bp.zczbhhzbapzbh, bp.manufactory,bp.bzgg SELECT icob.*,
bp.nameCode diCode,
bp.zczbhhzbapzbh,
bp.manufactory,
bp.bzgg
FROM io_collect_order_biz icob FROM io_collect_order_biz icob
left join basic_udirel bu on icob.relId = bu.id left join basic_udirel bu on icob.relId = bu.id
left join basic_products bp on bu.uuid = bp.uuid left join basic_products bp on bu.uuid = bp.uuid
@ -38,5 +42,4 @@
SET autoResCount = #{autoResCount} SET autoResCount = #{autoResCount}
WHERE id = #{id} WHERE id = #{id}
</update> </update>
</mapper> </mapper>

@ -4343,8 +4343,6 @@ CALL Pro_Temp_ColumnWork('thr_products', 'prepnSpec',
CALL Pro_Temp_ColumnWork('basic_ins_material', 'remark', CALL Pro_Temp_ColumnWork('basic_ins_material', 'remark',
'varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT ''备注''', 'varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT ''备注''',
1); 1);

Loading…
Cancel
Save