|  |  | 
 |  |  | import com.vincent.rsf.server.system.controller.BaseController; | 
 |  |  | import io.swagger.annotations.Api; | 
 |  |  | import io.swagger.annotations.ApiOperation; | 
 |  |  | import org.apache.commons.lang3.StringUtils; | 
 |  |  | import org.springframework.beans.factory.annotation.Autowired; | 
 |  |  | import org.springframework.security.access.prepost.PreAuthorize; | 
 |  |  | import org.springframework.web.bind.annotation.*; | 
 |  |  | 
 |  |  |     @OperationLog("Create loc areas mats rela") | 
 |  |  |     @PostMapping("/locAreaMatRela/save") | 
 |  |  |     public R save(@RequestBody LocAreaMatRela locAreaMatRela) { | 
 |  |  |  | 
 |  |  |         locAreaMatRela.setCreateBy(getLoginUserId()); | 
 |  |  |         locAreaMatRela.setCreateTime(new Date()); | 
 |  |  |         locAreaMatRela.setUpdateBy(getLoginUserId()); | 
 |  |  |         locAreaMatRela.setUpdateTime(new Date()); | 
 |  |  |         if (!locAreaMatRelaService.save(locAreaMatRela)) { | 
 |  |  |             return R.error("Save Fail"); | 
 |  |  |         } | 
 |  |  | 
 |  |  |         return R.ok("Update Success").add(locAreaMatRela); | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     @PreAuthorize("hasAuthority('manager:locAreaMatRela:remove')") | 
 |  |  |     @ApiOperation("删除物料分组") | 
 |  |  |     @GetMapping("/locAreaMatRela/group") | 
 |  |  |     @PreAuthorize("hasAuthority('manager:locAreaMatRela:update')") | 
 |  |  |     public R remByGroup(@RequestBody Map<String, Object> map) { | 
 |  |  |         if (Objects.isNull(map)) { | 
 |  |  |             throw new CoolException("参数不能为空!!"); | 
 |  |  |         } | 
 |  |  |         if (!StringUtils.isBlank(map.get("groupId").toString())) { | 
 |  |  |             throw new CoolException("库位类型不能为空!!"); | 
 |  |  |         } | 
 |  |  |         if (!StringUtils.isBlank(map.get("areaMatId").toString())) { | 
 |  |  |             throw new CoolException("主单ID不能为空!!"); | 
 |  |  |         } | 
 |  |  |         if (locAreaMatRelaService.removeByGroupId(map)) { | 
 |  |  |             return R.ok(); | 
 |  |  |         } else { | 
 |  |  |             return R.error("删除失败!!"); | 
 |  |  |         } | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     @ApiOperation("删除库位类型") | 
 |  |  |     @GetMapping("/locAreaMatRela/locType/remove") | 
 |  |  |     @PreAuthorize("hasAuthority('manager:locAreaMatRela:update')") | 
 |  |  |     public R removByLocType(@RequestBody Map<String, Object> param) { | 
 |  |  |         if (Objects.isNull(param)) { | 
 |  |  |             throw new CoolException("参数不能为空!!!"); | 
 |  |  |         } | 
 |  |  |         if (!StringUtils.isBlank(param.get("typeId").toString())) { | 
 |  |  |             throw new CoolException("库位类型不能为空!!"); | 
 |  |  |         } | 
 |  |  |         if (!StringUtils.isBlank(param.get("areaMatId").toString())) { | 
 |  |  |             throw new CoolException("主单ID不能为空!!"); | 
 |  |  |         } | 
 |  |  |         if (locAreaMatRelaService.removeByLocType(param)) { | 
 |  |  |             return R.ok(); | 
 |  |  |         } else { | 
 |  |  |             return R.ok("删除失败!!"); | 
 |  |  |         } | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     @PreAuthorize("hasAuthority('manager:locAreaMatRela:list')") | 
 |  |  |     @OperationLog("Delete loc areas mats rela") | 
 |  |  |     @PostMapping("/locAreaMatRela/remove/{ids}") | 
 |  |  |     public R remove(@PathVariable Long[] ids) { | 
 |  |  |         if (Objects.isNull(ids)) { | 
 |  |  |             throw new CoolException("参数不能为空!!"); | 
 |  |  |         } | 
 |  |  |         if (!locAreaMatRelaService.removeByIds(Arrays.asList(ids))) { | 
 |  |  |             return R.error("Delete Fail"); | 
 |  |  |         } | 
 |  |  | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     @PreAuthorize("hasAuthority('manager:locAreaMatRela:list')") | 
 |  |  |     @ApiOperation("获取库区物料分组") | 
 |  |  |     @GetMapping("/locAreaMatRela/groups/{id}") | 
 |  |  |     public R getAreaMatGroup(@PathVariable Long id) { | 
 |  |  |         if (Objects.isNull(id)) { | 
 |  |  |             throw new CoolException("参数不能为空!!"); | 
 |  |  |         } | 
 |  |  |         return R.ok(locAreaMatRelaService.getAllGroups(id)); | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     @PreAuthorize("hasAuthority('manager:locAreaMatRela:list')") | 
 |  |  |     @ApiOperation("获取库区库位类型") | 
 |  |  |     @GetMapping("/locAreaMatRela/locType/{id}") | 
 |  |  |     public R getAreaMatLocType(@PathVariable Long id) { | 
 |  |  |         if (Objects.isNull(id)) { | 
 |  |  |             throw new CoolException("参数不能为空!!"); | 
 |  |  |         } | 
 |  |  |         return R.ok(locAreaMatRelaService.getAllLocType(id)); | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |  | 
 |  |  |     @PreAuthorize("hasAuthority('manager:locAreaMatRela:list')") | 
 |  |  |     @PostMapping("/locAreaMatRela/export") | 
 |  |  |     public void export(@RequestBody Map<String, Object> map, HttpServletResponse response) throws Exception { | 
 |  |  |         ExcelUtil.build(ExcelUtil.create(locAreaMatRelaService.list(), LocAreaMatRela.class), response); | 
 |  |  | 
 |  |  |         if (Objects.isNull(param)) { | 
 |  |  |             throw new CoolException("参数不能为空!!"); | 
 |  |  |         } | 
 |  |  |         if (Objects.isNull(param.getAreaId())) { | 
 |  |  |             throw new CoolException("库区不能为空!!"); | 
 |  |  | //        if (Objects.isNull(param.getAreaId())) { | 
 |  |  | //            throw new CoolException("库区不能为空!!"); | 
 |  |  | //        } | 
 |  |  | //        if (Objects.isNull(param.getWarehouseId())) { | 
 |  |  | //            throw new CoolException("仓库不能为空!!"); | 
 |  |  | //        } | 
 |  |  |         if (Objects.isNull(param.getAreaMatId())) { | 
 |  |  |             throw new CoolException("主单ID不能为空!!"); | 
 |  |  |         } | 
 |  |  | //        if (Objects.isNull(param.getTypeId()) || Objects.isNull(param.getLocId()) || param.getLocId().isEmpty() || param.getTypeId().isEmpty()) { | 
 |  |  | //            throw new CoolException("库位类型或库位不能为空!!"); | 
 |  |  | //        } | 
 |  |  | //        if (Objects.isNull(param.getGroupId()) || Objects.isNull(param.getMatnrId()) || param.getMatnrId().isEmpty()) { | 
 |  |  | //            throw new CoolException("物料或物料分类不能为空!!"); | 
 |  |  | //        } | 
 |  |  |         return locAreaMatRelaService.binMatnrs(param); | 
 |  |  |     } | 
 |  |  |  |