From 5b83294fac4605b569a5a0d1c5e0f310026d10d4 Mon Sep 17 00:00:00 2001
From: maven <2163098428@qq.com>
Date: 星期四, 12 三月 2026 10:22:06 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/dev_New' into dev_New
---
src/main/java/com/ruoyi/aftersalesservice/dto/AfterSalesServiceNewDto.java | 3 +++
src/main/java/com/ruoyi/staff/service/impl/PersonalShiftServiceImpl.java | 32 ++++++++++++++++++++------------
src/main/resources/mapper/aftersalesservice/AfterSalesServiceMapper.xml | 6 ++++++
3 files changed, 29 insertions(+), 12 deletions(-)
diff --git a/src/main/java/com/ruoyi/aftersalesservice/dto/AfterSalesServiceNewDto.java b/src/main/java/com/ruoyi/aftersalesservice/dto/AfterSalesServiceNewDto.java
index 9e35764..dd35550 100644
--- a/src/main/java/com/ruoyi/aftersalesservice/dto/AfterSalesServiceNewDto.java
+++ b/src/main/java/com/ruoyi/aftersalesservice/dto/AfterSalesServiceNewDto.java
@@ -18,4 +18,7 @@
private SalesLedgerDto salesLedgerDto;
private String salesContractNo;
+
+ private String orderNo;
+ private String afterSalesServiceNo;
}
diff --git a/src/main/java/com/ruoyi/staff/service/impl/PersonalShiftServiceImpl.java b/src/main/java/com/ruoyi/staff/service/impl/PersonalShiftServiceImpl.java
index dd4cf4b..420bb71 100644
--- a/src/main/java/com/ruoyi/staff/service/impl/PersonalShiftServiceImpl.java
+++ b/src/main/java/com/ruoyi/staff/service/impl/PersonalShiftServiceImpl.java
@@ -1,6 +1,8 @@
package com.ruoyi.staff.service.impl;
+import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.date.DateTime;
+import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@@ -119,19 +121,25 @@
IPage<PerformanceShiftMapDto> mapIPage = baseMapper.performanceShiftPage(page, time, userName, sysDeptId);
//鏌ヨ鎵�鏈夌彮娆�(鎵撳崱瑙勫垯)
List<PersonalAttendanceLocationConfig> personalAttendanceLocationConfigs = personalAttendanceLocationConfigMapper.selectList(null);
- mapIPage.getRecords().forEach(i -> {
- String[] shiftTimes = i.getShiftTime().split(";");
+ for (PerformanceShiftMapDto i : mapIPage.getRecords()) {
+ List<String> shiftTimes = StrUtil.split(i.getShiftTime(), ";");
+ if(CollUtil.isEmpty(shiftTimes)){
+ continue;
+ }
double totalAttendance = 0;//鎬诲嚭鍕ゅぉ鏁�
List<Map<String, Object>> map = new ArrayList<>();
// 鍒嗗壊鏃ユ湡
for (String shiftTime : shiftTimes) {
i.setShiftTime(null);
Map<String, Object> hashMap = new HashMap<>();
- String[] shiftTimeAndShift = shiftTime.split("锛�");
+ List<String> shiftTimeAndShift = StrUtil.split(shiftTime, "锛�");
+ if(CollUtil.isEmpty(shiftTimeAndShift) || shiftTimeAndShift.size() != 3){
+ continue;
+ }
//鎺掔彮璇︾粏鏁版嵁
- hashMap.put("id", shiftTimeAndShift[2]);
- hashMap.put("shift", shiftTimeAndShift[1]);
- hashMap.put("time", shiftTimeAndShift[0]);
+ hashMap.put("id", shiftTimeAndShift.get(2));
+ hashMap.put("shift", shiftTimeAndShift.get(1));
+ hashMap.put("time", shiftTimeAndShift.get(0));
map.add(hashMap);
i.setList(map);
//姹囨�荤殑鍚勭彮娆$粺璁℃暟鎹�
@@ -139,20 +147,20 @@
if (!i.getMonthlyAttendance().containsKey(personalAttendanceLocationConfig.getShift())){
i.getMonthlyAttendance().put(personalAttendanceLocationConfig.getShift(), 0);
}
- if (personalAttendanceLocationConfig.getShift().equals(shiftTimeAndShift[1])) {
+ if (personalAttendanceLocationConfig.getShift().equals(shiftTimeAndShift.get(1))) {
BigDecimal bigDecimal = new BigDecimal(i.getMonthlyAttendance().get(personalAttendanceLocationConfig.getShift()).toString());
i.getMonthlyAttendance().put(personalAttendanceLocationConfig.getShift(), bigDecimal.add(new BigDecimal("1")));
}
}
//缁熻鎬诲嚭鍕ゅぉ鏁�(鏃�/涓�/鏅�/澶�)閮界畻鍑哄嫟,鍏朵綑閮芥槸浼戞伅
- if (shiftTimeAndShift[1].contains("鏃�") ||
- shiftTimeAndShift[1].contains("涓�") ||
- shiftTimeAndShift[1].contains("鏅�") ||
- shiftTimeAndShift[1].contains("澶�")) {
+ if (shiftTimeAndShift.get(1).contains("鏃�") ||
+ shiftTimeAndShift.get(1).contains("涓�") ||
+ shiftTimeAndShift.get(1).contains("鏅�") ||
+ shiftTimeAndShift.get(1).contains("澶�")) {
i.getMonthlyAttendance().put("totalAttendance", totalAttendance += 1);
}
}
- });
+ }
// 鑾峰彇header鏃堕棿
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");
DateTimeFormatter formatters = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
diff --git a/src/main/resources/mapper/aftersalesservice/AfterSalesServiceMapper.xml b/src/main/resources/mapper/aftersalesservice/AfterSalesServiceMapper.xml
index 68e5909..2130c09 100644
--- a/src/main/resources/mapper/aftersalesservice/AfterSalesServiceMapper.xml
+++ b/src/main/resources/mapper/aftersalesservice/AfterSalesServiceMapper.xml
@@ -11,6 +11,12 @@
<if test="req.feedbackDate != null">
AND feedback_date BETWEEN #{req.feedbackDate} AND #{req.feedbackDate}
</if>
+ <if test="req.afterSalesServiceNo != null and req.afterSalesServiceNo != ''">
+ AND ass.after_sales_service_no like CONCAT('%', #{req.afterSalesServiceNo}, '%')
+ </if>
+ <if test="req.orderNo != null and req.orderNo != '' ">
+ AND sl.sales_contract_no like CONCAT('%', #{req.orderNo}, '%')
+ </if>
<if test="req.disDate != null">
AND dis_date BETWEEN #{req.disDate} AND #{req.disDate}
</if>
--
Gitblit v1.9.3