Merge remote-tracking branch 'origin/master'

master
赵嘉伟 3 years ago
commit b7aba024eb

@ -1,13 +1,17 @@
package com.foreverwin.mesnac.common.controller;
import com.foreverwin.mesnac.common.mapper.BoardMapper;
import com.foreverwin.mesnac.common.service.BoardService;
import com.foreverwin.modular.core.util.CommonMethods;
import com.foreverwin.modular.core.util.R;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@RestController
@ -15,6 +19,8 @@ import java.util.Map;
public class BoardController {
@Autowired
public BoardService boardService;
@Autowired
public BoardMapper boardMapper;
@GetMapping("/test")
public R test(String resource, String qty) {
@ -36,4 +42,15 @@ public class BoardController {
return R.ok(result);
}
@GetMapping("/findResourceInfo")
public R findResourceInfo(@RequestParam(required = false) Map paramMap) {
try {
paramMap.put("site", CommonMethods.getSite());
List<Map<String, Object>> result = boardMapper.findResourceInfo(paramMap);
return R.ok(result);
} catch (Exception e) {
return R.failed(e.getMessage());
}
}
}

@ -51,6 +51,8 @@ public class LabelPrintDto implements Serializable {
private Integer printNum;
//是否主观件
private Boolean mainPart;
//RK(入库)/(H)转入焊接/(Z)转装配
private String itemTypeOrder;
public String getItemNumber() {
return itemNumber;
@ -211,4 +213,12 @@ public class LabelPrintDto implements Serializable {
public void setMainPart(Boolean mainPart) {
this.mainPart = mainPart;
}
public String getItemTypeOrder() {
return itemTypeOrder;
}
public void setItemTypeOrder(String itemTypeOrder) {
this.itemTypeOrder = itemTypeOrder;
}
}

@ -2,6 +2,10 @@ package com.foreverwin.mesnac.common.mapper;
import org.springframework.stereotype.Repository;
import java.util.List;
import java.util.Map;
@Repository
public class BoardMapper {
public interface BoardMapper {
List<Map<String, Object>> findResourceInfo(Map paramMap);
}

@ -1,5 +1,74 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.foreverwin.mesnac.common.mapper.BoardMapper">
<select id="findResourceInfo" resultType="java.util.HashMap" parameterType="java.util.HashMap">
WITH
TE AS (
SELECT DISTINCT R.RESRCE RESRCE , R.HANDLE HANDLE
FROM RESRCE r
INNER JOIN WORK_CENTER_MEMBER wcm ON WCM.WORK_CENTER_OR_RESOURCE_GBO = R.HANDLE
INNER JOIN WORK_CENTER_MEMBER wcm2 ON WCM2.WORK_CENTER_OR_RESOURCE_GBO = WCM.WORK_CENTER_BO
INNER JOIN WORK_CENTER wc ON WC.HANDLE = WCM2.WORK_CENTER_BO
WHERE R.SITE = '1000' --AND WC.WORK_CENTER = 'JJ'
),
TEMP AS (
SELECT ZSD.RESRCE , ZSD.DISPATCH_STATUS , i.ITEM , it.DESCRIPTION , ZSD.ACTUAL_START_DATE,
ZSD.PROD_HOURS ,ZSD.DISPATCH_QTY ,ZSD.STEP_ID , ZSD.ACTUAL_PROD_HOURS
FROM Z_SFC_DISPATCH zsd
INNER JOIN TE ON TE.RESRCE = ZSD.RESRCE
INNER JOIN SHOP_ORDER SO ON SO.SHOP_ORDER = ZSD.SHOP_ORDER
INNER JOIN ITEM i ON I.HANDLE = SO.ITEM_BO
INNER JOIN ITEM_T IT ON IT.ITEM_BO = I.HANDLE AND IT.LOCALE = 'zh'
WHERE ZSD.SITE = '1000'
) ,
MN AS (
SELECT R.RESRCE , R.DESCRIPTION RESOURCE_DESCRIPTION, CF.VALUE || '/' || R.DESCRIPTION NAME ,
--WC.WORK_CENTER ,
--RT.RESOURCE_TYPE,
--RT.DESCRIPTION RESOURCE_TYPE_DESCRIPTION,
CASE WHEN ZRSR.STATUS = 'RUN' THEN '#1afa29'
WHEN ZRSR.STATUS = 'DOW' THEN '#EF4136' --'RGB(255,115,100)'
WHEN ZRSR.STATUS = 'FREE' THEN '#dbdbdb'
WHEN ZRSR.STATUS = 'WARN' THEN '#F4EA2A'
ELSE '#FFF' END STATUS_COLOR,
CASE WHEN ZRSR.STATUS = 'RUN' THEN '运行'
WHEN ZRSR.STATUS = 'DOW' THEN '停机' --'RGB(255,115,100)'
WHEN ZRSR.STATUS = 'FREE' THEN '空闲'
WHEN ZRSR.STATUS = 'WARN' THEN '告警'
ELSE '运行' END STATUS_NAME,
NVL(ZRSR.STATUS,'FREE') STATUS,
CF.VALUE RESOURCE_LOCATION ,
ZEDR.S1 FEED_RATE, ZEDR.S2 FEED_VALUE, ZEDR.S3 SPINDLE_LOAD , ZEDR.S4 SPINDLE_SPEED
FROM RESRCE R
INNER JOIN WORK_CENTER_MEMBER wcm ON WCM.WORK_CENTER_OR_RESOURCE_GBO = R.HANDLE
INNER JOIN WORK_CENTER_MEMBER wcm2 ON WCM2.WORK_CENTER_OR_RESOURCE_GBO = WCM.WORK_CENTER_BO
INNER JOIN WORK_CENTER wc ON WC.HANDLE = WCM2.WORK_CENTER_BO
INNER JOIN RESOURCE_TYPE_RESOURCE RTR ON RTR.RESOURCE_BO = R.HANDLE
INNER JOIN RESOURCE_TYPE RT ON RT.HANDLE = RTR.RESOURCE_TYPE_BO
LEFT JOIN Z_RESOURCE_STATUS_RECEIVE ZRSR ON ZRSR.RESRCE = R.RESRCE
LEFT JOIN CUSTOM_FIELDS cf ON CF.HANDLE = R.HANDLE AND CF."ATTRIBUTE" = 'RESOURCE_LOCATION'
LEFT JOIN Z_EDC_DATA_RESOURCE zedr ON ZEDR.RESRCE = R.RESRCE
WHERE RT.SITE = '1000' AND WC.WORK_CENTER = 'JJ'
ORDER BY ZRSR.RESRCE
)
SELECT T.RESRCE RE_NAME , T.DISPATCH_STATUS , ITEM , DESCRIPTION ITEM_DESCRIPTION, DISPATCH_QTY , PROD_HOURS , WORK_HOUR, ACTUAL_START_DATE, STEP_ID ,ACTUAL_PROD_HOURS,
CASE WHEN PROD_HOURS > WORK_HOUR THEN ROUND(WORK_HOUR /PROD_HOURS,2)
ELSE (CASE WHEN DISPATCH_STATUS = 'START' THEN 90 ELSE 100 END ) END PROGRESS ,
MN.*
FROM
(
SELECT *
FROM
(
SELECT ROW_NUMBER() OVER(PARTITION BY RESRCE ORDER BY DISPATCH_STATUS DESC ,ACTUAL_START_DATE DESC ,STEP_ID DESC ) rn,
RESRCE , DISPATCH_STATUS , ITEM , DESCRIPTION , DISPATCH_QTY , PROD_HOURS , ACTUAL_START_DATE , STEP_ID ,ACTUAL_PROD_HOURS ,
CASE WHEN DISPATCH_STATUS = 'START' THEN (SYSDATE - (ACTUAL_START_DATE + 8/24) ) * 24
ELSE NVL(10000,ACTUAL_PROD_HOURS) END WORK_HOUR
FROM TEMP WHERE DISPATCH_STATUS IN ('COMPLETE' ,'START' ) )
WHERE rn = 1
ORDER BY RESRCE , DISPATCH_STATUS DESC
) T
LEFT JOIN MN ON MN.RESRCE = T.RESRCE
ORDER BY MN.RESOURCE_LOCATION ,MN.RESRCE
</select>
</mapper>

@ -487,15 +487,7 @@
INNER JOIN RESOURCE_TYPE_RESOURCE WM ON WM.RESOURCE_BO = A.RESOURCE_BO
INNER JOIN RESOURCE_TYPE RT ON RT.HANDLE = WM.RESOURCE_TYPE_BO
LEFT JOIN Z_NWA_USER B ON A.SITE = B.SITE AND A.USER_ID = B.USER_NAME
WHERE A.SITE = #{site} AND
RT.RESOURCE_TYPE IN (
SELECT O.OPERATION FROM OPERATION o
INNER JOIN CUSTOM_FIELDS cf ON CF.HANDLE = O.HANDLE
WHERE CF.VALUE = (
SELECT CF.VALUE FROM OPERATION o
INNER JOIN CUSTOM_FIELDS cf ON CF.HANDLE = O.HANDLE AND CF."ATTRIBUTE" = 'COST_CENTER'
WHERE O.OPERATION = #{resourceType})
)
WHERE A.SITE = #{site} AND RT.RESOURCE_TYPE = #{resourceType}
</select>
<select id="findAll" resultMap="UserResourceDto">

@ -600,19 +600,13 @@
</select>
<select id="selectResourceListByUT" resultMap="BaseResultMap">
SELECT RS.HANDLE, RS.SITE, RS.RESRCE, RS.DESCRIPTION, RS.STATUS_BO, RS.PROCESS_RESOURCE, RS.OPERATION_BO, RS.VALID_FROM, RS.VALID_TO, RS.SETUP_STATE, RS.CREATED_DATE_TIME, RS.MODIFIED_DATE_TIME
SELECT RS.HANDLE, RS.SITE, RS.RESRCE, RS.DESCRIPTION, RS.STATUS_BO, RS.PROCESS_RESOURCE, RS.OPERATION_BO,
RS.VALID_FROM, RS.VALID_TO, RS.SETUP_STATE, RS.CREATED_DATE_TIME, RS.MODIFIED_DATE_TIME
FROM RESRCE RS
INNER JOIN RESOURCE_TYPE_RESOURCE RTR ON RTR.RESOURCE_BO = RS.HANDLE
INNER JOIN RESOURCE_TYPE RT ON RT.HANDLE = RTR.RESOURCE_TYPE_BO
INNER JOIN Z_USER_RESOURCE ZR ON ZR.RESOURCE_BO = RS.HANDLE AND ZR.STATUS = 'true'
WHERE RT.SITE = #{site} AND RT.RESOURCE_TYPE IN (
SELECT O.OPERATION FROM OPERATION o
INNER JOIN CUSTOM_FIELDS cf ON CF.HANDLE = O.HANDLE
WHERE CF.VALUE = (
SELECT CF.VALUE FROM OPERATION o
INNER JOIN CUSTOM_FIELDS cf ON CF.HANDLE = O.HANDLE AND CF."ATTRIBUTE" = 'COST_CENTER'
WHERE O.OPERATION = #{resourceType})
)
WHERE RT.SITE = #{site} AND RT.RESOURCE_TYPE = #{resourceType}
AND ZR.USER_ID IN
<foreach collection="userList" item="item" open="(" close=")" separator="," >
#{item}

Loading…
Cancel
Save