rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/MatnrController.java
@@ -7,6 +7,7 @@ import com.vincent.rsf.framework.common.R; import com.vincent.rsf.framework.exception.CoolException; import com.vincent.rsf.server.common.domain.PageResult; import com.vincent.rsf.server.common.utils.CommonUtil; import com.vincent.rsf.server.common.utils.ExcelUtil; import com.vincent.rsf.server.common.annotation.OperationLog; import com.vincent.rsf.server.common.domain.BaseParam; @@ -39,9 +40,17 @@ @PreAuthorize("hasAuthority('manager:matnr:list')") @PostMapping("/matnr/page") public R page(@RequestBody Map<String, Object> map) { // if (!Objects.isNull(map.get("groupId"))) { // return R.ok(matnrService.getPages(map)); // } else { // BaseParam baseParam = buildParam(map, BaseParam.class); // PageParam<Matnr, BaseParam> pageParam = new PageParam<>(baseParam, Matnr.class); // return R.ok().add(matnrService.getMatnrPage(pageParam, map)); // } BaseParam baseParam = buildParam(map, BaseParam.class); PageParam<Matnr, BaseParam> pageParam = new PageParam<>(baseParam, Matnr.class); return R.ok().add(matnrService.getMatnrPage(pageParam)); return R.ok().add(matnrService.getMatnrPage(pageParam, map)); } @PreAuthorize("hasAuthority('manager:matnr:list')") @@ -94,15 +103,18 @@ throw new CoolException("名称不能为空!!"); } matnr.setUpdateBy(getLoginUserId()); if (!matnrService.updateById(matnr)) { return R.error("Update Fail"); } if (!FieldsUtils.getFieldsSta().isEmpty()) { Matnr matnr1 = matnrService.getById(matnr.getId()); params.put("fieldsIndex", matnr1.getFieldsIndex()); if (!Objects.isNull(matnr1.getFieldsIndex())) { params.put("fieldsIndex", matnr1.getFieldsIndex()); } FieldsUtils.updateFieldsValue(params); } if (!matnrService.updateById(matnr)) { return R.error("Update Fail"); } return R.ok("Update Success").add(matnr); } rsf-server/src/main/java/com/vincent/rsf/server/manager/service/MatnrService.java
@@ -1,6 +1,5 @@ package com.vincent.rsf.server.manager.service; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.service.IService; import com.vincent.rsf.framework.common.R; import com.vincent.rsf.server.common.domain.BaseParam; @@ -17,11 +16,13 @@ R saveMatnrs(Map<String, Object> matnr); PageParam<Matnr, BaseParam> getMatnrPage(PageParam<Matnr, BaseParam> pageParam); PageParam<Matnr, BaseParam> getMatnrPage(PageParam<Matnr, BaseParam> pageParam, Map<String, Object> map); Matnr selectMatnrById(Long id); boolean bindMatnrs(MatnrToGroupParams params); boolean batchUpdate(MatnrToGroupParams params); PageParam<Matnr, BaseParam> getPages(Map<String, Object> map); } rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/MatnrServiceImpl.java
@@ -4,6 +4,7 @@ import cn.afterturn.easypoi.excel.entity.result.ExcelImportResult; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.vincent.rsf.framework.common.R; @@ -32,6 +33,7 @@ import java.util.List; import java.util.Map; import java.util.Objects; import java.util.stream.Collectors; @Service("matnrService") public class MatnrServiceImpl extends ServiceImpl<MatnrMapper, Matnr> implements MatnrService { @@ -103,19 +105,31 @@ } @Override public PageParam<Matnr, BaseParam> getMatnrPage(PageParam<Matnr, BaseParam> pageParam) { IPage<Map<String, Object>> reulst = this.baseMapper.selectMatnrs(pageParam, pageParam.buildWrapper(true)); /**获取物料分页信息 */ List<Map<String, Object>> mapList = reulst.getRecords(); if (!mapList.isEmpty()) { mapList.forEach(map -> { if (!Objects.isNull(map.get("fieldsIndex"))) { FieldsUtils.mergeFields(map, map.get("fieldsIndex").toString()); public PageParam<Matnr, BaseParam> getMatnrPage(PageParam<Matnr, BaseParam> pageParam, Map<String, Object> params) { QueryWrapper<Matnr> queryWrapper = pageParam.buildWrapper(true); if (params.containsKey("groupId")) { Object groupId = params.get("groupId"); if (!Objects.isNull(groupId)) { List<MatnrGroup> matnrGroups = matnrGroupService.list(new LambdaQueryWrapper<MatnrGroup>().eq(MatnrGroup::getParentId, Long.parseLong(groupId.toString())).select(MatnrGroup::getId)); if (!matnrGroups.isEmpty()) { List<Long> longs = matnrGroups.stream().map(MatnrGroup::getId).collect(Collectors.toList()); queryWrapper.or().in("group_id", longs); } }); } } // IPage<Map<String, Object>> reulst = this.baseMapper.selectMatnrs(pageParam, queryWrapper); // /**获取物料分页信息 */ // List<Map<String, Object>> mapList = reulst.getRecords(); // if (!mapList.isEmpty()) { // mapList.forEach(map -> { // if (!Objects.isNull(map.get("fieldsIndex"))) { // FieldsUtils.mergeFields(map, map.get("fieldsIndex").toString()); // } // }); // } PageParam<Matnr, BaseParam> page = this.page(pageParam, pageParam.buildWrapper(true)); /**拼接扩展字段*/ PageParam<Matnr, BaseParam> page = this.page(pageParam, queryWrapper); List<Matnr> records = page.getRecords(); for (Matnr record : records) { if (!Objects.isNull(record.getFieldsIndex())) { @@ -198,6 +212,13 @@ return true; } @Override public PageParam<Matnr, BaseParam> getPages(Map<String, Object> map) { return null; } /** * @desc 更新扩展物料扩展字段值 * @param matnr