Browse Source

生产线物料关系管理导出

master
张立 2 years ago
parent
commit
944f5a3211
  1. 33
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/productionlineitem/ProductionlineitemController.java
  2. 5
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/mysql/productionlineitem/ProductionlineitemMapper.java
  3. 2
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/productionlineitem/ProductionlineitemService.java
  4. 4
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/productionlineitem/ProductionlineitemServiceImpl.java

33
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/productionlineitem/ProductionlineitemController.java

@ -8,8 +8,11 @@ import com.win.framework.excel.core.util.ExcelUtils;
import com.win.framework.operatelog.core.annotations.OperateLog;
import com.win.module.system.api.user.AdminUserApi;
import com.win.module.system.api.user.dto.AdminUserRespDTO;
import com.win.module.wms.controller.itembasic.vo.ItembasicExcelVO;
import com.win.module.wms.controller.productionlineitem.vo.*;
import com.win.module.wms.convert.itembasic.ItembasicConvert;
import com.win.module.wms.convert.productionlineitem.ProductionlineitemConvert;
import com.win.module.wms.dal.dataobject.itembasic.ItembasicDO;
import com.win.module.wms.dal.dataobject.productionlineitem.ProductionlineitemDO;
import com.win.module.wms.enums.DictTypeConstants;
import com.win.module.wms.service.productionlineitem.ProductionlineitemService;
@ -78,15 +81,6 @@ public class ProductionlineitemController {
return success(ProductionlineitemConvert.INSTANCE.convert(productionlineitem));
}
@GetMapping("/list")
@Operation(summary = "获得生产线物料关系列表")
@Parameter(name = "ids", description = "编号列表", required = true, example = "1024,2048")
@PreAuthorize("@ss.hasPermission('wms:productionlineitem:query')")
public CommonResult<List<ProductionlineitemRespVO>> getProductionlineitemList(@RequestParam("ids") Collection<Long> ids) {
List<ProductionlineitemDO> list = productionlineitemService.getProductionlineitemList(ids);
return success(ProductionlineitemConvert.INSTANCE.convertList(list));
}
@GetMapping("/page")
@Operation(summary = "获得生产线物料关系分页")
@PreAuthorize("@ss.hasPermission('wms:productionlineitem:query')")
@ -102,14 +96,29 @@ public class ProductionlineitemController {
public void exportProductionlineitemExcel(@Valid ProductionlineitemExportReqVO exportReqVO,
HttpServletResponse response) throws IOException {
List<ProductionlineitemDO> list = productionlineitemService.getProductionlineitemList(exportReqVO);
Map<Integer, String[]> mapDropDown = new HashMap<>();
List<ProductionlineitemExcelVO> resultList = this.getExcelVo(list, mapDropDown);
ExcelUtils.write(response, "生产线物料关系.xlsx", "数据", ProductionlineitemExcelVO.class, resultList, mapDropDown);
}
@PostMapping("/export-excel-senior")
@Operation(summary = "导出生产线物料关系 Excel")
@PreAuthorize("@ss.hasPermission('wms:productionlineitem:export')")
@OperateLog(type = EXPORT)
public void exportProductionlineitemExcel(@Valid @RequestBody CustomConditions conditions, HttpServletResponse response) throws IOException {
List<ProductionlineitemDO> list = productionlineitemService.getProductionlineitemList(conditions);
Map<Integer, String[]> mapDropDown = new HashMap<>();
List<ProductionlineitemExcelVO> resultList = this.getExcelVo(list, mapDropDown);
ExcelUtils.write(response, "生产线物料关系.xlsx", "数据", ProductionlineitemExcelVO.class, resultList, mapDropDown);
}
private List<ProductionlineitemExcelVO> getExcelVo(List<ProductionlineitemDO> list, Map<Integer, String[]> mapDropDown) {
// 导出 Excel
List<ProductionlineitemExcelVO> datas = ProductionlineitemConvert.INSTANCE.convertList02(list);
for(ProductionlineitemExcelVO vo : datas) {
List<ProductionlineitemExcelVO> resultList = ProductionlineitemConvert.INSTANCE.convertList02(list);
for(ProductionlineitemExcelVO vo : resultList) {
AdminUserRespDTO user = userApi.getUser(Long.valueOf(vo.getCreator()));
//后端创建个字段作为前端展示的虚拟字段
vo.setCreator(user.getNickname());
}
ExcelUtils.write(response, "生产线物料关系.xls", "数据", ProductionlineitemExcelVO.class, datas);
return resultList;
}
@GetMapping("/get-import-template")
@Operation(summary = "获得导入生产线物料关系模板")

5
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/mysql/productionlineitem/ProductionlineitemMapper.java

@ -7,6 +7,7 @@ import com.win.framework.mybatis.core.query.LambdaQueryWrapperX;
import com.win.framework.mybatis.core.util.QueryWrapperUtils;
import com.win.module.wms.controller.productionlineitem.vo.ProductionlineitemExportReqVO;
import com.win.module.wms.controller.productionlineitem.vo.ProductionlineitemPageReqVO;
import com.win.module.wms.dal.dataobject.itembasic.ItembasicDO;
import com.win.module.wms.dal.dataobject.productionlineitem.ProductionlineitemDO;
import org.apache.ibatis.annotations.Mapper;
@ -51,5 +52,7 @@ public interface ProductionlineitemMapper extends BaseMapperX<Productionlineitem
.eqIfPresent(ProductionlineitemDO::getCreator, reqVO.getCreator())
.orderByDesc(ProductionlineitemDO::getId));
}
default List<ProductionlineitemDO> selectSeniorList(CustomConditions conditions) {
return selectList(QueryWrapperUtils.structure(conditions));
}
}

2
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/productionlineitem/ProductionlineitemService.java

@ -52,7 +52,7 @@ public interface ProductionlineitemService {
* @param ids 编号
* @return 生产线物料关系列表
*/
List<ProductionlineitemDO> getProductionlineitemList(Collection<Long> ids);
List<ProductionlineitemDO> getProductionlineitemList(CustomConditions conditions);
/**
* 获得生产线物料关系分页

4
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/productionlineitem/ProductionlineitemServiceImpl.java

@ -72,8 +72,8 @@ public class ProductionlineitemServiceImpl implements ProductionlineitemService
}
@Override
public List<ProductionlineitemDO> getProductionlineitemList(Collection<Long> ids) {
return productionlineitemMapper.selectBatchIds(ids);
public List<ProductionlineitemDO> getProductionlineitemList(CustomConditions conditions) {
return productionlineitemMapper.selectSeniorList(conditions);
}
@Override

Loading…
Cancel
Save