多个bug修改

zhairh
anthonyywj2 3 years ago
parent 9c6364e8c2
commit 9bea70cd56

@ -119,5 +119,8 @@ public class ConstantStatus {
public static final String SYNC_SCAN_ORDER = "AutoDownloadOrder"; public static final String SYNC_SCAN_ORDER = "AutoDownloadOrder";
public static final String SYNC_DI_PRODUCTS = "AutoDownloadDiProducts"; public static final String SYNC_DI_PRODUCTS = "AutoDownloadDiProducts";
public static final String REDIS_BILLNO = "ACCEPT_"; //缓存单据前缀
public static final String REDIS_BILLNO_CODES = "ACCEPT_CODES";
} }

@ -231,15 +231,19 @@ public class BussinessLocalTypeController {
if (bussinessTypeEntity != null) { if (bussinessTypeEntity != null) {
bussinessTypeEntity.setAction("ST" + CustomUtil.getId()); bussinessTypeEntity.setAction("ST" + CustomUtil.getId());
BussinessLocalTypeEntity bussinessLocalTypeEntity = bussinessLocalTypeService.findByAction(bussinessTypeEntity.getAction()); BussinessLocalTypeEntity bussinessLocalTypeEntity = bussinessLocalTypeService.findByAction(bussinessTypeEntity.getAction());
BussinessLocalTypeEntity bussinessLocalTypeEntity1 = bussinessLocalTypeService.findBTByName(bussinessTypeEntity.getName());
if (bussinessLocalTypeEntity1 != null) {
return ResultVOUtils.error(999, "业务单据类型名称已存在!");
}
if (bussinessLocalTypeEntity != null) { if (bussinessLocalTypeEntity != null) {
ResultVOUtils.error(999, "业务类型已存在!"); return ResultVOUtils.error(999, "业务类型已存在!");
} else { } else {
bussinessTypeEntity.setUpdateTime(new Date()); bussinessTypeEntity.setUpdateTime(new Date());
bussinessLocalTypeService.insertBussinessType(bussinessTypeEntity); bussinessLocalTypeService.insertBussinessType(bussinessTypeEntity);
} }
} else { } else {
ResultVOUtils.error(999, "参数错误"); return ResultVOUtils.error(999, "参数错误");
} }
return ResultVOUtils.success("更新成功"); return ResultVOUtils.success("更新成功");
} }

@ -95,10 +95,10 @@ public class EntrustReceController {
public BaseResponse updateEntrustRece(@RequestBody EntrustReceEntity entrustReceEntity) { public BaseResponse updateEntrustRece(@RequestBody EntrustReceEntity entrustReceEntity) {
entrustReceEntity.setUpdateTime(new Date()); entrustReceEntity.setUpdateTime(new Date());
EntrustReceEntity temp = entrustReceService.findByUnique(entrustReceEntity.getAction(), entrustReceEntity.getEntrustUser()); // EntrustReceEntity temp = entrustReceService.findByUnique(entrustReceEntity.getAction(), entrustReceEntity.getEntrustUser());
if (temp != null) { // if (temp != null) {
return ResultVOUtils.error(500, "已存在相同的委托验收"); // return ResultVOUtils.error(500, "已存在相同的委托验收");
} // }
boolean b = entrustReceService.updateEntrustRec(entrustReceEntity); boolean b = entrustReceService.updateEntrustRec(entrustReceEntity);
if (b) { if (b) {

@ -153,6 +153,8 @@ public class UdiContrastController {
udiInfoService.deleteByUuid(udiRelevanceEntity.getUuid()); udiInfoService.deleteByUuid(udiRelevanceEntity.getUuid());
for (UdiInfoEntity udiInfoEntity : udiInfoEntities) { for (UdiInfoEntity udiInfoEntity : udiInfoEntities) {
udiInfoEntity.setUuid(udiRelevanceEntity.getUuid()); udiInfoEntity.setUuid(udiRelevanceEntity.getUuid());
udiInfoEntity.setProductType(ConstantStatus.PRODUCT_TYPE_UDI);
} }
udiInfoService.insertUdiInfos(UdiInfoUtil.initUdiInfoEntitys(udiInfoEntities)); udiInfoService.insertUdiInfos(UdiInfoUtil.initUdiInfoEntitys(udiInfoEntities));

@ -128,9 +128,17 @@ public class UdiInfoController {
@GetMapping("udiwms/udiinfo/superSearch") @GetMapping("udiwms/udiinfo/superSearch")
public BaseResponse superSearch(FilterUdiInfoRequest filterUdiInfoRequest) { public BaseResponse superSearch(FilterUdiInfoRequest filterUdiInfoRequest) {
if (StrUtil.isEmpty(filterUdiInfoRequest.getNameCode())) { if (StrUtil.isEmpty(filterUdiInfoRequest.getNameCode()) && StrUtil.isEmpty(filterUdiInfoRequest.getUdiCode())) {
return ResultVOUtils.error(500, "DI不能为空"); return ResultVOUtils.error(500, "DI不能为空");
} }
if (StrUtil.isNotEmpty(filterUdiInfoRequest.getUdiCode())) {
UdiEntity udiEntity = FilterUdiUtils.getUdi(filterUdiInfoRequest.getUdiCode());
if (udiEntity == null)
return ResultVOUtils.error(500, "UDI码格式错误");
filterUdiInfoRequest.setNameCode(udiEntity.getUdi());
}
ProductInfoFilterRequest productInfoFilterRequest = new ProductInfoFilterRequest(); ProductInfoFilterRequest productInfoFilterRequest = new ProductInfoFilterRequest();
productInfoFilterRequest.setNameCode(filterUdiInfoRequest.getNameCode()); productInfoFilterRequest.setNameCode(filterUdiInfoRequest.getNameCode());
productInfoFilterRequest.setPage(filterUdiInfoRequest.getPage()); productInfoFilterRequest.setPage(filterUdiInfoRequest.getPage());

@ -69,13 +69,6 @@ public class CompanyProductRelevanceController {
List<CompanyProductRelevanceResponse> basicInstrumentMaintainRelevanceResponses = null; List<CompanyProductRelevanceResponse> basicInstrumentMaintainRelevanceResponses = null;
companyProductRelevanceRequest.setDiType(1); companyProductRelevanceRequest.setDiType(1);
basicInstrumentMaintainRelevanceResponses = companyProductRelevanceService.filterUdiGp(companyProductRelevanceRequest); basicInstrumentMaintainRelevanceResponses = companyProductRelevanceService.filterUdiGp(companyProductRelevanceRequest);
// if (basicInstrumentMaintainRelevanceResponses != null && basicInstrumentMaintainRelevanceResponses.size() > 0) {
// for (CompanyProductRelevanceResponse basicInstrumentMaintainRelevanceResponse : basicInstrumentMaintainRelevanceResponses) {
// if (basicInstrumentMaintainRelevanceResponse.getDiType() == 2 && basicInstrumentMaintainRelevanceResponse.getIsUseDy() != 1) {
// basicInstrumentMaintainRelevanceResponse.setNameCode(basicInstrumentMaintainRelevanceResponse.getSjcpbm());
// }
// }
// }
PageInfo<CompanyProductRelevanceResponse> pageInfo; PageInfo<CompanyProductRelevanceResponse> pageInfo;
pageInfo = new PageInfo<>(basicInstrumentMaintainRelevanceResponses); pageInfo = new PageInfo<>(basicInstrumentMaintainRelevanceResponses);

@ -345,6 +345,9 @@ public class OrderController {
return ResultVOUtils.success(pageSimpleResponse); return ResultVOUtils.success(pageSimpleResponse);
} }
@Resource
RedisUtil redisUtil;
//手持终端验收完成后,更新订单状态 //手持终端验收完成后,更新订单状态
@AuthRuleAnnotation("") @AuthRuleAnnotation("")
@PostMapping("/spms/inout/order/check/updateStatus") @PostMapping("/spms/inout/order/check/updateStatus")
@ -378,8 +381,11 @@ public class OrderController {
for (StockOrderEntity stockOrderEntity : stockOrderEntityLit) { for (StockOrderEntity stockOrderEntity : stockOrderEntityLit) {
stockOrderEntity.setEntrustEnd(true); stockOrderEntity.setEntrustEnd(true);
stockOrderService.updateById(stockOrderEntity); stockOrderService.updateById(stockOrderEntity);
redisUtil.del(ConstantStatus.REDIS_BILLNO + stockOrderEntity.getBillNo());
redisUtil.del(ConstantStatus.REDIS_BILLNO_CODES + stockOrderEntity.getBillNo());
} }
} }
return ResultVOUtils.success("验收成功!"); return ResultVOUtils.success("验收成功!");
} else } else
@ -480,6 +486,8 @@ public class OrderController {
} }
stockOrderEntity.setEntrustEnd(true); stockOrderEntity.setEntrustEnd(true);
stockOrderService.updateById(stockOrderEntity); stockOrderService.updateById(stockOrderEntity);
redisUtil.del(ConstantStatus.REDIS_BILLNO + stockOrderEntity.getBillNo());
redisUtil.del(ConstantStatus.REDIS_BILLNO_CODES + stockOrderEntity.getBillNo());
} }
} else { } else {
StockOrderFilterRequest stockOrderFilterRequest = new StockOrderFilterRequest(); StockOrderFilterRequest stockOrderFilterRequest = new StockOrderFilterRequest();

@ -522,14 +522,19 @@ public class OrderDetailController {
return ResultVOUtils.error(500, "所选业务单据当前分库不一致!"); return ResultVOUtils.error(500, "所选业务单据当前分库不一致!");
} }
if (!temp.getInvWarehouseCode().equals(erpOrderEntities.get(i).getInvWarehouseCode())) {
return ResultVOUtils.error(500, "所选业务单据当前分库不一致!");
}
if (!bussinessTypeEntity.getLocalAction().equals(erpOrderEntities.get(i).getBillType())) { if (!bussinessTypeEntity.getLocalAction().equals(erpOrderEntities.get(i).getBillType())) {
return ResultVOUtils.error(500, "所选单据类型不一致!"); return ResultVOUtils.error(500, "所选单据类型不一致!");
} }
if (!orderEntity.getInvStorageCode().equals(erpOrderEntities.get(i).getLocStorageCode())) {
return ResultVOUtils.error(500, "扫码单据与业务单据当前仓库不一致!");
}
if (!orderEntity.getInvWarehouseCode().equals(erpOrderEntities.get(i).getInvWarehouseCode())) {
return ResultVOUtils.error(500, "扫码单据与业务单据当前分库不一致!");
}
} }

