Browse Source

标签查询方法及包装创建标签

master
陈薪名 2 years ago
parent
commit
c8369fa603
  1. 4
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/productionreturnRequest/ProductionreturnRequestDetailController.java
  2. 7
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/barcode/BarcodeService.java
  3. 9
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/barcode/BarcodeServiceImpl.java
  4. 7
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/labeltype/LabeltypeService.java
  5. 8
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/labeltype/LabeltypeServiceImpl.java
  6. 6
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/packageMassage/PackageService.java
  7. 86
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/packageMassage/PackageServiceImpl.java
  8. 2
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/productionreturnRequest/ProductionreturnRequestDetailService.java
  9. 2
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/productionreturnRequest/ProductionreturnRequestDetailServiceImpl.java

4
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/productionreturnRequest/ProductionreturnRequestDetailController.java

@ -51,8 +51,8 @@ public class ProductionreturnRequestDetailController {
@PutMapping("/update")
@Operation(summary = "更新生产退料申请子")
@PreAuthorize("@ss.hasPermission('wms:productionreturn-request-detail:update')")
public CommonResult<Boolean> updateProductionreturnRequestDetail(@Valid @RequestBody ProductionreturnRequestDetailUpdateReqVO updateReqVO, @RequestBody RequestsettingDO requestsettingDO) {
productionreturnRequestDetailService.updateProductionreturnRequestDetail(updateReqVO,requestsettingDO);
public CommonResult<Boolean> updateProductionreturnRequestDetail(@Valid @RequestBody ProductionreturnRequestDetailUpdateReqVO updateReqVO) {
productionreturnRequestDetailService.updateProductionreturnRequestDetail(updateReqVO);
return success(true);
}

7
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/barcode/BarcodeService.java

@ -79,4 +79,11 @@ public interface BarcodeService {
List<BarcodeDO> getBarcodeList(BarcodeExportReqVO exportReqVO);
List<BarcodeImportExcelVo> importBarcodeList(List<BarcodeImportExcelVo> barcodes, Integer mode, Boolean updatePart);
/**
* 根据labelType 获取条码片段集合
* @param labelType
* @return
*/
List<BarcodeDO> getBarcodeDoListByLabelType(String labelType);
}

9
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/barcode/BarcodeServiceImpl.java

@ -2,6 +2,7 @@ package com.win.module.wms.service.barcode;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.google.common.annotations.VisibleForTesting;
import com.win.framework.common.exception.ServiceException;
import com.win.framework.common.pojo.CustomConditions;
@ -124,6 +125,14 @@ public class BarcodeServiceImpl implements BarcodeService {
}
return errorList;
}
@Override
public List<BarcodeDO> getBarcodeDoListByLabelType(String labelType) {
QueryWrapper queryWrapper = new QueryWrapper();
queryWrapper.eq("label_type",labelType);
return barcodeMapper.selectList(queryWrapper);
}
private void validateBarcodeForCreateOrUpdate(Long id,String code,Integer order,Integer length,Integer prefixLenght,String entityProperties,String trimEnd,String isEncypt) {
// 关闭数据权限,避免因为没有数据权限,查询不到数据,进而导致唯一校验不正确
DataPermissionUtils.executeIgnore(() -> {

7
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/labeltype/LabeltypeService.java

@ -79,4 +79,11 @@ public interface LabeltypeService {
LabeltypeDO getOneLabelByHeader(LabeltypeRespVO LabeltypeRespVO);
/**
* 根据 label_type 查询 标签定义
* @param labelType
* @return
*/
LabeltypeDO getLabeltypeDOByLabelType(String labelType);
}

8
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/labeltype/LabeltypeServiceImpl.java

@ -1,5 +1,6 @@
package com.win.module.wms.service.labeltype;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.win.framework.common.pojo.CustomConditions;
import com.win.framework.common.pojo.PageResult;
import com.win.module.wms.controller.labeltype.vo.*;
@ -91,4 +92,11 @@ public class LabeltypeServiceImpl implements LabeltypeService {
return labletypeMapper.getOneLabelByHeader(LabeltypeRespVO);
}
@Override
public LabeltypeDO getLabeltypeDOByLabelType(String labelType) {
QueryWrapper queryWrapper = new QueryWrapper();
queryWrapper.eq("label_type",labelType);
return labletypeMapper.selectOne(queryWrapper);
}
}

6
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/packageMassage/PackageService.java

@ -89,4 +89,10 @@ public interface PackageService {
PageResult<PackageDO> getPackageSenior(CustomConditions conditions);
PackageDO createPackageLabel(PackageCreateReqVO createReqVO);
/**
* 根据包装信息 创建 标签
* @param packageDO
*/
void generateLabel(PackageDO packageDO);
}

86
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/packageMassage/PackageServiceImpl.java

@ -1,6 +1,6 @@
package com.win.module.wms.service.packageMassage;
import cn.hutool.core.exceptions.UtilException;
import cn.hutool.core.util.ReflectUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.win.framework.common.pojo.CustomConditions;
import com.win.framework.common.pojo.PageResult;
@ -11,14 +11,20 @@ import com.win.module.wms.controller.packageMassage.vo.PackageExportReqVO;
import com.win.module.wms.controller.packageMassage.vo.PackagePageReqVO;
import com.win.module.wms.controller.packageMassage.vo.PackageUpdateReqVO;
import com.win.module.wms.convert.packageMassage.PackageConvert;
import com.win.module.wms.dal.dataobject.accountcalendar.AccountcalendarDO;
import com.win.module.wms.dal.dataobject.itembasic.ItembasicDO;
import com.win.module.wms.dal.dataobject.barcode.BarcodeDO;
import com.win.module.wms.dal.dataobject.itempackaging.ItempackagingDO;
import com.win.module.wms.dal.dataobject.labelBarbasic.BarbasicDO;
import com.win.module.wms.dal.dataobject.labeltype.LabeltypeDO;
import com.win.module.wms.dal.dataobject.packageMassage.PackageDO;
import com.win.module.wms.dal.dataobject.productionreturnRequest.ProductionreturnRequestDetailDO;
import com.win.module.wms.dal.dataobject.supplieritem.SupplieritemDO;
import com.win.module.wms.dal.mysql.labelBarbasic.BarbasicMapper;
import com.win.module.wms.dal.mysql.packageMassage.PackageMapper;
import com.win.module.wms.service.itembasic.ItembasicService;
import com.win.module.wms.dal.mysql.productionreturnRequest.ProductionreturnRequestDetailMapper;
import com.win.module.wms.service.barcode.BarcodeService;
import com.win.module.wms.service.itempackaging.ItempackagingService;
import com.win.module.wms.service.labelBarbasic.BarbasicService;
import com.win.module.wms.service.labeltype.LabeltypeService;
import com.win.module.wms.service.supplieritem.SupplieritemService;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@ -43,9 +49,15 @@ import static com.win.module.wms.enums.ErrorCodeConstants.PACKAGE_NOT_EXISTS;
public class PackageServiceImpl implements PackageService {
@Resource
private ItempackagingService itempackagingService;
private BarbasicMapper barbasicMapper;
@Resource
private BarcodeService barcodeService;
@Resource
private LabeltypeService labeltypeService;
@Resource
private ProductionreturnRequestDetailMapper productionreturnRequestDetailMapper;
@Resource
private ItembasicService itembasicService;
private ItempackagingService itempackagingService;
@Resource
private SupplieritemService supplieritemService;
@Resource
@ -148,7 +160,69 @@ public class PackageServiceImpl implements PackageService {
// TODO: 赋值 生产订单号 生产订单行 班组代码 班次代码
}
packageMapper.insert(packageDo);
// 更新 生产退料申请 子表数据 包装号字段
updateProductionreturnPackingNumber(packageDo.getId(),packageDo.getNumber());
// 创建 标签数据
generateLabel(packageDo);
// 返回
return packageDo;
}
/**
* 更新 生产退料申请 子表数据 包装号字段
* @param packingNumber
*/
private void updateProductionreturnPackingNumber(Long id, String packingNumber) {
ProductionreturnRequestDetailDO updateObj = new ProductionreturnRequestDetailDO();
updateObj.setId(id);
updateObj.setPackingNumber(packingNumber);
productionreturnRequestDetailMapper.updateById(updateObj);
}
/**
* 根据 包装 创建 标签
* @param packageDO
*/
@Override
@Transactional
public void generateLabel (PackageDO packageDO) {
BarbasicDO barbasicDO = new BarbasicDO();
// 自动生成流水
String number = serialNumberApi.generateCode(RuleCodeEnum.LABEL_NUMBER.getCode());
barbasicDO.setNumber(number);
barbasicDO.setRelateNumber(packageDO.getNumber());
barbasicDO.setStatus("NEW");
// 采购标签
if (packageDO.getSupplierCode() != null && !packageDO.getSupplierCode().isEmpty()) {
barbasicDO.setType("PurchaseLabel");
}
// 制造件标签
if (packageDO.getProductionLineCode() != null && !packageDO.getProductionLineCode().isEmpty()) {
barbasicDO.setType("MakeLabel");
}
// 查询 标签定义
LabeltypeDO labeltypeDO = labeltypeService.getLabeltypeDOByLabelType(barbasicDO.getType());
// 查询 条码片段
List<BarcodeDO> barcodeDOList = barcodeService.getBarcodeDoListByLabelType(barbasicDO.getType());
// 数据头
String header = labeltypeDO.getHeader();
// 版本
String version = labeltypeDO.getVersion();
// 分隔符
String separators = labeltypeDO.getSeparators();
// 标签头 拼接
String headerStr = header + separators + version + separators;
// 内容 拼接
StringBuffer contentStr = new StringBuffer();
for (BarcodeDO barcodeDO: barcodeDOList){
Object subClassObject = ReflectUtil.invoke(packageDO, "get" + barcodeDO.getEntityProperties());
String pChar = barcodeDO.getPrefixChar();
if (subClassObject==null || subClassObject.equals("")) {
subClassObject = "";
}
contentStr.append(pChar + subClassObject + separators);
}
barbasicDO.setBarcodeString(headerStr + contentStr);
barbasicMapper.insert(barbasicDO);
}
}

2
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/productionreturnRequest/ProductionreturnRequestDetailService.java

@ -30,7 +30,7 @@ public interface ProductionreturnRequestDetailService {
*
* @param updateReqVO 更新信息
*/
void updateProductionreturnRequestDetail(@Valid ProductionreturnRequestDetailUpdateReqVO updateReqVO, RequestsettingDO requestsettingDO);
void updateProductionreturnRequestDetail(@Valid ProductionreturnRequestDetailUpdateReqVO updateReqVO);
/**
* 删除生产退料申请子

2
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/productionreturnRequest/ProductionreturnRequestDetailServiceImpl.java

@ -83,7 +83,7 @@ public class ProductionreturnRequestDetailServiceImpl implements Productionretur
@Override
@Transactional
public void updateProductionreturnRequestDetail(ProductionreturnRequestDetailUpdateReqVO updateReqVO, RequestsettingDO requestsettingDO) {
public void updateProductionreturnRequestDetail(ProductionreturnRequestDetailUpdateReqVO updateReqVO) {
// 校验存在
validateProductionreturnRequestDetailExists(updateReqVO.getId());
// 更新

Loading…
Cancel
Save