Merge branch 'master' of http://121.40.234.130:8899/root/wuHanXinRui
This commit is contained in:
@@ -464,12 +464,17 @@ public class AutoformulaServiceImpl implements AutoformulaService {
|
||||
String is_need_move = bomdlt.getString("is_need_move");
|
||||
String bomdtl_material_id = bomdlt.getString("material_id");
|
||||
String bomdtl_material_code = bomdlt.getString("material_code");
|
||||
String prior_level = bomdlt.getString("prior_level");
|
||||
if (StrUtil.isEmpty(prior_level)) {
|
||||
prior_level = "03";
|
||||
}
|
||||
if("1".equals(is_need_move)){
|
||||
//查询库存
|
||||
JSONArray bom_materials = WQL.getWO("QPF_AUTOFORMULA01")
|
||||
.addParam("material_id",bomdtl_material_id)
|
||||
.addParam("workorder_id",workorder_id)
|
||||
.addParam("quality_scode","01")
|
||||
.addParam("prior_level",prior_level)
|
||||
.addParam("flag","22")
|
||||
.process().getResultJSONArray(0);
|
||||
if(bom_materials.size()==0){
|
||||
@@ -1308,12 +1313,17 @@ public class AutoformulaServiceImpl implements AutoformulaService {
|
||||
}
|
||||
String is_need_move = bomdlt.getString("is_need_move");
|
||||
String bomdtl_material_id = bomdlt.getString("material_id");
|
||||
String prior_level = bomdlt.getString("prior_level");
|
||||
if (StrUtil.isEmpty(prior_level)) {
|
||||
prior_level = "03";
|
||||
}
|
||||
if(nedd_qty>0 && "1".equals(is_need_move)){
|
||||
//查询库存
|
||||
JSONArray bom_materials = WQL.getWO("QPF_AUTOFORMULA01")
|
||||
.addParam("material_id",bomdtl_material_id)
|
||||
.addParam("quality_scode","01")
|
||||
.addParam("workorder_id",workorder_id)
|
||||
.addParam("prior_level",prior_level)
|
||||
.addParam("flag","22")
|
||||
.process().getResultJSONArray(0);
|
||||
if(bom_materials.size()==0){
|
||||
@@ -2525,9 +2535,14 @@ public class AutoformulaServiceImpl implements AutoformulaService {
|
||||
//获取Y1、X1、X2….剩余>0的物料
|
||||
if(left_qty>0){
|
||||
if(is_need_move.equals("1")){
|
||||
String prior_level = bomdlt.getString("prior_level");
|
||||
if (StrUtil.isEmpty(prior_level)) {
|
||||
prior_level = "03";
|
||||
}
|
||||
JSONArray now_ivts = WQL.getWO("QPF_AUTOFORMULA01")
|
||||
.addParam("material_id",bomdtl_material_id)
|
||||
.addParam("quality_scode","01")
|
||||
.addParam("prior_level",prior_level)
|
||||
.addParam("workorder_id",workorder_id)
|
||||
.addParam("flag","22")
|
||||
.process().getResultJSONArray(0);
|
||||
@@ -3426,11 +3441,16 @@ public class AutoformulaServiceImpl implements AutoformulaService {
|
||||
String bomdtl_material_id = bomdlts_plan.getString("material_id");
|
||||
double left_qty = bomdlts_plan.getDouble("formula_qty");
|
||||
String is_need_move = bomdlts_plan.getString("is_need_move");
|
||||
String prior_level = bomdlts_plan.getString("prior_level");
|
||||
if (StrUtil.isEmpty(prior_level)) {
|
||||
prior_level = "03";
|
||||
}
|
||||
if(is_need_move.equals("1")){
|
||||
//二次分配新料库存
|
||||
JSONArray now_ivts = WQL.getWO("QPF_AUTOFORMULA01")
|
||||
.addParam("material_id",bomdtl_material_id)
|
||||
.addParam("quality_scode","01")
|
||||
.addParam("prior_level",prior_level)
|
||||
.addParam("workorder_id",workorder_id)
|
||||
.addParam("flag","22")
|
||||
.process().getResultJSONArray(0);
|
||||
|
||||
@@ -15,6 +15,7 @@
|
||||
#################################################
|
||||
输入.flag TYPEAS s_string
|
||||
输入.quality_scode TYPEAS s_string
|
||||
输入.prior_level TYPEAS s_string
|
||||
输入.material_id TYPEAS s_string
|
||||
输入.material_code TYPEAS s_string
|
||||
输入.is_need_manage TYPEAS s_string
|
||||
@@ -186,10 +187,13 @@
|
||||
OPTION 输入.quality_scode <> ""
|
||||
structivt.quality_scode = 输入.quality_scode
|
||||
ENDOPTION
|
||||
OPTION 输入.prior_level <> ""
|
||||
structivt.ivt_level <= 输入.prior_level
|
||||
ENDOPTION
|
||||
OPTION 输入.is_pure <> ""
|
||||
stockmaterialext.is_pure = 输入.is_pure
|
||||
ENDOPTION
|
||||
ORDER BY structivt.material_id,structivt.pcsn, structivt.sum_qty desc
|
||||
ORDER BY structivt.material_id,structivt.ivt_level desc,structivt.pcsn, structivt.sum_qty desc
|
||||
ENDSELECT
|
||||
ENDQUERY
|
||||
ENDIF
|
||||
|
||||
@@ -0,0 +1,38 @@
|
||||
package org.nl.wms.sb.stat.websocket;
|
||||
|
||||
import cn.hutool.core.date.DateUtil;
|
||||
import com.alibaba.fastjson.JSONArray;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.nl.modules.mnt.websocket.MsgType;
|
||||
import org.nl.modules.mnt.websocket.SocketMsg;
|
||||
import org.nl.modules.mnt.websocket.WebSocketServer;
|
||||
import org.nl.wms.pf.service.AutoPfTaskService;
|
||||
import org.nl.wql.WQL;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.util.HashMap;
|
||||
|
||||
@Slf4j
|
||||
@Component
|
||||
@RequiredArgsConstructor
|
||||
public class AutoWebSocketTask {
|
||||
|
||||
public void run() {
|
||||
try {
|
||||
String today = DateUtil.today();
|
||||
HashMap<String, String> map = new HashMap<>();
|
||||
map.put("flag", "1");
|
||||
map.put("today", "%"+today+"%");
|
||||
|
||||
JSONArray resultJSONArray = WQL.getWO("TASK_AUTOWEBSOCKETTSK").addParamMap(map).process().getResultJSONArray(0);
|
||||
|
||||
SocketMsg socketMsg = new SocketMsg(resultJSONArray, MsgType.INFO);
|
||||
WebSocketServer.sendInfo(socketMsg,"20");
|
||||
} catch (IOException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,163 @@
|
||||
[交易说明]
|
||||
交易名: 实时查询统计任务
|
||||
所属模块:
|
||||
功能简述:
|
||||
版权所有:
|
||||
表引用:
|
||||
版本经历:
|
||||
|
||||
[数据库]
|
||||
--指定数据库,为空采用默认值,默认为db.properties中列出的第一个库
|
||||
|
||||
[IO定义]
|
||||
#################################################
|
||||
## 表字段对应输入参数
|
||||
#################################################
|
||||
输入.flag TYPEAS s_string
|
||||
输入.today TYPEAS s_string
|
||||
|
||||
|
||||
[临时表]
|
||||
--这边列出来的临时表就会在运行期动态创建
|
||||
|
||||
[临时变量]
|
||||
--所有中间过程变量均可在此处定义
|
||||
|
||||
[业务过程]
|
||||
|
||||
##########################################
|
||||
# 1、输入输出检查 #
|
||||
##########################################
|
||||
|
||||
|
||||
##########################################
|
||||
# 2、主过程前处理 #
|
||||
##########################################
|
||||
|
||||
|
||||
##########################################
|
||||
# 3、业务主过程 #
|
||||
##########################################
|
||||
|
||||
IF 输入.flag = "1"
|
||||
QUERY
|
||||
SELECT
|
||||
mst.input_time AS input_time,
|
||||
mst.repair_code AS repair_code,
|
||||
(
|
||||
CASE
|
||||
mst.maintenancecycle
|
||||
WHEN '01' THEN '计划维修'
|
||||
WHEN '02' THEN '临时维修'
|
||||
END
|
||||
) AS maintenancecycle,
|
||||
file.device_code,
|
||||
file.device_name,
|
||||
(
|
||||
CASE
|
||||
mst.invstatus
|
||||
WHEN '01' THEN '生成'
|
||||
WHEN '02' THEN '提交'
|
||||
WHEN '03' THEN '开始'
|
||||
WHEN '04' THEN '委外维修'
|
||||
WHEN '05' THEN '委外验收'
|
||||
WHEN '06' THEN '结束'
|
||||
WHEN '07' THEN '确认'
|
||||
WHEN '99' THEN '审核'
|
||||
END
|
||||
) AS invstatus,
|
||||
mst.real_start_date,
|
||||
mst.real_end_date
|
||||
FROM
|
||||
EM_BI_DeviceRepairMst mst
|
||||
LEFT JOIN EM_BI_EquipmentFile file ON mst.devicerecord_id = file.devicerecord_id
|
||||
WHERE
|
||||
mst.is_delete = '0'
|
||||
AND (mst.invstatus <> '99' or (mst.invstatus = '99' and mst.audit_time like 输入.today))
|
||||
AND ( ISNULL( mst.source_bill_id ) OR mst.source_bill_type = 'WXJH' )
|
||||
|
||||
UNION
|
||||
|
||||
SELECT
|
||||
st.create_time AS input_time,
|
||||
st.request_code AS repair_code,
|
||||
class.class_name AS maintenancecycle,
|
||||
file.device_code,
|
||||
file.device_name,
|
||||
(
|
||||
CASE
|
||||
st.is_passed
|
||||
WHEN '0' THEN
|
||||
(
|
||||
CASE st.is_passed
|
||||
WHEN '0' THEN '否'
|
||||
WHEN '1' THEN '是'
|
||||
END
|
||||
)
|
||||
WHEN '1' THEN
|
||||
(
|
||||
CASE mst.invstatus
|
||||
WHEN '01' THEN '生成'
|
||||
WHEN '02' THEN '提交'
|
||||
WHEN '03' THEN '开始'
|
||||
WHEN '04' THEN '委外维修'
|
||||
WHEN '05' THEN '委外验收'
|
||||
WHEN '06' THEN '结束'
|
||||
WHEN '07' THEN '确认'
|
||||
WHEN '99' THEN '审核'
|
||||
END
|
||||
)
|
||||
END
|
||||
) AS invstatus,
|
||||
mst.real_start_date,
|
||||
mst.real_end_date
|
||||
FROM
|
||||
EM_BI_DeviceRepairRequest st
|
||||
LEFT JOIN EM_BI_EquipmentFile file ON st.devicerecord_id = file.devicerecord_id
|
||||
LEFT JOIN md_pb_classstandard class ON class.class_id = st.device_faultclass_id
|
||||
LEFT JOIN EM_BI_DeviceRepairMst mst ON mst.source_bill_id = st.request_id
|
||||
WHERE
|
||||
st.is_delete = '0'
|
||||
AND (st.status <> '99' or (st.status = '99' and st.finish_time like 输入.today))
|
||||
AND mst.source_bill_type = 'BXD'
|
||||
|
||||
UNION
|
||||
|
||||
SELECT
|
||||
mst.input_time AS input_time,
|
||||
mst.maint_code AS repair_code,
|
||||
(
|
||||
CASE
|
||||
mst.maintenancecycle
|
||||
WHEN '01' THEN '计划保养'
|
||||
WHEN '02' THEN '临时保养'
|
||||
END
|
||||
) AS maintenancecycle,
|
||||
file.device_code,
|
||||
file.device_name,
|
||||
(
|
||||
CASE
|
||||
mst.invstatus
|
||||
WHEN '01' THEN '生成'
|
||||
WHEN '02' THEN '提交'
|
||||
WHEN '03' THEN '开始'
|
||||
WHEN '04' THEN '结束'
|
||||
WHEN '05' THEN '确认'
|
||||
WHEN '99' THEN '审核'
|
||||
END
|
||||
) AS invstatus,
|
||||
mst.real_start_date,
|
||||
mst.real_end_date
|
||||
FROM
|
||||
EM_BI_DeviceMaintenanceMst mst
|
||||
LEFT JOIN EM_BI_EquipmentFile file ON mst.devicerecord_id = file.devicerecord_id
|
||||
WHERE
|
||||
mst.is_delete = '0'
|
||||
AND (mst.invstatus <> '99' or (mst.invstatus = '99' and mst.audit_time like 输入.today))
|
||||
|
||||
ENDSELECT
|
||||
ENDQUERY
|
||||
ENDIF
|
||||
|
||||
|
||||
|
||||
@@ -47,4 +47,10 @@ public class ReturnOutBillController {
|
||||
public ResponseEntity<Object> queryBillDtl(@RequestParam Map whereJson, Pageable page){
|
||||
return new ResponseEntity<>(returnOutBillService.queryBillDtl(whereJson,page), HttpStatus.OK);
|
||||
}
|
||||
@GetMapping("/queryWashDtl")
|
||||
@Log("查询软废库存")
|
||||
@ApiOperation("查询软废库存")
|
||||
public ResponseEntity<Object> queryWashDtl(@RequestParam Map whereJson, Pageable page){
|
||||
return new ResponseEntity<>(returnOutBillService.queryWashDtl(whereJson,page), HttpStatus.OK);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -30,4 +30,12 @@ public interface ReturnOutBillService {
|
||||
* @return Map<String, Object>
|
||||
*/
|
||||
Map<String, Object> queryBillDtl(Map whereJson, Pageable page);
|
||||
/**
|
||||
* 查询数据分页
|
||||
*
|
||||
* @param whereJson 条件
|
||||
* @param page 分页参数
|
||||
* @return Map<String, Object>
|
||||
*/
|
||||
Map<String, Object> queryWashDtl(Map whereJson, Pageable page);
|
||||
}
|
||||
|
||||
@@ -12,6 +12,7 @@ import com.alibaba.fastjson.JSONObject;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.nl.utils.SpringContextHolder;
|
||||
import org.nl.wms.basedata.master.constant.MaterOptTypeEnum;
|
||||
import org.nl.wms.basedata.master.service.ClassstandardService;
|
||||
import org.nl.wms.st.core.service.ReturnOutBillService;
|
||||
import org.nl.wql.WQL;
|
||||
@@ -161,4 +162,19 @@ public class ReturnOutBillServiceImpl implements ReturnOutBillService {
|
||||
return jo;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Map<String, Object> queryWashDtl(Map whereJson, Pageable page) {
|
||||
HashMap<String, String> map = new HashMap<>(whereJson);
|
||||
if (StrUtil.isNotEmpty(map.get("search"))) {
|
||||
map.put("search", "%" + map.get("search") + "%");
|
||||
}
|
||||
if (StrUtil.isNotEmpty(map.get("pcsn"))) {
|
||||
map.put("pcsn", "%" + map.get("pcsn") + "%");
|
||||
}
|
||||
map.put("flag", "4");
|
||||
map.put("material_ids", MaterOptTypeEnum.RF.getClass_idStr());
|
||||
JSONObject jo = WQL.getWO("QST_IVT_RETURNOUTBILL").addParamMap(map).pageQuery(WqlUtil.getHttpContext(page), "mb.material_id desc");
|
||||
return jo;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -23,9 +23,11 @@
|
||||
输入.mater_type TYPEAS f_string
|
||||
输入.query_type TYPEAS s_string
|
||||
输入.searchid TYPEAS s_string
|
||||
输入.is_active TYPEAS s_string
|
||||
输入.bucketunique TYPEAS s_string
|
||||
输入.pcsn TYPEAS s_string
|
||||
输入.storagevehicle_code TYPEAS s_string
|
||||
输入.material_ids TYPEAS f_string
|
||||
[临时表]
|
||||
--这边列出来的临时表就会在运行期动态创建
|
||||
|
||||
@@ -216,3 +218,55 @@
|
||||
ENDSELECT
|
||||
ENDPAGEQUERY
|
||||
ENDIF
|
||||
|
||||
IF 输入.flag = "4"
|
||||
PAGEQUERY
|
||||
SELECT
|
||||
structivt.*,
|
||||
mb.material_name,
|
||||
mb.material_code,
|
||||
'' AS remark
|
||||
FROM
|
||||
(
|
||||
SELECT
|
||||
SUM( ivt.canuse_qty ) AS plan_qty,
|
||||
SUM( ivt.ivt_qty ) AS sum_qty,
|
||||
ivt.qty_unit_id,
|
||||
ivt.qty_unit_name,
|
||||
ivt.material_id,
|
||||
ivt.pcsn,
|
||||
ivt.is_active,
|
||||
ivt.ivt_level,
|
||||
ivt.quality_scode
|
||||
FROM
|
||||
st_ivt_structivt ivt
|
||||
GROUP BY
|
||||
ivt.material_id,
|
||||
ivt.pcsn,
|
||||
ivt.is_active,
|
||||
ivt.ivt_level,
|
||||
ivt.quality_scode,
|
||||
ivt.qty_unit_id,
|
||||
ivt.qty_unit_name
|
||||
) structivt
|
||||
LEFT JOIN md_me_materialbase mb ON mb.material_id = structivt.material_id
|
||||
WHERE
|
||||
1 = 1
|
||||
AND structivt.plan_qty > 0
|
||||
OPTION 输入.search <> ""
|
||||
(mb.material_code like 输入.search
|
||||
OR
|
||||
mb.material_name like 输入.search)
|
||||
ENDOPTION
|
||||
OPTION 输入.pcsn <> ""
|
||||
structivt.pcsn like 输入.pcsn
|
||||
ENDOPTION
|
||||
OPTION 输入.is_active <> ""
|
||||
structivt.is_active = 输入.is_active
|
||||
ENDOPTION
|
||||
OPTION 输入.material_ids <> ""
|
||||
mb.material_type_id in 输入.material_ids
|
||||
ENDOPTION
|
||||
ENDSELECT
|
||||
ENDPAGEQUERY
|
||||
ENDIF
|
||||
|
||||
Reference in New Issue
Block a user