| | |
| | | @RequestParam(required = false) String condition, |
| | | @RequestParam(required = false) Boolean pdaQuery, |
| | | @RequestParam Map<String, Object> param) { |
| | | EntityWrapper<MaterialReceive> wrapper = new EntityWrapper<>(); |
| | | excludeTrash(param); |
| | | // 移除pdaQuery参数,因为它不是数据库字段,只是控制参数 |
| | | param.remove("pdaQuery"); |
| | | convert(param, wrapper); |
| | | allLike(MaterialReceive.class, param.keySet(), wrapper, condition); |
| | | |
| | | // 参考其他出库模块,PDA出库查询时过滤掉已全部出库的物料(只显示还有剩余数量的) |
| | | // 通过 pdaQuery 参数判断是否是PDA出库查询 |
| | | if (pdaQuery != null && pdaQuery) { |
| | | // PDA出库查询:只显示剩余数量大于0的记录 |
| | | wrapper.gt("remain_qty", 0); |
| | | try { |
| | | EntityWrapper<MaterialReceive> wrapper = new EntityWrapper<>(); |
| | | excludeTrash(param); |
| | | // 移除pdaQuery参数,因为它不是数据库字段,只是控制参数 |
| | | param.remove("pdaQuery"); |
| | | |
| | | // 处理生产单号/任务单号的多个值查询(用|分隔) |
| | | if (param.containsKey("soCodeOrFbillno")) { |
| | | String soCodeOrFbillno = String.valueOf(param.get("soCodeOrFbillno")); |
| | | param.remove("soCodeOrFbillno"); |
| | | |
| | | // 分割多个值 |
| | | String[] codeArray = soCodeOrFbillno.split("\\|"); |
| | | List<String> validCodes = new ArrayList<>(); |
| | | for (String codeStr : codeArray) { |
| | | String code = codeStr.trim(); |
| | | if (code.length() > 0) { |
| | | validCodes.add(code); |
| | | } |
| | | } |
| | | |
| | | if (!validCodes.isEmpty()) { |
| | | // 构建OR查询条件 |
| | | // 格式:so_code IN (value1, value2, ...) OR fbillno IN (value1, value2, ...) |
| | | wrapper.andNew() |
| | | .in("so_code", validCodes) |
| | | .or() |
| | | .in("fbillno", validCodes); |
| | | } |
| | | } |
| | | |
| | | convert(param, wrapper); |
| | | allLike(MaterialReceive.class, param.keySet(), wrapper, condition); |
| | | |
| | | // 参考其他出库模块,PDA出库查询时过滤掉已全部出库的物料(只显示还有剩余数量的) |
| | | // 通过 pdaQuery 参数判断是否是PDA出库查询 |
| | | if (pdaQuery != null && pdaQuery) { |
| | | // PDA出库查询:只显示剩余数量大于0的记录 |
| | | wrapper.gt("remain_qty", 0); |
| | | } |
| | | |
| | | if (!Cools.isEmpty(orderByField)) { |
| | | wrapper.orderBy(humpToLine(orderByField), "asc".equals(orderByType)); |
| | | } |
| | | return R.ok(materialReceiveService.selectPage(new Page<>(curr, limit), wrapper)); |
| | | } catch (Exception e) { |
| | | e.printStackTrace(); |
| | | return R.error("查询失败: " + e.getMessage()); |
| | | } |
| | | |
| | | if (!Cools.isEmpty(orderByField)) { |
| | | wrapper.orderBy(humpToLine(orderByField), "asc".equals(orderByType)); |
| | | } |
| | | return R.ok(materialReceiveService.selectPage(new Page<>(curr, limit), wrapper)); |
| | | } |
| | | |
| | | @RequestMapping(value = "/materialReceive/batchSave/auth", method = RequestMethod.POST) |