|
@@ -1046,16 +1046,6 @@ public class ProductBaseServiceImpl extends ServiceImpl<ProductBaseMapper, Produ
|
|
|
*/
|
|
*/
|
|
|
private void updateProductPriceInventory(ProductBaseBo bo, Long productId) {
|
|
private void updateProductPriceInventory(ProductBaseBo bo, Long productId) {
|
|
|
// 如果没有传价格相关信息,不做任何操作
|
|
// 如果没有传价格相关信息,不做任何操作
|
|
|
- if (bo.getMarketPrice() == null && bo.getMemberPrice() == null &&
|
|
|
|
|
- bo.getMinSellingPrice() == null && bo.getPurchasingPrice() == null &&
|
|
|
|
|
- bo.getMaxPurchasePrice() == null && bo.getTotalInventory() == null &&
|
|
|
|
|
- bo.getNowInventory() == null && bo.getVirtualInventory() == null &&
|
|
|
|
|
- bo.getTaxRate() == null && bo.getTaxationId() == null &&
|
|
|
|
|
- bo.getSupplyPrice() == null && bo.getSupplyValidityPeriod() == null &&
|
|
|
|
|
- bo.getSupplyPostStatus() == null
|
|
|
|
|
- ) {
|
|
|
|
|
- return;
|
|
|
|
|
- }
|
|
|
|
|
|
|
|
|
|
ProductPriceInventory existing = priceInventoryMapper.selectById(productId);
|
|
ProductPriceInventory existing = priceInventoryMapper.selectById(productId);
|
|
|
if (existing != null) {
|
|
if (existing != null) {
|
|
@@ -1073,6 +1063,7 @@ public class ProductBaseServiceImpl extends ServiceImpl<ProductBaseMapper, Produ
|
|
|
if (bo.getSupplyPrice() != null) existing.setSupplyPrice(bo.getSupplyPrice());
|
|
if (bo.getSupplyPrice() != null) existing.setSupplyPrice(bo.getSupplyPrice());
|
|
|
if (bo.getSupplyValidityPeriod() != null) existing.setSupplyValidityPeriod(bo.getSupplyValidityPeriod());
|
|
if (bo.getSupplyValidityPeriod() != null) existing.setSupplyValidityPeriod(bo.getSupplyValidityPeriod());
|
|
|
if (bo.getSupplyPostStatus() != null) existing.setSupplyPostStatus(bo.getSupplyPostStatus());
|
|
if (bo.getSupplyPostStatus() != null) existing.setSupplyPostStatus(bo.getSupplyPostStatus());
|
|
|
|
|
+ if (bo.getMinOrderQuantity() != null) existing.setMinOrderQuantity(bo.getMinOrderQuantity());
|
|
|
priceInventoryMapper.updateById(existing);
|
|
priceInventoryMapper.updateById(existing);
|
|
|
} else {
|
|
} else {
|
|
|
// 创建新记录
|
|
// 创建新记录
|
|
@@ -1449,39 +1440,56 @@ public class ProductBaseServiceImpl extends ServiceImpl<ProductBaseMapper, Produ
|
|
|
ComProdInfo erpProduct = new ComProdInfo();
|
|
ComProdInfo erpProduct = new ComProdInfo();
|
|
|
erpProduct.setProdId(vo.getProductNo());
|
|
erpProduct.setProdId(vo.getProductNo());
|
|
|
erpProduct.setProdNm(vo.getItemName());
|
|
erpProduct.setProdNm(vo.getItemName());
|
|
|
- erpProduct.setUid(vo.getUnitId());
|
|
|
|
|
- erpProduct.setProdCatgId(vo.getBottomCategoryId() != null ? vo.getBottomCategoryId().toString() : null);
|
|
|
|
|
- erpProduct.setTypeId(vo.getProductCategory() != null ? vo.getProductCategory().toString() : null);
|
|
|
|
|
|
|
+ if (ObjectUtil.isNotEmpty(vo.getUnitId()) && !isUpdate) {
|
|
|
|
|
+ ProductUnitVo productUnitVo = unitMapper.selectVoById(vo.getUnitId());
|
|
|
|
|
+ if (ObjectUtil.isNotEmpty(productUnitVo)){
|
|
|
|
|
+ erpProduct.setUiId(productUnitVo.getUnitNo());
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ if (ObjectUtil.isNotEmpty(vo.getBottomCategoryId())) {
|
|
|
|
|
+ ProductCategoryVo productCategoryVo = categoryMapper.selectVoById(vo.getBottomCategoryId());
|
|
|
|
|
+ if (ObjectUtil.isNotEmpty(productCategoryVo)){
|
|
|
|
|
+ erpProduct.setProdCatgId(productCategoryVo.getCategoryNo());
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ erpProduct.setTypeId("0001");
|
|
|
erpProduct.setProdSpec(vo.getSpecification());
|
|
erpProduct.setProdSpec(vo.getSpecification());
|
|
|
erpProduct.setBarCd(vo.getBarCoding());
|
|
erpProduct.setBarCd(vo.getBarCoding());
|
|
|
erpProduct.setUseMultUi(false); // 默认不使用多单位
|
|
erpProduct.setUseMultUi(false); // 默认不使用多单位
|
|
|
|
|
|
|
|
- // 产品状态映射:1=已上架,0=下架 -> ERP 状态可能需要转换,这里暂存字符串
|
|
|
|
|
- erpProduct.setProdSts(vo.getProductStatus() != null ? vo.getProductStatus().toString() : "0");
|
|
|
|
|
|
|
+ // 产品状态
|
|
|
|
|
+ erpProduct.setProdSt("01");
|
|
|
|
|
|
|
|
erpProduct.setInvNm(vo.getInvoiceName());
|
|
erpProduct.setInvNm(vo.getInvoiceName());
|
|
|
erpProduct.setInvSpec(vo.getInvoiceSpecs());
|
|
erpProduct.setInvSpec(vo.getInvoiceSpecs());
|
|
|
|
|
|
|
|
// 价格相关
|
|
// 价格相关
|
|
|
- erpProduct.setPurIsPrWtTax(true); // 假设进价含税,可根据业务调整
|
|
|
|
|
|
|
+ erpProduct.setPurIsPrWTax(true); // 假设进价含税,可根据业务调整
|
|
|
erpProduct.setPurStdPr(vo.getPurchasingPrice());
|
|
erpProduct.setPurStdPr(vo.getPurchasingPrice());
|
|
|
erpProduct.setHighPurPr(vo.getMaxPurchasePrice());
|
|
erpProduct.setHighPurPr(vo.getMaxPurchasePrice());
|
|
|
erpProduct.setSupId(vo.getSupplierNo());
|
|
erpProduct.setSupId(vo.getSupplierNo());
|
|
|
- erpProduct.setPurTaxId(vo.getTaxCode());
|
|
|
|
|
|
|
+ erpProduct.setPurTaxId("VT000");
|
|
|
|
|
|
|
|
- erpProduct.setSlsIsPrWtTax(true); // 假设售价含税
|
|
|
|
|
- erpProduct.setSlsStdPr(vo.getMemberPrice());
|
|
|
|
|
|
|
+ erpProduct.setSlIsPrWTax(true); // 假设售价含税,可根据业务调整
|
|
|
|
|
+ erpProduct.setSlStdPr(vo.getMemberPrice());
|
|
|
erpProduct.setMinPr(vo.getMinSellingPrice());
|
|
erpProduct.setMinPr(vo.getMinSellingPrice());
|
|
|
- erpProduct.setSltTaxId(vo.getTaxCode());
|
|
|
|
|
|
|
+ erpProduct.setPurTaxId("VT000");
|
|
|
|
|
|
|
|
erpProduct.setRemark(vo.getRemark());
|
|
erpProduct.setRemark(vo.getRemark());
|
|
|
- erpProduct.setTradMrkId(vo.getBrandId() != null ? vo.getBrandId().toString() : null);
|
|
|
|
|
|
|
+ if (ObjectUtil.isNotEmpty(vo.getBrandId())) {
|
|
|
|
|
+ ProductBrandVo productBrandVo = brandMapper.selectVoById(vo.getBrandId());
|
|
|
|
|
+ if (ObjectUtil.isNotEmpty(productBrandVo)){
|
|
|
|
|
+ erpProduct.setTradMrkId(productBrandVo.getBrandNo());
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
erpProduct.setMinSalQty(vo.getMinOrderQuantity() != null ? BigDecimal.valueOf(vo.getMinOrderQuantity()) : null);
|
|
erpProduct.setMinSalQty(vo.getMinOrderQuantity() != null ? BigDecimal.valueOf(vo.getMinOrderQuantity()) : null);
|
|
|
erpProduct.setPurPerId(vo.getPurchaseManagerNo());
|
|
erpProduct.setPurPerId(vo.getPurchaseManagerNo());
|
|
|
- erpProduct.setCuBhsx("1"); // 备货属性,根据实际业务设置
|
|
|
|
|
|
|
+ erpProduct.setCU_BHSX("0004"); // 备货属性,根据实际业务设置
|
|
|
|
|
|
|
|
|
|
+ Map<String, ComProdInfo> map = new HashMap<>();
|
|
|
|
|
+ map.put("ComProdInfo", erpProduct);
|
|
|
// 调用远程服务推送
|
|
// 调用远程服务推送
|
|
|
- String productJson = JSONUtil.toJsonStr(erpProduct);
|
|
|
|
|
|
|
+ String productJson = JSONUtil.toJsonStr(map);
|
|
|
erpPushService.pushProductData(productJson, isUpdate);
|
|
erpPushService.pushProductData(productJson, isUpdate);
|
|
|
|
|
|
|
|
log.debug("成功{}ERP产品索引,产品ID: {}", isUpdate ? "更新" : "插入", productId);
|
|
log.debug("成功{}ERP产品索引,产品ID: {}", isUpdate ? "更新" : "插入", productId);
|