This commit is contained in:
2022-10-19 10:22:10 +08:00
14 changed files with 277 additions and 32 deletions

View File

@@ -64,7 +64,7 @@ public class DevicebomServiceImpl implements DevicebomService {
map.put("classIds", classIds);
}
JSONObject json = WQL.getWO("QEM_BI_DEVICEBOM01").addParamMap(map).pageQuery(WqlUtil.getHttpContext(page), "mst.update_time DESC");
JSONObject json = WQL.getWO("QEM_BI_DEVICEBOM01").addParamMap(map).pageQuery(WqlUtil.getHttpContext(page), "mst.create_time DESC");
return json;
}

View File

@@ -61,7 +61,7 @@ public class DevicefaultclassServiceImpl implements DevicefaultclassService {
String classIds = classstandardService.getAllChildIdStr(class_idStr);
map.put("classIds", classIds);
}
JSONObject json = WQL.getWO("QEM_BI_DEVICEFAULTCLASS001").addParamMap(map).pageQuery(WqlUtil.getHttpContext(page), "mst.update_time DESC");
JSONObject json = WQL.getWO("QEM_BI_DEVICEFAULTCLASS001").addParamMap(map).pageQuery(WqlUtil.getHttpContext(page), "mst.create_time DESC");
return json;
}

View File

@@ -70,7 +70,7 @@ public class DevicemaintenanceitemsServiceImpl implements Devicemaintenanceitems
String classIds = classstandardService.getAllChildIdStr(class_idStr);
map.put("classIds", "");
}
JSONObject json = WQL.getWO("QEM_BI_DEVICEMAINTAIN001").addParamMap(map).pageQuery(WqlUtil.getHttpContext(page), "update_time DESC");
JSONObject json = WQL.getWO("QEM_BI_DEVICEMAINTAIN001").addParamMap(map).pageQuery(WqlUtil.getHttpContext(page), "create_time DESC");
return json;
}

View File

@@ -65,7 +65,7 @@ public class DevicerepairitemsServiceImpl implements DevicerepairitemsService {
map.put("classIds", "");
}
JSONObject json = WQL.getWO("QEM_BI_DEVICEREPAIRITEMS01").addParamMap(map).pageQuery(WqlUtil.getHttpContext(page), "update_time DESC");
JSONObject json = WQL.getWO("QEM_BI_DEVICEREPAIRITEMS01").addParamMap(map).pageQuery(WqlUtil.getHttpContext(page), "create_time DESC");
return json;
}

View File

@@ -17,9 +17,13 @@ import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import io.swagger.annotations.*;
import java.io.IOException;
import java.util.Map;
import lombok.extern.slf4j.Slf4j;
import javax.servlet.http.HttpServletResponse;
/**
* @author Liuxy
* @date 2021-12-15
@@ -133,4 +137,9 @@ public class ReceivemstController {
receivemstService.createQc(whereJson);
return new ResponseEntity<>(HttpStatus.OK);
}
@ApiOperation("导出数据")
@GetMapping(value = "/download")
public void download(HttpServletResponse response, ReceivemstQueryDto dto) throws IOException {
receivemstService.download(dto, response);
}
}

View File

@@ -101,4 +101,11 @@ public interface ReceivemstService {
* @param whereJson/
*/
void createQc(Map whereJson);
/**
*
* @param whereJson
* @param response
* @throws IOException
*/
void download(ReceivemstQueryDto dto, HttpServletResponse response) throws IOException;
}

View File

