Browse Source

客户结算后端代码修改

master
chenfang 2 years ago
parent
commit
4df29ced3a
  1. 61
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/customerreceiptRecord/CustomerreceiptRecordMainController.java
  2. 120
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/customerreceiptRecord/vo/CustomerreceiptRecordMainExcelVO.java
  3. 8
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/customerreturnJob/CustomerreturnJobMainController.java
  4. 15
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/customerreturnJob/vo/CustomerreturnJobDetailBaseVO.java
  5. 17
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/customerreturnJob/vo/CustomerreturnJobDetailRespVO.java
  6. 18
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/convert/customerreceiptRecord/CustomerreceiptRecordMainConvert.java
  7. 5
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/mysql/customerreceiptRecord/CustomerreceiptRecordDetailMapper.java
  8. 2
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/mysql/customerreturnJob/CustomerreturnJobDetailMapper.java
  9. 1
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/customerreceiptRecord/CustomerreceiptRecordDetailService.java
  10. 5
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/customerreceiptRecord/CustomerreceiptRecordDetailServiceImpl.java
  11. 102
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/customerreturnJob/CustomerreturnJobMainServiceImpl.java

61
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/customerreceiptRecord/CustomerreceiptRecordMainController.java

@ -1,9 +1,18 @@
package com.win.module.wms.controller.customerreceiptRecord; package com.win.module.wms.controller.customerreceiptRecord;
import com.win.framework.common.pojo.CustomConditions; import com.win.framework.common.pojo.CustomConditions;
import com.win.framework.dict.core.util.DictFrameworkUtils;
import com.win.module.system.api.user.AdminUserApi; import com.win.module.system.api.user.AdminUserApi;
import com.win.module.system.api.user.dto.AdminUserRespDTO; import com.win.module.system.api.user.dto.AdminUserRespDTO;
import com.win.module.wms.controller.customerreceiptRecord.vo.*; import com.win.module.wms.controller.customerreceiptRecord.vo.*;
import com.win.module.wms.controller.customerreturnJob.vo.CustomerreturnJobMainExcelVO;
import com.win.module.wms.controller.customerreturnJob.vo.CustomerreturnJobMainExportReqVO;
import com.win.module.wms.convert.customerreturnJob.CustomerreturnJobMainConvert;
import com.win.module.wms.dal.dataobject.customerreceiptRecord.CustomerreceiptRecordDetailDO;
import com.win.module.wms.dal.dataobject.customerreturnJob.CustomerreturnJobDetailDO;
import com.win.module.wms.dal.dataobject.customerreturnJob.CustomerreturnJobMainDO;
import com.win.module.wms.enums.DictTypeConstants;
import com.win.module.wms.service.customerreceiptRecord.CustomerreceiptRecordDetailService;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource; import javax.annotation.Resource;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
@ -39,6 +48,8 @@ public class CustomerreceiptRecordMainController {
@Resource @Resource
private CustomerreceiptRecordMainService customerreceiptRecordMainService; private CustomerreceiptRecordMainService customerreceiptRecordMainService;
@Resource
private CustomerreceiptRecordDetailService customerreceiptRecordDetailService;
@Resource @Resource
private AdminUserApi userApi; private AdminUserApi userApi;
@ -112,13 +123,51 @@ public class CustomerreceiptRecordMainController {
HttpServletResponse response) throws IOException { HttpServletResponse response) throws IOException {
List<CustomerreceiptRecordMainDO> list = customerreceiptRecordMainService.getCustomerreceiptRecordMainList(exportReqVO); List<CustomerreceiptRecordMainDO> list = customerreceiptRecordMainService.getCustomerreceiptRecordMainList(exportReqVO);
// 导出 Excel // 导出 Excel
List<CustomerreceiptRecordMainExcelVO> datas = CustomerreceiptRecordMainConvert.INSTANCE.convertList02(list); Map<Integer, String[]> mapDropDown = new HashMap<>();
for(CustomerreceiptRecordMainExcelVO vo : datas) { List<CustomerreceiptRecordMainExcelVO> resultList = this.getExcelVo(list, mapDropDown);
AdminUserRespDTO user = userApi.getUser(Long.valueOf(vo.getCreator())); ExcelUtils.write(response, "发货任务.xls", "数据", CustomerreceiptRecordMainExcelVO.class, resultList,mapDropDown);
//后端创建个字段作为前端展示的虚拟字段 }
vo.setCreator(user.getNickname());
@GetMapping("/export-excel-senior")
@Operation(summary = "导出客户退货任务 Excel")
@PreAuthorize("@ss.hasPermission('wms:customerreturn-record-main:export')")
@OperateLog(type = EXPORT)
public void exportCustomerreceiptRecordMainSeniorExcel(@Valid CustomerreceiptRecordMainExportReqVO exportReqVO,
HttpServletResponse response) throws IOException {
List<CustomerreceiptRecordMainDO> list = customerreceiptRecordMainService.getCustomerreceiptRecordMainList(exportReqVO);
// 导出 Excel
Map<Integer, String[]> mapDropDown = new HashMap<>();
List<CustomerreceiptRecordMainExcelVO> resultList = this.getExcelVo(list, mapDropDown);
ExcelUtils.write(response, "发货任务.xls", "数据", CustomerreceiptRecordMainExcelVO.class, resultList,mapDropDown);
}
private List<CustomerreceiptRecordMainExcelVO> getExcelVo(List<CustomerreceiptRecordMainDO> list, Map<Integer, String[]> mapDropDown) {
String[] transferMode = DictFrameworkUtils.dictTypeDictDataValue(DictTypeConstants.TRANSFER_MODE);
mapDropDown.put(7, transferMode);
String[] interfaceType = DictFrameworkUtils.dictTypeDictDataValue(DictTypeConstants.INTERFACE_TYPE);
mapDropDown.put(18, interfaceType);
mapDropDown.put(54, interfaceType);
String[] locationType = DictFrameworkUtils.dictTypeDictDataValue(DictTypeConstants.LOCATION_TYPE);
mapDropDown.put(24, locationType);
mapDropDown.put(25, locationType);
String[] trueFalse = DictFrameworkUtils.dictTypeDictDataValue(DictTypeConstants.TRUE_FALSE);
mapDropDown.put(28, trueFalse);
String[] inventoryStatus = DictFrameworkUtils.dictTypeDictDataValue(DictTypeConstants.INVENTORY_STATUS);
mapDropDown.put(30, inventoryStatus);
String[] uom = DictFrameworkUtils.dictTypeDictDataValue(DictTypeConstants.UOM);
mapDropDown.put(52, uom);
List<CustomerreceiptRecordMainExcelVO> resultList = new ArrayList<>();
// 导出
for(CustomerreceiptRecordMainDO mainDO : list) {
List<CustomerreceiptRecordDetailDO> subList = customerreceiptRecordDetailService.selectList(mainDO.getId());
for(CustomerreceiptRecordDetailDO detailDO : subList) {
CustomerreceiptRecordMainExcelVO vo = CustomerreceiptRecordMainConvert.INSTANCE.convert(mainDO, detailDO);
vo.setCreator(userApi.getUser(Long.valueOf(vo.getCreator())).getNickname());
vo.setCreatorDetail(userApi.getUser(Long.valueOf(vo.getCreatorDetail())).getNickname());
resultList.add(vo);
}
} }
ExcelUtils.write(response, "客户收货记录主.xls", "数据", CustomerreceiptRecordMainExcelVO.class, datas); return resultList;
} }
} }