@ -3,6 +3,7 @@ package com.glxp.sale.admin.controller.inout;
import cn.hutool.core.bean.BeanUtil; 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 com.github.pagehelper.PageInfo; import com.github.pagehelper.PageInfo;
import com.glxp.sale.admin.annotation.AuthRuleAnnotation; import com.glxp.sale.admin.annotation.AuthRuleAnnotation;
import com.glxp.sale.admin.constant.ConstantStatus; import com.glxp.sale.admin.constant.ConstantStatus;
@ -42,10 +43,7 @@ import org.springframework.web.context.request.ServletRequestAttributes;
import javax.annotation.Resource; import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
import java.util.ArrayList; import java.util.*;
import java.util.Date;
import java.util.HashSet;
import java.util.List;
@RestController @RestController
public class StockOrderController { public class StockOrderController {
@ -86,6 +84,8 @@ public class StockOrderController {
private BussinessTypeService bussinessTypeService; private BussinessTypeService bussinessTypeService;
@Resource @Resource
private OrderDao orderDao; private OrderDao orderDao;
@Resource
private RedisUtil redisUtil;
@AuthRuleAnnotation("") @AuthRuleAnnotation("")
@GetMapping("/udiwms/stock/order/error") @GetMapping("/udiwms/stock/order/error")
@ -656,4 +656,161 @@ public class StockOrderController {
} }
return ResultVOUtils.error(ResultEnum.NOT_NETWORK, "撤回失败"); return ResultVOUtils.error(ResultEnum.NOT_NETWORK, "撤回失败");
} }
//验收单据
@AuthRuleAnnotation("")
@GetMapping("/udiwms/stock/order/accept/getOrder")
public BaseResponse getAcceptOrder(String billNo) {
if (StrUtil.isBlank(billNo)) {
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL);
}
StockOrderEntity stockOrderEntity = stockOrderService.findByBillNo(billNo);
AcceptOrderEntity acceptOrderEntity = new AcceptOrderEntity();
acceptOrderEntity.setBillNo(billNo);
List<StockOrderDetailEntity> datas = (List<StockOrderDetailEntity>) redisUtil.get(ConstantStatus.REDIS_BILLNO + billNo);
if (CollUtil.isNotEmpty(datas)) {
acceptOrderEntity.setOrderDetailEntities(datas);
acceptOrderEntity.setExitAccept(true);
} else {
List<StockOrderDetailEntity> stockOrderDetailEntities = stockOrderDetailService.findByOrderIdFk(stockOrderEntity.getId());
acceptOrderEntity.setOrderDetailEntities(stockOrderDetailEntities);
acceptOrderEntity.setExitAccept(false);
}
return ResultVOUtils.success(acceptOrderEntity);
}
@AuthRuleAnnotation("")
@PostMapping("/udiwms/stock/order/acceptClear")
public BaseResponse acceptClear(@RequestBody AcceptOrderEntity acceptOrderEntity) {
String billNo = acceptOrderEntity.getBillNo();
redisUtil.del(ConstantStatus.REDIS_BILLNO + billNo);
redisUtil.del(ConstantStatus.REDIS_BILLNO_CODES + billNo);
StockOrderEntity stockOrderEntity = stockOrderService.findByBillNo(billNo);
List<StockOrderDetailEntity> stockOrderDetailEntities = stockOrderDetailService.findByOrderIdFk(stockOrderEntity.getId());
acceptOrderEntity.setOrderDetailEntities(stockOrderDetailEntities);
return ResultVOUtils.success(acceptOrderEntity);
}
@AuthRuleAnnotation("")
@PostMapping("/udiwms/stock/order/accept/addCode")
public BaseResponse acceptAddCode(@RequestBody AcceptOrderEntity acceptOrderEntity) {
StockOrderEntity stockOrderEntity = stockOrderService.findByBillNo(acceptOrderEntity.getBillNo());
//
// if (warehouseEntity == null) {
// return ResultVOUtils.error(500, "非此单UDI码");
// }
List<WarehouseEntity> codeList;
List<WarehouseEntity> warehouseEntityList = (List<WarehouseEntity>) redisUtil.get(ConstantStatus.REDIS_BILLNO_CODES + acceptOrderEntity.getBillNo());
if (CollUtil.isEmpty(warehouseEntityList)) {
codeList = codesService.findByReceiptId(stockOrderEntity.getOrderIdFk());
} else {
codeList = warehouseEntityList;
}
WarehouseEntity warehouseEntity = isExit(codeList, acceptOrderEntity.getCode());
if (warehouseEntity == null) {
return ResultVOUtils.error(500, "非此单UDI码");
}
int status = checkCodeExit(warehouseEntity.getCode(), codeList);
if (status == Constant.CHECK_REPEAT) {
return ResultVOUtils.error(500, "重复扫码!");
} else if (status == Constant.CHECK_NULL) {
return ResultVOUtils.error(500, "非此单UDI码");
}
List<StockOrderDetailEntity> stockOrderDetailEntities = acceptOrderEntity.getOrderDetailEntities();
if (StrUtil.isNotEmpty(acceptOrderEntity.getCode()) && CollUtil.isNotEmpty(stockOrderDetailEntities)) {
boolean isExit = false;
for (StockOrderDetailEntity stockOrderDetailEntity : stockOrderDetailEntities) {
if (stockOrderDetailEntity.getRelId().equals(warehouseEntity.getRelId()) &&
StrUtil.trimToEmpty(stockOrderDetailEntity.getBatchNo()).equals(StrUtil.trimToEmpty(warehouseEntity.getBatchNo()))
) {
stockOrderDetailEntity.setAcceptCount(stockOrderDetailEntity.getAcceptCount() + warehouseEntity.getCount());
if (stockOrderDetailEntity.getAcceptCount() > Integer.parseInt(stockOrderDetailEntity.getReCount())) {
return ResultVOUtils.error(500, "数量溢出!");
}
isExit = true;
break;
}
}
if (isExit) {
redisUtil.set(ConstantStatus.REDIS_BILLNO + acceptOrderEntity.getBillNo(), stockOrderDetailEntities);
redisUtil.set(ConstantStatus.REDIS_BILLNO_CODES + acceptOrderEntity.getBillNo(), codeList);
acceptOrderEntity.setOrderDetailEntities(stockOrderDetailEntities);
if (vailFinish(stockOrderDetailEntities)) {
acceptOrderEntity.setFinishAccept(true);
return ResultVOUtils.success(acceptOrderEntity);
}
return ResultVOUtils.success(acceptOrderEntity);
}
}
return ResultVOUtils.error(500, "非此单条码!");
}
public WarehouseEntity isExit(List<WarehouseEntity> codeList, String code) {
if (CollUtil.isNotEmpty(codeList)) {
for (WarehouseEntity warehouseEntity : codeList) {
if (warehouseEntity.getCode().equals(code)) {
return warehouseEntity;
}
}
}
return null;
}
@Resource
UdiInfoUtils udiInfoUtils;
public int checkCodeExit(String code, List<WarehouseEntity> codesList) {
if (StrUtil.isNotEmpty(code)) {
code = code.replace("\r\n", "");
}
if (code.endsWith("\u001D")) {
code = code.replace("\u001D", "");
}
for (WarehouseEntity checkOrderCodesBean : codesList) {
if (checkOrderCodesBean.getCode().toUpperCase(Locale.ROOT).equals(code.toUpperCase(Locale.ROOT))) {
if (checkOrderCodesBean.getStatus() == Constant.DB_CHECK_ED
&& checkOrderCodesBean.getCount() == checkOrderCodesBean.getScanCount()) {
return Constant.CHECK_REPEAT;
}
int curCount = checkOrderCodesBean.getScanCount() + udiInfoUtils.getActCount(checkOrderCodesBean);
if (curCount == checkOrderCodesBean.getCount()) {
checkOrderCodesBean.setStatus(Constant.DB_CHECK_ED);
}
checkOrderCodesBean.setScanCount(curCount);
return Constant.CHECK_EXIT;
}
}
return Constant.CHECK_NULL;
}
public boolean vailFinish(List<StockOrderDetailEntity> stockOrderDetailEntities) {
if (CollUtil.isNotEmpty(stockOrderDetailEntities)) {
for (StockOrderDetailEntity stockOrderDetailEntity : stockOrderDetailEntities) {
if (Integer.parseInt(stockOrderDetailEntity.getReCount()) != stockOrderDetailEntity.getAcceptCount()) {
return false;
}
}
return true;
}
return false;
}
} }

