diff --git a/SC-boot/linkage-scm/src/main/java/jnpf/materialvo/controller/MaterialController.java b/SC-boot/linkage-scm/src/main/java/jnpf/materialvo/controller/MaterialController.java index 53c1adf4..c074a552 100644 --- a/SC-boot/linkage-scm/src/main/java/jnpf/materialvo/controller/MaterialController.java +++ b/SC-boot/linkage-scm/src/main/java/jnpf/materialvo/controller/MaterialController.java @@ -19,11 +19,15 @@ import jnpf.materialvo.entity.MaterialEntity; import jnpf.materialvo.entity.MaterialVoMobileEntity; import jnpf.materialvo.model.material.*; import jnpf.materialvo.service.MaterialService; +import jnpf.reservoirarea.entity.ReservoirareaEntity; +import jnpf.reservoirarea.service.ReservoirareaService; import jnpf.util.*; import jnpf.util.enums.FileTypeEnum; import jnpf.util.file.UploadUtil; import lombok.Cleanup; import lombok.extern.slf4j.Slf4j; +import org.apache.commons.lang3.ObjectUtils; +import org.apache.commons.lang3.StringUtils; import org.apache.poi.hssf.usermodel.HSSFWorkbook; import org.apache.poi.ss.usermodel.Workbook; import org.springframework.beans.factory.annotation.Autowired; @@ -64,6 +68,9 @@ public class MaterialController { @Autowired private MaterialService materialService; + @Autowired + private ReservoirareaService reservoirareaService; + @@ -78,10 +85,22 @@ public class MaterialController { List list= materialService.getList(materialPagination); //处理id字段转名称,若无需转或者为空可删除 for(MaterialVoMobileEntity entity:list){ - Map outAreaMap = new HashMap<>(); - entity.setOutArea(generaterSwapUtil.getPopupSelectValue("381404161809350213","id","areaname",entity.getOutArea(),outAreaMap)); - Map inAreaMap = new HashMap<>(); - entity.setInArea(generaterSwapUtil.getPopupSelectValue("381404161809350213","id","areaname",entity.getInArea(),inAreaMap)); + if(StringUtils.isNotEmpty(entity.getInArea())){ + ReservoirareaEntity reservoirareaEntity = reservoirareaService.getById(entity.getInArea()); + if (ObjectUtils.isNotEmpty(reservoirareaEntity) && StringUtils.isNotEmpty(reservoirareaEntity.getAreaname())){ + entity.setInArea(reservoirareaEntity.getAreaname()); + } + } + if(StringUtils.isNotEmpty(entity.getOutArea())){ + ReservoirareaEntity reservoirareaEntity = reservoirareaService.getById(entity.getOutArea()); + if (ObjectUtils.isNotEmpty(reservoirareaEntity) && StringUtils.isNotEmpty(reservoirareaEntity.getAreaname())){ + entity.setOutArea(reservoirareaEntity.getAreaname()); + } + } +// Map outAreaMap = new HashMap<>(); +// entity.setOutArea(generaterSwapUtil.getPopupSelectValue("381404161809350213","id","areaname",entity.getOutArea(),outAreaMap)); +// Map inAreaMap = new HashMap<>(); +// entity.setInArea(generaterSwapUtil.getPopupSelectValue("381404161809350213","id","areaname",entity.getInArea(),inAreaMap)); } List listVO=JsonUtil.getJsonToList(list,MaterialListVO.class); for(MaterialListVO materialVO:listVO){ @@ -95,6 +114,28 @@ public class MaterialController { return ActionResult.success(vo); } + /** + * PC列表 + * + * @param materialPagination + * @return + */ + @PostMapping("/getListPC") + public ActionResult listPC(@RequestBody MaterialPagination materialPagination)throws IOException{ + List list= materialService.getList2(materialPagination); + //处理id字段转名称,若无需转或者为空可删除 + for(MaterialEntity entity:list){ + } + List listVO=JsonUtil.getJsonToList(list,MaterialListVO.class); + for(MaterialListVO materialVO:listVO){ + } + PageListVO vo=new PageListVO(); + vo.setList(listVO); + PaginationVO page=JsonUtil.getJsonToBean(materialPagination,PaginationVO.class); + vo.setPagination(page); + return ActionResult.success(vo); + } + /** * 创建 diff --git a/SC-boot/linkage-scm/src/main/java/jnpf/materialvo/mapper/MaterialMapper.java b/SC-boot/linkage-scm/src/main/java/jnpf/materialvo/mapper/MaterialMapper.java index b442c010..c46d5c76 100644 --- a/SC-boot/linkage-scm/src/main/java/jnpf/materialvo/mapper/MaterialMapper.java +++ b/SC-boot/linkage-scm/src/main/java/jnpf/materialvo/mapper/MaterialMapper.java @@ -4,8 +4,12 @@ package jnpf.materialvo.mapper; import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import jnpf.materialvo.entity.MaterialEntity; import jnpf.materialvo.entity.MaterialVoMobileEntity; +import jnpf.materialvo.model.material.MaterialPagination; +import jnpf.receiptout.entity.ReceiptoutEntity; +import jnpf.receiptout.model.receiptout.ReceiptoutPagination; import org.apache.ibatis.annotations.Param; /** @@ -23,7 +27,8 @@ public interface MaterialMapper extends BaseMapper { * @param queryWrapper 条件映射 * @return 派工单信息 */ - IPage getMaterialMobileList(@Param("page") IPage page, - @Param("ew") Wrapper queryWrapper); + IPage getMaterialMobileList(@Param("page") IPage page, @Param("ew") Wrapper queryWrapper); + + IPage queryMaterial(@Param("page") Page page, @Param("materialPagination") MaterialPagination materialPagination, @Param("ew") Wrapper queryWrapper); } diff --git a/SC-boot/linkage-scm/src/main/java/jnpf/materialvo/model/material/MaterialPagination.java b/SC-boot/linkage-scm/src/main/java/jnpf/materialvo/model/material/MaterialPagination.java index 7e42783b..5e4f205c 100644 --- a/SC-boot/linkage-scm/src/main/java/jnpf/materialvo/model/material/MaterialPagination.java +++ b/SC-boot/linkage-scm/src/main/java/jnpf/materialvo/model/material/MaterialPagination.java @@ -21,6 +21,12 @@ public class MaterialPagination extends Pagination { /** 物料名称 */ private String itemName; + + /** + * 添加权限 + */ + private String departmentId; + private String orgnizeId; /** * 菜单id */ diff --git a/SC-boot/linkage-scm/src/main/java/jnpf/materialvo/service/MaterialService.java b/SC-boot/linkage-scm/src/main/java/jnpf/materialvo/service/MaterialService.java index 78d46c68..69c5c5b3 100644 --- a/SC-boot/linkage-scm/src/main/java/jnpf/materialvo/service/MaterialService.java +++ b/SC-boot/linkage-scm/src/main/java/jnpf/materialvo/service/MaterialService.java @@ -27,6 +27,8 @@ public interface MaterialService extends IService { List getList(MaterialPagination materialPagination); + List getList2(MaterialPagination materialPagination); + List getTypeList(MaterialPagination materialPagination,String dataType); diff --git a/SC-boot/linkage-scm/src/main/java/jnpf/materialvo/service/impl/MaterialServiceImpl.java b/SC-boot/linkage-scm/src/main/java/jnpf/materialvo/service/impl/MaterialServiceImpl.java index d820461a..ccaf14c9 100644 --- a/SC-boot/linkage-scm/src/main/java/jnpf/materialvo/service/impl/MaterialServiceImpl.java +++ b/SC-boot/linkage-scm/src/main/java/jnpf/materialvo/service/impl/MaterialServiceImpl.java @@ -47,6 +47,7 @@ public class MaterialServiceImpl extends ServiceImpl page(IPage page, Wrapper queryWrapper) { // @@ -131,6 +132,93 @@ public class MaterialServiceImpl extends ServiceImpl getList2(MaterialPagination materialPagination) { + String userId=userProvider.get().getUserId(); + List AllIdList =new ArrayList(); + int total=0; + int materialNum =0; + QueryWrapper materialQueryWrapper=new QueryWrapper<>(); + materialQueryWrapper.eq("a.delete_mark", "0"); + boolean pcPermission = true; + boolean appPermission = true; + boolean isPc = ServletUtil.getHeader("jnpf-origin").equals("pc"); + if(isPc && pcPermission){ + if (!userProvider.get().getIsAdministrator()){ + Object materialObj=authorizeService.getCondition(new AuthorizeConditionModel(materialQueryWrapper,materialPagination.getMenuId(),"jg_material")); + if (ObjectUtil.isEmpty(materialObj)){ + return new ArrayList<>(); + } else { + materialQueryWrapper = (QueryWrapper)materialObj; + materialNum++; + } + } + } + if(!isPc && appPermission){ + if (!userProvider.get().getIsAdministrator()){ + Object materialObj=authorizeService.getCondition(new AuthorizeConditionModel(materialQueryWrapper,materialPagination.getMenuId(),"jg_material")); + if (ObjectUtil.isEmpty(materialObj)){ + return new ArrayList<>(); + } else { + materialQueryWrapper = (QueryWrapper)materialObj; + materialNum++; + } + + + } + } +/* + if(StringUtil.isNotEmpty(materialPagination.getItemCode())){ + materialNum++; + materialQueryWrapper.lambda().like(MaterialEntity::getItemCode,materialPagination.getItemCode()); + } + + if(StringUtil.isNotEmpty(materialPagination.getItemName())){ + materialNum++; + materialQueryWrapper.lambda().like(MaterialEntity::getItemName,materialPagination.getItemName()); + } +*/ + + if(AllIdList.size()>0){ + materialQueryWrapper.lambda().in(MaterialEntity::getId, AllIdList); + } + //排序 +/* if(StringUtil.isEmpty(materialPagination.getSidx())){ + materialQueryWrapper.lambda().orderByDesc(MaterialEntity::getCreatorTime); + }else{ + try { + String sidx = materialPagination.getSidx(); + MaterialVoMobileEntity materialEntity = new MaterialVoMobileEntity(); + Field declaredField = materialEntity.getClass().getDeclaredField(sidx); + declaredField.setAccessible(true); + String value = declaredField.getAnnotation(TableField.class).value(); + materialQueryWrapper="asc".equals(materialPagination.getSort().toLowerCase())?materialQueryWrapper.orderByAsc(value):materialQueryWrapper.orderByDesc(value); + } catch (Exception e) { + e.printStackTrace(); + } + }*/ + if(StringUtil.isEmpty(materialPagination.getSidx())){ + materialPagination.setSidx("CREATOR_TIME"); + materialPagination.setSort("DESC"); + }else{ + try { + String sidx = materialPagination.getSidx(); + MaterialVoMobileEntity materialEntity = new MaterialVoMobileEntity(); + Field declaredField = materialEntity.getClass().getDeclaredField(sidx); + declaredField.setAccessible(true); + String value = declaredField.getAnnotation(TableField.class).value(); + materialPagination.setSidx(value); +// materialQueryWrapper="asc".equals(materialPagination.getSort().toLowerCase())?materialQueryWrapper.orderByAsc(value):materialQueryWrapper.orderByDesc(value); + } catch (Exception e) { + e.printStackTrace(); + } + } + Page page=new Page<>(materialPagination.getCurrentPage(), materialPagination.getPageSize()); + IPage userIPage= materialMapper.queryMaterial(page,materialPagination, materialQueryWrapper); + return materialPagination.setData(userIPage.getRecords(),userIPage.getTotal()); + } + @Override public List getTypeList(MaterialPagination materialPagination,String dataType){ String userId=userProvider.get().getUserId(); diff --git a/SC-boot/linkage-scm/src/main/resources/mapper/material/MaterialMapper.xml b/SC-boot/linkage-scm/src/main/resources/mapper/material/MaterialMapper.xml index 673d768b..e57ef2b1 100644 --- a/SC-boot/linkage-scm/src/main/resources/mapper/material/MaterialMapper.xml +++ b/SC-boot/linkage-scm/src/main/resources/mapper/material/MaterialMapper.xml @@ -107,5 +107,28 @@ + + diff --git a/SC-web/src/views/scm/basicInformation/arinvoices/Form.vue b/SC-web/src/views/scm/basicInformation/arinvoices/Form.vue index 290c3b1e..ecb95f5f 100644 --- a/SC-web/src/views/scm/basicInformation/arinvoices/Form.vue +++ b/SC-web/src/views/scm/basicInformation/arinvoices/Form.vue @@ -437,6 +437,15 @@ }else if(column.taxRate == '0'){ column.taxRate = '5'; } + if (column.invoiceStatus == null){ + column.invoiceStatus = '0'; + }else if(column.invoiceStatus == '正常'){ + column.invoiceStatus = '0'; + }else if (column.invoiceStatus == '红冲'){ + column.invoiceStatus = '1'; + }else if (column.invoiceStatus == '作废'){ + column.invoiceStatus = '2'; + } this.dataForm.arinvoices_item0List.push(column); }); var invoiceQuantity = 0; @@ -642,7 +651,7 @@ invoiceStatus:'0', creatorUserName:undefined, invoiceDate:new Date().getTime(), - attachMent:undefined, + attachMent:[], } this.dataForm.arinvoices_item0List.push(item) }, @@ -658,6 +667,9 @@ } for(let i=0;i<_data.arinvoices_item0List.length;i++){ var _list = _data.arinvoices_item0List[i]; + if (_list.attachMent == null){ + _list.attachMent = [] + } _list.attachMent = JSON.stringify(_list.attachMent) } return _data; diff --git a/SC-web/src/views/scm/basicInformation/material/index.vue b/SC-web/src/views/scm/basicInformation/material/index.vue index c153188f..cd7928da 100644 --- a/SC-web/src/views/scm/basicInformation/material/index.vue +++ b/SC-web/src/views/scm/basicInformation/material/index.vue @@ -201,7 +201,7 @@ menuId: this.menuId } request({ - url: `/api/example/Material/getList`, + url: `/api/example/Material/getListPC`, method: 'post', data: _query }).then(res => { diff --git a/SC-web/src/views/scm/basicInformation/saleorder/arinvoicesForm.vue b/SC-web/src/views/scm/basicInformation/saleorder/arinvoicesForm.vue index 532ea313..ccc4f51a 100644 --- a/SC-web/src/views/scm/basicInformation/saleorder/arinvoicesForm.vue +++ b/SC-web/src/views/scm/basicInformation/saleorder/arinvoicesForm.vue @@ -421,6 +421,15 @@ }else if(column.taxRate == '0'){ column.taxRate = '5'; } + if (column.invoiceStatus == null){ + column.invoiceStatus = '0'; + }else if(column.invoiceStatus == '正常'){ + column.invoiceStatus = '0'; + }else if (column.invoiceStatus == '红冲'){ + column.invoiceStatus = '1'; + }else if (column.invoiceStatus == '作废'){ + column.invoiceStatus = '2'; + } this.dataForm.arinvoices_item0List.push(column); }); var invoiceQuantity = 0; @@ -692,6 +701,9 @@ } for(let i=0;i<_data.arinvoices_item0List.length;i++){ var _list = _data.arinvoices_item0List[i]; + if (_list.attachMent == null){ + _list.attachMent = [] + } _list.attachMent = JSON.stringify(_list.attachMent) } return _data;