diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/issueJob/IssueJobMainController.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/issueJob/IssueJobMainController.java index cc1e1801..4ead9632 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/issueJob/IssueJobMainController.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/issueJob/IssueJobMainController.java @@ -122,6 +122,7 @@ public class IssueJobMainController { IssueJobMainExcelVO vo = IssueJobMainConvert.INSTANCE.convert(mainDO, detailDO); AdminUserRespDTO user = userApi.getUser(Long.valueOf(mainDO.getCreator())); vo.setCreator(user.getNickname()); + vo.setUpdater(user.getNickname()); resultList.add(vo); } } diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/onlinesettlementRecord/OnlinesettlementRecordMainController.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/onlinesettlementRecord/OnlinesettlementRecordMainController.java index 2b07915e..835cf683 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/onlinesettlementRecord/OnlinesettlementRecordMainController.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/onlinesettlementRecord/OnlinesettlementRecordMainController.java @@ -1,8 +1,12 @@ package com.win.module.wms.controller.onlinesettlementRecord; 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.dto.AdminUserRespDTO; +import com.win.module.wms.dal.dataobject.onlinesettlementRecord.OnlinesettlementRecordDetailDO; +import com.win.module.wms.enums.DictTypeConstants; +import com.win.module.wms.service.onlinesettlementRecord.OnlinesettlementRecordDetailService; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; import org.springframework.validation.annotation.Validated; @@ -36,36 +40,14 @@ import com.win.module.wms.service.onlinesettlementRecord.OnlinesettlementRecordM @Validated public class OnlinesettlementRecordMainController { + @Resource + private OnlinesettlementRecordDetailService onlinesettlementRecordDetailService; @Resource private OnlinesettlementRecordMainService onlinesettlementRecordMainService; @Resource private AdminUserApi userApi; - @PostMapping("/create") - @Operation(summary = "创建上线结算记录主") - @PreAuthorize("@ss.hasPermission('wms:onlinesettlement-record-main:create')") - public CommonResult createOnlinesettlementRecordMain(@Valid @RequestBody OnlinesettlementRecordMainCreateReqVO createReqVO) { - return success(onlinesettlementRecordMainService.createOnlinesettlementRecordMain(createReqVO)); - } - - @PutMapping("/update") - @Operation(summary = "更新上线结算记录主") - @PreAuthorize("@ss.hasPermission('wms:onlinesettlement-record-main:update')") - public CommonResult updateOnlinesettlementRecordMain(@Valid @RequestBody OnlinesettlementRecordMainUpdateReqVO updateReqVO) { - onlinesettlementRecordMainService.updateOnlinesettlementRecordMain(updateReqVO); - return success(true); - } - - @DeleteMapping("/delete") - @Operation(summary = "删除上线结算记录主") - @Parameter(name = "id", description = "编号", required = true) - @PreAuthorize("@ss.hasPermission('wms:onlinesettlement-record-main:delete')") - public CommonResult deleteOnlinesettlementRecordMain(@RequestParam("id") Long id) { - onlinesettlementRecordMainService.deleteOnlinesettlementRecordMain(id); - return success(true); - } - @GetMapping("/get") @Operation(summary = "获得上线结算记录主") @Parameter(name = "id", description = "编号", required = true, example = "1024") @@ -105,22 +87,52 @@ public class OnlinesettlementRecordMainController { } return success(result); } - + + private List getExcelVo(List list, Map mapDropDown) { + String[] trueFalse = DictFrameworkUtils.dictTypeDictDataValue(DictTypeConstants.TRUE_FALSE); + mapDropDown.put(15, trueFalse); + String[] uom = DictFrameworkUtils.dictTypeDictDataValue(DictTypeConstants.UOM); + mapDropDown.put(28, uom); + List resultList = new ArrayList<>(); + // 导出 + for(OnlinesettlementRecordMainDO mainDO : list) { + List subList = onlinesettlementRecordDetailService.selectList(mainDO.getId()); + for(OnlinesettlementRecordDetailDO detailDO : subList) { + OnlinesettlementRecordMainExcelVO vo = OnlinesettlementRecordMainConvert.INSTANCE.convert(mainDO, detailDO); + AdminUserRespDTO user = userApi.getUser(Long.valueOf(mainDO.getCreator())); + vo.setCreator(user.getNickname()); + vo.setUpdater(user.getNickname()); + resultList.add(vo); + } + } + return resultList; + } + @GetMapping("/export-excel") - @Operation(summary = "导出上线结算记录主 Excel") + @Operation(summary = "导出上线结算记录 Excel") @PreAuthorize("@ss.hasPermission('wms:onlinesettlement-record-main:export')") @OperateLog(type = EXPORT) public void exportOnlinesettlementRecordMainExcel(@Valid OnlinesettlementRecordMainExportReqVO exportReqVO, HttpServletResponse response) throws IOException { List list = onlinesettlementRecordMainService.getOnlinesettlementRecordMainList(exportReqVO); + //组装vo + Map mapDropDown = new HashMap<>(); + List resultList = this.getExcelVo(list, mapDropDown); // 导出 Excel - List datas = OnlinesettlementRecordMainConvert.INSTANCE.convertList02(list); - for(OnlinesettlementRecordMainExcelVO vo : datas) { - AdminUserRespDTO user = userApi.getUser(Long.valueOf(vo.getCreator())); - //后端创建个字段作为前端展示的虚拟字段 - vo.setCreator(user.getNickname()); - } - ExcelUtils.write(response, "上线结算记录主.xls", "数据", OnlinesettlementRecordMainExcelVO.class, datas); + ExcelUtils.write(response, "上线结算记录.xlsx", "上线结算记录", OnlinesettlementRecordMainExcelVO.class, resultList, mapDropDown); + } + + @PostMapping("/export-excel-senior") + @Operation(summary = "导出上线结算记录 Excel") + @PreAuthorize("@ss.hasPermission('wms:onlinesettlement-record-main:export')") + @OperateLog(type = EXPORT) + public void exportOnlinesettlementRecordMainSeniorExcel(@Valid @RequestBody CustomConditions conditions, HttpServletResponse response) throws IOException { + List list = onlinesettlementRecordMainService.getOnlinesettlementRecordMainList(conditions); + //组装vo + Map mapDropDown = new HashMap<>(); + List resultList = this.getExcelVo(list, mapDropDown); + // 导出 Excel + ExcelUtils.write(response, "上线结算记录.xlsx", "上线结算记录", OnlinesettlementRecordMainExcelVO.class, resultList, mapDropDown); } } diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/onlinesettlementRecord/vo/OnlinesettlementRecordDetailPageReqVO.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/onlinesettlementRecord/vo/OnlinesettlementRecordDetailPageReqVO.java index 4a21f02a..947a19b4 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/onlinesettlementRecord/vo/OnlinesettlementRecordDetailPageReqVO.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/onlinesettlementRecord/vo/OnlinesettlementRecordDetailPageReqVO.java @@ -75,4 +75,9 @@ public class OnlinesettlementRecordDetailPageReqVO extends PageParam { @Schema(description = "任务明细ID") private String jobDetailId; + @Schema(description = "主表ID") + private String masterId; + + + } diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/onlinesettlementRecord/vo/OnlinesettlementRecordMainExcelVO.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/onlinesettlementRecord/vo/OnlinesettlementRecordMainExcelVO.java index 35aa609e..7ff18f47 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/onlinesettlementRecord/vo/OnlinesettlementRecordMainExcelVO.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/onlinesettlementRecord/vo/OnlinesettlementRecordMainExcelVO.java @@ -1,5 +1,6 @@ package com.win.module.wms.controller.onlinesettlementRecord.vo; +import com.win.module.wms.enums.DictTypeConstants; import io.swagger.v3.oas.annotations.media.Schema; import lombok.*; import java.util.*; @@ -52,10 +53,6 @@ public class OnlinesettlementRecordMainExcelVO { @ExcelProperty("部门") private String departmentCode; - @ExcelProperty(value = "接口类型", converter = DictConvert.class) - @DictFormat("interface_type") // TODO 代码优化:建议设置到对应的 XXXDictTypeConstants 枚举类中 - private String interfaceType; - @ExcelProperty("单据号") private String number; @@ -71,7 +68,60 @@ public class OnlinesettlementRecordMainExcelVO { @ExcelProperty("创建者Id") private String creator; - @ExcelProperty("是否可用") + @ExcelProperty("最后更新时间") + private LocalDateTime updateTime; + + @ExcelProperty("最后更新者用户名") + private String updater; + + @ExcelProperty(value = "是否可用", converter = DictConvert.class) + @DictFormat(DictTypeConstants.TRUE_FALSE) private String available; + @ExcelProperty("包装号") + private String packingNumber; + + @ExcelProperty("器具号") + private String containerNumber; + + @ExcelProperty("批次") + private String batch; + + @ExcelProperty("库位代码") + private String locationCode; + + @ExcelProperty("库位组代码") + private String locationGroupCode; + + @ExcelProperty("库区代码") + private String areaCode; + + @ExcelProperty("物品代码") + private String itemCode; + + @ExcelProperty("物品名称") + private String itemName; + + @ExcelProperty("物品描述1") + private String itemDesc1; + + @ExcelProperty("物品描述2") + private String itemDesc2; + + @ExcelProperty("项目代码") + private String projectCode; + + @ExcelProperty("数量") + private String qty; + + @ExcelProperty(value = "计量单位", converter = DictConvert.class) + @DictFormat(DictTypeConstants.UOM) + private String uom; + + @ExcelProperty("供应商代码") + private String supplierCode; + + @ExcelProperty("供应商物料代码") + private String supplierItemCode; + } diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/convert/onlinesettlementRecord/OnlinesettlementRecordMainConvert.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/convert/onlinesettlementRecord/OnlinesettlementRecordMainConvert.java index 129f765c..8f7d63ad 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/convert/onlinesettlementRecord/OnlinesettlementRecordMainConvert.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/convert/onlinesettlementRecord/OnlinesettlementRecordMainConvert.java @@ -8,7 +8,10 @@ import com.win.module.wms.controller.onlinesettlementRecord.vo.OnlinesettlementR import com.win.module.wms.controller.onlinesettlementRecord.vo.OnlinesettlementRecordMainExcelVO; import com.win.module.wms.controller.onlinesettlementRecord.vo.OnlinesettlementRecordMainRespVO; import com.win.module.wms.controller.onlinesettlementRecord.vo.OnlinesettlementRecordMainUpdateReqVO; +import com.win.module.wms.dal.dataobject.onlinesettlementRecord.OnlinesettlementRecordDetailDO; import org.mapstruct.Mapper; +import org.mapstruct.Mapping; +import org.mapstruct.Mappings; import org.mapstruct.factory.Mappers; import com.win.module.wms.dal.dataobject.onlinesettlementRecord.OnlinesettlementRecordMainDO; @@ -34,4 +37,13 @@ public interface OnlinesettlementRecordMainConvert { List convertList02(List 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"), + }) + OnlinesettlementRecordMainExcelVO convert(OnlinesettlementRecordMainDO mainDO, OnlinesettlementRecordDetailDO detailDO); } diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/dataobject/onlinesettlementRecord/OnlinesettlementRecordDetailDO.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/dataobject/onlinesettlementRecord/OnlinesettlementRecordDetailDO.java index c122e135..646ab805 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/dataobject/onlinesettlementRecord/OnlinesettlementRecordDetailDO.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/dataobject/onlinesettlementRecord/OnlinesettlementRecordDetailDO.java @@ -107,4 +107,14 @@ public class OnlinesettlementRecordDetailDO extends BaseDO { */ private String jobDetailId; + /** + * 供应商代码 + */ + private String supplierCode; + + /** + * 供应商物料代码 + */ + private String supplierItemCode; + } diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/mysql/onlinesettlementRecord/OnlinesettlementRecordDetailMapper.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/mysql/onlinesettlementRecord/OnlinesettlementRecordDetailMapper.java index 0c1d5edb..0222dd7c 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/mysql/onlinesettlementRecord/OnlinesettlementRecordDetailMapper.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/mysql/onlinesettlementRecord/OnlinesettlementRecordDetailMapper.java @@ -9,6 +9,7 @@ import com.win.framework.mybatis.core.mapper.BaseMapperX; import com.win.framework.mybatis.core.util.QueryWrapperUtils; import com.win.module.wms.controller.onlinesettlementRecord.vo.OnlinesettlementRecordDetailExportReqVO; import com.win.module.wms.controller.onlinesettlementRecord.vo.OnlinesettlementRecordDetailPageReqVO; +import com.win.module.wms.dal.dataobject.issueJob.IssueJobDetailDO; import com.win.module.wms.dal.dataobject.onlinesettlementRecord.OnlinesettlementRecordDetailDO; import org.apache.ibatis.annotations.Mapper; @@ -22,6 +23,7 @@ public interface OnlinesettlementRecordDetailMapper extends BaseMapperX selectPage(OnlinesettlementRecordDetailPageReqVO reqVO) { return selectPage(reqVO, new LambdaQueryWrapperX() + .eqIfPresent(OnlinesettlementRecordDetailDO::getMasterId, reqVO.getMasterId()) .eqIfPresent(OnlinesettlementRecordDetailDO::getPackingNumber, reqVO.getPackingNumber()) .eqIfPresent(OnlinesettlementRecordDetailDO::getContainerNumber, reqVO.getContainerNumber()) .eqIfPresent(OnlinesettlementRecordDetailDO::getBatch, reqVO.getBatch()) @@ -70,4 +72,8 @@ public interface OnlinesettlementRecordDetailMapper extends BaseMapperX selectList(Long masterId) { + return selectList(new LambdaQueryWrapperX() + .eq(OnlinesettlementRecordDetailDO::getMasterId, masterId)); + } } diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/mysql/onlinesettlementRecord/OnlinesettlementRecordMainMapper.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/mysql/onlinesettlementRecord/OnlinesettlementRecordMainMapper.java index efc7bd7b..9baee227 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/mysql/onlinesettlementRecord/OnlinesettlementRecordMainMapper.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/mysql/onlinesettlementRecord/OnlinesettlementRecordMainMapper.java @@ -66,4 +66,7 @@ public interface OnlinesettlementRecordMainMapper extends BaseMapperX selectSeniorList(CustomConditions conditions) { + return selectList(QueryWrapperUtils.structure(conditions)); + } } diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/onlinesettlementRecord/OnlinesettlementRecordDetailService.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/onlinesettlementRecord/OnlinesettlementRecordDetailService.java index f7080c15..339f2aab 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/onlinesettlementRecord/OnlinesettlementRecordDetailService.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/onlinesettlementRecord/OnlinesettlementRecordDetailService.java @@ -80,4 +80,5 @@ public interface OnlinesettlementRecordDetailService { */ List getOnlinesettlementRecordDetailList(OnlinesettlementRecordDetailExportReqVO exportReqVO); + List selectList(Long id); } diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/onlinesettlementRecord/OnlinesettlementRecordDetailServiceImpl.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/onlinesettlementRecord/OnlinesettlementRecordDetailServiceImpl.java index 6ce795c1..804620e6 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/onlinesettlementRecord/OnlinesettlementRecordDetailServiceImpl.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/onlinesettlementRecord/OnlinesettlementRecordDetailServiceImpl.java @@ -87,4 +87,9 @@ public class OnlinesettlementRecordDetailServiceImpl implements Onlinesettlement return onlinesettlementRecordDetailMapper.selectList(exportReqVO); } + @Override + public List selectList(Long masterId) { + return onlinesettlementRecordDetailMapper.selectList(masterId); + } + } diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/onlinesettlementRecord/OnlinesettlementRecordMainService.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/onlinesettlementRecord/OnlinesettlementRecordMainService.java index b8c1587a..8a3d7ae7 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/onlinesettlementRecord/OnlinesettlementRecordMainService.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/onlinesettlementRecord/OnlinesettlementRecordMainService.java @@ -8,6 +8,7 @@ import com.win.module.wms.controller.onlinesettlementRecord.vo.OnlinesettlementR import com.win.module.wms.controller.onlinesettlementRecord.vo.OnlinesettlementRecordMainExportReqVO; import com.win.module.wms.controller.onlinesettlementRecord.vo.OnlinesettlementRecordMainPageReqVO; import com.win.module.wms.controller.onlinesettlementRecord.vo.OnlinesettlementRecordMainUpdateReqVO; +import com.win.module.wms.dal.dataobject.issueJob.IssueJobMainDO; import com.win.module.wms.dal.dataobject.onlinesettlementRecord.OnlinesettlementRecordMainDO; import com.win.framework.common.pojo.PageResult; @@ -56,6 +57,8 @@ public interface OnlinesettlementRecordMainService { */ List getOnlinesettlementRecordMainList(Collection ids); + List getOnlinesettlementRecordMainList(CustomConditions conditions); + /** * 获得用高级搜索上线结算记录主分页列表 * diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/onlinesettlementRecord/OnlinesettlementRecordMainServiceImpl.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/onlinesettlementRecord/OnlinesettlementRecordMainServiceImpl.java index 4c3ea744..84134ba2 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/onlinesettlementRecord/OnlinesettlementRecordMainServiceImpl.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/onlinesettlementRecord/OnlinesettlementRecordMainServiceImpl.java @@ -74,6 +74,11 @@ public class OnlinesettlementRecordMainServiceImpl implements OnlinesettlementRe return onlinesettlementRecordMainMapper.selectBatchIds(ids); } + @Override + public List getOnlinesettlementRecordMainList(CustomConditions conditions) { + return onlinesettlementRecordMainMapper.selectSeniorList(conditions); + } + @Override public PageResult getOnlinesettlementRecordMainPage(OnlinesettlementRecordMainPageReqVO pageReqVO) { return onlinesettlementRecordMainMapper.selectPage(pageReqVO);