| | |
| | | import org.springframework.web.bind.annotation.RequestMapping; |
| | | import org.springframework.web.bind.annotation.RestController; |
| | | import zy.cloud.wms.common.web.BaseController; |
| | | import zy.cloud.wms.manager.entity.WrkSts; |
| | | import zy.cloud.wms.manager.service.WrkStsService; |
| | | |
| | | import java.util.List; |
| | | import java.util.Map; |
| | | import java.util.Optional; |
| | | |
| | | /** |
| | |
| | | |
| | | @Autowired |
| | | private JdbcTemplate jdbcTemplate; |
| | | @Autowired |
| | | private WrkStsService wrkStsService; |
| | | |
| | | /** |
| | | * 当天数据:select * from tableName where datediff(day, 字段名,getdate())=0 |
| | |
| | | |
| | | Integer usersQty = jdbcTemplate.queryForObject("select count(*) from sys_user", Integer.class); |
| | | Integer deptQty = jdbcTemplate.queryForObject("select count(*) from sys_dept", Integer.class); |
| | | Integer optQty = jdbcTemplate.queryForObject("select count(*) from sys_operate_log", Integer.class); |
| | | |
| | | return R.ok().add(Cools |
| | | .add("combQtyDay", Optional.ofNullable(combQtyDay).orElse(0)) // 组托数量(当天) |
| | | .add("combQty、", Optional.ofNullable(combQty).orElse(0)) // 组托数量 |
| | | .add("combQty", Optional.ofNullable(combQty).orElse(0)) // 组托数量 |
| | | |
| | | .add("matQty", Optional.ofNullable(matQty).orElse(0)) // 物料数量 |
| | | .add("nodeQty、", Optional.ofNullable(nodeQty).orElse(0)) // 货位数量 |
| | | .add("nodeQty", Optional.ofNullable(nodeQty).orElse(0)) // 货位数量 |
| | | |
| | | .add("pakoutQty", Optional.ofNullable(pakoutQty).orElse(0)) // 总出库单数 |
| | | .add("pakoutQtyMonth、", Optional.ofNullable(pakoutQtyMonth).orElse(0)) // 总出库单数(当月) |
| | | .add("pakoutQtyMonth", Optional.ofNullable(pakoutQtyMonth).orElse(0)) // 出库单数(当月) |
| | | |
| | | .add("usersQty", Optional.ofNullable(usersQty).orElse(0)) // 用户数量 |
| | | .add("deptQty", Optional.ofNullable(deptQty).orElse(0)) // 部门数量 |
| | | .add("optQty", Optional.ofNullable(optQty).orElse(0)) // 操作次数 |
| | | ); |
| | | } |
| | | |
| | | @RequestMapping(value = "/body/auth") |
| | | public R body() { |
| | | // 组托 |
| | | List<Map<String, Object>> combList = jdbcTemplate.queryForList("select top 10 * from man_comb where 1=1 order by create_time desc"); |
| | | for (int i=0;i<combList.size();i++) { |
| | | Object create_time = combList.get(i).get("create_time"); |
| | | combList.get(i).put("time", String.valueOf(create_time).substring(5, 16)); |
| | | combList.get(i).put("active", String.valueOf(combList.get(i).get("io_status")).equals("4")?"":"active"); |
| | | } |
| | | // 拣货单 |
| | | List<Map<String, Object>> pakoutList = jdbcTemplate.queryForList("select top 5 * from man_pakout where 1=1 order by create_time desc"); |
| | | for (int i=0;i<pakoutList.size();i++) { |
| | | pakoutList.get(i).put("no", i+1); |
| | | String wrk_sts = String.valueOf(pakoutList.get(i).get("wrk_sts")); |
| | | switch (wrk_sts) { |
| | | case "1": |
| | | pakoutList.get(i).put("style", "text-warning"); |
| | | break; |
| | | case "2": |
| | | pakoutList.get(i).put("style", "text-danger"); |
| | | break; |
| | | case "3": |
| | | pakoutList.get(i).put("style", "text-success"); |
| | | break; |
| | | default: |
| | | pakoutList.get(i).put("style", "text-info"); |
| | | break; |
| | | } |
| | | WrkSts wrkSts = wrkStsService.selectById(Integer.parseInt(wrk_sts)); |
| | | if (null != wrkSts) { |
| | | pakoutList.get(i).put("wrkStsName", wrkSts.getStsName()); |
| | | } |
| | | } |
| | | // 安全库存警告 |
| | | List<Map<String, Object>> safeQuaList = jdbcTemplate.queryForList("select\n" + |
| | | "top 5\n" + |
| | | "mp.node_id,\n" + |
| | | "mp.node_name,\n" + |
| | | "mp.matnr,\n" + |
| | | "mp.maktx,\n" + |
| | | "mp.safe_qua,\n" + |
| | | "ISNULL(ls.amount, 0) as amount,\n" + |
| | | "(mp.safe_qua - isnull(ls.amount, 0)) as dValue\n" + |
| | | "from man_prior mp\n" + |
| | | "left join\n" + |
| | | "(\n" + |
| | | " select\n" + |
| | | " node_id,\n" + |
| | | " matnr,\n" + |
| | | " sum(anfme) as amount\n" + |
| | | " from man_loc_detl\n" + |
| | | " group by node_id, matnr\n" + |
| | | ") as ls on ls.node_id = mp.node_id and ls.matnr = mp.matnr\n" + |
| | | "where 1=1\n" + |
| | | "and mp.safe_qua > ls.amount or ls.amount is null\n" + |
| | | "order by (mp.safe_qua - isnull(ls.amount, 0)) desc"); |
| | | for (int i=0;i<safeQuaList.size();i++) { |
| | | safeQuaList.get(i).put("no", i+1); |
| | | if (Cools.isEmpty(safeQuaList.get(i).get("dValue"))){ |
| | | safeQuaList.get(i).put("dValue", safeQuaList.get(i).get("safe_qua")); |
| | | } |
| | | } |
| | | // 库存滞留 |
| | | List<Map<String, Object>> retentionList = jdbcTemplate.queryForList("select top 7 CONVERT(decimal, DATEDIFF(second, man_loc_detl.create_time, GETDATE()) / 86400.0, 9) AS stayDays, * from man_loc_detl order by create_time desc"); |
| | | for (int i=0;i<retentionList.size();i++) { |
| | | retentionList.get(i).put("no", i+1); |
| | | Object create_time = retentionList.get(i).get("create_time"); |
| | | retentionList.get(i).put("createTime", String.valueOf(create_time).substring(0, 11)); |
| | | } |
| | | |
| | | return R.ok().add(Cools |
| | | .add("combList", combList) // 组托最新动态 |
| | | .add("pakoutList", pakoutList) // 最新拣货单 |
| | | .add("safeQuaList", safeQuaList) // 安全库存警告 |
| | | .add("retentionList", retentionList) // 库存滞留数据 |
| | | ); |
| | | } |
| | | |