@ -6,6 +6,8 @@ import cn.hutool.json.JSONUtil;
import com.github.pagehelper.PageInfo; import com.github.pagehelper.PageInfo;
import com.glxp.sale.admin.annotation.AuthRuleAnnotation; import com.glxp.sale.admin.annotation.AuthRuleAnnotation;
import com.glxp.sale.admin.constant.ConstantStatus; import com.glxp.sale.admin.constant.ConstantStatus;
import com.glxp.sale.admin.constant.ConstantType;
import com.glxp.sale.admin.constant.TypeConstant;
import com.glxp.sale.admin.dao.auth.AuthLicenseDao; import com.glxp.sale.admin.dao.auth.AuthLicenseDao;
import com.glxp.sale.admin.dao.inventory.InvWarehouseDao; import com.glxp.sale.admin.dao.inventory.InvWarehouseDao;
import com.glxp.sale.admin.entity.auth.AuthAdmin; import com.glxp.sale.admin.entity.auth.AuthAdmin;
@ -734,14 +736,14 @@ public class WareHouseController {
} else //是否查询库存 } else //是否查询库存
if (addOrderRequest.isVailInv()) { if (addOrderRequest.isVailInv()) {
if (bussinessTypeEntity.isAdvanceType()) { if (bussinessTypeEntity.isAdvanceType()) {
InvProductDetailEntity invProductDetailEntity = invPreProductDetailService.statInvPreInDetail(code); int count = invPreProductDetailService.vailStockCount(code);
if (invProductDetailEntity == null) { if (count < 0) {
addCodeResult.setErrMsg("库存不存在此产品!"); return ResultVOUtils.error(500, "当前库存不足不允许0库存出库");
} }
} else { } else {
InvProductDetailEntity invProductDetailEntity = invProductDetailService.statInvPreInDetail(code); int count = invProductDetailService.vailStockCount(code);
if (invProductDetailEntity == null) { if (count <= 0) {
addCodeResult.setErrMsg("库存不存在此产品!"); return ResultVOUtils.error(500, "当前库存不足不允许0库存出库");
} }
} }
} }

@ -76,8 +76,7 @@ public class InvPreProductsController {
filterInvProductRequest.setCustomerId(null); filterInvProductRequest.setCustomerId(null);
// filterInvProductRequest.setSupId(); // filterInvProductRequest.setSupId();
} }
if(StrUtil.isEmpty(filterInvProductRequest.getBatchNo())) if (StrUtil.isEmpty(filterInvProductRequest.getBatchNo())) {
{
filterInvProductRequest.setBatchNo("empty"); filterInvProductRequest.setBatchNo("empty");
} }
List<InvProductDetailEntity> invProductDetailEntities = invProductDetailService.filterInvProduct(filterInvProductRequest); List<InvProductDetailEntity> invProductDetailEntities = invProductDetailService.filterInvProduct(filterInvProductRequest);
@ -168,4 +167,13 @@ public class InvPreProductsController {
return ResultVOUtils.error(501, "寄售库存不存在此产品"); return ResultVOUtils.error(501, "寄售库存不存在此产品");
} }
@AuthRuleAnnotation("")
@GetMapping("spms/inv/products/pre/vailInvCount")
public BaseResponse vailInvCount(FilterInvProductDetailRequest filterInvProductDetailRequest) {
int count = invProductDetailService.vailStockCount(filterInvProductDetailRequest.getCode());
return ResultVOUtils.success(count);
}
} }

@ -452,4 +452,13 @@ public class InvProductsController {
return ResultVOUtils.error(501, "库存不存在此产品"); return ResultVOUtils.error(501, "库存不存在此产品");
} }
@AuthRuleAnnotation("")
@GetMapping("spms/inv/products/vailInvCount")
public BaseResponse vailInvCount(FilterInvProductDetailRequest filterInvProductDetailRequest) {
int count = invProductDetailService.vailStockCount(filterInvProductDetailRequest.getCode());
return ResultVOUtils.success(count);
}
} }

