Browse Source

物品清单管理导出

master
张立 2 years ago
parent
commit
37ee0e8217
  1. 42
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/bom/BomController.java
  2. 11
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/itempackaging/ItempackagingController.java
  3. 4
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/mysql/bom/BomMapper.java
  4. 2
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/bom/BomService.java
  5. 5
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/bom/BomServiceImpl.java

42
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/bom/BomController.java

@ -9,10 +9,13 @@ import com.win.framework.operatelog.core.annotations.OperateLog;
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.bom.vo.*; import com.win.module.wms.controller.bom.vo.*;
import com.win.module.wms.controller.itembasic.vo.ItembasicExcelVO;
import com.win.module.wms.controller.itempackaging.vo.ItempackagingRespVO; import com.win.module.wms.controller.itempackaging.vo.ItempackagingRespVO;
import com.win.module.wms.convert.bom.BomConvert; import com.win.module.wms.convert.bom.BomConvert;
import com.win.module.wms.convert.itembasic.ItembasicConvert;
import com.win.module.wms.convert.itempackaging.ItempackagingConvert; import com.win.module.wms.convert.itempackaging.ItempackagingConvert;
import com.win.module.wms.dal.dataobject.bom.BomDO; import com.win.module.wms.dal.dataobject.bom.BomDO;
import com.win.module.wms.dal.dataobject.itembasic.ItembasicDO;
import com.win.module.wms.enums.DictTypeConstants; import com.win.module.wms.enums.DictTypeConstants;
import com.win.module.wms.service.bom.BomService; import com.win.module.wms.service.bom.BomService;
import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Operation;
@ -80,14 +83,6 @@ public class BomController {
return success(BomConvert.INSTANCE.convert(bom)); return success(BomConvert.INSTANCE.convert(bom));
} }
@GetMapping("/list")
@Operation(summary = "获得物料清单列表")
@Parameter(name = "ids", description = "编号列表", required = true, example = "1024,2048")
@PreAuthorize("@ss.hasPermission('wms:bom:query')")
public CommonResult<List<BomRespVO>> getBomList(@RequestParam("ids") Collection<Long> ids) {
List<BomDO> list = bomService.getBomList(ids);
return success(BomConvert.INSTANCE.convertList(list));
}
@GetMapping("/page") @GetMapping("/page")
@Operation(summary = "获得物料清单分页") @Operation(summary = "获得物料清单分页")
@ -125,21 +120,34 @@ public class BomController {
public void exportBomExcel(@Valid BomExportReqVO exportReqVO, public void exportBomExcel(@Valid BomExportReqVO exportReqVO,
HttpServletResponse response) throws IOException { HttpServletResponse response) throws IOException {
List<BomDO> list = bomService.getBomList(exportReqVO); List<BomDO> list = bomService.getBomList(exportReqVO);
// 导出 Excel
List<BomExcelVO> datas = BomConvert.INSTANCE.convertList02(list);
for(BomExcelVO vo : datas) {
AdminUserRespDTO user = userApi.getUser(Long.valueOf(vo.getCreator()));
//后端创建个字段作为前端展示的虚拟字段
vo.setCreator(user.getNickname());
}
Map<Integer, String[]> mapDropDown = new HashMap<>(); Map<Integer, String[]> mapDropDown = new HashMap<>();
List<BomExcelVO> resultList = this.getExcelVo(list, mapDropDown);
ExcelUtils.write(response, "物品基本信息.xlsx", "数据", BomExcelVO.class, resultList, mapDropDown);
}
@PostMapping("/export-excel-senior")
@Operation(summary = "导出物料清单 Excel")
@PreAuthorize("@ss.hasPermission('wms:bom:export')")
@OperateLog(type = EXPORT)
public void exportBomExcel(@Valid @RequestBody CustomConditions conditions, HttpServletResponse response) throws IOException {
List<BomDO> list = bomService.getBomList(conditions);
Map<Integer, String[]> mapDropDown = new HashMap<>();
List<BomExcelVO> resultList = this.getExcelVo(list, mapDropDown);
ExcelUtils.write(response, "物料清单.xlsx", "数据", BomExcelVO.class, resultList, mapDropDown);
}
private List<BomExcelVO> getExcelVo(List<BomDO> list, Map<Integer, String[]> mapDropDown) {
String[] componentUom = DictFrameworkUtils.dictTypeDictDataValue(DictTypeConstants.UOM); String[] componentUom = DictFrameworkUtils.dictTypeDictDataValue(DictTypeConstants.UOM);
mapDropDown.put(2, componentUom); mapDropDown.put(2, componentUom);
String[] available = DictFrameworkUtils.dictTypeDictDataValue(DictTypeConstants.TRUE_FALSE); String[] available = DictFrameworkUtils.dictTypeDictDataValue(DictTypeConstants.TRUE_FALSE);
mapDropDown.put(7, available); mapDropDown.put(7, available);
ExcelUtils.write(response, "物料清单.xls", "数据", BomExcelVO.class, datas,mapDropDown); // 导出 Excel
List<BomExcelVO> resultList = BomConvert.INSTANCE.convertList02(list);
for(BomExcelVO vo : resultList) {
AdminUserRespDTO user = userApi.getUser(Long.valueOf(vo.getCreator()));
//后端创建个字段作为前端展示的虚拟字段
vo.setCreator(user.getNickname());
}
return resultList;
} }
@GetMapping("/get-import-template") @GetMapping("/get-import-template")
@Operation(summary = "获得导入物料清单模板") @Operation(summary = "获得导入物料清单模板")
public void importTemplate(HttpServletResponse response) throws IOException { public void importTemplate(HttpServletResponse response) throws IOException {

11
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/itempackaging/ItempackagingController.java

@ -124,16 +124,9 @@ public class ItempackagingController {
public void exportItempackagingExcel(@Valid ItempackagingExportReqVO exportReqVO, public void exportItempackagingExcel(@Valid ItempackagingExportReqVO exportReqVO,
HttpServletResponse response) throws IOException { HttpServletResponse response) throws IOException {
List<ItempackagingDO> list = itempackagingService.getItempackagingList(exportReqVO); List<ItempackagingDO> list = itempackagingService.getItempackagingList(exportReqVO);
// 导出 Excel
List<ItempackagingExcelVO> datas = ItempackagingConvert.INSTANCE.convertList02(list);
for(ItempackagingExcelVO vo : datas) {
AdminUserRespDTO user = userApi.getUser(Long.valueOf(vo.getCreator()));
//后端创建个字段作为前端展示的虚拟字段
vo.setCreator(user.getNickname());
}
Map<Integer, String[]> mapDropDown = new HashMap<>(); Map<Integer, String[]> mapDropDown = new HashMap<>();
List<ItempackagingExcelVO> resultList = this.getExcelVo(list, mapDropDown);
ExcelUtils.write(response, "物品包装信息 .xls", "数据", ItempackagingExcelVO.class, datas,mapDropDown); ExcelUtils.write(response, "物品基本信息.xlsx", "数据", ItempackagingExcelVO.class, resultList, mapDropDown);
} }
@PostMapping("/export-excel-senior") @PostMapping("/export-excel-senior")
@Operation(summary = "导出物品包装信息 Excel") @Operation(summary = "导出物品包装信息 Excel")

4
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/mysql/bom/BomMapper.java

@ -62,5 +62,7 @@ public interface BomMapper extends BaseMapperX<BomDO> {
.eqIfPresent(BomDO::getCreator, reqVO.getCreator()) .eqIfPresent(BomDO::getCreator, reqVO.getCreator())
.orderByDesc(BomDO::getId)); .orderByDesc(BomDO::getId));
} }
default List<BomDO> selectSeniorList(CustomConditions conditions) {
return selectList(QueryWrapperUtils.structure(conditions));
}
} }

2
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/bom/BomService.java

@ -53,7 +53,7 @@ public interface BomService {
* @param ids 编号 * @param ids 编号
* @return 物料清单列表 * @return 物料清单列表
*/ */
List<BomDO> getBomList(Collection<Long> ids); List<BomDO> getBomList(CustomConditions conditions);
/** /**
* 获得物料清单分页 * 获得物料清单分页

5
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/bom/BomServiceImpl.java

@ -73,10 +73,11 @@ public class BomServiceImpl implements BomService {
} }
@Override @Override
public List<BomDO> getBomList(Collection<Long> ids) { public List<BomDO> getBomList(CustomConditions conditions) {
return bomMapper.selectBatchIds(ids); return bomMapper.selectSeniorList(conditions);
} }
@Override @Override
public PageResult<BomDO> getBomPage(BomPageReqVO pageReqVO) { public PageResult<BomDO> getBomPage(BomPageReqVO pageReqVO) {
return bomMapper.selectPage(pageReqVO); return bomMapper.selectPage(pageReqVO);

Loading…
Cancel
Save