From 0774d7f588c08b27791732714aa2abf426925a96 Mon Sep 17 00:00:00 2001
From: haozq <1611483981@qq.com>
Date: Fri, 6 Feb 2026 10:04:30 +0800
Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E9=A6=96=E9=A1=B5=E8=B7=B3?=
=?UTF-8?q?=E8=BD=AC=E5=8F=8A=E6=89=B9=E9=87=8F=E5=AE=A1=E6=A0=B8?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../WEB-INF/views/rm/unFinishWorkList.jsp | 60 +-
WebContent/static/js/bm/ip_utils.js | 4 +-
.../mybatis/index/IndexHomeDetailsMapper.xml | 2121 +++++++++--------
resources/mybatis/newInput/NewInputMapper.xml | 30 +-
resources/mybatis/wf/TaskRecordMapper.xml | 49 +
.../controller/InputDetailsController.java | 2 +-
.../controller/NewInputController.java | 38 +
src/com/bonus/newInput/dao/NewInputDao.java | 6 +
.../service/NewInputQrcodeServiceImp.java | 7 +
.../newInput/service/NewInputService.java | 5 +
.../newInput/service/NewInputServiceImp.java | 21 +-
11 files changed, 1283 insertions(+), 1060 deletions(-)
diff --git a/WebContent/WEB-INF/views/rm/unFinishWorkList.jsp b/WebContent/WEB-INF/views/rm/unFinishWorkList.jsp
index 8cdcce7..097949c 100644
--- a/WebContent/WEB-INF/views/rm/unFinishWorkList.jsp
+++ b/WebContent/WEB-INF/views/rm/unFinishWorkList.jsp
@@ -178,8 +178,28 @@
JY.Model.info("您没有选择任何内容!");
return;
}
- console.log("selectedValues:", selectedValues);
-
+
+ let pizhun=[];
+ let shenhe=[];
+
+ for (var i = 0; i < selectedValues.length; i++) {
+ const item = selectedValues[i]; // 缓存当前元素,代码更简洁
+ console.log('当前遍历元素:', item);
+ // 核心:判断字符串是否包含「新购任务审核」,includes返回布尔值
+ if (item.includes('新购任务审核')) {
+ shenhe.push(item); // 符合条件,推入xingo
+ } else if (item.includes('新购任务批准')){
+ pizhun.push(item); // 不符合,推入shenhe
+ }
+ }
+ console.log('当前遍历元素:', pizhun);
+ console.log('当前遍历元素:', shenhe);
+ if(shenhe.length>0){
+ aduitFunction(shenhe);
+ }
+ if(pizhun.length>0){
+ pizhunFunction(pizhun);
+ }
$.ajax({
type: 'POST',
url: bonuspath + '/backstage/rm/taskRecord/batchApproval',
@@ -196,6 +216,42 @@
}
});
});
+ //审核
+ function aduitFunction(shenhe){
+ console.log(shenhe)
+ $.ajax({
+ type: 'POST',
+ url: bonuspath + '/backstage/new/isExamines',
+ traditional: true,
+ data: { id: shenhe.join(",") },
+ success: function(data) {
+ dataNum++;
+ },
+ error: function(xhr) {
+ console.error("请求失败,状态码:", xhr.status);
+ console.error("响应内容:", xhr.responseText);
+ }
+ });
+ }
+
+ function pizhunFunction(pizhun){
+ console.log(pizhun)
+ $.ajax({
+ type: 'POST',
+ url: bonuspath + '/backstage/new/isApprovals',
+ traditional: true,
+ data: { id: pizhun.join(",") },
+ success: function(data) {
+
+ },
+ error: function(xhr) {
+ console.error("请求失败,状态码:", xhr.status);
+ console.error("响应内容:", xhr.responseText);
+ }
+ });
+
+ }
+
// 全选逻辑
$('#checkAll').on('click', function(e) {
diff --git a/WebContent/static/js/bm/ip_utils.js b/WebContent/static/js/bm/ip_utils.js
index 8481178..3f89f80 100644
--- a/WebContent/static/js/bm/ip_utils.js
+++ b/WebContent/static/js/bm/ip_utils.js
@@ -6,9 +6,9 @@ let AQGQJ_IP='http://10.1.0.142:1999';
let AQGQJ_HTML_IP='http://10.1.0.142:1999/gz-aqgqj/';
//车辆 后端请求IP
-let CAR_IP='http://192.168.0.38:21522';
+let CAR_IP='http://127.0.0.1:21522';
//车辆 跳转页面IP
-let CAR_HTML_IP='http://192.168.0.38:8848/gz_car_ui/';
+let CAR_HTML_IP='http://127.0.0.1:8848/gz_car_ui/';
// dev -生产
diff --git a/resources/mybatis/index/IndexHomeDetailsMapper.xml b/resources/mybatis/index/IndexHomeDetailsMapper.xml
index ac409fd..03f7af0 100644
--- a/resources/mybatis/index/IndexHomeDetailsMapper.xml
+++ b/resources/mybatis/index/IndexHomeDetailsMapper.xml
@@ -2,705 +2,705 @@
-
+
-
+
-
diff --git a/resources/mybatis/newInput/NewInputMapper.xml b/resources/mybatis/newInput/NewInputMapper.xml
index 9160517..5fcbd55 100644
--- a/resources/mybatis/newInput/NewInputMapper.xml
+++ b/resources/mybatis/newInput/NewInputMapper.xml
@@ -105,7 +105,35 @@
AND
wnd.IS_ACTIVE = '1'
-
+
+ SELECT wnd.ID AS id,SUM(wir.NUM) AS nums,wnd.IS_APPROVAL AS isApproval,
+ wnd.IS_EXAMINE AS isExamine,mt.`NAME` AS maModel,mtt.`NAME` AS maType,
+ pu.`NAME` AS checker,puu.`NAME` AS customerRep,wnd.QUALIFIED_NUM AS checkNum,
+ wnd.MODEL_ID as maModelId,wnd.TASK_ID as taskId,audit.time auditTime ,pus.`NAME` auditUser
+ FROM wf_new_details wnd
+ LEFT JOIN wf_task_appoint wta ON wta.TASK_ID = wnd.TASK_ID
+ LEFT JOIN wf_info_record wir ON wir.SUP_ID = wnd.TASK_ID AND wnd.MODEL_ID = wir.MODEL_ID
+ LEFT JOIN pm_user pu on pu.ID = wnd.CHECKER
+ LEFT JOIN pm_user puu ON puu.ID = wnd.CUSTOMER_SERVICE_REP
+ LEFT JOIN ma_org_relation mor on mor.TYPE_ID = wnd.MODEL_ID
+ LEFT JOIN mm_type mt ON mt.ID = mor.TYPE_ID
+ LEFT JOIN mm_type mtt ON mtt.ID = mt.PARENT_ID
+ LEFT JOIN(
+ SELECT task, max(time) time ,creator
+ from bm_logs
+ where fun='/backstage/new/isApproval'
+ GROUP BY task
+ )audit on audit.task=wnd.TASK_ID
+ LEFT JOIN pm_user pus on pus.ID = audit.creator
+ WHERE wir.NUM IS NOT NULL AND wnd.IS_EXAMINE = 1 AND wta.IS_ACTIVE = 1
+ and wnd.id in
+
+ #{id}
+
+
+ GROUP BY wnd.MODEL_ID,wnd.TASK_ID
+ ORDER BY wnd.IS_APPROVAL
+
diff --git a/resources/mybatis/wf/TaskRecordMapper.xml b/resources/mybatis/wf/TaskRecordMapper.xml
index ad4aee8..c78c1eb 100644
--- a/resources/mybatis/wf/TaskRecordMapper.xml
+++ b/resources/mybatis/wf/TaskRecordMapper.xml
@@ -107,6 +107,55 @@
)
+ UNION ALL
+
+
+ SELECT
+ wtr.id AS id,
+ taskinfo.ID AS checkerId,
+ '-' number,
+ concat(wpd.NAME,IF(taskinfo.IS_EXAMINE=0,'审核','批准')) processName,
+ wtd.NAME definitionName,
+ pu.NAME AS creatorName,
+ DATE_FORMAT(wtr.OPERATION_TIME, '%Y-%m-%d') AS operationTime,
+ wtr.DEFINITION_ID AS definitionId,
+ CASE
+ WHEN wtr.DEFINITION_ID = 11 THEN wtr1.IS_FINISH
+ ELSE wtr.IS_FINISH
+ END AS isFinish,
+ 'TASK' AS source
+ FROM
+ wf_task_record wtr
+ INNER join(
+ SELECT TASK_ID,ID,IS_EXAMINE,IS_APPROVAL
+ FROM wf_new_details
+
+ CAST(QUALIFIED_NUM AS DECIMAL(18,2)) = CAST(INPUT_NUM AS DECIMAL(18,2))
+ and IS_ACTIVE=1
+
+ and (IS_APPROVAL=1 and IS_EXAMINE=1)
+
+
+ and (IS_APPROVAL!=1 OR IS_EXAMINE!=1)
+
+
+ )taskinfo on taskinfo.TASK_ID=wtr.id
+ LEFT JOIN wf_task_record wtr1 ON wtr1.ID = wtr.SUP_ID
+ LEFT JOIN pm_user pu ON pu.id = wtr.OPERATION_USER
+ LEFT JOIN wf_task_definition wtd ON wtd.ID = wtr.DEFINITION_ID
+ LEFT JOIN wf_process_definition wpd ON wpd.id = wtr.PROCESS_ID
+ WHERE wtr.DEFINITION_ID IN (12)
+ AND wtr.IS_ACTIVE = 1
+
+ AND wtr.OPERATION_USER = #{param.operationUserId}
+
+
+ AND (
+ wpd.NAME LIKE CONCAT('%', #{param.keyWord}, '%')
+ OR wtd.NAME LIKE CONCAT('%', #{param.keyWord}, '%')
+ OR pu.NAME LIKE CONCAT('%', #{param.keyWord}, '%')
+ )
+
UNION ALL
(
diff --git a/src/com/bonus/newInput/controller/InputDetailsController.java b/src/com/bonus/newInput/controller/InputDetailsController.java
index d139c35..8734be0 100644
--- a/src/com/bonus/newInput/controller/InputDetailsController.java
+++ b/src/com/bonus/newInput/controller/InputDetailsController.java
@@ -450,7 +450,7 @@ public class InputDetailsController extends BaseController {
String saveDirectory = "/data/gzimt/" + mkdirsName + "/"; // linux 系统路径
String os = System.getProperty("os.name");
if (os.toLowerCase().startsWith("win")) {
- saveDirectory = "e://GZMachinesWeb/" + mkdirsName + "/";
+ saveDirectory = "D://GZMachinesWeb/" + mkdirsName + "/";
}
File files = new File(saveDirectory);
if (!files.exists()) {
diff --git a/src/com/bonus/newInput/controller/NewInputController.java b/src/com/bonus/newInput/controller/NewInputController.java
index c8014e9..0645a37 100644
--- a/src/com/bonus/newInput/controller/NewInputController.java
+++ b/src/com/bonus/newInput/controller/NewInputController.java
@@ -15,6 +15,7 @@ import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.ResponseBody;
+import com.bonus.data.StringUtil;
import com.bonus.newInput.beans.NewInputBean;
import com.bonus.newInput.service.NewInputService;
import com.bonus.sys.beans.UserBean;
@@ -222,6 +223,28 @@ public class NewInputController extends BaseController {
ar.setSucceed(o);
return ar;
}
+
+ @RequestMapping(value = "isExamines", method = RequestMethod.POST)
+ @ResponseBody
+ public AjaxRes isExamines(NewInputBean o) {
+ AjaxRes ar = getAjaxRes();
+ try {
+ if(!StringUtil.isEmpty(o.getId())) {
+ String[] ids=o.getId().split(",");
+ for (String string : ids) {
+ NewInputBean newInputBean=new NewInputBean();
+ newInputBean.setId(string.split("_")[0]);
+ service.isExamine(newInputBean);
+ }
+ }
+ ar.setSucceedMsg(GlobalConst.SAVE_SUCCEED);
+ } catch (Exception e) {
+ logger.error(e.toString(), e);
+ ar.setFailMsg(GlobalConst.SAVE_FAIL);
+ }
+ ar.setSucceed(o);
+ return ar;
+ }
@RequestMapping(value = "isApproval", method = RequestMethod.POST)
@ResponseBody
@@ -237,6 +260,21 @@ public class NewInputController extends BaseController {
ar.setSucceed(o);
return ar;
}
+
+ @RequestMapping(value = "isApprovals", method = RequestMethod.POST)
+ @ResponseBody
+ public AjaxRes isApprovals (NewInputBean o) {
+ AjaxRes ar = getAjaxRes();
+ try {
+ service.isApprovals(o);
+ ar.setSucceedMsg(GlobalConst.SAVE_SUCCEED);
+ } catch (Exception e) {
+ logger.error(e.toString(), e);
+ ar.setFailMsg(GlobalConst.SAVE_FAIL);
+ }
+ ar.setSucceed(o);
+ return ar;
+ }
@RequestMapping(value = "update", method = RequestMethod.POST)
@ResponseBody
diff --git a/src/com/bonus/newInput/dao/NewInputDao.java b/src/com/bonus/newInput/dao/NewInputDao.java
index 940b331..a24214d 100644
--- a/src/com/bonus/newInput/dao/NewInputDao.java
+++ b/src/com/bonus/newInput/dao/NewInputDao.java
@@ -75,4 +75,10 @@ public interface NewInputDao extends BaseDao {
public int delDetails(NewInputBean o);
public NewInputBean getNewInputByTaskId(NewInputBean o);
+ /**
+ * 依据id查询数据
+ * @param idList
+ * @return
+ */
+ public List getNewInputList(@Param("list")List idList);
}
diff --git a/src/com/bonus/newInput/service/NewInputQrcodeServiceImp.java b/src/com/bonus/newInput/service/NewInputQrcodeServiceImp.java
index f5223b6..d75f546 100644
--- a/src/com/bonus/newInput/service/NewInputQrcodeServiceImp.java
+++ b/src/com/bonus/newInput/service/NewInputQrcodeServiceImp.java
@@ -26,6 +26,9 @@ import com.bonus.sys.AjaxRes;
import com.bonus.sys.BaseServiceImp;
import com.bonus.sys.GlobalConst;
import com.bonus.sys.Page;
+import com.bonus.sys.UserShiroHelper;
+import com.bonus.wf.beans.TaskRecordBean;
+import com.bonus.wf.dao.TaskRecordDao;
@Service("newQrcode")
public class NewInputQrcodeServiceImp extends BaseServiceImp implements NewInputQrcodeService {
@@ -232,6 +235,7 @@ public class NewInputQrcodeServiceImp extends BaseServiceImp
o.setOperationTime(DateTimeHelper.getNowTime());
o.setState("5");
if (StringHelper.isNotEmpty(o.getQrCode()) || StringHelper.isNotEmpty(o.getDeviceCode())) {
+ //第一次添加数据
o.setNums("1");
res = insertInfoRecordByCode(o);
} else {
@@ -245,6 +249,9 @@ public class NewInputQrcodeServiceImp extends BaseServiceImp
return res;
}
+
+
+
private void isFinish(NewInputQrcodeBean o) {
List list = dao.findIsSure(o);
if (list.size() > 0 && list != null) {
diff --git a/src/com/bonus/newInput/service/NewInputService.java b/src/com/bonus/newInput/service/NewInputService.java
index 030231d..d420633 100644
--- a/src/com/bonus/newInput/service/NewInputService.java
+++ b/src/com/bonus/newInput/service/NewInputService.java
@@ -29,4 +29,9 @@ public interface NewInputService extends BaseService {
public int deleteQrcode(NewInputBean o);
public AjaxRes getProcessInfo(NewInputBean o);
+ /**
+ * 批量批准
+ * @param o
+ */
+ void isApprovals(NewInputBean o);
}
diff --git a/src/com/bonus/newInput/service/NewInputServiceImp.java b/src/com/bonus/newInput/service/NewInputServiceImp.java
index a6f2a31..db05d9e 100644
--- a/src/com/bonus/newInput/service/NewInputServiceImp.java
+++ b/src/com/bonus/newInput/service/NewInputServiceImp.java
@@ -14,6 +14,7 @@ import org.springframework.stereotype.Service;
import com.bonus.bm.beans.LogBean;
import com.bonus.bm.dao.LogDao;
import com.bonus.core.DateTimeHelper;
+import com.bonus.data.StringUtil;
import com.bonus.ma.beans.MachineBean;
import com.bonus.ma.beans.MachineTypeBean;
import com.bonus.ma.dao.MachineDao;
@@ -138,9 +139,27 @@ public class NewInputServiceImp extends BaseServiceImp implements
o.setAuditTime(time);
o.setIsExamine("1");
dao.isExamine(o);
-
}
+ @Override
+ public void isApprovals(NewInputBean o) {
+ String ids=o.getId();
+ if(!StringUtil.isEmpty(ids)) {
+ String[] idData=ids.split(",");
+ List idList=new ArrayList();
+ for (String string : idData) {
+ idList.add(string.split("_")[0]);
+ }
+ List list=dao.getNewInputList(idList);
+ for (NewInputBean newInputBean : list) {
+ //审核
+ //System.err.print(false);
+ isApproval(newInputBean);
+ }
+ }
+
+ }
+
/**
* 批准 1.修改机具状态,增加库存 2.修改任务状态3.修改批准状态
*/