|
|
@ -1,26 +1,33 @@
|
|
|
|
package com.glxp.udi.admin.controller.inout;
|
|
|
|
package com.glxp.udi.admin.controller.inout;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
import cn.hutool.core.bean.BeanUtil;
|
|
|
|
import cn.hutool.core.collection.CollUtil;
|
|
|
|
import cn.hutool.core.collection.CollUtil;
|
|
|
|
import cn.hutool.core.util.StrUtil;
|
|
|
|
import cn.hutool.core.util.StrUtil;
|
|
|
|
import cn.hutool.json.JSONUtil;
|
|
|
|
import cn.hutool.json.JSONUtil;
|
|
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
|
|
import com.glxp.udi.admin.annotation.AuthRuleAnnotation;
|
|
|
|
import com.glxp.udi.admin.annotation.AuthRuleAnnotation;
|
|
|
|
|
|
|
|
import com.glxp.udi.admin.common.enums.ResultEnum;
|
|
|
|
import com.glxp.udi.admin.common.res.BaseResponse;
|
|
|
|
import com.glxp.udi.admin.common.res.BaseResponse;
|
|
|
|
|
|
|
|
import com.glxp.udi.admin.common.util.ResultVOUtils;
|
|
|
|
import com.glxp.udi.admin.constant.ConstantStatus;
|
|
|
|
import com.glxp.udi.admin.constant.ConstantStatus;
|
|
|
|
import com.glxp.udi.admin.entity.auth.AuthAdmin;
|
|
|
|
import com.glxp.udi.admin.entity.auth.AuthAdmin;
|
|
|
|
|
|
|
|
import com.glxp.udi.admin.entity.basic.BussinessTypeEntity;
|
|
|
|
import com.glxp.udi.admin.entity.inout.*;
|
|
|
|
import com.glxp.udi.admin.entity.inout.*;
|
|
|
|
|
|
|
|
import com.glxp.udi.admin.entity.param.SystemParamConfigEntity;
|
|
|
|
import com.glxp.udi.admin.entity.udid.UdiEntity;
|
|
|
|
import com.glxp.udi.admin.entity.udid.UdiEntity;
|
|
|
|
import com.glxp.udi.admin.req.inout.*;
|
|
|
|
import com.glxp.udi.admin.req.inout.*;
|
|
|
|
import com.glxp.udi.admin.req.inventory.FilterInvLinkDataRequest;
|
|
|
|
import com.glxp.udi.admin.req.inventory.FilterInvLinkDataRequest;
|
|
|
|
import com.glxp.udi.admin.res.PageSimpleResponse;
|
|
|
|
import com.glxp.udi.admin.res.PageSimpleResponse;
|
|
|
|
import com.glxp.udi.admin.res.basic.BussinessTypResponse;
|
|
|
|
import com.glxp.udi.admin.res.basic.BussinessTypResponse;
|
|
|
|
import com.glxp.udi.admin.service.auth.AuthAdminService;
|
|
|
|
import com.glxp.udi.admin.service.auth.AuthAdminService;
|
|
|
|
|
|
|
|
import com.glxp.udi.admin.service.auth.CustomerService;
|
|
|
|
|
|
|
|
import com.glxp.udi.admin.service.basic.BussinessTypeService;
|
|
|
|
import com.glxp.udi.admin.service.inout.*;
|
|
|
|
import com.glxp.udi.admin.service.inout.*;
|
|
|
|
|
|
|
|
import com.glxp.udi.admin.service.param.SystemParamCustomerConfigService;
|
|
|
|
import com.glxp.udi.admin.thread.TransInoutService;
|
|
|
|
import com.glxp.udi.admin.thread.TransInoutService;
|
|
|
|
import com.glxp.udi.admin.util.FilterUdiUtils;
|
|
|
|
import com.glxp.udi.admin.util.*;
|
|
|
|
import com.glxp.udi.admin.common.enums.ResultEnum;
|
|
|
|
import org.apache.commons.lang3.StringUtils;
|
|
|
|
import com.glxp.udi.admin.common.util.ResultVOUtils;
|
|
|
|
|
|
|
|
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;
|
|
|
@ -29,7 +36,9 @@ 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;
|
|
|
|
|
|
|
|
import java.util.Locale;
|
|
|
|
import java.util.Map;
|
|
|
|
import java.util.Map;
|
|
|
|
|
|
|
|
|
|
|
|
@RestController
|
|
|
|
@RestController
|
|
|
@ -51,6 +60,14 @@ public class WareHouseController {
|
|
|
|
private OrderService orderService;
|
|
|
|
private OrderService orderService;
|
|
|
|
@Resource
|
|
|
|
@Resource
|
|
|
|
private UdiInfoService udiInfoService;
|
|
|
|
private UdiInfoService udiInfoService;
|
|
|
|
|
|
|
|
@Resource
|
|
|
|
|
|
|
|
private BussinessTypeService bussinessTypeService;
|
|
|
|
|
|
|
|
@Resource
|
|
|
|
|
|
|
|
private SystemParamCustomerConfigService systemParamCustomerConfigService;
|
|
|
|
|
|
|
|
@Resource
|
|
|
|
|
|
|
|
private GennerOrderUtils gennerOrderUtils;
|
|
|
|
|
|
|
|
@Resource
|
|
|
|
|
|
|
|
private CustomerService customerService;
|
|
|
|
|
|
|
|
|
|
|
|
@AuthRuleAnnotation("")
|
|
|
|
@AuthRuleAnnotation("")
|
|
|
|
@PostMapping("warehouse/inout/postOrders")
|
|
|
|
@PostMapping("warehouse/inout/postOrders")
|
|
|
@ -276,4 +293,228 @@ public class WareHouseController {
|
|
|
|
warehouseService.updateCodesTime(codeEditRequest);
|
|
|
|
warehouseService.updateCodesTime(codeEditRequest);
|
|
|
|
return ResultVOUtils.success("更新成功");
|
|
|
|
return ResultVOUtils.success("更新成功");
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
|
|
* 网页端添加条码数据接口
|
|
|
|
|
|
|
|
*
|
|
|
|
|
|
|
|
* @param addOrderRequest
|
|
|
|
|
|
|
|
* @param bindingResult
|
|
|
|
|
|
|
|
* @return
|
|
|
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
@AuthRuleAnnotation("")
|
|
|
|
|
|
|
|
@PostMapping("/warehouse/inout/addOrderWeb")
|
|
|
|
|
|
|
|
public BaseResponse addOrderWeb(@RequestBody AddOrderRequest addOrderRequest, BindingResult bindingResult) {
|
|
|
|
|
|
|
|
if (bindingResult.hasErrors()) {
|
|
|
|
|
|
|
|
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage());
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
AddCodeResult addCodeResult = new AddCodeResult();
|
|
|
|
|
|
|
|
if (addOrderRequest.getActor() == null) {
|
|
|
|
|
|
|
|
addOrderRequest.setAction(addOrderRequest.getBillType());
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
BussinessTypeEntity bussinessType = bussinessTypeService.findBTByAction(addOrderRequest.getAction(), addOrderRequest.getCustomerId());
|
|
|
|
|
|
|
|
String code = addOrderRequest.getCode();
|
|
|
|
|
|
|
|
if (StrUtil.isBlank(code)) {
|
|
|
|
|
|
|
|
return ResultVOUtils.error(ResultEnum.DATA_ERROR);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
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());
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (StrUtil.isNotEmpty(udiEntity.getSerialNo()) && udiEntity.getSerialNo().length() > 20) {
|
|
|
|
|
|
|
|
return ResultVOUtils.error(500, "无效条码!序列号超出最大范围");
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (StrUtil.isNotEmpty(udiEntity.getBatchNo()) && udiEntity.getBatchNo().length() > 20) {
|
|
|
|
|
|
|
|
return ResultVOUtils.error(500, "无效条码!批次号超出最大范围");
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//批次号校验
|
|
|
|
|
|
|
|
if (StrUtil.isEmpty(udiEntity.getSerialNo()) && StrUtil.isEmpty(udiEntity.getBatchNo())) {
|
|
|
|
|
|
|
|
return ResultVOUtils.error(500, "批次号不能为空!");
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//过期提醒:
|
|
|
|
|
|
|
|
SystemParamConfigEntity expireParamConfigEntity = systemParamCustomerConfigService.getParamByKey("expire_date_tip", Long.valueOf(addOrderRequest.getCustomerId()));
|
|
|
|
|
|
|
|
if (expireParamConfigEntity.getParamValue().equals("1") && !addOrderRequest.isIgnoreExpire()) {
|
|
|
|
|
|
|
|
if (StrUtil.isNotEmpty(udiEntity.getExpireDate())) {
|
|
|
|
|
|
|
|
String expireDate = "20" + udiEntity.getExpireDate();
|
|
|
|
|
|
|
|
long expireTime = DateUtil.parseDateExpire(expireDate);
|
|
|
|
|
|
|
|
if (expireTime - System.currentTimeMillis() < 0) {
|
|
|
|
|
|
|
|
return ResultVOUtils.error(504, "当前产品已过期,是否确定继续添加?");
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//失效期提醒
|
|
|
|
|
|
|
|
SystemParamConfigEntity recentParamConfigEntity = systemParamCustomerConfigService.getParamByKey("recent_date_tip", Long.valueOf(addOrderRequest.getCustomerId()));
|
|
|
|
|
|
|
|
long recent = Long.parseLong(recentParamConfigEntity.getParamValue());
|
|
|
|
|
|
|
|
if (recent > 0 && !addOrderRequest.isIgnoreRecentExpire()) {
|
|
|
|
|
|
|
|
if (StrUtil.isNotEmpty(udiEntity.getExpireDate())) {
|
|
|
|
|
|
|
|
String expireDate = "20" + udiEntity.getExpireDate();
|
|
|
|
|
|
|
|
long expireTime = DateUtil.parseDateExpire(expireDate);
|
|
|
|
|
|
|
|
long recentTieme = Math.abs(recent * 24 * 60 * 60 * 1000);
|
|
|
|
|
|
|
|
long resultTime = expireTime - System.currentTimeMillis();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (resultTime > 0) {
|
|
|
|
|
|
|
|
long time = resultTime / (24 * 60 * 60 * 1000);
|
|
|
|
|
|
|
|
if (resultTime < recentTieme) {
|
|
|
|
|
|
|
|
return ResultVOUtils.error(505, "当前产品临近过期,距过期还剩" + time + "天,是否确定继续添加?");
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
String orderId = addOrderRequest.getOrderId();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//先生成扫码单据
|
|
|
|
|
|
|
|
OrderEntity orderEntity = orderService.findById(orderId);
|
|
|
|
|
|
|
|
if (StringUtils.isBlank(orderId) || orderEntity == null) {
|
|
|
|
|
|
|
|
String orderNo = gennerOrderUtils.createScOrderNo(new OrderNoTypeBean(Constant.SCAN_ORDER + StrUtil.trim(bussinessType.getPrefix()), "yyyyMMdd"));
|
|
|
|
|
|
|
|
orderId = orderNo;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
WarehouseQueryRequest warehouseQueryRequest = new WarehouseQueryRequest();
|
|
|
|
|
|
|
|
warehouseQueryRequest.setOrderId(orderId);
|
|
|
|
|
|
|
|
List<WarehouseEntity> warehouseEntitys = warehouseTempService.findByOrderIdAndCode(warehouseQueryRequest);
|
|
|
|
|
|
|
|
WarehousetempEntity warehousetempEntity = new WarehousetempEntity();
|
|
|
|
|
|
|
|
WarehouseEntity exitLocalEntity = null;
|
|
|
|
|
|
|
|
if (warehouseEntitys.size() > 0) {
|
|
|
|
|
|
|
|
exitLocalEntity = isExitLocal(code, warehouseEntitys);
|
|
|
|
|
|
|
|
if (exitLocalEntity != null) {
|
|
|
|
|
|
|
|
BeanUtil.copyProperties(exitLocalEntity, warehousetempEntity);
|
|
|
|
|
|
|
|
warehousetempEntity.setCount(warehousetempEntity.getCount() + 1);
|
|
|
|
|
|
|
|
if (StringUtils.isBlank(warehousetempEntity.getSerialNo())) {
|
|
|
|
|
|
|
|
warehouseTempService.updateById(warehousetempEntity);
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
|
|
|
return ResultVOUtils.error(ResultEnum.DATA_REPEAT);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (exitLocalEntity == null) {
|
|
|
|
|
|
|
|
warehousetempEntity.setCode(code);
|
|
|
|
|
|
|
|
warehousetempEntity.setOrderId(orderId);
|
|
|
|
|
|
|
|
warehousetempEntity.setCorpOrderId(addOrderRequest.getCorpOrderId());
|
|
|
|
|
|
|
|
warehousetempEntity.setActDate(addOrderRequest.getActDate());
|
|
|
|
|
|
|
|
warehousetempEntity.setMainAction(bussinessType.getMainAction());
|
|
|
|
|
|
|
|
warehousetempEntity.setAction(bussinessType.getAction());
|
|
|
|
|
|
|
|
warehousetempEntity.setActor(addOrderRequest.getActor());
|
|
|
|
|
|
|
|
warehousetempEntity.setFromCorpId(addOrderRequest.getFromCorpId());
|
|
|
|
|
|
|
|
warehousetempEntity.setFromCorp(addOrderRequest.getFromCorp());
|
|
|
|
|
|
|
|
warehousetempEntity.setBatchNo(udiEntity.getBatchNo());
|
|
|
|
|
|
|
|
warehousetempEntity.setProduceDate(udiEntity.getProduceDate());
|
|
|
|
|
|
|
|
warehousetempEntity.setLocStorageCode(addOrderRequest.getInvWarehouseCode());
|
|
|
|
|
|
|
|
warehousetempEntity.setNameCode(udiEntity.getUdi());
|
|
|
|
|
|
|
|
warehousetempEntity.setExpireDate(udiEntity.getExpireDate());
|
|
|
|
|
|
|
|
warehousetempEntity.setSerialNo(udiEntity.getSerialNo());
|
|
|
|
|
|
|
|
warehousetempEntity.setLocStorageCode(addOrderRequest.getLocStorageCode());
|
|
|
|
|
|
|
|
warehousetempEntity.setCount(1);
|
|
|
|
|
|
|
|
List<WarehousetempEntity> warehousetempEntities = new ArrayList<>();
|
|
|
|
|
|
|
|
warehousetempEntities.add(warehousetempEntity);
|
|
|
|
|
|
|
|
String unitFk = null;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (bussinessType.getCorpType() == ConstantStatus.CORP_TYPE_OUT) {
|
|
|
|
|
|
|
|
unitFk = warehousetempEntity.getFromCorpId();
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
//产品是否可以以使用单元入库
|
|
|
|
|
|
|
|
UdiInfoEntity udiInfoEntity = udiInfoService.findByNameCode(warehousetempEntity.getNameCode(), unitFk);
|
|
|
|
|
|
|
|
if (null != udiInfoEntity) {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//计算实际数量
|
|
|
|
|
|
|
|
int actCount = 0;
|
|
|
|
|
|
|
|
if (udiInfoEntity.getIsUseDy() == 1 && udiInfoEntity.getDiType() != 2) {
|
|
|
|
|
|
|
|
if (udiInfoEntity.getBhzxxsbzsl() == 0) {
|
|
|
|
|
|
|
|
actCount = udiInfoEntity.getZxxsbzbhsydysl();
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
|
|
|
actCount = udiInfoEntity.getBhzxxsbzsl() * udiInfoEntity.getBhzxxsbzsl();
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
|
|
|
actCount = udiInfoEntity.getBhzxxsbzsl();
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
warehousetempEntity.setCount(warehousetempEntity.getCount() * actCount);
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
|
|
|
if (unitFk == null)
|
|
|
|
|
|
|
|
return ResultVOUtils.error(500, "耗材字典不存在此产品!");
|
|
|
|
|
|
|
|
else
|
|
|
|
|
|
|
|
return ResultVOUtils.error(500, "当前供应商不存在此配送产品!");
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
OrderEntity isExit = orderService.findById(orderId);
|
|
|
|
|
|
|
|
if (isExit == null) {
|
|
|
|
|
|
|
|
OrderEntity orderSaveRequest = new OrderEntity();
|
|
|
|
|
|
|
|
orderSaveRequest.setOrderId(orderId);
|
|
|
|
|
|
|
|
if (addOrderRequest.getActDate() != null) {
|
|
|
|
|
|
|
|
orderSaveRequest.setActDate(addOrderRequest.getActDate());
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
long customerId = customerService.getCustomerId();
|
|
|
|
|
|
|
|
orderSaveRequest.setMainAction(bussinessType.getMainAction());
|
|
|
|
|
|
|
|
orderSaveRequest.setAction(bussinessType.getAction());
|
|
|
|
|
|
|
|
orderSaveRequest.setActor(addOrderRequest.getActor());
|
|
|
|
|
|
|
|
orderSaveRequest.setCorpOrderId(addOrderRequest.getCorpOrderId());
|
|
|
|
|
|
|
|
orderSaveRequest.setLocStorageCode(addOrderRequest.getLocStorageCode());
|
|
|
|
|
|
|
|
orderSaveRequest.setFromCorpId(addOrderRequest.getFromCorpId());
|
|
|
|
|
|
|
|
orderSaveRequest.setFromCorp(addOrderRequest.getFromCorp());
|
|
|
|
|
|
|
|
orderSaveRequest.setFromType("网页新增");
|
|
|
|
|
|
|
|
orderSaveRequest.setStatus(ConstantStatus.ORDER_STATUS_TEMP_SAVE);
|
|
|
|
|
|
|
|
orderSaveRequest.setExportStatus("未上传");
|
|
|
|
|
|
|
|
orderSaveRequest.setReceiveStatus(ConstantStatus.RECEIVE_UN);
|
|
|
|
|
|
|
|
orderSaveRequest.setLocStorageCode(addOrderRequest.getInvWarehouseCode());
|
|
|
|
|
|
|
|
orderSaveRequest.setCustomerId(customerId);
|
|
|
|
|
|
|
|
orderService.insertOrder(orderSaveRequest);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
addCodeResult.setOrderId(orderId);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
return ResultVOUtils.success(addCodeResult);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//判断本单是否存在
|
|
|
|
|
|
|
|
public WarehouseEntity isExitLocal(String code, List<WarehouseEntity> warehouseEntityList) {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
UdiEntity udiEntity = FilterUdiUtils.getUdi(code);
|
|
|
|
|
|
|
|
for (int i = 0; i < warehouseEntityList.size(); i++) {
|
|
|
|
|
|
|
|
WarehouseEntity drugCodeSelectEntity = warehouseEntityList.get(i);
|
|
|
|
|
|
|
|
if (warehouseEntityList.get(i).getCode().equals(code)) {
|
|
|
|
|
|
|
|
return drugCodeSelectEntity;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
UdiEntity originUdiEntity = FilterUdiUtils.getUdi(drugCodeSelectEntity.getCode());
|
|
|
|
|
|
|
|
if (!StrUtil.emptyIfNull(originUdiEntity.getUdi()).equals(StrUtil.emptyIfNull(udiEntity.getUdi()))) {
|
|
|
|
|
|
|
|
continue;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
if (!StrUtil.emptyIfNull(originUdiEntity.getBatchNo()).toUpperCase(Locale.ROOT).equals(StrUtil.emptyIfNull(udiEntity.getBatchNo()).toUpperCase(Locale.ROOT))) {
|
|
|
|
|
|
|
|
continue;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
if (!StrUtil.emptyIfNull(originUdiEntity.getProduceDate()).equals(StrUtil.emptyIfNull(udiEntity.getProduceDate()))) {
|
|
|
|
|
|
|
|
continue;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
if (!StrUtil.emptyIfNull(originUdiEntity.getExpireDate()).equals(StrUtil.emptyIfNull(udiEntity.getExpireDate()))) {
|
|
|
|
|
|
|
|
continue;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
if (!StrUtil.emptyIfNull(originUdiEntity.getSerialNo()).equals(StrUtil.emptyIfNull(udiEntity.getSerialNo()))) {
|
|
|
|
|
|
|
|
continue;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
return drugCodeSelectEntity;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
return null;
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|