|
|
@ -5,16 +5,15 @@ import cn.hutool.core.bean.copier.CopyOptions; |
|
|
|
import com.win.framework.common.pojo.CommonResult; |
|
|
|
import com.win.framework.common.pojo.CustomConditions; |
|
|
|
import com.win.framework.common.pojo.PageResult; |
|
|
|
import com.win.framework.common.util.collection.CollectionUtils; |
|
|
|
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.scrapJob.vo.ScrapJobDetailRespVO; |
|
|
|
import com.win.module.wms.controller.scrapJob.vo.*; |
|
|
|
import com.win.module.wms.convert.scrapJob.ScrapJobDetailConvert; |
|
|
|
import com.win.module.wms.dal.dataobject.scrapJob.ScrapJobDetailDO; |
|
|
|
import com.win.module.wms.dal.dataobject.scrapJob.ScrapJobMainDO; |
|
|
|
import com.win.module.wms.dal.dataobject.scrapJob.ScrapJobDetailDO; |
|
|
|
import com.win.module.wms.dal.mysql.scrapJob.ScrapJobMainMapper; |
|
|
|
import com.win.module.wms.service.scrapJob.ScrapJobDetailService; |
|
|
|
import io.swagger.v3.oas.annotations.Operation; |
|
|
@ -29,6 +28,7 @@ import javax.servlet.http.HttpServletResponse; |
|
|
|
import javax.validation.Valid; |
|
|
|
import java.io.IOException; |
|
|
|
import java.util.*; |
|
|
|
import java.util.stream.Collectors; |
|
|
|
|
|
|
|
import static com.win.framework.common.pojo.CommonResult.success; |
|
|
|
import static com.win.framework.operatelog.core.enums.OperateTypeEnum.EXPORT; |
|
|
@ -46,7 +46,6 @@ public class ScrapJobDetailController { |
|
|
|
@Resource |
|
|
|
private ScrapJobMainMapper scrapJobMainMapper; |
|
|
|
|
|
|
|
|
|
|
|
@PostMapping("/create") |
|
|
|
@Operation(summary = "创建报废出库任务子") |
|
|
|
@PreAuthorize("@ss.hasPermission('wms:scrap-job-detail:create')") |
|
|
@ -91,17 +90,26 @@ public class ScrapJobDetailController { |
|
|
|
@Operation(summary = "获得报废出库任务子分页") |
|
|
|
public CommonResult<PageResult<ScrapJobDetailRespVO>> getScrapJobDetailPage(@Valid ScrapJobDetailPageReqVO pageVO) { |
|
|
|
PageResult<ScrapJobDetailDO> pageResult = scrapJobDetailService.getScrapJobDetailPage(pageVO); |
|
|
|
PageResult<ScrapJobDetailRespVO> result = getScrapJobDetailRespVOPageResult(pageResult); |
|
|
|
return success(result); |
|
|
|
} |
|
|
|
|
|
|
|
private PageResult<ScrapJobDetailRespVO> getScrapJobDetailRespVOPageResult(PageResult<ScrapJobDetailDO> pageResult) { |
|
|
|
PageResult<ScrapJobDetailRespVO> result = ScrapJobDetailConvert.INSTANCE.convertPage(pageResult); |
|
|
|
if (pageResult.getList().size() > 0) { |
|
|
|
Set<Long> masterIdSet = new HashSet<>(); |
|
|
|
for(ScrapJobDetailDO scrapJobDetailDO:pageResult.getList()){ |
|
|
|
masterIdSet.add(scrapJobDetailDO.getMasterId()); |
|
|
|
} |
|
|
|
//主
|
|
|
|
Set<Long> masterIdSet = pageResult.getList().stream().map(ScrapJobDetailDO::getMasterId).collect(Collectors.toSet()); |
|
|
|
Map<Long, ScrapJobMainDO> mainMap = scrapJobMainMapper.queryMainListToMap(masterIdSet); |
|
|
|
//用户
|
|
|
|
Set<String> userIdSet = pageResult.getList().stream().map(ScrapJobDetailDO::getCreator).collect(Collectors.toSet()); |
|
|
|
userIdSet.addAll(pageResult.getList().stream().map(ScrapJobDetailDO::getUpdater).collect(Collectors.toSet())); |
|
|
|
Map<String, String> userNicknameMap = userApi.getUserNicknameToString(userIdSet); |
|
|
|
|
|
|
|
CopyOptions options = CopyOptions.create().setIgnoreNullValue(true); |
|
|
|
for(ScrapJobDetailRespVO vo : result.getList()) { |
|
|
|
vo.setCreator(userApi.getUserNickname(vo.getCreator())); |
|
|
|
vo.setUpdater(userApi.getUserNickname(vo.getUpdater())); |
|
|
|
result.getList().stream().iterator().forEachRemaining(vo -> { |
|
|
|
vo.setCreator(Optional.ofNullable(userNicknameMap.get(vo.getCreator())).orElse("")); |
|
|
|
vo.setUpdater(Optional.ofNullable(userNicknameMap.get(vo.getUpdater())).orElse("")); |
|
|
|
|
|
|
|
ScrapJobMainDO scrapJobMainDO = mainMap.get(vo.getMasterId()); |
|
|
|
if (scrapJobMainDO != null) { |
|
|
|
scrapJobMainDO.setId(null); |
|
|
@ -115,41 +123,16 @@ public class ScrapJobDetailController { |
|
|
|
vo.setRemarkMain(remarkMain); |
|
|
|
vo.setRemark(remarkSub); |
|
|
|
} |
|
|
|
}); |
|
|
|
} |
|
|
|
} |
|
|
|
return success(result); |
|
|
|
return result; |
|
|
|
} |
|
|
|
|
|
|
|
@PostMapping("/senior") |
|
|
|
@Operation(summary = "高级搜索获得物料基本信息分页") |
|
|
|
public CommonResult<PageResult<ScrapJobDetailRespVO>> getScrapJobDetailSenior(@Valid @RequestBody CustomConditions conditions) { |
|
|
|
PageResult<ScrapJobDetailDO> pageResult = scrapJobDetailService.getScrapJobDetailSenior(conditions); |
|
|
|
PageResult<ScrapJobDetailRespVO> result = ScrapJobDetailConvert.INSTANCE.convertPage(pageResult); |
|
|
|
if(pageResult.getList().size() > 0){ |
|
|
|
Set<Long> masterIdSet = new HashSet<>(); |
|
|
|
for(ScrapJobDetailDO scrapJobDetailDO:pageResult.getList()){ |
|
|
|
masterIdSet.add(scrapJobDetailDO.getMasterId()); |
|
|
|
} |
|
|
|
Map<Long, ScrapJobMainDO> mainMap = scrapJobMainMapper.queryMainListToMap(masterIdSet); |
|
|
|
CopyOptions options = CopyOptions.create().setIgnoreNullValue(true); |
|
|
|
for(ScrapJobDetailRespVO vo : result.getList()) { |
|
|
|
vo.setCreator(userApi.getUserNickname(vo.getCreator())); |
|
|
|
vo.setUpdater(userApi.getUserNickname(vo.getUpdater())); |
|
|
|
ScrapJobMainDO scrapJobMainDO = mainMap.get(vo.getMasterId()); |
|
|
|
if(scrapJobMainDO != null){ |
|
|
|
scrapJobMainDO.setId(null); |
|
|
|
scrapJobMainDO.setCreator(null); |
|
|
|
scrapJobMainDO.setCreateTime(null); |
|
|
|
scrapJobMainDO.setUpdateTime(null); |
|
|
|
scrapJobMainDO.setUpdater(null); |
|
|
|
String remarkMain =Optional.ofNullable(scrapJobMainDO.getRemark()).orElse(""); |
|
|
|
String remarkSub=Optional.ofNullable(vo.getRemark()).orElse(""); |
|
|
|
BeanUtil.copyProperties(scrapJobMainDO,vo,options); |
|
|
|
vo.setRemarkMain(remarkMain); |
|
|
|
vo.setRemark(remarkSub); |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
PageResult<ScrapJobDetailRespVO> result = getScrapJobDetailRespVOPageResult(pageResult); |
|
|
|
return success(result); |
|
|
|
} |
|
|
|
|
|
|
|