@@ -2,6 +2,7 @@
package org.nl.wms.pcs.service.impl;
import cn.hutool.core.date.DateUnit;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.map.MapUtil;
import cn.hutool.core.util.IdUtil;
@@ -16,6 +17,7 @@ import lombok.extern.slf4j.Slf4j;
import org.nl.exception.BadRequestException;
import org.nl.modules.security.service.dto.JwtUserDto;
import org.nl.modules.system.util.CodeUtil;
import org.nl.utils.FileUtil;
import org.nl.utils.SecurityUtils;
import org.nl.wms.basedata.master.constant.MaterOptTypeEnum;
import org.nl.wms.basedata.master.service.ClassstandardService;
@@ -34,9 +36,9 @@ import org.springframework.data.domain.Pageable;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.*;
/**
* @author Liuxy
@@ -539,4 +541,87 @@ public class ReceivemstServiceImpl implements ReceivemstService {
}
@Override
public void download(ReceivemstQueryDto dto, HttpServletResponse response) throws IOException {
//根据登陆人员的所在部门查找对应的计划
String user_id = String.valueOf(SecurityUtils.getCurrentUserId());
JSONObject jsonUser = WQLObject.getWQLObject("sys_user").query("user_id = '" + user_id + "'").uniqueResult(0);
String begin_time = dto.getBegin_time();
String end_time = dto.getEnd_time();
String vbillcode = dto.getVbillcode();
String receive_code = dto.getReceive_code();
String material_code = dto.getMaterial_code();
String supp_code = dto.getSupp_code();
String pcsn = dto.getPcsn();
String[] statusArr = dto.getStatus();
String status = "('";
if (ObjectUtil.isNotEmpty(statusArr)) {
for (int i = 0; i < statusArr.length; i++) {
if ((i+1) == statusArr.length) {
status = status +statusArr[i] + "')";
} else {
status = status + statusArr[i] + "','";
}
}
}
HashMap<String, String> map = new HashMap<>();
map.put("flag", "11");
map.put("begin_time", begin_time);
map.put("end_time", end_time);
map.put("vbillcode", vbillcode);
map.put("receive_code", receive_code);
map.put("supp_code", supp_code);
if (ObjectUtil.isNotEmpty(statusArr)) {
map.put("status", status);
}
if (ObjectUtil.isNotEmpty(pcsn)) {
map.put("pcsn", "%"+pcsn+"%");
}
if (ObjectUtil.isNotEmpty(material_code)) {
map.put("material_code", "%"+material_code+"%");
}
JSONArray rows = WQL.getWO("QPCS_RC_RECEIVEMST01").addParamMap(map).process().getResultJSONArray(0);
List<Map<String, Object>> list = new ArrayList<>();
for (int i = 0; i < rows.size(); i++) {
JSONObject jo = rows.getJSONObject(i);
Map<String, Object> dtl_map = new LinkedHashMap<>();
String status2 = jo.getString("status");
if(status2.equals("10")){
dtl_map.put("状态", "生成");
}else if(status2.equals("20")){
dtl_map.put("状态", "提交");
}else if(status2.equals("30")){
dtl_map.put("状态", "到货中");
}else if(status2.equals("99")){
dtl_map.put("状态", "确认");
}
dtl_map.put("订单编号", jo.getString("vbillcode"));
dtl_map.put("到货单号", jo.getString("receive_code"));
dtl_map.put("供应商", jo.getString("supp_name"));
dtl_map.put("物料编码", jo.getString("material_code"));
dtl_map.put("物料名称", jo.getString("material_name"));
dtl_map.put("批次号", jo.getString("pcsn"));
String is_no = jo.getString("is_no");
if (StrUtil.isEmpty(is_no)) {
dtl_map.put("质检单是否已生成", "");
}else{
dtl_map.put("质检单是否已生成", "");
}
dtl_map.put("到货重量", jo.getString("receive_qty"));
dtl_map.put("入库重量", jo.getString("instor_qty"));
dtl_map.put("剩余重量", jo.getString("surplus_qty"));
dtl_map.put("单位", jo.getString("qty_unit_name"));
dtl_map.put("创建人", jo.getString("input_optname"));
dtl_map.put("到货日期", jo.getString("receive_date"));
list.add(dtl_map);
}
FileUtil.downloadExcel(list, response);
}
}

View File

@@ -124,6 +124,82 @@
ENDPAGEQUERY
ENDIF
IF 输入.flag = "11"
QUERY
SELECT
dtl.*,
supp.supp_name,
mater.material_code,
mater.material_name,
mst.receive_date,
mst.input_optname,
mst.source_type,
mst.create_mode,
mst.receive_type,
mst.stor_id,
mst.stor_name,
mst.remark,
mst.dtl_num,
mst.total_qty,
proc.vbillcode,
ext.standard_weight,
(dtl.receive_qty - dtl.instor_qty) AS surplus_qty,
SUBSTR(proc.vbillcode,1,6) AS order_code_1,
SUBSTR(proc.vbillcode,8,10) AS order_code_2,
sheetMst.inspection_id AS is_no
FROM
PCS_RC_ReceiveDtl dtl
LEFT JOIN pcs_rc_receivemst mst ON mst.receive_id = dtl.receive_id
LEFT JOIN MD_ME_MaterialBase mater ON mater.material_id = dtl.material_id
LEFT JOIN PCS_IF_PurchaseOrderProc proc ON proc.id = dtl.source_billdtl_id
LEFT JOIN MD_CS_SUPPLIERBASE supp ON proc.vend_id = supp.ext_id
LEFT JOIN MD_ME_StockMaterialExt ext ON mater.material_id = ext.material_id
LEFT JOIN QL_TEST_InspectionSheetDtl sheetDtl ON dtl.material_id = sheetDtl.material_id AND dtl.pcsn = sheetDtl.pcsn
LEFT JOIN QL_TEST_InspectionSheetMst sheetMst ON sheetMst.inspection_id = sheetDtl.inspection_id and sheetMst.is_delete = '0'
WHERE
mst.is_delete = '0'
OPTION 输入.dept_id <> ""
mst.sysdeptid = 输入.dept_id
ENDOPTION
OPTION 输入.begin_time <> ""
mst.receive_date >= 输入.begin_time
ENDOPTION
OPTION 输入.end_time <> ""
mst.receive_date <= 输入.end_time
ENDOPTION
OPTION 输入.vbillcode <> ""
proc.vbillcode = 输入.vbillcode
ENDOPTION
OPTION 输入.receive_code <> ""
dtl.receive_code = 输入.receive_code
ENDOPTION
OPTION 输入.material_code <> ""
( mater.material_code like "%" 输入.material_code "%" or
mater.material_name like "%" 输入.material_code "%")
ENDOPTION
OPTION 输入.pcsn <> ""
dtl.pcsn like 输入.pcsn
ENDOPTION
OPTION 输入.supp_code <> ""
( supp.supp_code like "%" 输入.supp_code "%" or
supp.supp_name like "%" 输入.supp_code "%")
ENDOPTION
OPTION 输入.status <> ""
dtl.status in 输入.status
ENDOPTION
order by order_code_1 DESC,order_code_2 ASC,mst.receive_code ASC
ENDSELECT
ENDQUERY
ENDIF
IF 输入.flag = "2"
PAGEQUERY

View File

@@ -405,8 +405,8 @@ public class DailyplanServiceImpl implements DailyplanService {
new_jo.put("workorder_qty",jo.getString("standard_weight"));
new_jo.put("planstart_time",jo.getString("planstart_date").substring(0,10)+" 08:00:00");
new_jo.put("planend_time",jo.getString("planend_date").substring(0,10)+" 23:59:59");
new_jo.put("status",jsonMst.getString("remark"));
new_jo.put("remark","10");
new_jo.put("remark",jsonMst.getString("remark"));
new_jo.put("status","10");
new_jo.put("create_mode","03");
new_jo.put("source_bill_id",jo.getString("dailyplan_id"));
new_jo.put("source_bill_type",jo.getString("workorder_type"));

View File

@@ -201,17 +201,12 @@ public class WorkOrderServiceImpl implements WorkOrdereService {
continue;
}
JSONObject param = new JSONObject();
param.put("workorder_id", String.valueOf(workorder_id));
param.put("is_delete", "1");
param.put("update_optid", currentUserId);
param.put("update_optname", nickName);
param.put("update_time", now);
PDM_BI_WorkOrder.update(param);
String workorder_id2 = String.valueOf(workorder_id);
PDM_BI_WorkOrder.delete("workorder_id='"+workorder_id2+"'");
String source_bill_id = jo.getString("source_bill_id");
JSONArray ja = PDM_BI_WorkOrder.query("is_delete='0' and source_bill_id='"+source_bill_id+"'").getResultJSONArray(0);
if(ja.size() == 0){
if (StrUtil.isNotEmpty(source_bill_id)) {
if (StrUtil.isNotEmpty(source_bill_id)) {
JSONArray ja = PDM_BI_WorkOrder.query("is_delete='0' and source_bill_id='"+source_bill_id+"'").getResultJSONArray(0);
if(ja.size() == 0){
JSONObject param2 = new JSONObject();
param2.put("status", "01");
MPS_BD_ProductDailyPlan.update(param2,"dailyplan_id='"+source_bill_id+"'");

View File

@@ -161,6 +161,10 @@ public class AcceptFormulaServiceImpl implements AcceptFormulaService {
jsonDtl.put("formula_code", formula_code+"");
jsonDtl.put("seq_no", (i+1)+"");
jsonDtl.put("material_type","01");
String material_id = json.getString("material_id");
if("1503644362234531840,1503644362788179968".contains(material_id)){
jsonDtl.put("material_type","02");
}
jsonDtl.put("material_id", json.getString("material_id"));
jsonDtl.put("dtl_pcsn", json.getString("dtl_pcsn"));
jsonDtl.put("formula_qty", json.getString("formula_qty"));
@@ -215,6 +219,10 @@ public class AcceptFormulaServiceImpl implements AcceptFormulaService {
jsonDtl.put("formula_code", now.getString("formula_code"));
jsonDtl.put("seq_no", (i+1)+"");
jsonDtl.put("material_type","01");
String material_id = json.getString("material_id");
if("1503644362234531840,1503644362788179968".contains(material_id)){
jsonDtl.put("material_type","02");
}
jsonDtl.put("material_id", json.getString("material_id"));
jsonDtl.put("dtl_pcsn", json.getString("dtl_pcsn"));
jsonDtl.put("formula_qty", json.getString("formula_qty"));
@@ -413,18 +421,18 @@ public class AcceptFormulaServiceImpl implements AcceptFormulaService {
// 酒精体积:液料比*开单总重
double bar_bulk = NumberUtil.mul(jsonFormMst.getDoubleValue("confirm_qty"), jsonMark.getDoubleValue("liquid_rate"));
oneMap.put("bar_bulk", NumberUtil.round(bar_bulk, 3).toString());
oneMap.put("bar_bulk", NumberUtil.round(bar_bulk, 0).toString());
// 合金球重量:球料比*开单总重
double ball_rate_2 = NumberUtil.mul(jsonFormMst.getDoubleValue("confirm_qty"), jsonMark.getDoubleValue("ball_rate"));
double ball_weight = NumberUtil.div(ball_rate_2, 1000);
oneMap.put("ball_weight", NumberUtil.round(ball_weight, 3).toString());
oneMap.put("ball_weight", NumberUtil.round(ball_weight, 0).toString());
// 球磨时间
oneMap.put("ball_time", jsonMark.getString("ball_time"));
oneMap.put("ball_time",NumberUtil.round(jsonMark.getString("ball_time"),0).toString());
// 转速
oneMap.put("ball_speed", jsonMark.getString("ball_speed"));
oneMap.put("ball_speed", NumberUtil.round(jsonMark.getString("ball_speed"),0).toString());
// 原料总碳
oneMap.put("c_balance", jsonMark.getString("c_balance"));
@@ -467,7 +475,7 @@ public class AcceptFormulaServiceImpl implements AcceptFormulaService {
}
mapFL.put("class_name", class_name);
mapFL.put("dtl_pcsn", json.getString("dtl_pcsn"));
mapFL.put("formula_qty", NumberUtil.round(json.getString("formula_qty"), 3).toString());
mapFL.put("formula_qty", NumberUtil.round(json.getString("formula_qty"), 2).toString());
flData.add(mapFL);
}
}

View File

@@ -2,6 +2,7 @@
package org.nl.wms.sb.repair.service.impl;
import cn.hutool.core.date.DateTime;
import cn.hutool.core.map.MapUtil;
import cn.hutool.core.util.StrUtil;
import com.alibaba.fastjson.JSON;
@@ -153,10 +154,30 @@ public class DevicerepairrequestServiceImpl implements DevicerepairrequestServic
public void create(DevicerepairrequestDto dto) {
DeptService deptService = SpringContextHolder.getBean(DeptService.class);
WQLObject fileTab = WQLObject.getWQLObject("EM_BI_EquipmentFile");
Long currentUserId = SecurityUtils.getCurrentUserId();
String nickName = SecurityUtils.getNickName();
String now = DateUtil.now();
// 前一天运行记录表 超过三条没填的报错
JSONArray numRunArr = new JSONArray();
String yesterday = DateUtil.yesterday().toString().substring(0,10);
JSONArray fileArr = fileTab.query("is_delete = '0' and status not in ('90','91')").getResultJSONArray(0);
JSONObject map = new JSONObject();
map.put("flag", "5");
map.put("yesterday",yesterday);
for (int i = 0; i < fileArr.size(); i++) {
JSONObject json = fileArr.getJSONObject(i);
map.put("devicerecord_id",json.getString("devicerecord_id"));
JSONObject jsonRun = WQL.getWO("EM_BI_DEVICEREPAIRREQUEST001").addParamMap(map).process().uniqueResult(0);
if (ObjectUtil.isEmpty(jsonRun)) numRunArr.add(jsonRun);
}
if (numRunArr.size() > 3) throw new BadRequestException("昨天设备运行记录有超过3条未填写,未填写:"+String.valueOf(numRunArr.size()) + "");
JwtUserDto currentUser = (JwtUserDto) SecurityUtils.getCurrentUser();
Long deptId = currentUser.getDeptId();
// 登录人所在班组下的设备维修单(结束维修) > 2 报错

View File

@@ -21,7 +21,9 @@
输入.begin_time TYPEAS s_string
输入.end_time TYPEAS s_string
输入.deptIds TYPEAS f_string
输入.use_groupid TYPEAS f_string
输入.use_groupid TYPEAS f_string
输入.yesterday TYPEAS s_string
输入.devicerecord_id TYPEAS s_string
[临时表]
@@ -187,5 +189,26 @@
ENDQUERY
ENDIF
IF 输入.flag = "5"
QUERY
SELECT
*
FROM
EM_BI_DeviceRunRecord
WHERE
1=1
OPTION 输入.yesterday <> ""
run_date = 输入.yesterday
ENDOPTION
OPTION 输入.devicerecord_id <> ""
devicerecord_id = 输入.devicerecord_id
ENDOPTION
ENDSELECT
ENDQUERY
ENDIF