120
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/customerreceiptRecord/vo/CustomerreceiptRecordMainExcelVO.java

@ -1,7 +1,10 @@
package com.win.module.wms.controller.customerreceiptRecord.vo; package com.win.module.wms.controller.customerreceiptRecord.vo;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*; import lombok.*;
import java.math.BigDecimal;
import java.util.*; import java.util.*;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.time.LocalDateTime; import java.time.LocalDateTime;
@ -22,6 +25,9 @@ import com.win.framework.excel.core.convert.DictConvert;
@Data @Data
public class CustomerreceiptRecordMainExcelVO { public class CustomerreceiptRecordMainExcelVO {
@ExcelProperty("单据号")
private String number;
@ExcelProperty("申请单号") @ExcelProperty("申请单号")
private String requestNumber; private String requestNumber;
@ -44,8 +50,7 @@ public class CustomerreceiptRecordMainExcelVO {
@DictFormat("transfer_mode") // TODO 代码优化:建议设置到对应的 XXXDictTypeConstants 枚举类中 @DictFormat("transfer_mode") // TODO 代码优化:建议设置到对应的 XXXDictTypeConstants 枚举类中
private String transferMode; private String transferMode;
@ExcelProperty(value = "车牌号", converter = DictConvert.class) @ExcelProperty("车牌号")
@DictFormat("vehicle_plate_number") // TODO 代码优化:建议设置到对应的 XXXDictTypeConstants 枚举类中
private String vehiclePlateNumber; private String vehiclePlateNumber;
@ExcelProperty("从仓库代码") @ExcelProperty("从仓库代码")
@ -61,15 +66,19 @@ public class CustomerreceiptRecordMainExcelVO {
private String inTransactionType; private String inTransactionType;
@ExcelProperty("执行时间") @ExcelProperty("执行时间")
@ColumnWidth(value = 22)
private LocalDateTime executeTime; private LocalDateTime executeTime;
@ExcelProperty("生效日期") @ExcelProperty("生效日期")
@ColumnWidth(value = 22)
private LocalDateTime activeDate; private LocalDateTime activeDate;
@ExcelProperty("申请时间") @ExcelProperty("申请时间")
@ColumnWidth(value = 22)
private LocalDateTime requestTime; private LocalDateTime requestTime;
@ExcelProperty("截止时间") @ExcelProperty("截止时间")
@ColumnWidth(value = 22)
private LocalDateTime dueTime; private LocalDateTime dueTime;
@ExcelProperty("部门") @ExcelProperty("部门")
@ -79,9 +88,6 @@ public class CustomerreceiptRecordMainExcelVO {
@DictFormat("interface_type") // TODO 代码优化:建议设置到对应的 XXXDictTypeConstants 枚举类中 @DictFormat("interface_type") // TODO 代码优化:建议设置到对应的 XXXDictTypeConstants 枚举类中
private String interfaceType; private String interfaceType;
@ExcelProperty("单据号")
private String number;
@ExcelProperty("业务类型") @ExcelProperty("业务类型")
private String businessType; private String businessType;
@ -89,6 +95,7 @@ public class CustomerreceiptRecordMainExcelVO {
private String remark; private String remark;
@ExcelProperty("创建时间") @ExcelProperty("创建时间")
@ColumnWidth(value = 22)
private LocalDateTime createTime; private LocalDateTime createTime;
@ExcelProperty("创建者Id") @ExcelProperty("创建者Id")
@ -111,7 +118,108 @@ public class CustomerreceiptRecordMainExcelVO {
@ExcelProperty("到库区代码范围") @ExcelProperty("到库区代码范围")
private String toAreaCodes; private String toAreaCodes;
@ExcelProperty("是否可用") @ExcelProperty(value = "是否可用", converter = DictConvert.class)
@DictFormat("true_false") // TODO 代码优化:建议设置到对应的 XXXDictTypeConstants 枚举类中
private String available; private String available;
//子表数据
// @ExcelProperty("销售订单号")
// private String soNumber;
//
// @ExcelProperty("销售订单行")
// private String soLine;
@ExcelProperty("从批次")
private String fromBatch;
@ExcelProperty(value = "库存状态", converter = DictConvert.class)
@DictFormat("inventory_status") // TODO 代码优化:建议设置到对应的 XXXDictTypeConstants 枚举类中
private String inventoryStatus;
@ExcelProperty("从货主代码")
private String fromOwnerCode;
@ExcelProperty("从器具号")
private String fromContainerNumber;
@ExcelProperty("从库位代码")
private String fromLocationCode;
@ExcelProperty("从库位组代码")
private String fromLocationGroupCode;
@ExcelProperty("从库区代码")
private String fromAreaCode;
@ExcelProperty("到货主代码")
private String toOwnerCode;
@ExcelProperty("到器具号")
private String toContainerNumber;
@ExcelProperty("到库位代码")
private String toLocationCode;
@ExcelProperty("到库位组代码")
private String toLocationGroupCode;
@ExcelProperty("到库区代码")
private String toAreaCode;
@ExcelProperty("单价")
private BigDecimal singlePrice;
@ExcelProperty("金额")
private BigDecimal amount;
@ExcelProperty("物品代码")
private String itemCode;
@ExcelProperty("备注")
private String remarkDetail;
@ExcelProperty("创建时间")
@ColumnWidth(value = 22)
private LocalDateTime createTimeDetail;
@ExcelProperty("创建者Id")
private String creatorDetail;
@ExcelProperty("物品名称")
private String itemName;
@ExcelProperty("物品描述1")
private String itemDesc1;
@ExcelProperty("物品描述2")
private String itemDesc2;
@ExcelProperty("项目代码")
private String projectCode;
@ExcelProperty("数量")
private BigDecimal qty;
@ExcelProperty(value = "计量单位", converter = DictConvert.class)
@DictFormat("uom") // TODO 代码优化:建议设置到对应的 XXXDictTypeConstants 枚举类中
private String uom;
@ExcelProperty("代码")
private String codeDetail;
@ExcelProperty(value = "接口类型", converter = DictConvert.class)
@DictFormat("interface_type") // TODO 代码优化:建议设置到对应的 XXXDictTypeConstants 枚举类中
private String interfaceTypeDetail;
@ExcelProperty("任务明细ID")
private String jobDetailId;
@ExcelProperty("从包装号")
private String fromPackingNumber;
@ExcelProperty("到包装号")
private String toPackingNumber;
@ExcelProperty("到批次")
private String toBatch;
} }

8
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/customerreturnJob/CustomerreturnJobMainController.java

@ -215,7 +215,7 @@ public class CustomerreturnJobMainController {
@PutMapping("/accept") @PutMapping("/accept")
@Operation(summary = "承接客户退货任务") @Operation(summary = "承接客户退货任务")
@Parameter(name = "id", description = "编号", required = true) @Parameter(name = "id", description = "编号", required = true)
@PreAuthorize("@ss.hasPermission('wms:customerreturn-request-main:accept')") @PreAuthorize("@ss.hasPermission('wms:customerreturn-job-main:accept')")
public CommonResult<Boolean> acceptCustomerreturnJobMain(@RequestParam("id") Long id) { public CommonResult<Boolean> acceptCustomerreturnJobMain(@RequestParam("id") Long id) {
Integer count = customerreturnJobMainService.acceptCustomerreturnJobMain(id); Integer count = customerreturnJobMainService.acceptCustomerreturnJobMain(id);
return success(count > 0); return success(count > 0);
@ -224,7 +224,7 @@ public class CustomerreturnJobMainController {
@PutMapping("/abandon") @PutMapping("/abandon")
@Operation(summary = "取消承接客户退货任务") @Operation(summary = "取消承接客户退货任务")
@Parameter(name = "id", description = "编号", required = true) @Parameter(name = "id", description = "编号", required = true)
@PreAuthorize("@ss.hasPermission('wms:customerreturn-request-main:abandon')") @PreAuthorize("@ss.hasPermission('wms:customerreturn-job-main:abandon')")
public CommonResult<Boolean> abandonCustomerreturnRequestMain(@RequestParam("id") Long id) { public CommonResult<Boolean> abandonCustomerreturnRequestMain(@RequestParam("id") Long id) {
Integer count = customerreturnJobMainService.abandonCustomerreturnJobMain(id); Integer count = customerreturnJobMainService.abandonCustomerreturnJobMain(id);
return success(count > 0); return success(count > 0);
@ -233,7 +233,7 @@ public class CustomerreturnJobMainController {
@PutMapping("/close") @PutMapping("/close")
@Operation(summary = "关闭客户退货任务主") @Operation(summary = "关闭客户退货任务主")
@Parameter(name = "id", description = "编号", required = true) @Parameter(name = "id", description = "编号", required = true)
@PreAuthorize("@ss.hasPermission('wms:customerreturn-request-main:close')") @PreAuthorize("@ss.hasPermission('wms:customerreturn-job-main:close')")
public CommonResult<Boolean> closeCustomerreturnRequestMain(@RequestParam("id") Long id) { public CommonResult<Boolean> closeCustomerreturnRequestMain(@RequestParam("id") Long id) {
Integer count = customerreturnJobMainService.closeCustomerreturnJobMain(id); Integer count = customerreturnJobMainService.closeCustomerreturnJobMain(id);
return success(count > 0); return success(count > 0);
@ -242,7 +242,7 @@ public class CustomerreturnJobMainController {
@PutMapping("/execute") @PutMapping("/execute")
@Operation(summary = "执行客户退货任务主") @Operation(summary = "执行客户退货任务主")
@Parameter(name = "id", description = "编号", required = true) @Parameter(name = "id", description = "编号", required = true)
@PreAuthorize("@ss.hasPermission('wms:customerreturn-request-main:execute')") @PreAuthorize("@ss.hasPermission('wms:customerreturn-job-main:execute')")
public CommonResult<String> closeCustomerreturnRequestMain(@Valid @RequestBody CustomerreturnJobMainUpdateReqVO updateReqVO) { public CommonResult<String> closeCustomerreturnRequestMain(@Valid @RequestBody CustomerreturnJobMainUpdateReqVO updateReqVO) {
String number = customerreturnJobMainService.executeCustomerreturnJobMain(updateReqVO); String number = customerreturnJobMainService.executeCustomerreturnJobMain(updateReqVO);
return success(number); return success(number);

15
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/customerreturnJob/vo/CustomerreturnJobDetailBaseVO.java

@ -81,19 +81,4 @@ public class CustomerreturnJobDetailBaseVO {
@Schema(description = "创建者Id") @Schema(description = "创建者Id")
private String creator; private String creator;
@Schema(description = "实际数量")
private BigDecimal handleQty;
@Schema(description = "到包装号")
private String toPackingNumber;
@Schema(description = "到器具号")
private String toContainerNumber;
@Schema(description = "到批次")
private String toBatch;
@Schema(description = "到库存状态")
private String toInventoryStatus;
} }

17
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/customerreturnJob/vo/CustomerreturnJobDetailRespVO.java

@ -3,10 +3,27 @@ package com.win.module.wms.controller.customerreturnJob.vo;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*; import lombok.*;
import java.math.BigDecimal;
@Schema(description = "管理后台 - 客户退货任务子 Response VO") @Schema(description = "管理后台 - 客户退货任务子 Response VO")
@Data @Data
@EqualsAndHashCode(callSuper = true) @EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true) @ToString(callSuper = true)
public class CustomerreturnJobDetailRespVO extends CustomerreturnJobDetailBaseVO { public class CustomerreturnJobDetailRespVO extends CustomerreturnJobDetailBaseVO {
@Schema(description = "实际数量")
private BigDecimal handleQty;
@Schema(description = "到包装号")
private String toPackingNumber;
@Schema(description = "到器具号")
private String toContainerNumber;
@Schema(description = "到批次")
private String toBatch;
@Schema(description = "到库存状态")
private String toInventoryStatus;
} }

18
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/convert/customerreceiptRecord/CustomerreceiptRecordMainConvert.java

@ -8,7 +8,10 @@ import com.win.module.wms.controller.customerreceiptRecord.vo.CustomerreceiptRec
import com.win.module.wms.controller.customerreceiptRecord.vo.CustomerreceiptRecordMainExcelVO; import com.win.module.wms.controller.customerreceiptRecord.vo.CustomerreceiptRecordMainExcelVO;
import com.win.module.wms.controller.customerreceiptRecord.vo.CustomerreceiptRecordMainRespVO; import com.win.module.wms.controller.customerreceiptRecord.vo.CustomerreceiptRecordMainRespVO;
import com.win.module.wms.controller.customerreceiptRecord.vo.CustomerreceiptRecordMainUpdateReqVO; import com.win.module.wms.controller.customerreceiptRecord.vo.CustomerreceiptRecordMainUpdateReqVO;
import com.win.module.wms.dal.dataobject.customerreceiptRecord.CustomerreceiptRecordDetailDO;
import org.mapstruct.Mapper; import org.mapstruct.Mapper;
import org.mapstruct.Mapping;
import org.mapstruct.Mappings;
import org.mapstruct.factory.Mappers; import org.mapstruct.factory.Mappers;
import com.win.module.wms.dal.dataobject.customerreceiptRecord.CustomerreceiptRecordMainDO; import com.win.module.wms.dal.dataobject.customerreceiptRecord.CustomerreceiptRecordMainDO;
@ -33,5 +36,18 @@ public interface CustomerreceiptRecordMainConvert {
PageResult<CustomerreceiptRecordMainRespVO> convertPage(PageResult<CustomerreceiptRecordMainDO> page); PageResult<CustomerreceiptRecordMainRespVO> convertPage(PageResult<CustomerreceiptRecordMainDO> page);
List<CustomerreceiptRecordMainExcelVO> convertList02(List<CustomerreceiptRecordMainDO> list); List<CustomerreceiptRecordMainExcelVO> convertList02(List<CustomerreceiptRecordMainDO> list);
@Mappings({
@Mapping(source = "mainDO.number", target = "number"),
@Mapping(source = "mainDO.remark", target = "remark"),
@Mapping(source = "mainDO.createTime", target = "createTime"),
@Mapping(source = "mainDO.creator", target = "creator"),
@Mapping(source = "mainDO.updateTime", target = "updateTime"),
@Mapping(source = "mainDO.updater", target = "updater"),
@Mapping(source = "detailDO.remark", target = "remarkDetail"),
@Mapping(source = "detailDO.createTime", target = "createtimeDetail"),
@Mapping(source = "detailDO.creator", target = "creatorDetail"),
@Mapping(source = "detailDO.code", target = "codeDetail"),
@Mapping(source = "detailDO.interfaceType", target = "interfaceTypeDetail"),
})
CustomerreceiptRecordMainExcelVO convert(CustomerreceiptRecordMainDO mainDO, CustomerreceiptRecordDetailDO detailDO);
} }

5
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/mysql/customerreceiptRecord/CustomerreceiptRecordDetailMapper.java

@ -10,6 +10,7 @@ import com.win.framework.mybatis.core.util.QueryWrapperUtils;
import com.win.module.wms.controller.customerreceiptRecord.vo.CustomerreceiptRecordDetailExportReqVO; import com.win.module.wms.controller.customerreceiptRecord.vo.CustomerreceiptRecordDetailExportReqVO;
import com.win.module.wms.controller.customerreceiptRecord.vo.CustomerreceiptRecordDetailPageReqVO; import com.win.module.wms.controller.customerreceiptRecord.vo.CustomerreceiptRecordDetailPageReqVO;
import com.win.module.wms.dal.dataobject.customerreceiptRecord.CustomerreceiptRecordDetailDO; import com.win.module.wms.dal.dataobject.customerreceiptRecord.CustomerreceiptRecordDetailDO;
import com.win.module.wms.dal.dataobject.customerreturnJob.CustomerreturnJobDetailDO;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
/** /**
@ -98,4 +99,8 @@ public interface CustomerreceiptRecordDetailMapper extends BaseMapperX<Customerr
.orderByDesc(CustomerreceiptRecordDetailDO::getId)); .orderByDesc(CustomerreceiptRecordDetailDO::getId));
} }
default List<CustomerreceiptRecordDetailDO> selectList(Long masterId){
return selectList(new LambdaQueryWrapperX<CustomerreceiptRecordDetailDO>()
.eq(CustomerreceiptRecordDetailDO::getMasterId, masterId));
}
} }

2
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/mysql/customerreturnJob/CustomerreturnJobDetailMapper.java

@ -22,7 +22,7 @@ public interface CustomerreturnJobDetailMapper extends BaseMapperX<Customerretur
default PageResult<CustomerreturnJobDetailDO> selectPage(CustomerreturnJobDetailPageReqVO reqVO) { default PageResult<CustomerreturnJobDetailDO> selectPage(CustomerreturnJobDetailPageReqVO reqVO) {
return selectPage(reqVO, new LambdaQueryWrapperX<CustomerreturnJobDetailDO>() return selectPage(reqVO, new LambdaQueryWrapperX<CustomerreturnJobDetailDO>()
.eq(CustomerreturnJobDetailDO::getMasterId,reqVO.getMasterId()) .eqIfPresent(CustomerreturnJobDetailDO::getMasterId,reqVO.getMasterId())
.eqIfPresent(CustomerreturnJobDetailDO::getSoNumber, reqVO.getSoNumber()) .eqIfPresent(CustomerreturnJobDetailDO::getSoNumber, reqVO.getSoNumber())
.eqIfPresent(CustomerreturnJobDetailDO::getSoLine, reqVO.getSoLine()) .eqIfPresent(CustomerreturnJobDetailDO::getSoLine, reqVO.getSoLine())
.eqIfPresent(CustomerreturnJobDetailDO::getPackingNumber, reqVO.getPackingNumber()) .eqIfPresent(CustomerreturnJobDetailDO::getPackingNumber, reqVO.getPackingNumber())

1
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/customerreceiptRecord/CustomerreceiptRecordDetailService.java

@ -79,4 +79,5 @@ public interface CustomerreceiptRecordDetailService {
*/ */
List<CustomerreceiptRecordDetailDO> getCustomerreceiptRecordDetailList(CustomerreceiptRecordDetailExportReqVO exportReqVO); List<CustomerreceiptRecordDetailDO> getCustomerreceiptRecordDetailList(CustomerreceiptRecordDetailExportReqVO exportReqVO);
List<CustomerreceiptRecordDetailDO> selectList(Long masterId);
} }

5
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/customerreceiptRecord/CustomerreceiptRecordDetailServiceImpl.java

@ -5,6 +5,7 @@ import com.win.module.wms.controller.customerreceiptRecord.vo.CustomerreceiptRec
import com.win.module.wms.controller.customerreceiptRecord.vo.CustomerreceiptRecordDetailExportReqVO; import com.win.module.wms.controller.customerreceiptRecord.vo.CustomerreceiptRecordDetailExportReqVO;
import com.win.module.wms.controller.customerreceiptRecord.vo.CustomerreceiptRecordDetailPageReqVO; import com.win.module.wms.controller.customerreceiptRecord.vo.CustomerreceiptRecordDetailPageReqVO;
import com.win.module.wms.controller.customerreceiptRecord.vo.CustomerreceiptRecordDetailUpdateReqVO; import com.win.module.wms.controller.customerreceiptRecord.vo.CustomerreceiptRecordDetailUpdateReqVO;
import com.win.module.wms.dal.dataobject.customerreturnJob.CustomerreturnJobDetailDO;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import javax.annotation.Resource; import javax.annotation.Resource;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
@ -87,4 +88,8 @@ public class CustomerreceiptRecordDetailServiceImpl implements CustomerreceiptRe
return customerreceiptRecordDetailMapper.selectList(exportReqVO); return customerreceiptRecordDetailMapper.selectList(exportReqVO);
} }
@Override
public List<CustomerreceiptRecordDetailDO> selectList(Long masterId) {
return customerreceiptRecordDetailMapper.selectList(masterId);
}
} }

102
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/customerreturnJob/CustomerreturnJobMainServiceImpl.java

@ -276,57 +276,55 @@ public class CustomerreturnJobMainServiceImpl implements CustomerreturnJobMainSe
// } // }
customerreturnJobDetailUpdateReqVOList.forEach(DetailUpdateItem -> { customerreturnJobDetailUpdateReqVOList.forEach(DetailUpdateItem -> {
if (DetailUpdateItem.getId().equals(customerreturnJobDetailDO.getId())) { if (DetailUpdateItem.getId().equals(customerreturnJobDetailDO.getId())) {
List<Map<String,String>> recordList = DetailUpdateItem.getRecordList(); List<Map<String, String>> recordList = DetailUpdateItem.getRecordList();
recordList.forEach(recordListItem -> { CustomerreturnRecordDetailDO customerreturnRecordDetailDO = new CustomerreturnRecordDetailDO();
CustomerreturnRecordDetailDO customerreturnRecordDetailDO = new CustomerreturnRecordDetailDO(); BeanUtils.copyProperties(customerreturnJobDetailDO, customerreturnRecordDetailDO);
BeanUtils.copyProperties(customerreturnJobDetailDO, customerreturnRecordDetailDO); customerreturnRecordDetailDO.setMasterId(customerreturnRecordMainDO.getId().toString());
customerreturnRecordDetailDO.setMasterId(customerreturnRecordMainDO.getId().toString()); customerreturnRecordDetailDO.setNumber(number);
customerreturnRecordDetailDO.setNumber(number); customerreturnRecordDetailDO.setJobDetailId(String.valueOf(customerreturnJobDetailDO.getId()));
customerreturnRecordDetailDO.setJobDetailId(String.valueOf(customerreturnJobDetailDO.getId())); customerreturnRecordDetailDO.setFromBatch(customerreturnJobDetailDO.getBatch());
customerreturnRecordDetailDO.setFromBatch(customerreturnJobDetailDO.getBatch()); customerreturnRecordDetailDO.setQty(customerreturnJobDetailDO.getQty());
customerreturnRecordDetailDO.setQty(new BigDecimal(recordListItem.get("handleQty").toString())); customerreturnRecordDetailDO.setToBatch(customerreturnJobDetailDO.getBatch());
customerreturnRecordDetailDO.setToBatch(recordListItem.get("toBatch")==null?"":recordListItem.get("toBatch")); customerreturnRecordDetailDO.setToPackingNumber(customerreturnJobDetailDO.getPackingNumber());
customerreturnRecordDetailDO.setToPackingNumber(recordListItem.get("toPackingNumber")==null?"":recordListItem.get("toPackingNumber")); customerreturnRecordDetailDO.setToContainerNumber(customerreturnJobDetailDO.getContainerNumber());
customerreturnRecordDetailDO.setToContainerNumber(recordListItem.get("toContainerNumber")==null?"":recordListItem.get("toContainerNumber")); customerreturnRecordDetailDO.setInventoryStatus(customerreturnJobDetailDO.getInventoryStatus());
customerreturnRecordDetailDO.setInventoryStatus(recordListItem.get("toInventoryStatus").toString()); customerreturnRecordDetailDO.setFromPackingNumber(customerreturnJobDetailDO.getPackingNumber());
customerreturnRecordDetailDO.setFromPackingNumber(customerreturnJobDetailDO.getPackingNumber()); customerreturnRecordDetailDO.setFromContainerNumber(customerreturnJobDetailDO.getContainerNumber());
customerreturnRecordDetailDO.setFromContainerNumber(customerreturnJobDetailDO.getContainerNumber()); customerreturnRecordDetailDO.setFromLocationCode(customerreturnJobDetailDO.getFromLocationCode());
customerreturnRecordDetailDO.setFromLocationCode(customerreturnJobDetailDO.getFromLocationCode()); LocationDO locationDOFrom = locationService.selectLocation(customerreturnJobDetailDO.getFromLocationCode());
LocationDO locationDOFrom = locationService.selectLocation(customerreturnJobDetailDO.getFromLocationCode()); if (locationDOFrom != null) {
if(locationDOFrom != null){ customerreturnRecordDetailDO.setFromAreaCode(locationDOFrom.getAreaCode());
customerreturnRecordDetailDO.setFromAreaCode(locationDOFrom.getAreaCode()); customerreturnRecordDetailDO.setFromLocationGroupCode(locationDOFrom.getLocationGroupCode());
customerreturnRecordDetailDO.setFromLocationGroupCode(locationDOFrom.getLocationGroupCode()); }
} customerreturnRecordDetailDO.setToLocationCode(customerreturnJobDetailDO.getToLocationCode());
customerreturnRecordDetailDO.setToLocationCode(recordListItem.get("toLocationCode").toString()); LocationDO locationDO = locationService.selectLocation(customerreturnJobDetailDO.getToLocationCode());
LocationDO locationDO = locationService.selectLocation(recordListItem.get("toLocationCode").toString()); if (locationDO != null) {
if(locationDO != null){ customerreturnRecordDetailDO.setToAreaCode(locationDO.getAreaCode());
customerreturnRecordDetailDO.setToAreaCode(locationDO.getAreaCode()); customerreturnRecordDetailDO.setToLocationGroupCode(locationDO.getLocationGroupCode());
customerreturnRecordDetailDO.setToLocationGroupCode(locationDO.getLocationGroupCode()); }
} customerreturnRecordDetailDO.setId(null);
customerreturnRecordDetailDO.setId(null); customerreturnRecordDetailDO.setCreator(null);
customerreturnRecordDetailDO.setCreator(null); customerreturnRecordDetailDO.setCreateTime(null);
customerreturnRecordDetailDO.setCreateTime(null); customerreturnRecordDetailDO.setUpdater(null);
customerreturnRecordDetailDO.setUpdater(null); customerreturnRecordDetailDO.setUpdateTime(null);
customerreturnRecordDetailDO.setUpdateTime(null); customerreturnRecordDetailDOList.add(customerreturnRecordDetailDO);
customerreturnRecordDetailDOList.add(customerreturnRecordDetailDO); //添加库存事务list
//添加库存事务list TransactionCreateReqVO transactionCreateReqVO = new TransactionCreateReqVO();
TransactionCreateReqVO transactionCreateReqVO = new TransactionCreateReqVO(); BeanUtils.copyProperties(customerreturnRecordDetailDO, transactionCreateReqVO);
BeanUtils.copyProperties(customerreturnRecordDetailDO, transactionCreateReqVO); //增加业务类型
//增加业务类型 transactionCreateReqVO.setBusinessType(businesstypeDO.getCode());
transactionCreateReqVO.setBusinessType(businesstypeDO.getCode()); TransactiontypeDO transactiontypeDO = jobUtils.selectDocumentFromTransactionType(businesstypeDO.getInTransactionType());
TransactiontypeDO transactiontypeDO = jobUtils.selectDocumentFromTransactionType(businesstypeDO.getInTransactionType()); transactionCreateReqVO.setInventoryAction(transactiontypeDO.getInventoryAction());
transactionCreateReqVO.setInventoryAction(transactiontypeDO.getInventoryAction()); transactionCreateReqVO.setTransactionType(transactiontypeDO.getCode());
transactionCreateReqVO.setTransactionType(transactiontypeDO.getCode()); transactionCreateReqVO.setBusinessType(customerreturnRecordMainDO.getBusinessType());
transactionCreateReqVO.setBusinessType(customerreturnRecordMainDO.getBusinessType()); transactionCreateReqVO.setLocationCode(customerreturnJobDetailDO.getFromLocationCode());
transactionCreateReqVO.setLocationCode(customerreturnJobDetailDO.getFromLocationCode()); transactionCreateReqVO.setOwnerCode(customerreturnRecordDetailDO.getFromOwnerCode());
transactionCreateReqVO.setOwnerCode(customerreturnRecordDetailDO.getFromOwnerCode()); transactionCreateReqVO.setRecordNumber(number);
transactionCreateReqVO.setRecordNumber(number); transactionCreateReqVO.setBatch(customerreturnRecordDetailDO.getFromBatch());
transactionCreateReqVO.setBatch(customerreturnRecordDetailDO.getFromBatch()); transactionCreateReqVO.setPackingNumber(customerreturnRecordDetailDO.getFromPackingNumber());
transactionCreateReqVO.setPackingNumber(customerreturnRecordDetailDO.getFromPackingNumber()); transactionCreateReqVO.setWorker(String.valueOf(userApi.getUser(getLoginUserId()).getId()));
transactionCreateReqVO.setWorker(String.valueOf(userApi.getUser(getLoginUserId()).getId())); transactionCreateReqVO.setId(null);
transactionCreateReqVO.setId(null); transactionCreateReqVOList.add(transactionCreateReqVO);
transactionCreateReqVOList.add(transactionCreateReqVO);
});
} }
}); });
} }
@ -337,7 +335,7 @@ public class CustomerreturnJobMainServiceImpl implements CustomerreturnJobMainSe
Long count = customerreturnJobMainMapper.selectListCount(typeList, customerreturnJobMainDO.getRequestNumber()); Long count = customerreturnJobMainMapper.selectListCount(typeList, customerreturnJobMainDO.getRequestNumber());
CustomerreturnRequestMainDO customerreturnRequestMainDO = customerreturnRequestMainMapper.selectByNumber(customerreturnJobMainDO.getRequestNumber()); CustomerreturnRequestMainDO customerreturnRequestMainDO = customerreturnRequestMainMapper.selectByNumber(customerreturnJobMainDO.getRequestNumber());
//申请单下所有任务全部完成 //申请单下所有任务全部完成
if(count == 0) { if (count == 0) {
customerreturnRequestMainDO.setStatus(RequestStatusEnum.COMPLETED.getCode()); customerreturnRequestMainDO.setStatus(RequestStatusEnum.COMPLETED.getCode());
customerreturnRequestMainMapper.updateById(customerreturnRequestMainDO); customerreturnRequestMainMapper.updateById(customerreturnRequestMainDO);
} else if(customerreturnRequestMainDO.getStatus().equals(RequestStatusEnum.HANDLING.getCode())) {//部分完成 } else if(customerreturnRequestMainDO.getStatus().equals(RequestStatusEnum.HANDLING.getCode())) {//部分完成

Loading…
Cancel
Save