@ -1,17 +1,18 @@
package com.glxp.sale.admin.controller.thrsys; package com.glxp.sale.admin.controller.thrsys;
import cn.hutool.core.bean.BeanUtil; 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.github.pagehelper.PageInfo; import com.github.pagehelper.PageInfo;
import com.glxp.sale.admin.annotation.AuthRuleAnnotation; import com.glxp.sale.admin.annotation.AuthRuleAnnotation;
import com.glxp.sale.admin.entity.auth.AuthAdmin;
import com.glxp.sale.admin.entity.basic.NewUploadDiEntity; import com.glxp.sale.admin.entity.basic.NewUploadDiEntity;
import com.glxp.sale.admin.entity.basic.UdiInfoEntity; import com.glxp.sale.admin.entity.basic.UdiInfoEntity;
import com.glxp.sale.admin.entity.basic.UdiRelevanceEntity; import com.glxp.sale.admin.entity.basic.UdiRelevanceEntity;
import com.glxp.sale.admin.entity.info.CompanyProductRelevanceEntity; import com.glxp.sale.admin.entity.info.CompanyProductRelevanceEntity;
import com.glxp.sale.admin.entity.thrsys.ThrProductsAddDiEntity; import com.glxp.sale.admin.entity.thrsys.ThrProductsAddDiEntity;
import com.glxp.sale.admin.entity.thrsys.ThrProductsEntity; import com.glxp.sale.admin.exception.JsonException;
import com.glxp.sale.admin.req.basic.CombineRequest; import com.glxp.sale.admin.req.basic.CombineRequest;
import com.glxp.sale.admin.req.basic.SupplementRequest; import com.glxp.sale.admin.req.basic.SupplementRequest;
import com.glxp.sale.admin.req.inout.DeleteRequest; import com.glxp.sale.admin.req.inout.DeleteRequest;
@ -19,6 +20,7 @@ import com.glxp.sale.admin.req.thrsys.AddThrDiProductsRequest;
import com.glxp.sale.admin.req.thrsys.FilterThrProductsRequest; import com.glxp.sale.admin.req.thrsys.FilterThrProductsRequest;
import com.glxp.sale.admin.res.PageSimpleResponse; import com.glxp.sale.admin.res.PageSimpleResponse;
import com.glxp.sale.admin.res.thrsys.ThrProductsAddDiResponse; import com.glxp.sale.admin.res.thrsys.ThrProductsAddDiResponse;
import com.glxp.sale.admin.service.auth.AuthAdminService;
import com.glxp.sale.admin.service.basic.NewUploadDiService; import com.glxp.sale.admin.service.basic.NewUploadDiService;
import com.glxp.sale.admin.service.basic.UdiContrastService; import com.glxp.sale.admin.service.basic.UdiContrastService;
import com.glxp.sale.admin.service.basic.UdiInfoService; import com.glxp.sale.admin.service.basic.UdiInfoService;
@ -31,14 +33,17 @@ import com.glxp.sale.common.enums.ResultEnum;
import com.glxp.sale.common.res.BaseResponse; import com.glxp.sale.common.res.BaseResponse;
import com.glxp.sale.common.util.ResultVOUtils; import com.glxp.sale.common.util.ResultVOUtils;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.context.annotation.Bean;
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;
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 org.springframework.web.context.request.RequestContextHolder;
import org.springframework.web.context.request.ServletRequestAttributes;
import javax.annotation.Resource; import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.math.BigDecimal;
import java.util.Date; import java.util.Date;
import java.util.List; import java.util.List;
@ -61,7 +66,8 @@ public class ThrProductsAddDiController {
UdiInfoService udiInfoService; UdiInfoService udiInfoService;
@Resource @Resource
NewUploadDiService newUploadDiService; NewUploadDiService newUploadDiService;
@Resource
private AuthAdminService authAdminService;
@Resource @Resource
SupplementVailUtil supplementVailUtil; SupplementVailUtil supplementVailUtil;
@ -74,6 +80,11 @@ public class ThrProductsAddDiController {
@AuthRuleAnnotation("") @AuthRuleAnnotation("")
@GetMapping("udiwms/thrsys/getThrProductsDiList") @GetMapping("udiwms/thrsys/getThrProductsDiList")
public BaseResponse filterThrProductsAddDiList(FilterThrProductsRequest filterThrProductsRequest) { public BaseResponse filterThrProductsAddDiList(FilterThrProductsRequest filterThrProductsRequest) {
String customerId = getCustomerId();
if (!customerId.equals("110")) {
filterThrProductsRequest.setCustomerId(customerId);
}
List<ThrProductsAddDiResponse> thrProductsAddDiResponses = thrProductsAddDiService.filterThrProductsList(filterThrProductsRequest); List<ThrProductsAddDiResponse> thrProductsAddDiResponses = thrProductsAddDiService.filterThrProductsList(filterThrProductsRequest);
PageInfo<ThrProductsAddDiResponse> pageInfo = new PageInfo<>(thrProductsAddDiResponses); PageInfo<ThrProductsAddDiResponse> pageInfo = new PageInfo<>(thrProductsAddDiResponses);
PageSimpleResponse<ThrProductsAddDiResponse> pageSimpleResponse = new PageSimpleResponse<>(); PageSimpleResponse<ThrProductsAddDiResponse> pageSimpleResponse = new PageSimpleResponse<>();
@ -83,7 +94,6 @@ public class ThrProductsAddDiController {
} }
/** /**
* DI * DI
* *
@ -102,8 +112,27 @@ public class ThrProductsAddDiController {
if (vailResult != null) if (vailResult != null)
return ResultVOUtils.error(500, vailResult); return ResultVOUtils.error(500, vailResult);
List<String> uuids = addThrDiProductsRequest.getUuids();
if (CollUtil.isEmpty(uuids)) {
return ResultVOUtils.error(500, "参数错误");
}
ThrProductsAddDiEntity thrProductsAddDiEntity = thrProductsAddDiService.selecByUuid(uuids.get(0));
if (thrProductsAddDiEntity != null) {
return ResultVOUtils.error(500, "重复提交!");
}
thrProductsAddDiService.addThrAddDiProducts(addThrDiProductsRequest); thrProductsAddDiService.addThrAddDiProducts(addThrDiProductsRequest);
return ResultVOUtils.success(); return ResultVOUtils.success("提交成功!");
}
public String getCustomerId() {
ServletRequestAttributes attributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes();
if (attributes == null) {
throw new JsonException(ResultEnum.NOT_NETWORK);
}
HttpServletRequest request = attributes.getRequest();
String userId = request.getHeader("ADMIN_ID");
AuthAdmin authAdmin = authAdminService.findById(Long.parseLong(userId));
return authAdmin.getCustomerId() + "";
} }
/** /**
@ -125,7 +154,6 @@ public class ThrProductsAddDiController {
ThrProductsAddDiResponse thrProductsAddDiResponse = thrProductsAddDiService.selecById(thrProductsAddDiEntity.getId()); ThrProductsAddDiResponse thrProductsAddDiResponse = thrProductsAddDiService.selecById(thrProductsAddDiEntity.getId());
if (thrProductsAddDiEntity.getStatus() == 2) { //审核通过 if (thrProductsAddDiEntity.getStatus() == 2) { //审核通过
UdiInfoEntity udiInfoEntity = thrProductsAddDiService.getDiProductDetail(thrProductsAddDiEntity.getUuid());
//审核通过后追加到耗材字典中 //审核通过后追加到耗材字典中
CombineRequest combineRequest = new CombineRequest(); CombineRequest combineRequest = new CombineRequest();
combineRequest.setCustomerId(thrProductsAddDiEntity.getCustomerId()); combineRequest.setCustomerId(thrProductsAddDiEntity.getCustomerId());
@ -135,15 +163,35 @@ public class ThrProductsAddDiController {
} else { } else {
Long udiRelIdFk = udiContrastService.createOnlyUuid(combineRequest, thrProductsAddDiEntity.getUuid()); Long udiRelIdFk = udiContrastService.createOnlyUuid(combineRequest, thrProductsAddDiEntity.getUuid());
//字段更新
UdiRelevanceEntity udiRelevanceEntity = udiRelevanceService.selectById(udiRelIdFk + ""); UdiRelevanceEntity udiRelevanceEntity = udiRelevanceService.selectById(udiRelIdFk + "");
udiRelevanceEntity.setYbbm(thrProductsAddDiResponse.getYbbm()); udiRelevanceEntity.setYbbm(thrProductsAddDiResponse.getYbbm());
udiRelevanceEntity.setSptm(thrProductsAddDiResponse.getYbbm()); udiRelevanceEntity.setSptm(thrProductsAddDiResponse.getSptm());
udiRelevanceEntity.setMeasname(thrProductsAddDiResponse.getYbbm()); udiRelevanceEntity.setMeasname(thrProductsAddDiResponse.getMeasname());
udiRelevanceEntity.setYbbm(thrProductsAddDiResponse.getYbbm()); udiRelevanceEntity.setPrice(thrProductsAddDiEntity.getPrice());
udiRelevanceEntity.setManufactory(thrProductsAddDiEntity.getManufactory());
UdiInfoEntity udiInfoEntity = udiInfoService.findByUuid(udiRelevanceEntity.getUuid());
udiInfoEntity.setSptm(thrProductsAddDiResponse.getSptm());
udiInfoEntity.setYbbm(thrProductsAddDiResponse.getYbbm());
udiInfoEntity.setMeasname(thrProductsAddDiResponse.getMeasname());
udiInfoEntity.setManufactory(thrProductsAddDiResponse.getManufactory());
udiInfoEntity.setSpmc(thrProductsAddDiResponse.getSpmc()); udiInfoEntity.setSpmc(thrProductsAddDiResponse.getSpmc());
udiInfoEntity.setCpms(thrProductsAddDiResponse.getCpms()); udiInfoEntity.setCpms(thrProductsAddDiResponse.getCpms());
udiRelevanceService.updateUdiRelevance(udiRelevanceEntity); udiInfoEntity.setPrice(thrProductsAddDiResponse.getPrice());
udiInfoEntity.setBasicPrductRemak1(thrProductsAddDiResponse.getBasicPrductRemak1());
udiInfoEntity.setBasicPrductRemak2(thrProductsAddDiResponse.getBasicPrductRemak2());
udiInfoEntity.setBasicPrductRemak3(thrProductsAddDiResponse.getBasicPrductRemak3());
udiInfoEntity.setBasicPrductRemak4(thrProductsAddDiResponse.getBasicPrductRemak4());
udiInfoEntity.setBasicPrductRemak5(thrProductsAddDiResponse.getBasicPrductRemak5());
udiInfoEntity.setBasicPrductRemak6(thrProductsAddDiResponse.getBasicPrductRemak6());
udiInfoEntity.setBasicPrductRemak7(thrProductsAddDiResponse.getBasicPrductRemak7());
udiInfoEntity.setBasicPrductRemak8(thrProductsAddDiResponse.getBasicPrductRemak8());
udiInfoService.updateUdiInfo(udiInfoEntity); udiInfoService.updateUdiInfo(udiInfoEntity);
udiRelevanceService.updateUdiRelevance(udiRelevanceEntity);
// udiInfoService.updateUdiInfo(udiInfoEntity);
//回填关联关系到关联表 //回填关联关系到关联表
CompanyProductRelevanceEntity companyProductRelevanceEntity = new CompanyProductRelevanceEntity(); CompanyProductRelevanceEntity companyProductRelevanceEntity = new CompanyProductRelevanceEntity();
companyProductRelevanceEntity.setCustomerId(thrProductsAddDiEntity.getCustomerId()); companyProductRelevanceEntity.setCustomerId(thrProductsAddDiEntity.getCustomerId());
@ -152,6 +200,8 @@ public class ThrProductsAddDiController {
companyProductRelevanceEntity.setUpdate_time(new Date()); companyProductRelevanceEntity.setUpdate_time(new Date());
companyProductRelevanceEntity.setUnitFk(thrProductsAddDiEntity.getCustomerId().toString()); companyProductRelevanceEntity.setUnitFk(thrProductsAddDiEntity.getCustomerId().toString());
companyProductRelevanceEntity.setAuditStatus("1"); companyProductRelevanceEntity.setAuditStatus("1");
if (StrUtil.isNotEmpty(thrProductsAddDiEntity.getPrice()))
companyProductRelevanceEntity.setPrice(new BigDecimal(thrProductsAddDiEntity.getPrice()));
companyProductRelevanceService.insertCompanyProductRelevance(companyProductRelevanceEntity); companyProductRelevanceService.insertCompanyProductRelevance(companyProductRelevanceEntity);

@ -0,0 +1,21 @@
package com.glxp.sale.admin.entity.inout;
import lombok.Data;
import java.util.List;
@Data
public class AcceptOrderEntity {
private String billNo;
private String code;
private boolean isExitAccept;
private boolean finishAccept;
private List<StockOrderDetailEntity> orderDetailEntities;
}

@ -42,4 +42,7 @@ public class StockOrderDetailEntity {
private String serialNo; private String serialNo;
private Integer codeId; private Integer codeId;
private int acceptCount;
} }

@ -35,6 +35,9 @@ public class WarehouseEntity {
private String fromSubInvCode; private String fromSubInvCode;
private String mySupId; private String mySupId;
private int scanCount;
public String getSupId() { public String getSupId() {
if (supId == null) { if (supId == null) {

@ -33,6 +33,7 @@ public class AddThrDiProductsRequest {
private String manufactory; private String manufactory;
private String spmc; private String spmc;
private String cpms; private String cpms;
private String price;
private List<String> selectThirdSys; private List<String> selectThirdSys;
private String basicPrductRemak1; private String basicPrductRemak1;
@ -45,5 +46,4 @@ public class AddThrDiProductsRequest {
private String basicPrductRemak8; private String basicPrductRemak8;
} }

@ -26,4 +26,5 @@ public class FilterThrProductsRequest extends ListPageRequest {
private String lastUpdateTime; private String lastUpdateTime;
private String ybbm; private String ybbm;
private Long id; private Long id;
private String uuid;
} }

@ -69,7 +69,7 @@ public class CompanyProductRelevanceResponse {
private boolean allowNoExpire; private boolean allowNoExpire;
private boolean allowNoProduct; private boolean allowNoProduct;
private String spmc; private String spmc;
private Integer productType;
private String price; private String price;
//产品代理商 //产品代理商

@ -7,6 +7,7 @@ import com.glxp.sale.admin.dao.basic.BussinessLocalTypeDao;
import com.glxp.sale.admin.entity.basic.BussinessLocalTypeEntity; import com.glxp.sale.admin.entity.basic.BussinessLocalTypeEntity;
import com.glxp.sale.admin.req.basic.BussinessLocalTypeFilterRequest; import com.glxp.sale.admin.req.basic.BussinessLocalTypeFilterRequest;
import com.glxp.sale.admin.service.basic.BussinessLocalTypeService; import com.glxp.sale.admin.service.basic.BussinessLocalTypeService;
import com.glxp.sale.common.util.ResultVOUtils;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import javax.annotation.Resource; import javax.annotation.Resource;
@ -104,6 +105,9 @@ public class BussinessLocalTypeServiceImpl implements BussinessLocalTypeService
@Override @Override
public BussinessLocalTypeEntity findBTByName(String name) { public BussinessLocalTypeEntity findBTByName(String name) {
if (StrUtil.isEmpty(name)) {
return null;
}
BussinessLocalTypeFilterRequest bussinessTypeFilterRequest = new BussinessLocalTypeFilterRequest(); BussinessLocalTypeFilterRequest bussinessTypeFilterRequest = new BussinessLocalTypeFilterRequest();
bussinessTypeFilterRequest.setName(name); bussinessTypeFilterRequest.setName(name);
List<BussinessLocalTypeEntity> data = bussinessLocalTypeDao.filterList(bussinessTypeFilterRequest); List<BussinessLocalTypeEntity> data = bussinessLocalTypeDao.filterList(bussinessTypeFilterRequest);

@ -139,8 +139,13 @@ public class StockOrderServiceImpl implements StockOrderService {
@Override @Override
public StockOrderEntity findByBillNo(String orderId) { public StockOrderEntity findByBillNo(String orderId) {
if (StrUtil.isEmpty(orderId)) {
return null;
}
StockOrderFilterRequest stockOrderFilterRequest = new StockOrderFilterRequest(); StockOrderFilterRequest stockOrderFilterRequest = new StockOrderFilterRequest();
stockOrderFilterRequest.setBillNo(orderId); stockOrderFilterRequest.setBillNo(orderId);
return stockOrderDao.findOne(stockOrderFilterRequest); return stockOrderDao.findOne(stockOrderFilterRequest);
} }

@ -30,4 +30,6 @@ public interface InvPreProductDetailService {
int statCount(FilterInvProductDetailRequest filterInvProductDetailRequest); int statCount(FilterInvProductDetailRequest filterInvProductDetailRequest);
InvProductDetailEntity statInvPreInDetail(String code); InvProductDetailEntity statInvPreInDetail(String code);
int vailStockCount(String code);
} }

@ -35,4 +35,6 @@ public interface InvProductDetailService {
int statCount(FilterInvProductDetailRequest filterInvProductDetailRequest); int statCount(FilterInvProductDetailRequest filterInvProductDetailRequest);
InvProductDetailEntity statInvPreInDetail(String code); InvProductDetailEntity statInvPreInDetail(String code);
int vailStockCount(String code);
} }

@ -3,6 +3,7 @@ package com.glxp.sale.admin.service.inventory.impl;
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 com.github.pagehelper.PageHelper; import com.github.pagehelper.PageHelper;
import com.glxp.sale.admin.constant.ConstantType;
import com.glxp.sale.admin.dao.inventory.InvPreProductDetailDao; import com.glxp.sale.admin.dao.inventory.InvPreProductDetailDao;
import com.glxp.sale.admin.dao.inventory.InvProductDetailDao; import com.glxp.sale.admin.dao.inventory.InvProductDetailDao;
import com.glxp.sale.admin.entity.inventory.InvProductDetailEntity; import com.glxp.sale.admin.entity.inventory.InvProductDetailEntity;
@ -124,4 +125,38 @@ public class InvPreProductDetailServiceImpl implements InvPreProductDetailServic
} }
return null; return null;
} }
@Override
public int vailStockCount(String code) {
if (StrUtil.isEmpty(code)) {
return 0;
}
FilterInvProductDetailRequest filterInvProductDetailRequest = new FilterInvProductDetailRequest();
filterInvProductDetailRequest.setOriginCode(code);
List<InvProductDetailEntity> datas = invPreProductDetailDao.filterInvProductDetail(filterInvProductDetailRequest);
if (CollUtil.isEmpty(datas)) {
filterInvProductDetailRequest.setOriginCode(null);
UdiEntity udiEntity = FilterUdiUtils.getUdi(code);
if (StrUtil.isNotEmpty(udiEntity.getBatchNo()))
filterInvProductDetailRequest.setBatchNo(udiEntity.getBatchNo());
else
filterInvProductDetailRequest.setBatchNo("empty");
filterInvProductDetailRequest.setProductionDate(udiEntity.getProduceDate());
filterInvProductDetailRequest.setExpireDate(udiEntity.getExpireDate());
datas = invPreProductDetailDao.filterInvProductDetail(filterInvProductDetailRequest);
}
int count = 0;
if (CollUtil.isNotEmpty(datas)) {
for (InvProductDetailEntity invProductDetailEntity : datas) {
if (invProductDetailEntity.getMainAction().equals(ConstantType.TYPE_PUT))
count = count + invProductDetailEntity.getCount();
else {
count = count - invProductDetailEntity.getCount();
}
}
}
return count;
}
} }

@ -3,6 +3,7 @@ package com.glxp.sale.admin.service.inventory.impl;
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 com.github.pagehelper.PageHelper; import com.github.pagehelper.PageHelper;
import com.glxp.sale.admin.constant.ConstantType;
import com.glxp.sale.admin.dao.inventory.InvProductDetailDao; import com.glxp.sale.admin.dao.inventory.InvProductDetailDao;
import com.glxp.sale.admin.entity.inventory.InvProductDetailEntity; import com.glxp.sale.admin.entity.inventory.InvProductDetailEntity;
import com.glxp.sale.admin.entity.udid.UdiEntity; import com.glxp.sale.admin.entity.udid.UdiEntity;
@ -129,4 +130,37 @@ public class InvProductDetailServiceImpl implements InvProductDetailService {
} }
return null; return null;
} }
@Override
public int vailStockCount(String code) {
if (StrUtil.isEmpty(code)) {
return 0;
}
FilterInvProductDetailRequest filterInvProductDetailRequest = new FilterInvProductDetailRequest();
filterInvProductDetailRequest.setOriginCode(code);
List<InvProductDetailEntity> datas = invProductDetailDao.filterInvProductDetail(filterInvProductDetailRequest);
if (CollUtil.isEmpty(datas)) {
filterInvProductDetailRequest.setOriginCode(null);
UdiEntity udiEntity = FilterUdiUtils.getUdi(code);
if (StrUtil.isNotEmpty(udiEntity.getBatchNo()))
filterInvProductDetailRequest.setBatchNo(udiEntity.getBatchNo());
else
filterInvProductDetailRequest.setBatchNo("empty");
filterInvProductDetailRequest.setProductionDate(udiEntity.getProduceDate());
filterInvProductDetailRequest.setExpireDate(udiEntity.getExpireDate());
datas = invProductDetailDao.filterInvProductDetail(filterInvProductDetailRequest);
}
int count = 0;
if (CollUtil.isNotEmpty(datas)) {
for (InvProductDetailEntity invProductDetailEntity : datas) {
if (invProductDetailEntity.getMainAction().equals(ConstantType.TYPE_PUT))
count = count + invProductDetailEntity.getCount();
else {
count = count - invProductDetailEntity.getCount();
}
}
}
return count;
}
} }

@ -14,6 +14,8 @@ public interface ThrProductsAddDiService {
ThrProductsAddDiResponse selecById(Long id); ThrProductsAddDiResponse selecById(Long id);
ThrProductsAddDiResponse selecByUuid(String uuid);
/** /**
* DI * DI
* *

@ -1,6 +1,7 @@
package com.glxp.sale.admin.service.thrsys.impl; package com.glxp.sale.admin.service.thrsys.impl;
import cn.hutool.core.collection.CollUtil; import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.StrUtil;
import cn.hutool.json.JSONUtil; import cn.hutool.json.JSONUtil;
import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageHelper;
import com.glxp.sale.admin.dao.thrsys.ThrProductsAddDiDao; import com.glxp.sale.admin.dao.thrsys.ThrProductsAddDiDao;
@ -48,6 +49,20 @@ public class ThrProductsAddDiServiceImpl implements ThrProductsAddDiService {
return null; return null;
} }
@Override
public ThrProductsAddDiResponse selecByUuid(String uuid) {
if (StrUtil.isEmpty(uuid)) {
return null;
}
FilterThrProductsRequest filterThrProductsRequest = new FilterThrProductsRequest();
filterThrProductsRequest.setUuid(uuid);
List<ThrProductsAddDiResponse> thrProductsAddDiResponses = thrProductsAddDiDao.filterThrProductsList(filterThrProductsRequest);
if (CollUtil.isNotEmpty(thrProductsAddDiResponses)) {
return thrProductsAddDiResponses.get(0);
}
return null;
}
@Override @Override
public boolean delThrDiProducts(Long id) { public boolean delThrDiProducts(Long id) {
return thrProductsAddDiDao.deleteById(id); return thrProductsAddDiDao.deleteById(id);

@ -51,6 +51,9 @@ public class CompanyProductsRelService {
companyProductRelevanceEntity.setAuditStatus("3"); companyProductRelevanceEntity.setAuditStatus("3");
companyProductRelevanceEntity.setUnitFk(udiInfoExportRequest.getUnitFk()); companyProductRelevanceEntity.setUnitFk(udiInfoExportRequest.getUnitFk());
companyProductRelevanceEntity.setUdiRlIdFk(Integer.parseInt(uuid)); companyProductRelevanceEntity.setUdiRlIdFk(Integer.parseInt(uuid));
if (StrUtil.isNotEmpty(udiInfoExportRequest.getSupplementRequest().getPrice())) {
companyProductRelevanceEntity.setPrice(new BigDecimal(udiInfoExportRequest.getSupplementRequest().getPrice()));
}
companyProductRelevanceEntity.setCustomerId(udiInfoExportRequest.getCustomerId()); companyProductRelevanceEntity.setCustomerId(udiInfoExportRequest.getCustomerId());
boolean b = companyProductRelevanceService.insertCompanyProductRelevance(companyProductRelevanceEntity); boolean b = companyProductRelevanceService.insertCompanyProductRelevance(companyProductRelevanceEntity);

@ -3,6 +3,7 @@ package com.glxp.sale.admin.thread;
import cn.hutool.core.collection.CollUtil; import cn.hutool.core.collection.CollUtil;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.alibaba.fastjson.TypeReference; import com.alibaba.fastjson.TypeReference;
import com.glxp.sale.admin.constant.ConstantStatus;
import com.glxp.sale.admin.entity.basic.UdiInfoEntity; import com.glxp.sale.admin.entity.basic.UdiInfoEntity;
import com.glxp.sale.admin.entity.receipt.ProductInfoEntity; import com.glxp.sale.admin.entity.receipt.ProductInfoEntity;
import com.glxp.sale.admin.req.receipt.ProductInfoFilterRequest; import com.glxp.sale.admin.req.receipt.ProductInfoFilterRequest;
@ -93,6 +94,7 @@ public class UdiDlHttpClient {
BeanUtils.copyProperties(productInfoEntity, udiInfoEntity); BeanUtils.copyProperties(productInfoEntity, udiInfoEntity);
udiInfoEntity.setQxlb(productInfoEntity.getCplx()); udiInfoEntity.setQxlb(productInfoEntity.getCplx());
udiInfoEntity.setCplb(productInfoEntity.getHchzsb()); udiInfoEntity.setCplb(productInfoEntity.getHchzsb());
udiInfoEntity.setProductType(ConstantStatus.PRODUCT_TYPE_UDI);
udiInfoEntities.add(udiInfoEntity); udiInfoEntities.add(udiInfoEntity);
} }
return udiInfoEntities; return udiInfoEntities;

@ -25,4 +25,10 @@ public class Constant {
public static String SPTM_TO_DI = "sptm_to_di"; public static String SPTM_TO_DI = "sptm_to_di";
public static String DELAY_SYNC_TIME = "DELAY_SYNC_TIME"; public static String DELAY_SYNC_TIME = "DELAY_SYNC_TIME";
public static final int DB_CHECK_ED = 1; //已校驗
public static final int DB_CHECK_UN = 0; //未校驗
public static final int CHECK_EXIT = 1; //校驗成功,存在
public static final int CHECK_REPEAT = 2; //重複校驗
public static final int CHECK_NULL = 3; //校驗失敗,不存在
} }

@ -56,7 +56,7 @@ public class SupplementVailUtil {
basicProductSetEntity = basicProductSetEntityMap.get("manufactory"); basicProductSetEntity = basicProductSetEntityMap.get("manufactory");
if (isMustFill(type, basicProductSetEntity)) { if (isMustFill(type, basicProductSetEntity)) {
if (StrUtil.isEmpty(supplementRequest.getManufactory())) { if (StrUtil.isEmpty(supplementRequest.getManufactory())) {
return "生产企业不能为空"; return "生产厂家不能为空";
} }
} }

@ -2,6 +2,7 @@ package com.glxp.sale.admin.util;
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 com.glxp.sale.admin.constant.ConstantStatus;
import com.glxp.sale.admin.entity.basic.UdiInfoEntity; import com.glxp.sale.admin.entity.basic.UdiInfoEntity;
import java.util.List; import java.util.List;
@ -25,6 +26,7 @@ public class UdiInfoUtil {
public static List<UdiInfoEntity> initUdiInfoEntitys(List<UdiInfoEntity> udiInfoEntitys) { public static List<UdiInfoEntity> initUdiInfoEntitys(List<UdiInfoEntity> udiInfoEntitys) {
if (CollUtil.isNotEmpty(udiInfoEntitys)) { if (CollUtil.isNotEmpty(udiInfoEntitys)) {
for (UdiInfoEntity udiInfoEntity : udiInfoEntitys) { for (UdiInfoEntity udiInfoEntity : udiInfoEntitys) {
udiInfoEntity.setProductType(ConstantStatus.PRODUCT_TYPE_UDI);
if (StrUtil.isNotEmpty(udiInfoEntity.getScbssfbhph()) && "否".equals(udiInfoEntity.getScbssfbhph())) { if (StrUtil.isNotEmpty(udiInfoEntity.getScbssfbhph()) && "否".equals(udiInfoEntity.getScbssfbhph())) {
udiInfoEntity.setAllowNoBatch(true); udiInfoEntity.setAllowNoBatch(true);
} }

@ -0,0 +1,35 @@
package com.glxp.sale.admin.util;
import com.glxp.sale.admin.entity.basic.UdiRelevanceEntity;
import com.glxp.sale.admin.entity.inout.WarehouseEntity;
import com.glxp.sale.admin.res.basic.UdiRelevanceResponse;
import com.glxp.sale.admin.service.basic.UdiRelevanceService;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
@Service
public class UdiInfoUtils {
@Resource
UdiRelevanceService udiRelevanceService;
public int getActCount(WarehouseEntity warehouseEntity) {
UdiRelevanceEntity udiRelevanceEntity = udiRelevanceService.selectById(warehouseEntity.getRelId());
UdiRelevanceResponse udiInfoBean = udiRelevanceService.selectByNameCode(warehouseEntity.getNameCode());
if (udiInfoBean != null) {
if ((udiRelevanceEntity.getIsUseDy() != null && udiRelevanceEntity.getIsUseDy()) && udiInfoBean.getDiType() != 2) {
if (udiInfoBean.getBhzxxsbzsl() == 0)
return udiInfoBean.getZxxsbzbhsydysl();
else
return udiInfoBean.getZxxsbzbhsydysl() * udiInfoBean.getBhzxxsbzsl();
} else {
return udiInfoBean.getBhzxxsbzsl();
}
}
return 1;
}
}

@ -39,8 +39,10 @@ final class Gs1128Utils {
private static String fixedValue(int size, Iterator<Character> iterator) { private static String fixedValue(int size, Iterator<Character> iterator) {
StringBuilder builder = new StringBuilder(); StringBuilder builder = new StringBuilder();
for (int i = 0; i < size; i++) { for (int i = 0; i < size; i++) {
if (iterator.hasNext()) {
builder.append(iterator.next()); builder.append(iterator.next());
} }
}
return builder.toString(); return builder.toString();
} }

@ -1,9 +1,9 @@
# \u751F\u4EA7\u73AF\u5883 # \u751F\u4EA7\u73AF\u5883
server.port=9906 server.port=9906
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.jdbc-url=jdbc:mysql://127.0.0.1:3306/spms_za?serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true spring.datasource.jdbc-url=jdbc:mysql://192.168.0.66:3360/spms?serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true
spring.datasource.username=root spring.datasource.username=root
spring.datasource.password=123456 spring.datasource.password=root
spring.datasource.hikari.connection-timeout=60000 spring.datasource.hikari.connection-timeout=60000
spring.datasource.hikari.maximum-pool-size=60 spring.datasource.hikari.maximum-pool-size=60
spring.datasource.hikari.minimum-idle=10 spring.datasource.hikari.minimum-idle=10
@ -28,8 +28,8 @@ spring.jackson.date-format=yyyy-MM-dd HH:mm:ss
spring.jackson.time-zone=GMT+8 spring.jackson.time-zone=GMT+8
spring.main.allow-bean-definition-overriding=true spring.main.allow-bean-definition-overriding=true
spring.redis.database=4 spring.redis.database=4
spring.redis.host=127.0.0.1 spring.redis.host=192.168.0.66
spring.redis.port=6379 spring.redis.port=6400
spring.redis.password= spring.redis.password=
spring.redis.jedis.pool.max-active=8 spring.redis.jedis.pool.max-active=8
spring.redis.jedis.pool.max-wait=-1 spring.redis.jedis.pool.max-wait=-1

@ -498,7 +498,6 @@
#{cpbsbmtxmc}, #{cpbsbmtxmc},
#{isNewest}, #{isNewest},
#{updateTime}, #{updateTime},
#{hchzsb},
#{cplx}, #{cplx},
#{hchzsb}, #{hchzsb},
#{sfwblztlcp}, #{sfwblztlcp},
@ -567,7 +566,8 @@
#{item.cpms}, #{item.cpms},
#{item.cpbsbmtxmc}, #{item.cpbsbmtxmc},
#{item.isNewest}, #{item.isNewest},
#{item.updateTime},#{item.cplx},#{item.hchzsb},#{item.sfwblztlcp},#{item.cgzmraqxgxx},#{item.sfbjwycxsy},#{item.zdcfsycs} #{item.updateTime},#{item.cplx},#{item.hchzsb},#{item.sfwblztlcp},
#{item.cgzmraqxgxx},#{item.sfbjwycxsy},#{item.zdcfsycs}
,#{item.sfwwjbz},#{item.syqsfxyjxmj},#{item.qtxxdwzlj},#{item.mjfs} ,#{item.sfwwjbz},#{item.syqsfxyjxmj},#{item.qtxxdwzlj},#{item.mjfs}
) )
</foreach> </foreach>

@ -38,7 +38,7 @@
basic_udirel.ybbm,basic_udirel.sptm, basic_udirel.ybbm,basic_udirel.sptm,
basic_udirel.manufactory,basic_udirel.measname,basic_udirel.lockStatus,basic_products.allowNoBatch, basic_udirel.manufactory,basic_udirel.measname,basic_udirel.lockStatus,basic_products.allowNoBatch,
basic_products.allowNoExpire, basic_products.allowNoExpire,
basic_products.allowNoProduct, basic_products.allowNoProduct,basic_products.productType,
basic_products.nameCode,basic_products.packRatio,basic_products.packLevel,basic_products.bhxjsl, basic_products.nameCode,basic_products.packRatio,basic_products.packLevel,basic_products.bhxjsl,
basic_products.bhzxxsbzsl,basic_products.zxxsbzbhsydysl,basic_products.bhxjcpbm, basic_products.bhzxxsbzsl,basic_products.zxxsbzbhsydysl,basic_products.bhxjcpbm,
basic_products.bzcj,basic_products.addType,basic_udirel.isDisable, basic_products.bzcj,basic_products.addType,basic_udirel.isDisable,

@ -137,6 +137,7 @@
<if test="invoiceDate != null">invoiceDate=#{invoiceDate},</if> <if test="invoiceDate != null">invoiceDate=#{invoiceDate},</if>
<if test="relId != null">relId=#{relId},</if> <if test="relId != null">relId=#{relId},</if>
<if test="manufactory != null">manufactory=#{manufactory},</if> <if test="manufactory != null">manufactory=#{manufactory},</if>
<if test="zczbhhzbapzbh != null">zczbhhzbapzbh=#{zczbhhzbapzbh},</if>
</set> </set>
WHERE id = #{id} WHERE id = #{id}
</update> </update>

@ -30,7 +30,7 @@
AND expireDate = #{expireDate} AND expireDate = #{expireDate}
</if> </if>
<if test="ylqxzcrbarmc != '' and ylqxzcrbarmc != null"> <if test="ylqxzcrbarmc != '' and ylqxzcrbarmc != null">
AND ylqxzcrbarmc = #{ylqxzcrbarmc} AND ylqxzcrbarmc like concat('%',#{ylqxzcrbarmc},'%')
</if> </if>
<if test="zczbhhzbapzbh != '' and zczbhhzbapzbh != null"> <if test="zczbhhzbapzbh != '' and zczbhhzbapzbh != null">
AND zczbhhzbapzbh = #{zczbhhzbapzbh} AND zczbhhzbapzbh = #{zczbhhzbapzbh}
@ -203,13 +203,13 @@
insert INTO inv_prein_product insert INTO inv_prein_product
(productsName, nameCode, relIdFk, ggxh, batchNo, (productsName, nameCode, relIdFk, ggxh, batchNo,
productionDate, expireDate, ylqxzcrbarmc, zczbhhzbapzbh, productionDate, expireDate, ylqxzcrbarmc, zczbhhzbapzbh,
inCount, outCount, reCount, customerId, supId, unitFk, invStorageCode, invWarehouseCode, price,updateTime) inCount, outCount, reCount, customerId, supId, unitFk, invStorageCode, invWarehouseCode, price, updateTime)
values (#{productsName}, #{nameCode}, values (#{productsName}, #{nameCode},
#{relIdFk}, #{ggxh}, #{batchNo}, #{relIdFk}, #{ggxh}, #{batchNo},
#{productionDate}, #{expireDate}, #{productionDate}, #{expireDate},
#{ylqxzcrbarmc}, #{zczbhhzbapzbh}, #{ylqxzcrbarmc}, #{zczbhhzbapzbh},
#{inCount}, #{outCount}, #{reCount}, #{customerId}, #{supId}, #{unitFk} #{inCount}, #{outCount}, #{reCount}, #{customerId}, #{supId}, #{unitFk}
, #{invStorageCode}, #{invWarehouseCode}, #{price},#{updateTime}) , #{invStorageCode}, #{invWarehouseCode}, #{price}, #{updateTime})
</insert> </insert>

@ -29,7 +29,7 @@
AND expireDate = #{expireDate} AND expireDate = #{expireDate}
</if> </if>
<if test="ylqxzcrbarmc != '' and ylqxzcrbarmc != null"> <if test="ylqxzcrbarmc != '' and ylqxzcrbarmc != null">
AND ylqxzcrbarmc = #{ylqxzcrbarmc} AND ylqxzcrbarmc like concat('%',#{ylqxzcrbarmc},'%')
</if> </if>
<if test="zczbhhzbapzbh != '' and zczbhhzbapzbh != null"> <if test="zczbhhzbapzbh != '' and zczbhhzbapzbh != null">
AND zczbhhzbapzbh = #{zczbhhzbapzbh} AND zczbhhzbapzbh = #{zczbhhzbapzbh}

@ -88,6 +88,9 @@
<if test="id != null"> <if test="id != null">
AND tdi.id = #{id} AND tdi.id = #{id}
</if> </if>
<if test="customerId != null">
AND tdi.customerId = #{customerId}
</if>
<if test="name != '' and name != null"> <if test="name != '' and name != null">
AND p.cpmctymc like concat('%', #{name}, '%') AND p.cpmctymc like concat('%', #{name}, '%')
</if> </if>
@ -100,7 +103,11 @@
<if test="code != '' and code != null"> <if test="code != '' and code != null">
AND p.nameCode = #{code} AND p.nameCode = #{code}
</if> </if>
<if test="uuid != '' and uuid != null">
AND tdi.uuid = #{uuid}
</if>
</where> </where>
order by tdi.createTime DESC
</select> </select>
<select id="getDiProductDetail" resultType="com.glxp.sale.admin.entity.basic.UdiInfoEntity"> <select id="getDiProductDetail" resultType="com.glxp.sale.admin.entity.basic.UdiInfoEntity">

@ -35,6 +35,9 @@
<if test="thirdSysFk != '' and thirdSysFk != null"> <if test="thirdSysFk != '' and thirdSysFk != null">
AND thirdSysFk = #{thirdSysFk} AND thirdSysFk = #{thirdSysFk}
</if> </if>
<if test="thirdSys != '' and thirdSys != null">
AND thirdSysFk = #{thirdSys}
</if>
<if test="supName != '' and supName != null"> <if test="supName != '' and supName != null">
AND supName = #{supName} AND supName = #{supName}
</if> </if>

@ -22,3 +22,9 @@ mysql:3362 root Glxp@6066
redis:6403 redis:6403
tomcat:8503 tomcat:8503
mysql:3363 root Glxp@6066 mysql:3363 root Glxp@6066
王其其:
redis:6405
tomcat:8505
mysql:3365 root Glxp@6066
Loading…
Cancel
Save