|  |  |  | 
|---|
|  |  |  | import com.zy.asrs.mapper.LocDetlMapper; | 
|---|
|  |  |  | import com.zy.asrs.service.LocDetlService; | 
|---|
|  |  |  | import com.zy.asrs.service.MatService; | 
|---|
|  |  |  | import com.zy.common.utils.RoleUtils; | 
|---|
|  |  |  | import com.zy.common.web.BaseController; | 
|---|
|  |  |  | import org.springframework.beans.factory.annotation.Autowired; | 
|---|
|  |  |  | import org.springframework.web.bind.annotation.*; | 
|---|
|  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @RequestMapping(value = "/locDetl/auth") | 
|---|
|  |  |  | @ManagerAuth | 
|---|
|  |  |  | public R stockOutList(@RequestParam(value = "locNos[]") List<String> locNos){ | 
|---|
|  |  |  | public R stockOutList(@RequestParam(value = "locNos[]") List<String> locNos) { | 
|---|
|  |  |  | if (!locNos.isEmpty()) { | 
|---|
|  |  |  | List<LocDetl> res = new ArrayList<>(); | 
|---|
|  |  |  | for (String locNo : new HashSet<>(locNos)) { | 
|---|
|  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @RequestMapping(value = "/stock/out/list/auth") | 
|---|
|  |  |  | @ManagerAuth | 
|---|
|  |  |  | public R stockOutList(@RequestParam(defaultValue = "1")Integer curr, | 
|---|
|  |  |  | @RequestParam(defaultValue = "10")Integer limit, | 
|---|
|  |  |  | @RequestParam Map<String, Object> param){ | 
|---|
|  |  |  | if (!Cools.isEmpty(param.get("modi_time"))){ | 
|---|
|  |  |  | public R stockOutList(@RequestParam(defaultValue = "1") Integer curr, | 
|---|
|  |  |  | @RequestParam(defaultValue = "10") Integer limit, | 
|---|
|  |  |  | @RequestParam Map<String, Object> param) { | 
|---|
|  |  |  | if (!Cools.isEmpty(param.get("modi_time"))) { | 
|---|
|  |  |  | String val = String.valueOf(param.get("modi_time")); | 
|---|
|  |  |  | if (val.contains(RANGE_TIME_LINK)) { | 
|---|
|  |  |  | String[] dates = val.split(RANGE_TIME_LINK); | 
|---|
|  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | Page<LocDetl> stockOut = locDetlService.getStockOut(toPage(curr, limit, param, LocDetl.class)); | 
|---|
|  |  |  | if (stockOut.getRecords().size()==0){ | 
|---|
|  |  |  | if (stockOut.getRecords().size() == 0) { | 
|---|
|  |  |  | stockOut = locDetlService.getStockOut(toPage(1, limit, param, LocDetl.class)); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | return R.ok(stockOut); | 
|---|
|  |  |  | 
|---|
|  |  |  | @RequestMapping(value = "/stock/out/crn/list/auth") | 
|---|
|  |  |  | @ManagerAuth | 
|---|
|  |  |  | public R crnStockOutList(@RequestParam(defaultValue = "1") Integer curr, | 
|---|
|  |  |  | @RequestParam(defaultValue = "10") Integer limit, | 
|---|
|  |  |  | @RequestParam Map<String, Object> param){ | 
|---|
|  |  |  | if (!Cools.isEmpty(param.get("modi_time"))){ | 
|---|
|  |  |  | @RequestParam(defaultValue = "10") Integer limit, | 
|---|
|  |  |  | @RequestParam Map<String, Object> param) { | 
|---|
|  |  |  | if (!Cools.isEmpty(param.get("modi_time"))) { | 
|---|
|  |  |  | String val = String.valueOf(param.get("modi_time")); | 
|---|
|  |  |  | if (val.contains(RANGE_TIME_LINK)) { | 
|---|
|  |  |  | String[] dates = val.split(RANGE_TIME_LINK); | 
|---|
|  |  |  | 
|---|
|  |  |  | param.remove("curr"); | 
|---|
|  |  |  | param.remove("limit"); | 
|---|
|  |  |  | EntityWrapper<LocDetl> wrapper = new EntityWrapper<>(); | 
|---|
|  |  |  | if (param.get("crn_no") != null) { | 
|---|
|  |  |  | if (param.get("crn_no").toString().equalsIgnoreCase("1")) { | 
|---|
|  |  |  | wrapper.addFilter("LEFT(loc_no,2)<=4"); | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | wrapper.addFilter("LEFT(loc_no,2)>=5 and LEFT(loc_no,2)<=16"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | param.remove("crn_no"); | 
|---|
|  |  |  | convert(param, wrapper); | 
|---|
|  |  |  | wrapper.addFilter("LEFT(loc_no,2)>=1 and LEFT(loc_no,2)<=16"); | 
|---|
|  |  |  | //        Page<LocDetl> stockOut = locDetlService.getStockOut(toPage(curr, limit, param, LocDetl.class)); | 
|---|
|  |  |  | wrapper.orderBy("appe_time", true); | 
|---|
|  |  |  | Page<LocDetl> locDetlPage = locDetlService.selectPage(new Page<>(curr, limit), wrapper); | 
|---|
|  |  |  | if (locDetlPage.getRecords().size()==0){ | 
|---|
|  |  |  | if (locDetlPage.getRecords().size() == 0) { | 
|---|
|  |  |  | locDetlPage = locDetlService.selectPage(new Page<>(1, limit), wrapper); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | return R.ok(locDetlPage); | 
|---|
|  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @RequestMapping(value = "/locDetl/list/auth")// /locDetl/list/auth 接口问题 | 
|---|
|  |  |  | @ManagerAuth | 
|---|
|  |  |  | public R list(@RequestParam(defaultValue = "1")Integer curr, | 
|---|
|  |  |  | @RequestParam(defaultValue = "10")Integer limit, | 
|---|
|  |  |  | @RequestParam(required = false)String orderByField, | 
|---|
|  |  |  | @RequestParam(required = false)String orderByType, | 
|---|
|  |  |  | @RequestParam(required = false)String condition, | 
|---|
|  |  |  | @RequestParam Map<String, Object> param){ | 
|---|
|  |  |  | public R list(@RequestParam(defaultValue = "1") Integer curr, | 
|---|
|  |  |  | @RequestParam(defaultValue = "10") Integer limit, | 
|---|
|  |  |  | @RequestParam(required = false) String orderByField, | 
|---|
|  |  |  | @RequestParam(required = false) String orderByType, | 
|---|
|  |  |  | @RequestParam(required = false) String condition, | 
|---|
|  |  |  | @RequestParam Map<String, Object> param) { | 
|---|
|  |  |  | //        String row = ""; | 
|---|
|  |  |  | EntityWrapper<LocDetl> wrapper = new EntityWrapper<>(); | 
|---|
|  |  |  | //        if (param.get("row") != null) { | 
|---|
|  |  |  | 
|---|
|  |  |  | excludeTrash(param); | 
|---|
|  |  |  | convert(param, wrapper); | 
|---|
|  |  |  | allLike(LocDetl.class, param.keySet(), wrapper, condition); | 
|---|
|  |  |  | // 不同继承角色显示不同库信息 | 
|---|
|  |  |  | RoleUtils.addRoleWrapperByLocNo(getUserId(),wrapper); | 
|---|
|  |  |  | if (!Cools.isEmpty(orderByField)){wrapper.orderBy(humpToLine(orderByField), "asc".equals(orderByType));} | 
|---|
|  |  |  | if (!Cools.isEmpty(orderByField)) { | 
|---|
|  |  |  | wrapper.orderBy(humpToLine(orderByField), "asc".equals(orderByType)); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | //        if (!row.equals("")){ | 
|---|
|  |  |  | //            wrapper.and() | 
|---|
|  |  |  | //                    .where("loc_no like '" +row +"%'"); | 
|---|
|  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | private <T> void convert(Map<String, Object> map, EntityWrapper<T> wrapper){ | 
|---|
|  |  |  | for (Map.Entry<String, Object> entry : map.entrySet()){ | 
|---|
|  |  |  | private <T> void convert(Map<String, Object> map, EntityWrapper<T> wrapper) { | 
|---|
|  |  |  | for (Map.Entry<String, Object> entry : map.entrySet()) { | 
|---|
|  |  |  | String val = String.valueOf(entry.getValue()); | 
|---|
|  |  |  | if (val.contains(RANGE_TIME_LINK)){ | 
|---|
|  |  |  | if (val.contains(RANGE_TIME_LINK)) { | 
|---|
|  |  |  | String[] dates = val.split(RANGE_TIME_LINK); | 
|---|
|  |  |  | wrapper.ge(entry.getKey(), DateUtils.convert(dates[0])); | 
|---|
|  |  |  | wrapper.le(entry.getKey(), DateUtils.convert(dates[1])); | 
|---|
|  |  |  | 
|---|
|  |  |  | return R.ok(); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @RequestMapping(value = "/locDetl/update/auth") | 
|---|
|  |  |  | @ManagerAuth(memo = "库位明细修改") | 
|---|
|  |  |  | public R update(LocDetl locDetl){ | 
|---|
|  |  |  | if (Cools.isEmpty(locDetl) || null==locDetl.getMatnr()){ | 
|---|
|  |  |  | @RequestMapping(value = "/locDetl/update/auth") | 
|---|
|  |  |  | @ManagerAuth(memo = "库位明细修改") | 
|---|
|  |  |  | public R update(LocDetl locDetl) { | 
|---|
|  |  |  | if (Cools.isEmpty(locDetl) || null == locDetl.getMatnr()) { | 
|---|
|  |  |  | return R.error(); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | locDetl.setModiUser(getUserId()); | 
|---|
|  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @RequestMapping(value = "/locDetl/delete/auth") | 
|---|
|  |  |  | @ManagerAuth(memo = "库位明细删除") | 
|---|
|  |  |  | public R delete(@RequestParam String param){ | 
|---|
|  |  |  | public R delete(@RequestParam String param) { | 
|---|
|  |  |  | List<LocDetl> list = JSONArray.parseArray(param, LocDetl.class); | 
|---|
|  |  |  | if (Cools.isEmpty(list)){ | 
|---|
|  |  |  | if (Cools.isEmpty(list)) { | 
|---|
|  |  |  | return R.error(); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | for (LocDetl entity : list){ | 
|---|
|  |  |  | for (LocDetl entity : list) { | 
|---|
|  |  |  | locDetlService.delete(new EntityWrapper<>(entity)); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | return R.ok(); | 
|---|
|  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @RequestMapping(value = "/locDetl/export/auth") | 
|---|
|  |  |  | @ManagerAuth(memo = "库位明细导出") | 
|---|
|  |  |  | public R export(@RequestBody JSONObject param){ | 
|---|
|  |  |  | public R export(@RequestBody JSONObject param) { | 
|---|
|  |  |  | List<String> fields = JSONObject.parseArray(param.getJSONArray("fields").toJSONString(), String.class); | 
|---|
|  |  |  | EntityWrapper<LocDetl> wrapper = new EntityWrapper<>(); | 
|---|
|  |  |  | Map<String, Object> map = excludeTrash(param.getJSONObject("locDetl")); | 
|---|
|  |  |  | 
|---|
|  |  |  | if (chooseRow.length() == 1) { | 
|---|
|  |  |  | row = "0" + chooseRow; | 
|---|
|  |  |  | map.remove("row"); | 
|---|
|  |  |  | }else { | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | row = chooseRow; | 
|---|
|  |  |  | map.remove("row"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | convert(map, wrapper); | 
|---|
|  |  |  | if (!row.equals("")){ | 
|---|
|  |  |  | if (!row.equals("")) { | 
|---|
|  |  |  | wrapper.and() | 
|---|
|  |  |  | .where("loc_no like '" +row +"%'"); | 
|---|
|  |  |  | .where("loc_no like '" + row + "%'"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | List<LocDetl> list = locDetlService.selectList(wrapper); | 
|---|
|  |  |  | return R.ok(exportSupport(list, fields)); | 
|---|
|  |  |  | 
|---|
|  |  |  | wrapper.like("matnr", condition); | 
|---|
|  |  |  | Page<LocDetl> page = locDetlService.selectPage(new Page<>(0, 10), wrapper); | 
|---|
|  |  |  | List<Map<String, Object>> result = new ArrayList<>(); | 
|---|
|  |  |  | for (LocDetl locDetl : page.getRecords()){ | 
|---|
|  |  |  | for (LocDetl locDetl : page.getRecords()) { | 
|---|
|  |  |  | Map<String, Object> map = new HashMap<>(); | 
|---|
|  |  |  | map.put("id", locDetl.getMatnr()); | 
|---|
|  |  |  | map.put("value", locDetl.getMatnr()); | 
|---|
|  |  |  | 
|---|
|  |  |  | @ManagerAuth | 
|---|
|  |  |  | public R query(@RequestBody JSONObject param) { | 
|---|
|  |  |  | Wrapper<LocDetl> wrapper = new EntityWrapper<LocDetl>().eq(humpToLine(String.valueOf(param.get("key"))), param.get("val")); | 
|---|
|  |  |  | if (null != locDetlService.selectOne(wrapper)){ | 
|---|
|  |  |  | if (null != locDetlService.selectOne(wrapper)) { | 
|---|
|  |  |  | return R.parse(BaseRes.REPEAT).add(getComment(LocDetl.class, String.valueOf(param.get("key")))); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | return R.ok(); | 
|---|
|  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @RequestMapping(value = "/locDetl/statis/auth") | 
|---|
|  |  |  | @ManagerAuth | 
|---|
|  |  |  | public R statis(@RequestParam(defaultValue = "1")Integer curr, | 
|---|
|  |  |  | @RequestParam(defaultValue = "10")Integer limit, | 
|---|
|  |  |  | public R statis(@RequestParam(defaultValue = "1") Integer curr, | 
|---|
|  |  |  | @RequestParam(defaultValue = "10") Integer limit, | 
|---|
|  |  |  | @RequestParam Map<String, Object> param) { | 
|---|
|  |  |  | Page<LocDetl> stockStatis = locDetlService.getStockStatis(toPage(curr, limit, param, LocDetl.class)); | 
|---|
|  |  |  | for (LocDetl locDetl : stockStatis.getRecords()) { | 
|---|
|  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 获取库存总数 | 
|---|
|  |  |  | * | 
|---|
|  |  |  | * @return | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | @RequestMapping("/locDetl/count") | 
|---|
|  |  |  | public R getAllCount(){ | 
|---|
|  |  |  | public R getAllCount() { | 
|---|
|  |  |  | Double sum = locDetlService.sum(); | 
|---|
|  |  |  | return R.ok(sum); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 获取库存总数 | 
|---|
|  |  |  | * | 
|---|
|  |  |  | * @return | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | @RequestMapping("/locDetl/matnr/count") | 
|---|
|  |  |  | public R getCount(@RequestBody Map<String, String> param){ | 
|---|
|  |  |  | public R getCount(@RequestBody Map<String, String> param) { | 
|---|
|  |  |  | String matnr = param.get("matnr"); | 
|---|
|  |  |  | Double sum = 0.0; | 
|---|
|  |  |  | if (Cools.isEmpty(matnr)){ | 
|---|
|  |  |  | if (Cools.isEmpty(matnr)) { | 
|---|
|  |  |  | sum = locDetlService.sum(); | 
|---|
|  |  |  | }else { | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | sum = locDetlService.getSumAnfme(matnr); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|