From 5790d7573a83278667878e0f73104f8fc8ec5cf3 Mon Sep 17 00:00:00 2001
From: sgj <1442489573@qq.com>
Date: 星期二, 10 三月 2026 11:03:51 +0800
Subject: [PATCH] 巡检统计信息纠正
---
fzzy-igdss-core/src/main/java/com/fzzy/igds/service/InoutNoticeService.java | 157 +++++++++++++++++++++++++++++++++++++---------------
1 files changed, 112 insertions(+), 45 deletions(-)
diff --git a/fzzy-igdss-core/src/main/java/com/fzzy/igds/service/InoutNoticeService.java b/fzzy-igdss-core/src/main/java/com/fzzy/igds/service/InoutNoticeService.java
index 04312f6..8aef70c 100644
--- a/fzzy-igdss-core/src/main/java/com/fzzy/igds/service/InoutNoticeService.java
+++ b/fzzy-igdss-core/src/main/java/com/fzzy/igds/service/InoutNoticeService.java
@@ -1,7 +1,7 @@
package com.fzzy.igds.service;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.fzzy.igds.constant.AuditStatus;
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.fzzy.igds.constant.Constant;
import com.fzzy.igds.constant.InoutConstant;
import com.fzzy.igds.data.*;
@@ -10,6 +10,7 @@
import com.fzzy.igds.mapper.InoutNoticeOutMapper;
import com.fzzy.igds.utils.ContextUtil;
import com.fzzy.work.data.WorkBizType;
+import com.fzzy.work.data.WorkStatus;
import com.fzzy.work.domain.WorkOrderConf;
import com.fzzy.work.service.BizWorkService;
import com.ruoyi.common.utils.StringUtils;
@@ -65,6 +66,11 @@
param.setCompanyId(ContextUtil.getCompanyId());
queryWrapper.eq("company_id", param.getCompanyId());
+ if (StringUtils.isNotBlank(param.getDeptId())) {
+ queryWrapper.eq("dept_id", param.getDeptId());
+ }else {
+ queryWrapper.likeRight("dept_id", ContextUtil.subDeptId(null));
+ }
if (StringUtils.isNotBlank(param.getCustomerName())) {
queryWrapper.like("customer_name", param.getCustomerName());
}
@@ -75,6 +81,7 @@
queryWrapper.like("complete_status", param.getCompleteStatus());
}
+ queryWrapper.orderByDesc("id");
noticeInMapper.selectPage(page, queryWrapper);
}
@@ -90,6 +97,9 @@
}
if (StringUtils.isNotBlank(param.getDeptId())) {
queryWrapper.eq("dept_id", param.getDeptId());
+ }
+ if (StringUtils.isNotBlank(param.getAuditStatus())) {
+ queryWrapper.eq("audit_status", param.getAuditStatus());
}
if (StringUtils.isNotBlank(param.getCompleteStatus())) {
queryWrapper.eq("complete_status", param.getCompleteStatus());
@@ -143,7 +153,7 @@
//鑾峰彇璐ㄦ娂鍚堝悓鏁版嵁
PledgeContract pledge = this.getPledgeByDepotId(data);
if (null != pledge && pledge.getStatus().equals(Constant.YN_N)) {
- return BaseResp.error("褰撳墠浠撳簱鏈夋湭瑙e帇鐨勮川鎶煎悎鍚岋紝璐ㄦ娂鍚堝悓=" + pledge.getName());
+ return BaseResp.error("褰撳墠浠撳簱鏈夋湭瑙f娂鐨勮川鎶煎悎鍚岋紝璐ㄦ娂鍚堝悓=" + pledge.getName());
}
}
@@ -177,15 +187,14 @@
data.setUpdateTime(new Date());
data.setCreateBy(ContextUtil.getLoginUserName());
data.setCreateTime(new Date());
- data.setAuditStatus(AuditStatus.STATUS_10.getCode());
+ data.setAuditStatus(WorkStatus.STATUS_10.getCode());
data.setCompleteStatus(Constant.COMPLETE_STATUS_NONE);
//鎵ц娴佺▼
WorkOrderConf conf = workService.getConfByDeptId(data.getDeptId(), WorkBizType.TYPE_10);
//娴佺▼涓嶅惎鐢�
if (null == conf || Constant.YN_N.equals(conf.getValTag())) {
- data.setAuditStatus(AuditStatus.STATUS_20.getCode());
- data.setAuditDate(data.getCreateTime());
+ data.setAuditStatus(WorkStatus.STATUS_50.getCode());
} else {
BaseResp resp = workService.startByNoticeIn(data, conf);
log.info("---------鍚姩宸ュ崟娴佺▼------{}", resp);
@@ -198,9 +207,9 @@
/**
- * 鍒ゆ柇褰撳墠浠撳簱鏄惁鍦ㄨ川鎶煎悎鍚屼腑鏈В鍘�
+ * 鍒ゆ柇褰撳墠浠撳簱鏄惁鍦ㄨ川鎶煎悎鍚屼腑鏈В鎶�
* @param data 褰撳墠鏁版嵁
- * @return true-鍦ㄨ川鎶煎悎鍚屼腑鏈В鍘嬶紝false-鍦ㄨ川鎶煎悎鍚屼腑宸茶В鍘�
+ * @return true-鍦ㄨ川鎶煎悎鍚屼腑鏈В鎶硷紝false-鍦ㄨ川鎶煎悎鍚屼腑宸茶В鎶�
*/
private PledgeContract getPledgeByDepotId(InoutNoticeIn data) {
IgdsBaseParam param = new IgdsBaseParam();
@@ -217,6 +226,18 @@
param.setDepotId(data.getDepotId());
param.setBankId(data.getBankId());
return pledgeContractService.getByDepotId(param);
+ }
+
+ /**
+ * 鏇存柊瀹℃牳鐘舵��
+ * @param id
+ * @param status
+ */
+ public void updateNoticeInStatus(String id, String status) {
+ UpdateWrapper<InoutNoticeIn> updateWrapper = new UpdateWrapper<>();
+ updateWrapper.eq("id", id).set("audit_status", status);
+
+ noticeInMapper.update(null, updateWrapper);
}
/**
@@ -246,6 +267,11 @@
param.setCompanyId(ContextUtil.getCompanyId());
queryWrapper.eq("company_id", param.getCompanyId());
+ if (StringUtils.isNotBlank(param.getDeptId())) {
+ queryWrapper.eq("dept_id", param.getDeptId());
+ }else {
+ queryWrapper.likeRight("dept_id", ContextUtil.subDeptId(null));
+ }
if (StringUtils.isNotBlank(param.getCustomerName())) {
queryWrapper.like("customer_name", param.getCustomerName());
}
@@ -255,7 +281,7 @@
if (StringUtils.isNotBlank(param.getCompleteStatus())) {
queryWrapper.like("complete_status", param.getCompleteStatus());
}
-
+ queryWrapper.orderByDesc("id");
noticeOutMapper.selectPage(page, queryWrapper);
}
@@ -270,6 +296,9 @@
}
if (StringUtils.isNotBlank(param.getDeptId())) {
queryWrapper.eq("dept_id", param.getDeptId());
+ }
+ if (StringUtils.isNotBlank(param.getAuditStatus())) {
+ queryWrapper.eq("audit_status", param.getAuditStatus());
}
if (StringUtils.isNotBlank(param.getCompleteStatus())) {
queryWrapper.eq("complete_status", param.getCompleteStatus());
@@ -288,7 +317,6 @@
* @return
*/
public InoutNoticeOut getNoticeOutOne(String id) {
-
QueryWrapper<InoutNoticeOut> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("id", id);
return noticeOutMapper.selectOne(queryWrapper);
@@ -315,58 +343,51 @@
* @param data
* @return
*/
- public String saveOrUpdateOut(InoutNoticeOut data) {
- //濡傛灉鍑哄簱閫氱煡鍗曠被鍨嬩负搴撳尯閫氱煡鍗曪紝楠岃瘉浠撳簱鏄惁鏄湭瑙e帇寰椾粨搴擄紝鏄垯涓嶅厑璁镐繚瀛�
- //鑾峰彇鎵�鏈夎川鎶煎悎鍚屾暟鎹�
- List<PledgeContract> pledgeContracts = pledgeContractService.listAll(null);
- if ("10".equals(data.getType())) {
- //鍦ㄨ川鎶煎悎鍚屾壘鍒版湭瑙e帇锛屼笖璐ㄦ娂浠撳簱鍖呭惈褰撳墠浠撳簱鐨勬暟鎹�
- for (PledgeContract pledgeContract : pledgeContracts) {
- if (pledgeContract.getDepotIds().contains(data.getDepotId())) {
- if (pledgeContract.getStatus().equals(Constant.YN_N)) {
- return "鍑哄簱浠撳簱鏈В鍘嬶紝鏃犳硶淇濆瓨锛�";
- }
- }
+ @Transactional(rollbackFor = Exception.class)
+ public BaseResp saveOrUpdateOut(InoutNoticeOut data) {
+ //濡傛灉鍑哄簱閫氱煡鍗曠被鍨嬩负搴撳尯閫氱煡鍗曪紝楠岃瘉浠撳簱鏄惁鏄湭瑙f娂寰椾粨搴擄紝鏄垯涓嶅厑璁镐繚瀛�
+ if (InoutConstant.NOTICE_IN_TYPE_10.equals(data.getType())) {
+ //鍦ㄨ川鎶煎悎鍚屾壘鍒版湭瑙f娂锛屼笖璐ㄦ娂浠撳簱鍖呭惈褰撳墠浠撳簱鐨勬暟鎹�
+ //鑾峰彇璐ㄦ娂鍚堝悓鏁版嵁
+ PledgeContract pledge = this.getPledgeByDepotIdOut(data);
+ if (null != pledge && pledge.getStatus().equals(Constant.YN_N)) {
+ return BaseResp.error("褰撳墠浠撳簱鏈夋湭瑙f娂鐨勮川鎶煎悎鍚岋紝璐ㄦ娂鍚堝悓=" + pledge.getName());
}
}
//濡傛灉鍑哄簱閫氱煡鍗曠被鍨嬩负鐩戠閫氱煡鍗�
- if ("20".equals(data.getType())) {
+ //濡傛灉璐ㄦ娂閫氱煡鍗�
+ if (InoutConstant.NOTICE_IN_TYPE_20.equals(data.getType())) {
//1.楠岃瘉閾惰鏄惁濉啓锛屾湭濉啓锛屽垯涓嶅厑璁镐繚瀛�
if (StringUtils.isEmpty(data.getBankId())) {
- return "鐩戠潱閾惰涓嶈兘涓虹┖锛�";
-
+ return BaseResp.error("璐ㄦ娂閾惰涓嶈兘涓虹┖锛�");
}
//2.楠岃瘉閾惰鍜屼粨搴撶殑瀵瑰簲鍏崇郴鏄惁姝g‘锛屼笉姝g‘鍒欎笉鍏佽淇濆瓨
- //鍦ㄨ川鎶煎悎鍚屾壘鍒版湭瑙e帇锛屼笖璐ㄦ娂浠撳簱鍖呭惈褰撳墠浠撳簱鐨� 閾惰-浠撳簱锛堣川鎶煎悎鍚屽叧绯伙級
- Map<String, PledgeContract> bankDepotMap = new HashMap<>();
- for (PledgeContract pledgeContract : pledgeContracts) {
- if (pledgeContract.getDepotIds().contains(data.getDepotId())) {
- if (pledgeContract.getStatus().equals(Constant.YN_N)) {
- bankDepotMap.put(pledgeContract.getPledgeBank(), pledgeContract);
- }
- }
- }
- //鍦╩ap涓鎵惧尮閰嶉摱琛岀殑鏁版嵁锛屽鏋滄病鏈夊尮閰嶇殑鏁版嵁锛屽垯涓嶅厑璁镐繚瀛�
- if (!bankDepotMap.containsKey(data.getBankId())) {
- return "鏈壘鍒板搴旂殑璐ㄦ娂鍚堝悓锛岃妫�鏌ョ洃鐫i摱琛屾垨鑰呭嚭搴撲粨搴撳~鍐欐槸鍚︽纭紒";
-
+ PledgeContract pledge = this.getPledgeByDepotIdAndBankIdOut(data);
+ if (null == pledge) {
+ return BaseResp.error("鏈幏鍙栧埌褰撳墠搴撳尯銆佷粨搴撳拰閾惰涔嬮棿鐨勮川鎶间俊鎭紒");
}
}
if (null == data.getUpdateBy()) {
- data.setUpdateBy(ContextUtil.getLoginUserName());
- data.setUpdateTime(new Date());
- data.setCreateBy(ContextUtil.getLoginUserName());
- data.setCreateTime(new Date());
- data.setAuditStatus(AuditStatus.STATUS_10.getCode());
- data.setCompleteStatus(Constant.COMPLETE_STATUS_NONE);
- noticeOutMapper.insert(data);
+ return this.saveOutAddStartWork(data);
} else {
data.setUpdateBy(ContextUtil.getLoginUserName());
data.setUpdateTime(new Date());
noticeOutMapper.updateById(data);
+ return BaseResp.success();
}
- return null;
+ }
+
+ /**
+ * 鏇存柊瀹℃牳鐘舵��
+ * @param id
+ * @param status
+ */
+ public void updateNoticeOutStatus(String id, String status) {
+ UpdateWrapper<InoutNoticeOut> updateWrapper = new UpdateWrapper<>();
+ updateWrapper.eq("id", id).set("audit_status", status);
+
+ noticeOutMapper.update(null, updateWrapper);
}
/**
@@ -380,6 +401,52 @@
return null;
}
+ private BaseResp saveOutAddStartWork(InoutNoticeOut data) {
+ //鏁版嵁淇濆瓨
+ data.setUpdateBy(ContextUtil.getLoginUserName());
+ data.setUpdateTime(new Date());
+ data.setCreateBy(ContextUtil.getLoginUserName());
+ data.setCreateTime(new Date());
+ data.setAuditStatus(WorkStatus.STATUS_10.getCode());
+ data.setCompleteStatus(Constant.COMPLETE_STATUS_NONE);
+
+ //鎵ц娴佺▼
+ WorkOrderConf conf = workService.getConfByDeptId(data.getDeptId(), WorkBizType.TYPE_20);
+ //娴佺▼涓嶅惎鐢�
+ if (null == conf || Constant.YN_N.equals(conf.getValTag())) {
+ data.setAuditStatus(WorkStatus.STATUS_50.getCode());
+ } else {
+ BaseResp resp = workService.startByNoticeOut(data, conf);
+ log.info("---------鍚姩宸ュ崟娴佺▼------{}", resp);
+ }
+
+ noticeOutMapper.insert(data);
+
+ return BaseResp.success();
+ }
+
+ /**
+ * 鍒ゆ柇褰撳墠浠撳簱鏄惁鍦ㄨ川鎶煎悎鍚屼腑鏈В鎶�
+ * @param data 褰撳墠鏁版嵁
+ * @return true-鍦ㄨ川鎶煎悎鍚屼腑鏈В鎶硷紝false-鍦ㄨ川鎶煎悎鍚屼腑宸茶В鎶�
+ */
+ private PledgeContract getPledgeByDepotIdOut(InoutNoticeOut data) {
+ IgdsBaseParam param = new IgdsBaseParam();
+ param.setCompanyId(data.getCompanyId());
+ param.setDeptId(data.getDeptId());
+ param.setDepotId(data.getDepotId());
+ return pledgeContractService.getByDepotId(param);
+ }
+
+ private PledgeContract getPledgeByDepotIdAndBankIdOut(InoutNoticeOut data) {
+ IgdsBaseParam param = new IgdsBaseParam();
+ param.setCompanyId(data.getCompanyId());
+ param.setDeptId(data.getDeptId());
+ param.setDepotId(data.getDepotId());
+ param.setBankId(data.getBankId());
+ return pledgeContractService.getByDepotId(param);
+ }
+
/**
* 鏍规嵁ID鑾峰彇閫氱煡鍗曚俊鎭�
* @param id
--
Gitblit v1.9.3