代码更新

This commit is contained in:
2022-07-18 14:47:46 +08:00
parent 0a41cda142
commit f70b92eea0
14 changed files with 214 additions and 154 deletions

View File

@@ -37,90 +37,93 @@ public class AutoCreateRepair {
JSONObject json = fileArr.getJSONObject(i);
String devicerecord_id = json.getString("devicerecord_id");
JSONObject jsonPlanMst = planMstTab.query("devicerecord_id = '" + devicerecord_id + "' and is_active = '1'").uniqueResult(0);
if (ObjectUtil.isNotEmpty(jsonPlanMst)) {
// 2.1 判断维修计划表中:实际开始时间、实际结束时间 为空
String real_start_date = jsonPlanMst.getString("real_start_date");
String real_end_date = jsonPlanMst.getString("real_end_date");
JSONArray jsonPlanMstArr = planMstTab.query("devicerecord_id = '" + devicerecord_id + "' and is_active = '1'").getResultJSONArray(0);
if (ObjectUtil.isNotEmpty(jsonPlanMstArr)) {
for (int j = 0; j < jsonPlanMstArr.size(); j++) {
JSONObject jsonPlanMst = jsonPlanMstArr.getJSONObject(j);
// 2.1 判断维修计划表中:实际开始时间、实际结束时间 为空
String real_start_date = jsonPlanMst.getString("real_start_date");
String real_end_date = jsonPlanMst.getString("real_end_date");
// 2.2 根据源单号为维修计划id查询 维修单 --条件未删除、未审核
JSONObject jsonRepairMst = repairMstTab.query("source_bill_id = '" + jsonPlanMst.getString("repair_plan_id") + "' and is_delete = '0' and invstatus != '99'").uniqueResult(0);
if (ObjectUtil.isEmpty(real_start_date) && ObjectUtil.isEmpty(real_end_date)) {
if (ObjectUtil.isEmpty(jsonRepairMst)) {
// 2.3 判断周期
String maintenancecycle = jsonPlanMst.getString("maintenancecycle");
String plan_start_date = jsonPlanMst.getString("plan_start_date").replace("-", "");
String today = DateUtil.today().replace("-", "");
// 准备参数
JSONObject param = new JSONObject();
param.put("devicerecord_id",jsonPlanMst.getString("devicerecord_id"));
param.put("maintenancecycle","01");
param.put("plan_start_date",jsonPlanMst.getString("plan_start_date"));
param.put("source_bill_id",jsonPlanMst.getString("repair_plan_id"));
param.put("source_bill_code",jsonPlanMst.getString("repair_plan_code"));
// 2.2 根据源单号为维修计划id查询 维修单 --条件未删除、未审核
JSONObject jsonRepairMst = repairMstTab.query("source_bill_id = '" + jsonPlanMst.getString("repair_plan_id") + "' and is_delete = '0' and invstatus != '99'").uniqueResult(0);
if (ObjectUtil.isEmpty(real_start_date) && ObjectUtil.isEmpty(real_end_date)) {
if (ObjectUtil.isEmpty(jsonRepairMst)) {
// 2.3 判断周期
String maintenancecycle = jsonPlanMst.getString("maintenancecycle");
String plan_start_date = jsonPlanMst.getString("plan_start_date").replace("-", "");
String today = DateUtil.today().replace("-", "");
// 准备参数
JSONObject param = new JSONObject();
param.put("devicerecord_id",jsonPlanMst.getString("devicerecord_id"));
param.put("maintenancecycle","01");
param.put("plan_start_date",jsonPlanMst.getString("plan_start_date"));
param.put("source_bill_id",jsonPlanMst.getString("repair_plan_id"));
param.put("source_bill_code",jsonPlanMst.getString("repair_plan_code"));
// 计算 当前日期 - 维修计划日期 后的天数
String num = String.valueOf(NumberUtil.sub(today, plan_start_date));
// 计算 当前日期 - 维修计划日期 后的天数
String num = String.valueOf(NumberUtil.sub(today, plan_start_date));
// 周期为年 :当前日期-维修计划开始时间 <= 15 天时,新增维修单
if (StrUtil.equals(maintenancecycle,"01")) {
if (Integer.parseInt(num) <= 15) {
this.createRepair(param);
}
// 周期为季度 :当前日期-维修计划开始时间 <= 10 天时,新增维修单
} else if (StrUtil.equals(maintenancecycle,"02")) {
if (Integer.parseInt(num) <= 10) {
this.createRepair(param);
}
// 周期为月 :当前日期-维修计划开始时间 <= 7 天时,新增维修单
} else if (StrUtil.equals(maintenancecycle,"03")) {
if (Integer.parseInt(num) <= 7) {
this.createRepair(param);
}
// 周期为周 :当前日期-维修计划开始时间 <= 3 天时,新增维修单
} else if (StrUtil.equals(maintenancecycle,"04")) {
if (Integer.parseInt(num) <= 3) {
this.createRepair(param);
// 周期为年 :当前日期-维修计划开始时间 <= 15 天时,新增维修单
if (StrUtil.equals(maintenancecycle,"01")) {
if (Integer.parseInt(num) <= 15) {
this.createRepair(param);
}
// 周期为季度 :当前日期-维修计划开始时间 <= 10 天时,新增维修单
} else if (StrUtil.equals(maintenancecycle,"02")) {
if (Integer.parseInt(num) <= 10) {
this.createRepair(param);
}
// 周期为月 :当前日期-维修计划开始时间 <= 7 天时,新增维修单
} else if (StrUtil.equals(maintenancecycle,"03")) {
if (Integer.parseInt(num) <= 7) {
this.createRepair(param);
}
// 周期为周 :当前日期-维修计划开始时间 <= 3 天时,新增维修单
} else if (StrUtil.equals(maintenancecycle,"04")) {
if (Integer.parseInt(num) <= 3) {
this.createRepair(param);
}
}
}
}
} else {
// 3 如果保养实际开始时间 和 保养实际结束时间不为空 并且查不到对应单据
if (ObjectUtil.isEmpty(jsonRepairMst)) {
// 取维修实际结束日期:用当前日期 - 维修实际结束日期
String maintenancecycle = jsonPlanMst.getString("maintenancecycle");
String rep_real_end_date = jsonPlanMst.getString("real_end_date").replace("-", "");
String today = DateUtil.today().replace("-", "");
} else {
// 3 如果保养实际开始时间 和 保养实际结束时间不为空 并且查不到对应单据
if (ObjectUtil.isEmpty(jsonRepairMst)) {
// 取维修实际结束日期:用当前日期 - 维修实际结束日期
String maintenancecycle = jsonPlanMst.getString("maintenancecycle");
String rep_real_end_date = jsonPlanMst.getString("real_end_date").replace("-", "");
String today = DateUtil.today().replace("-", "");
// 准备参数
JSONObject param = new JSONObject();
param.put("devicerecord_id",jsonPlanMst.getString("devicerecord_id"));
param.put("maintenancecycle","01");
param.put("plan_start_date",jsonPlanMst.getString("plan_start_date"));
param.put("source_bill_id",jsonPlanMst.getString("repair_plan_id"));
param.put("source_bill_code",jsonPlanMst.getString("repair_plan_code"));
// 计算 当前日期 - 维修实际结束 后的天数
String num = String.valueOf(NumberUtil.sub(today, rep_real_end_date));
// 准备参数
JSONObject param = new JSONObject();
param.put("devicerecord_id",jsonPlanMst.getString("devicerecord_id"));
param.put("maintenancecycle","01");
param.put("plan_start_date",jsonPlanMst.getString("plan_start_date"));
param.put("source_bill_id",jsonPlanMst.getString("repair_plan_id"));
param.put("source_bill_code",jsonPlanMst.getString("repair_plan_code"));
// 计算 当前日期 - 维修实际结束 后的天数
String num = String.valueOf(NumberUtil.sub(today, rep_real_end_date));
// 周期为年 :当前日期-维修实际结束 <= 15 天时,新增维修单
if (StrUtil.equals(maintenancecycle,"01")) {
if (Integer.parseInt(num) <= 15) {
this.createRepair(param);
}
// 周期为季度 :当前日期-维修实际结束 <= 10 天时,新增维修单
} else if (StrUtil.equals(maintenancecycle,"02")) {
if (Integer.parseInt(num) <= 10) {
this.createRepair(param);
}
// 周期为月 :当前日期-维修实际结束 <= 7 天时,新增维修单
} else if (StrUtil.equals(maintenancecycle,"03")) {
if (Integer.parseInt(num) <= 7) {
this.createRepair(param);
}
// 周期为周 :当前日期-维修实际结束 <= 3 天时,新增维修单
} else if (StrUtil.equals(maintenancecycle,"04")) {
if (Integer.parseInt(num) <= 3) {
this.createRepair(param);
// 周期为年 :当前日期-维修实际结束 <= 15 天时,新增维修单
if (StrUtil.equals(maintenancecycle,"01")) {
if (Integer.parseInt(num) <= 15) {
this.createRepair(param);
}
// 周期为季度 :当前日期-维修实际结束 <= 10 天时,新增维修单
} else if (StrUtil.equals(maintenancecycle,"02")) {
if (Integer.parseInt(num) <= 10) {
this.createRepair(param);
}
// 周期为月 :当前日期-维修实际结束 <= 7 天时,新增维修单
} else if (StrUtil.equals(maintenancecycle,"03")) {
if (Integer.parseInt(num) <= 7) {
this.createRepair(param);
}
// 周期为周 :当前日期-维修实际结束 <= 3 天时,新增维修单
} else if (StrUtil.equals(maintenancecycle,"04")) {
if (Integer.parseInt(num) <= 3) {
this.createRepair(param);
}
}
}
}

View File

@@ -37,80 +37,83 @@ public class AutoCreateUpkeep {
JSONObject json = fileArr.getJSONObject(i);
String devicerecord_id = json.getString("devicerecord_id");
JSONObject jsonPlanMst = planMstTab.query("devicerecord_id = '" + devicerecord_id + "' and is_active = '1'").uniqueResult(0);
if (ObjectUtil.isNotEmpty(jsonPlanMst)) {
// 2.1 判断保养计划表中:实际开始时间、实际结束时间 为空
String real_start_date = jsonPlanMst.getString("real_start_date");
String real_end_date = jsonPlanMst.getString("real_end_date");
JSONArray jsonPlanMstArr = planMstTab.query("devicerecord_id = '" + devicerecord_id + "' and is_active = '1'").getResultJSONArray(0);
if (ObjectUtil.isNotEmpty(jsonPlanMstArr)) {
for (int j = 0; j < jsonPlanMstArr.size(); j++) {
JSONObject jsonPlanMst = jsonPlanMstArr.getJSONObject(j);
// 2.1 判断保养计划表中:实际开始时间、实际结束时间 为空
String real_start_date = jsonPlanMst.getString("real_start_date");
String real_end_date = jsonPlanMst.getString("real_end_date");
// 2.2 根据源单号为保养计划id查询 保养单 --条件未删除、未审核
JSONObject jsonMainMst = mainMstTab.query("source_bill_id = '" + jsonPlanMst.getString("maint_plan_id") + "' and is_delete = '0' and invstatus != '99'").uniqueResult(0);
if (ObjectUtil.isEmpty(real_start_date) && ObjectUtil.isEmpty(real_end_date)) {
if (ObjectUtil.isEmpty(jsonMainMst)) {
// 2.3 判断周期
String maintenancecycle = jsonPlanMst.getString("maintenancecycle");
String plan_start_date = jsonPlanMst.getString("plan_start_date").replace("-", "");
String today = DateUtil.today().replace("-", "");
// 准备参数
JSONObject param = new JSONObject();
param.put("devicerecord_id",jsonPlanMst.getString("devicerecord_id"));
param.put("maintenancecycle","01");
param.put("plan_start_date",jsonPlanMst.getString("plan_start_date"));
param.put("source_bill_id",jsonPlanMst.getString("maint_plan_id"));
param.put("source_bill_code",jsonPlanMst.getString("maint_plan_code"));
// 2.2 根据源单号为保养计划id查询 保养单 --条件未删除、未审核
JSONObject jsonMainMst = mainMstTab.query("source_bill_id = '" + jsonPlanMst.getString("maint_plan_id") + "' and is_delete = '0' and invstatus != '99'").uniqueResult(0);
if (ObjectUtil.isEmpty(real_start_date) && ObjectUtil.isEmpty(real_end_date)) {
if (ObjectUtil.isEmpty(jsonMainMst)) {
// 2.3 判断周期
String maintenancecycle = jsonPlanMst.getString("maintenancecycle");
String plan_start_date = jsonPlanMst.getString("plan_start_date").replace("-", "");
String today = DateUtil.today().replace("-", "");
// 准备参数
JSONObject param = new JSONObject();
param.put("devicerecord_id",jsonPlanMst.getString("devicerecord_id"));
param.put("maintenancecycle","01");
param.put("plan_start_date",jsonPlanMst.getString("plan_start_date"));
param.put("source_bill_id",jsonPlanMst.getString("maint_plan_id"));
param.put("source_bill_code",jsonPlanMst.getString("maint_plan_code"));
// 计算 当前日期 - 保养计划日期 后的天数
String num = String.valueOf(NumberUtil.sub(today, plan_start_date));
// 计算 当前日期 - 保养计划日期 后的天数
String num = String.valueOf(NumberUtil.sub(today, plan_start_date));
// 周期为年 :当前日期-保养计划日期 <= 15 天时,新增保养单
if (StrUtil.equals(maintenancecycle,"01")) {
if (Integer.parseInt(num) <= 15) {
this.createMain(param);
}
// 周期为月 :当前日期-保养计划日期 <= 7 天时,新增保养单
} else if (StrUtil.equals(maintenancecycle,"02")) {
if (Integer.parseInt(num) <= 7) {
this.createMain(param);
}
// 周期为周 :当前日期-保养计划日期 <= 3 天时,新增保养单
} else if (StrUtil.equals(maintenancecycle,"03")) {
if (Integer.parseInt(num) <= 3) {
this.createMain(param);
// 周期为年 :当前日期-保养计划日期 <= 15 天时,新增保养单
if (StrUtil.equals(maintenancecycle,"01")) {
if (Integer.parseInt(num) <= 15) {
this.createMain(param);
}
// 周期为月 :当前日期-保养计划日期 <= 7 天时,新增保养单
} else if (StrUtil.equals(maintenancecycle,"02")) {
if (Integer.parseInt(num) <= 7) {
this.createMain(param);
}
// 周期为周 :当前日期-保养计划日期 <= 3 天时,新增保养单
} else if (StrUtil.equals(maintenancecycle,"03")) {
if (Integer.parseInt(num) <= 3) {
this.createMain(param);
}
}
}
}
} else {
// 3 如果保养实际开始时间 和 保养实际结束时间不为空 并且查不到对应单据
if (ObjectUtil.isEmpty(jsonMainMst)) {
// 取保养实际结束日期:用当前日期 - 保养实际结束日期
String maintenancecycle = jsonPlanMst.getString("maintenancecycle");
String rep_real_end_date = jsonPlanMst.getString("real_end_date").replace("-", "");
String today = DateUtil.today().replace("-", "");
} else {
// 3 如果保养实际开始时间 和 保养实际结束时间不为空 并且查不到对应单据
if (ObjectUtil.isEmpty(jsonMainMst)) {
// 取保养实际结束日期:用当前日期 - 保养实际结束日期
String maintenancecycle = jsonPlanMst.getString("maintenancecycle");
String rep_real_end_date = jsonPlanMst.getString("real_end_date").replace("-", "");
String today = DateUtil.today().replace("-", "");
// 准备参数
JSONObject param = new JSONObject();
param.put("devicerecord_id",jsonPlanMst.getString("devicerecord_id"));
param.put("maintenancecycle","01");
param.put("plan_start_date",jsonPlanMst.getString("plan_start_date"));
param.put("source_bill_id",jsonPlanMst.getString("maint_plan_id"));
param.put("source_bill_code",jsonPlanMst.getString("maint_plan_code"));
// 计算 当前日期 - 保养实际结束 后的天数
String num = String.valueOf(NumberUtil.sub(today, rep_real_end_date));
// 准备参数
JSONObject param = new JSONObject();
param.put("devicerecord_id",jsonPlanMst.getString("devicerecord_id"));
param.put("maintenancecycle","01");
param.put("plan_start_date",jsonPlanMst.getString("plan_start_date"));
param.put("source_bill_id",jsonPlanMst.getString("maint_plan_id"));
param.put("source_bill_code",jsonPlanMst.getString("maint_plan_code"));
// 计算 当前日期 - 保养实际结束 后的天数
String num = String.valueOf(NumberUtil.sub(today, rep_real_end_date));
// 周期为年 :当前日期-保养实际结束 <= 15 天时,新增保养单
if (StrUtil.equals(maintenancecycle,"01")) {
if (Integer.parseInt(num) <= 15) {
this.createMain(param);
}
// 周期为月 :当前日期-保养实际结束 <= 7 天时,新增保养单
} else if (StrUtil.equals(maintenancecycle,"02")) {
if (Integer.parseInt(num) <= 7) {
this.createMain(param);
}
// 周期为周 :当前日期-保养实际结束 <= 3 天时,新增保养单
} else if (StrUtil.equals(maintenancecycle,"03")) {
if (Integer.parseInt(num) <= 3) {
this.createMain(param);
// 周期为年 :当前日期-保养实际结束 <= 15 天时,新增保养单
if (StrUtil.equals(maintenancecycle,"01")) {
if (Integer.parseInt(num) <= 15) {
this.createMain(param);
}
// 周期为月 :当前日期-保养实际结束 <= 7 天时,新增保养单
} else if (StrUtil.equals(maintenancecycle,"02")) {
if (Integer.parseInt(num) <= 7) {
this.createMain(param);
}
// 周期为周 :当前日期-保养实际结束 <= 3 天时,新增保养单
} else if (StrUtil.equals(maintenancecycle,"03")) {
if (Integer.parseInt(num) <= 3) {
this.createMain(param);
}
}
}
}

View File

@@ -724,9 +724,11 @@ public class DevicerepairmstServiceImpl implements DevicerepairmstService {
@Override
public Map<String, Object> queryBom(Map whereJson, Pageable page) {
String material_code = MapUtil.getStr(whereJson, "material_code");
String material_id = MapUtil.getStr(whereJson, "material_id");
HashMap<String, String> map = new HashMap<>();
map.put("flag", "5");
if (ObjectUtil.isNotEmpty(material_code)) map.put("material_code", "%"+material_code+"%");
if (ObjectUtil.isNotEmpty(material_id)) map.put("material_id", material_id);
JSONObject jsonObject = WQL.getWO("EM_BI_DEVICEREPAIR001").addParamMap(map).pageQuery(WqlUtil.getHttpContext(page), "mst.sparepart_only_id ASC");

View File

@@ -117,6 +117,10 @@ public class DevicerepairplanmstServiceImpl implements DevicerepairplanmstServic
WQLObject mstTab = WQLObject.getWQLObject("EM_BI_DeviceRepairPlanMst");
WQLObject dtlTab = WQLObject.getWQLObject("EM_BI_DeviceRepairPlanDtl");
// 校验 是否有相同设备 相同周期
JSONObject jsonObject = mstTab.query("devicerecord_id = '" + whereJson.getString("devicerecord_id") + "' and maintenancecycle = '" + whereJson.getString("maintenancecycle") + "' and is_delete = '0'").uniqueResult(0);
if (ObjectUtil.isNotEmpty(jsonObject)) throw new BadRequestException("此设备已经存在此周期的计划");
// 插入主表
JSONObject jsonMst = new JSONObject();
jsonMst.put("repair_plan_id", IdUtil.getSnowflake(1,1).nextId());
@@ -239,6 +243,10 @@ public class DevicerepairplanmstServiceImpl implements DevicerepairplanmstServic
WQLObject mstTab = WQLObject.getWQLObject("EM_BI_DeviceRepairPlanMst");
WQLObject dtlTab = WQLObject.getWQLObject("EM_BI_DeviceRepairPlanDtl");
// 校验 是否有相同设备 相同周期
JSONObject jsonObject = mstTab.query("devicerecord_id = '" + whereJson.getString("devicerecord_id") + "' and maintenancecycle = '" + whereJson.getString("maintenancecycle") + "' and is_delete = '0'").uniqueResult(0);
if (ObjectUtil.isNotEmpty(jsonObject)) throw new BadRequestException("此设备已经存在此周期的计划");
// 插入主表
JSONObject jsonMst = new JSONObject();
jsonMst.put("repair_plan_id", IdUtil.getSnowflake(1,1).nextId());

View File

@@ -186,6 +186,10 @@
mater.material_name like 输入.material_code)
ENDOPTION
OPTION 输入.material_id <> ""
mater.material_id = 输入.material_id
ENDOPTION
group by mst.material_id,mst.pcsn,mst.sparepart_only_id
ENDSELECT

View File

@@ -117,6 +117,10 @@ public class DevicemaintenanceplanmstServiceImpl implements Devicemaintenancepla
WQLObject mstTab = WQLObject.getWQLObject("EM_BI_DeviceMaintenancePlanMst");
WQLObject dtlTab = WQLObject.getWQLObject("EM_BI_DeviceMaintenancePlanDtl");
// 校验:相同的设备、周期只能存在一个
JSONObject jsonObject = mstTab.query("devicerecord_id = '" + whereJson.getString("devicerecord_id") + "' and maintenancecycle = '" + whereJson.getString("maintenancecycle") + "' and is_delete = '0'").uniqueResult(0);
if (ObjectUtil.isNotEmpty(jsonObject)) throw new BadRequestException("此计划的周期只能存在一个");
// 插入主表
JSONObject jsonMst = new JSONObject();
jsonMst.put("maint_plan_id", IdUtil.getSnowflake(1,1).nextId());
@@ -263,6 +267,10 @@ public class DevicemaintenanceplanmstServiceImpl implements Devicemaintenancepla
WQLObject mstTab = WQLObject.getWQLObject("EM_BI_DeviceMaintenancePlanMst");
WQLObject dtlTab = WQLObject.getWQLObject("EM_BI_DeviceMaintenancePlanDtl");
// 校验:相同的设备、周期只能存在一个
JSONObject jsonObject = mstTab.query("devicerecord_id = '" + whereJson.getString("devicerecord_id") + "' and maintenancecycle = '" + whereJson.getString("maintenancecycle") + "' and is_delete = '0'").uniqueResult(0);
if (ObjectUtil.isNotEmpty(jsonObject)) throw new BadRequestException("此计划的周期只能存在一个");
// 插入主表
JSONObject jsonMst = new JSONObject();
jsonMst.put("maint_plan_id", IdUtil.getSnowflake(1,1).nextId());