From 664f02f7f00e475508ea088c588739373700b436 Mon Sep 17 00:00:00 2001
From: zss <zss@example.com>
Date: 星期四, 18 七月 2024 20:53:49 +0800
Subject: [PATCH] 费用统计更改+工时+检验查看权限
---
inspect-server/src/main/java/com/yuanchu/mom/vo/InsOrderPlanVO.java | 6
performance-server/src/main/java/com/yuanchu/mom/service/impl/AuxiliaryWorkingHoursDayServiceImpl.java | 31 ++++-
inspect-server/src/main/resources/mapper/InsOrderMapper.xml | 112 ++++++++++++++++++
inspect-server/src/main/resources/mapper/InsSampleMapper.xml | 30 ++++
inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderPlanServiceImpl.java | 44 ++++++-
inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderServiceImpl.java | 35 -----
performance-server/src/main/java/com/yuanchu/mom/service/impl/AuxiliaryOutputWorkingHoursServiceImpl.java | 54 +++++++--
inspect-server/src/main/java/com/yuanchu/mom/pojo/InsProduct.java | 4
8 files changed, 248 insertions(+), 68 deletions(-)
diff --git a/inspect-server/src/main/java/com/yuanchu/mom/pojo/InsProduct.java b/inspect-server/src/main/java/com/yuanchu/mom/pojo/InsProduct.java
index 14dd76e..a0f694d 100644
--- a/inspect-server/src/main/java/com/yuanchu/mom/pojo/InsProduct.java
+++ b/inspect-server/src/main/java/com/yuanchu/mom/pojo/InsProduct.java
@@ -221,4 +221,8 @@
private Integer insFibersId;
private Integer standardMethodListId;
+
+ //杩斿洖鐨�20搴﹀父娓╃殑璁$畻鍊�(娓╁害寰幆)
+ @TableField(exist = false ,select = false)
+ private String complue;
}
\ No newline at end of file
diff --git a/inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderPlanServiceImpl.java b/inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderPlanServiceImpl.java
index 6bf6f97..192afae 100644
--- a/inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderPlanServiceImpl.java
+++ b/inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderPlanServiceImpl.java
@@ -136,9 +136,10 @@
public Map<String, Object> selectInsOrderPlanList(Page page, InsOrderPlanDTO insOrderPlanDTO) {
Map<String, Object> map = new HashMap<>();
map.put("head", PrintChina.printChina(InsOrderPlanVO.class));
- Map<String, Integer> map1 = getLook.selectPowerByMethodAndUserId(null);
- Integer userId = map1.get("userId");
- if (ObjectUtil.isNotEmpty(insOrderPlanDTO.getUserId())) {
+ Integer userId = null;
+ if (ObjectUtil.isNotEmpty(insOrderPlanDTO.getUserId()) ) {
+ Map<String, Integer> map1 = getLook.selectPowerByMethodAndUserId(null);
+ userId = map1.get("userId");
insOrderPlanDTO.setUserId(userId.longValue());
}
IPage<InsOrderPlanVO> insOrderPage = insSampleMapper.findInsSampleAndOrder(page, QueryWrappers.queryWrappers(insOrderPlanDTO), userId);
@@ -217,7 +218,11 @@
List<String> collect = new ArrayList<>();
List<InsSample> insSamples = insSampleMapper.selectList(Wrappers.<InsSample>lambdaQuery().eq(InsSample::getInsOrderId, orderId).select(InsSample::getId));
List<Integer> ids = insSamples.stream().map(a -> a.getId()).collect(Collectors.toList());
- List<InsProduct> insProducts = insProductMapper.selectList(Wrappers.<InsProduct>lambdaQuery().in(InsProduct::getInsSampleId, ids).eq(InsProduct::getSonLaboratory, laboratory).eq(InsProduct::getState, 1).eq(InsProduct::getInsResult, 0));
+ List<InsProduct> insProducts = insProductMapper.selectList(Wrappers.<InsProduct>lambdaQuery()
+ .in(InsProduct::getInsSampleId, ids)
+ .eq(InsProduct::getSonLaboratory, laboratory)
+ .eq(InsProduct::getState, 1)
+ .eq(InsProduct::getInsResult, 0));
if (insProducts.size() > 0) {
collect = insProducts.stream().map(insProduct -> {
return insProduct.getInspectionItem() + "-" + insProduct.getInspectionItemSubclass();
@@ -361,6 +366,16 @@
if (ObjectUtils.isNotEmpty(insProductResult)) {
insProduct.setInsProductResult(insProductResult);
}
+ //姹傚悓绛夋潯浠朵笅1娆″惊鐜�20搴﹀父娓╃殑璁$畻鍊�
+ InsProductResult insProductResult1 = insProductResultMapper.selectOne(Wrappers.<InsProductResult>lambdaQuery().eq(InsProductResult::getInsProductId,insProductMapper.selectOne(Wrappers.<InsProduct>lambdaQuery()
+ .eq(InsProduct::getInsSampleId,sampleId)
+ .eq(InsProduct::getInspectionItem, "1")
+ .eq(InsProduct::getInspectionItemSubclass, "20鈩�(甯告俯)")
+ .eq(InsProduct::getInspectionItemClass, insProduct.getInspectionItemClass())
+ .eq(InsProduct::getInsFiberId, fiber.getId())).getId() ));
+ if (!insProductResult1.getComValue().equals("[]")) {
+ insProduct.setComplue(insProductResult1.getComValue().split(":")[1].split("\"")[1]);
+ }
productVo.setInsProduct(insProduct);
productVos.add(productVo);
}
@@ -383,6 +398,16 @@
productVo.setColor(fiber.getColor());
productVo.setBushColor(fiber.getBushColor());
insProduct.setInsProductResult(insProductResult);
+ //姹傚悓绛夋潯浠朵笅1娆″惊鐜�20搴﹀父娓╃殑璁$畻鍊�
+ InsProductResult insProductResult1 = insProductResultMapper.selectOne(Wrappers.<InsProductResult>lambdaQuery().eq(InsProductResult::getInsProductId,insProductMapper.selectOne(Wrappers.<InsProduct>lambdaQuery()
+ .eq(InsProduct::getInsSampleId,sampleId)
+ .eq(InsProduct::getInspectionItem, "1")
+ .eq(InsProduct::getInspectionItemSubclass, "20鈩�(甯告俯)")
+ .eq(InsProduct::getInspectionItemClass, insProduct.getInspectionItemClass())
+ .eq(InsProduct::getInsFiberId, fiber.getId())).getId() ));
+ if (!insProductResult1.getComValue().equals("[]")) {
+ insProduct.setComplue(insProductResult1.getComValue().split(":")[1].split("\"")[1]);
+ }
productVo.setInsProduct(insProduct);
productVos.add(productVo);
}
@@ -434,6 +459,8 @@
JSONObject insValue = JSON.parseObject(JSON.toJSONString(o));
Map<String, Object> map = new HashMap<>();
map.put("v", JSON.parseObject(JSON.toJSONString(insValue.get("v"))).get("v"));
+ map.put("r", JSON.toJSONString(insValue.get("r")));
+ map.put("c", JSON.toJSONString(insValue.get("c")));
try {
if ((insValue.get("u") == null || insValue.get("u").equals("")) && StrUtil.isNotEmpty(JSON.parseObject(JSON.toJSONString(insValue.get("v"))).get("v").toString())) {
map.put("u", userId + "");
@@ -3341,7 +3368,6 @@
map2.put(product.getTemplateId(), standardTemplateService.getStandTempThingById(product.getTemplateId()) + "");
thing = map2.get(product.getTemplateId());
}
-// thing = map2.get(product.getTemplateId());
if (StrUtil.isNotEmpty(thing)) {
JSONObject sheet = JSON.parseObject(JSON.toJSONString(JSON.parseArray(JSON.toJSONString(JSON.parseObject(thing).get("data"))).get(0)));
JSONObject config = JSON.parseObject(JSON.toJSONString(sheet.get("config")));
@@ -3360,7 +3386,13 @@
public int submitPlan(Integer orderId, String laboratory, Integer verifyUser) {
List<InsSample> insSamples = insSampleMapper.selectList(Wrappers.<InsSample>lambdaQuery().eq(InsSample::getInsOrderId, orderId).select(InsSample::getId));
List<Integer> ids = insSamples.stream().map(a -> a.getId()).collect(Collectors.toList());
- List<InsProduct> insProducts = insProductMapper.selectList(Wrappers.<InsProduct>lambdaQuery().in(InsProduct::getInsSampleId, ids).eq(InsProduct::getSonLaboratory, laboratory).eq(InsProduct::getState, 1).isNull(InsProduct::getInsResult).isNull(InsProduct::getInsFiberId).isNull(InsProduct::getInsFibersId));
+ List<InsProduct> insProducts = insProductMapper.selectList(Wrappers.<InsProduct>lambdaQuery()
+ .in(InsProduct::getInsSampleId, ids)
+ .eq(InsProduct::getSonLaboratory, laboratory)
+ .eq(InsProduct::getState, 1)
+ .isNull(InsProduct::getInsResult)
+ .isNull(InsProduct::getInsFiberId)
+ .isNull(InsProduct::getInsFibersId));
insProducts.addAll(insProductMapper.selectFiberInsProduct(ids, laboratory));
if (insProducts.size() > 0) {
String str = "";
diff --git a/inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderServiceImpl.java b/inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderServiceImpl.java
index 103b180..830f53e 100644
--- a/inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderServiceImpl.java
+++ b/inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderServiceImpl.java
@@ -473,34 +473,8 @@
map.put("head", PrintChina.printChina(CostStatisticsDto.class));
Map<String, Integer> map1 = getLook.selectPowerByMethodAndUserId("costStatistics");
if (map1.get("look") == 1) costStatisticsDto.setCreateUser(map1.get("userId"));
- IPage<CostStatisticsDto> costStatisticsDtoIPage = insOrderMapper.selectCostStatistics(page, QueryWrappers.queryWrappers(costStatisticsDto).ge("create_time", split[0]).le("create_time", split[1] + " 23:59:59"));
- List<CostStatisticsDto> costStatisticsDtoList = costStatisticsDtoIPage.getRecords();
- for (CostStatisticsDto statisticsDto : costStatisticsDtoList) {
- statisticsDto.setNum(1);
- }
- List<CostStatisticsDto> costStatisticsDtoList1 = deduplicateAndSumCounts(costStatisticsDtoList);
- costStatisticsDtoIPage.setRecords(costStatisticsDtoList1);
- map.put("body", costStatisticsDtoIPage);
+ map.put("body",insOrderMapper.selectCostStatistics(page, QueryWrappers.queryWrappers(costStatisticsDto).ge("create_time", split[0]).le("create_time", split[1] + " 23:59:59")));
return map;
- }
- private static List<CostStatisticsDto> deduplicateAndSumCounts(List<CostStatisticsDto> list) {
- // 浣跨敤涓�涓� Map 鏉ュ瓨鏀惧凡缁忓嚭鐜拌繃鐨� inspectionItem + entrustCode + sample 鐨勭粍鍚�
- Map<String, CostStatisticsDto> map = new HashMap<>();
- // 閬嶅巻鍒楄〃杩涜鍘婚噸鍜岃鏁�
- for (CostStatisticsDto dto : list) {
- String key = dto.getInspectionItem() + dto.getEntrustCode() + dto.getSample();
- if (map.containsKey(key)) {
- // 濡傛灉宸茬粡瀛樺湪锛屽垯绱姞鏁伴噺
- CostStatisticsDto existingDto = map.get(key);
- existingDto.setNum(existingDto.getNum() + dto.getNum());
- existingDto.setPrice(existingDto.getPrice().add(dto.getPrice()));
- } else {
- // 濡傛灉涓嶅瓨鍦紝鍒欐斁鍏� Map 涓�
- map.put(key, dto);
- }
- }
- // 灏� Map 涓殑鍊艰浆涓� List 杩斿洖
- return new ArrayList<>(map.values());
}
@Override
@@ -511,16 +485,11 @@
costStatisticsDto.setDates(null);
List<CostStatisticsDto> costStatisticsDtos = insOrderMapper.selectCostStatistics2(QueryWrappers.queryWrappers(costStatisticsDto).ge("create_time", split[0]).le("create_time", split[1] + " 23:59:59"));
double totalPrice = costStatisticsDtos.stream()
- .filter(distinctByKey(dto -> Arrays.asList(dto.getEntrustCode(), dto.getSample(), dto.getCost())))
.filter(dto -> dto.getPrice() != null) // 杩囨护鎺変环鏍间负 null 鐨勫璞�
- .mapToDouble(value -> value.getPrice().doubleValue())
+ .mapToDouble(value -> value.getPrice().doubleValue()*value.getNum())
.sum();
map.put("total", totalPrice);
return map;
- }
- public static <T> Predicate<T> distinctByKey(Function<? super T, ?> keyExtractor) {
- Map<Object, Boolean> seen = new ConcurrentHashMap<>();
- return t -> seen.putIfAbsent(keyExtractor.apply(t), Boolean.TRUE) == null;
}
@Override
diff --git a/inspect-server/src/main/java/com/yuanchu/mom/vo/InsOrderPlanVO.java b/inspect-server/src/main/java/com/yuanchu/mom/vo/InsOrderPlanVO.java
index 2f724d6..d4e6ec2 100644
--- a/inspect-server/src/main/java/com/yuanchu/mom/vo/InsOrderPlanVO.java
+++ b/inspect-server/src/main/java/com/yuanchu/mom/vo/InsOrderPlanVO.java
@@ -22,6 +22,11 @@
@ValueTableShow(value = 5,name = "鐘舵��")
private String insState;
+ @ValueTableShow(value = 5,name = "璐熻矗浜�")
+ private String userName;
+
+ private Integer userId;
+
@ValueTableShow(value = 8,name = "妫�楠屽紑濮嬫椂闂�")
private String insTime;
@@ -34,7 +39,6 @@
@ValueTableShow(value = 8,name = "鐞嗙敱")
private String verifyTell;
- private Integer userId;
private String sonLaboratory;
diff --git a/inspect-server/src/main/resources/mapper/InsOrderMapper.xml b/inspect-server/src/main/resources/mapper/InsOrderMapper.xml
index a0b49ae..1c16c0b 100644
--- a/inspect-server/src/main/resources/mapper/InsOrderMapper.xml
+++ b/inspect-server/src/main/resources/mapper/InsOrderMapper.xml
@@ -146,7 +146,7 @@
</select>
<select id="selectCostStatistics" resultType="com.yuanchu.mom.dto.CostStatisticsDto">
select * from (
- SELECT
+ <!--SELECT
i.id,
i.entrust_code,
i.create_time,
@@ -170,7 +170,55 @@
SEPARATOR ',') inspection_item2 from ins_product where state = 1 GROUP BY ins_sample_id,man_hour_group) b GROUP
BY b.ins_sample_id) c ON c.ins_sample_id = isa.id
where (i.state = 1 or i.state = 3 or i.state = 4)
- ) a
+ ) a-->
+ SELECT A.id,
+ A.entrust_code,
+ A.create_time,
+ A.sample,
+ A.model,
+ A.inspection_item,
+ A.company,
+ A.`name`,
+ COUNT(1) num,
+ SUM(A.price) price,
+ SUM(A.cost) cost
+ FROM
+ (SELECT
+ i.id,
+ i.entrust_code,
+ i.create_time,
+ isa.sample,
+ isa.sample_code,
+ isa.model,
+ c.price,
+ c.cost,
+ c.inspection_item,
+ cus.company,
+ u.`name`,
+ i.create_user,
+ c.ins_sample_id
+ FROM
+ ins_order i
+ LEFT JOIN ins_sample isa ON isa.ins_order_id = i.id
+ LEFT JOIN `user` u ON u.id = i.user_id
+ left join custom cus on cus.id = u.company
+ LEFT JOIN (select SUM(b.price) price, sum(b.man_hour) cost,b.ins_sample_id,
+ GROUP_CONCAT(b.inspection_item2
+ SEPARATOR ',')
+ inspection_item from (select * ,
+ GROUP_CONCAT(CONCAT(inspection_item,'',inspection_item_subclass) SEPARATOR ',')inspection_item2 from ins_product where state = 1 and template_id IS NOT NULL GROUP BY ins_sample_id,man_hour_group) b GROUP
+ BY b.ins_sample_id) c ON c.ins_sample_id = isa.id
+ where (i.state = 1 or i.state = 3 or i.state = 4) and c.ins_sample_id IS not NULL)A
+ GROUP BY
+ A.id,
+ A.entrust_code,
+ A.create_time,
+ A.sample,
+ A.model,
+ A.inspection_item,
+ A.company,
+ A.`name`
+ ) B
<if test="ew.customSqlSegment != null and ew.customSqlSegment != ''">
${ew.customSqlSegment}
</if>
@@ -310,7 +358,7 @@
<select id="selectCostStatistics2" resultType="com.yuanchu.mom.dto.CostStatisticsDto">
select * from (
- SELECT
+ <!--SELECT
i.id,
i.entrust_code,
i.create_time,
@@ -333,7 +381,63 @@
SEPARATOR ',') inspection_item2 from ins_product where state = 1 GROUP BY ins_sample_id,man_hour_group) b GROUP
BY b.ins_sample_id) c ON c.ins_sample_id = isa.id
where (i.state = 1 or i.state = 3 or i.state = 4)
- ) a
+ ) a-->
+ SELECT A.id,
+ A.entrust_code,
+ A.create_time,
+ A.sample,
+ A.model,
+ A.inspection_item,
+ A.company,
+ A.`name`,
+ COUNT(1) num,
+ SUM(A.price) price,
+ SUM(A.cost) cost
+ FROM
+ (SELECT
+ i.id,
+ i.entrust_code,
+ i.create_time,
+ isa.sample,
+ isa.sample_code,
+ isa.model,
+ c.price,
+ c.cost,
+ c.inspection_item,
+ cus.company,
+ u.`name`,
+ i.create_user,
+ c.ins_sample_id
+ FROM
+ ins_order i
+ LEFT JOIN ins_sample isa ON isa.ins_order_id = i.id
+ LEFT JOIN `user` u ON u.id = i.user_id
+ left join custom cus on cus.id = u.company
+ LEFT JOIN (select SUM(b.price) price, sum(b.man_hour) cost,b.ins_sample_id,
+ GROUP_CONCAT(b.inspection_item2
+ SEPARATOR ',')
+ inspection_item from (select * ,
+ GROUP_CONCAT(CONCAT(inspection_item,'',inspection_item_subclass) SEPARATOR ',')inspection_item2 from ins_product where state = 1 and template_id IS NOT NULL GROUP BY ins_sample_id,man_hour_group) b GROUP
+ BY b.ins_sample_id) c ON c.ins_sample_id = isa.id
+ where (i.state = 1 or i.state = 3 or i.state = 4) and c.ins_sample_id IS not NULL)A
+ GROUP BY
+ A.id,
+ A.entrust_code,
+ A.create_time,
+ A.sample,
+ A.model,
+ A.inspection_item,
+ A.company,
+ A.`name`
+ ORDER BY
+ A.id,
+ A.entrust_code,
+ A.create_time,
+ A.sample,
+ A.model,
+ A.inspection_item,
+ A.company,
+ A.`name`) B
<if test="ew.customSqlSegment != null and ew.customSqlSegment != ''">
${ew.customSqlSegment}
</if>
diff --git a/inspect-server/src/main/resources/mapper/InsSampleMapper.xml b/inspect-server/src/main/resources/mapper/InsSampleMapper.xml
index e822231..c644e16 100644
--- a/inspect-server/src/main/resources/mapper/InsSampleMapper.xml
+++ b/inspect-server/src/main/resources/mapper/InsSampleMapper.xml
@@ -27,7 +27,7 @@
<select id="findInsSampleAndOrder" resultType="com.yuanchu.mom.vo.InsOrderPlanVO">
select * from(select * from(
SELECT
- a.*,ios.ins_state,ios.verify_tell,isu2.order_user_id,(ios.verify_user = #{userId}) verify_user
+ a.*,ios.ins_state,ios.verify_tell,isu2.order_user_id,<!--(ios.verify_user = #{userId})--> verify_user
FROM
(
SELECT
@@ -38,28 +38,48 @@
io.send_time,
group_concat(distinct isa.sample,' ') sample,
isu.user_id,
+ user.name userName,
ip.son_laboratory,
io.ins_time
FROM
ins_order io
LEFT JOIN ins_sample isa ON isa.ins_order_id = io.id
- LEFT JOIN ( SELECT * FROM ins_sample_user GROUP BY ins_sample_id, user_id ) isu ON isu.ins_sample_id = io.id
+ LEFT JOIN ( <!--SELECT * FROM ins_sample_user GROUP BY ins_sample_id, user_id -->
+ SELECT *
+ FROM ins_sample_user u
+ WHERE (ins_sample_id, id) IN (
+ SELECT ins_sample_id, MAX(id)
+ FROM ins_sample_user
+ GROUP BY ins_sample_id
+ )
+ ORDER BY ins_sample_id, id
+ ) isu ON isu.ins_sample_id = io.id
LEFT JOIN ins_product ip ON ip.ins_sample_id = isa.id
+ LEFT JOIN user ON isu.user_id = user.id
WHERE
io.state = 1
# AND io.ins_state != 5
and send_time is not null
- and (isu.user_id = #{userId} OR isu.user_id is NULL)
+ <if test="userId !=null and userId!=''">
+ and (isu.user_id = #{userId} OR isu.user_id is NULL )
+ </if>
+ OR isu.user_id is NULL
+
GROUP BY
ip.son_laboratory,
io.id
) a
LEFT JOIN ins_order_state ios ON ios.ins_order_id = a.id AND ios.laboratory = a.son_laboratory
left join (SELECT td.user_id order_user_id, td.ins_sample_id FROM ins_sample_user td,(SELECT max(id) id FROM
- ins_sample_user GROUP BY ins_sample_id) md where td.id = md.id and user_id = #{userId}) isu2 on
+ ins_sample_user GROUP BY ins_sample_id) md where td.id = md.id
+ <if test="userId !=null and userId!=''">
+ and user_id = #{userId} OR user_id is NULL
+ </if>
+ OR user_id is NULL
+ ) isu2 on
isu2.ins_sample_id = a.id
ORDER BY
- a.user_id DESC,
+ <!--a.user_id DESC,-->
a.type DESC,
a.id
) b
diff --git a/performance-server/src/main/java/com/yuanchu/mom/service/impl/AuxiliaryOutputWorkingHoursServiceImpl.java b/performance-server/src/main/java/com/yuanchu/mom/service/impl/AuxiliaryOutputWorkingHoursServiceImpl.java
index ee1d698..e85943f 100644
--- a/performance-server/src/main/java/com/yuanchu/mom/service/impl/AuxiliaryOutputWorkingHoursServiceImpl.java
+++ b/performance-server/src/main/java/com/yuanchu/mom/service/impl/AuxiliaryOutputWorkingHoursServiceImpl.java
@@ -5,6 +5,7 @@
import com.alibaba.excel.write.metadata.WriteSheet;
import com.alibaba.excel.write.style.column.LongestMatchColumnWidthStyleStrategy;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@@ -97,22 +98,38 @@
if (ObjectUtils.isNotEmpty(dates) && ObjectUtils.isNotEmpty(week)) {
String[] split = dates.replaceAll("\\[", "").replaceAll("]", "").replaceAll("\"", "").split(",");
String[] weeks = week.replaceAll("\\[", "").replaceAll("]", "").replaceAll("\"", "").split(",");
- map.put("body", auxiliaryOutputWorkingHoursMapper.selectAuxiliaryOutputWorkingHours(page,
+ IPage<AuxiliaryOutputWorkingHoursDto> auxiliaryOutputWorkingHoursDtoIPage = auxiliaryOutputWorkingHoursMapper.selectAuxiliaryOutputWorkingHours(page,
QueryWrappers.queryWrappers(auxiliaryOutputWorkingHoursDto)
.ge("date_time", split[0]).le("date_time", split[1] + " 23:59:59")
- .ge("week", weeks[0]).le("week", weeks[1]), ids));
+ .ge("week", weeks[0]).le("week", weeks[1]), ids);
+ for (AuxiliaryOutputWorkingHoursDto record : auxiliaryOutputWorkingHoursDtoIPage.getRecords()) {
+ record.setDateTime(record.getDateTime().substring(0,10));
+ }
+ map.put("body",auxiliaryOutputWorkingHoursDtoIPage );
} else if (ObjectUtils.isNotEmpty(dates) && ObjectUtils.isEmpty(week)) {
String[] split = dates.replaceAll("\\[", "").replaceAll("]", "").replaceAll("\"", "").split(",");
- map.put("body", auxiliaryOutputWorkingHoursMapper.selectAuxiliaryOutputWorkingHours(page,
+ IPage<AuxiliaryOutputWorkingHoursDto> auxiliaryOutputWorkingHoursDtoIPage = auxiliaryOutputWorkingHoursMapper.selectAuxiliaryOutputWorkingHours(page,
QueryWrappers.queryWrappers(auxiliaryOutputWorkingHoursDto)
- .ge("date_time", split[0]).le("date_time", split[1] + " 23:59:59"), ids));
+ .ge("date_time", split[0]).le("date_time", split[1] + " 23:59:59"), ids);
+ for (AuxiliaryOutputWorkingHoursDto record : auxiliaryOutputWorkingHoursDtoIPage.getRecords()) {
+ record.setDateTime(record.getDateTime().substring(0,10));
+ }
+ map.put("body",auxiliaryOutputWorkingHoursDtoIPage );
} else if (ObjectUtils.isEmpty(dates) && ObjectUtils.isNotEmpty(week)) {
String[] weeks = week.replaceAll("\\[", "").replaceAll("]", "").replaceAll("\"", "").split(",");
- map.put("body", auxiliaryOutputWorkingHoursMapper.selectAuxiliaryOutputWorkingHours(page,
+ IPage<AuxiliaryOutputWorkingHoursDto> auxiliaryOutputWorkingHoursDtoIPage = auxiliaryOutputWorkingHoursMapper.selectAuxiliaryOutputWorkingHours(page,
QueryWrappers.queryWrappers(auxiliaryOutputWorkingHoursDto)
- .ge("week", weeks[0]).le("week", weeks[1]), ids));
+ .ge("week", weeks[0]).le("week", weeks[1]), ids);
+ for (AuxiliaryOutputWorkingHoursDto record : auxiliaryOutputWorkingHoursDtoIPage.getRecords()) {
+ record.setDateTime(record.getDateTime().substring(0,10));
+ }
+ map.put("body", auxiliaryOutputWorkingHoursDtoIPage);
} else {
- map.put("body", auxiliaryOutputWorkingHoursMapper.selectAuxiliaryOutputWorkingHours(page, QueryWrappers.queryWrappers(auxiliaryOutputWorkingHoursDto), ids));
+ IPage<AuxiliaryOutputWorkingHoursDto> auxiliaryOutputWorkingHoursDtoIPage = auxiliaryOutputWorkingHoursMapper.selectAuxiliaryOutputWorkingHours(page, QueryWrappers.queryWrappers(auxiliaryOutputWorkingHoursDto), ids);
+ for (AuxiliaryOutputWorkingHoursDto record : auxiliaryOutputWorkingHoursDtoIPage.getRecords()) {
+ record.setDateTime(record.getDateTime().substring(0,10));
+ }
+ map.put("body", auxiliaryOutputWorkingHoursDtoIPage);
}
return map;
}
@@ -122,17 +139,21 @@
public Map<String, Object> collectWorkingHours(AuxiliaryOutputWorkingHoursDto auxiliaryOutputWorkingHoursDto) {
AuxiliaryOutputWorkingHours outputWorkingHours = new AuxiliaryOutputWorkingHours();
AuxiliaryWorkingHoursDay workingHoursDay = new AuxiliaryWorkingHoursDay();
+ List<Integer> ids = new ArrayList<>();
+ if (ObjectUtils.isNotEmpty(auxiliaryOutputWorkingHoursDto.getWeekDay())){
+ outputWorkingHours.setWeekDay(auxiliaryOutputWorkingHoursDto.getWeekDay());
+ workingHoursDay.setWeekDay(auxiliaryOutputWorkingHoursDto.getWeekDay());
+ }
if (ObjectUtils.isNotEmpty(auxiliaryOutputWorkingHoursDto.getName())){
- User user = userMapper.selectOne(Wrappers.<User>lambdaQuery().eq(User::getName, auxiliaryOutputWorkingHoursDto.getName()));
- outputWorkingHours.setCheck(user.getId());
- workingHoursDay.setNameUser(user.getId());
+ List<User> user = userMapper.selectList(Wrappers.<User>lambdaQuery().like(User::getName, auxiliaryOutputWorkingHoursDto.getName()));
+ ids.addAll(user.stream().map(User::getId).collect(Collectors.toList()));
}
String dates = auxiliaryOutputWorkingHoursDto.getDateTime();
auxiliaryOutputWorkingHoursDto.setDateTime(null);
Map<String, Object> map = new HashMap<>();
Double sumOutputWorkTime = 0.0;
Double sumApprovedWorkingHour = 0.0;
- List<Integer> ids = null;
+
//鍒ゆ柇鏄粍闀胯繕鏄粍鍛樿繕鏄鐞嗗憳
Map<String, Integer> map1 = getLook.selectPowerByMethodAndUserId("selectAuxiliaryOutputWorkingHours");
User user = userMapper.selectById(map1.get("userId"));
@@ -156,6 +177,9 @@
}
List<AuxiliaryOutputWorkingHours> auxiliaryOutputWorkingHours = new ArrayList<>();
List<AuxiliaryWorkingHoursDay> auxiliaryWorkingHoursDays = new ArrayList<>();
+ if (ids.size() == 0) {
+ ids=null;
+ }
if (ObjectUtils.isNotEmpty(dates)) {
String[] split = dates.replaceAll("\\[", "").replaceAll("]", "").replaceAll("\"", "").split(",");
//缁熻褰撳墠鐢ㄦ埛鐨勪骇鍝佸伐鏃�
@@ -167,7 +191,13 @@
.eq("state","宸叉壒鍑�")
.ge("date_time", split[0])
.le("date_time", split[1] + " 23:59:59"),ids);
- } else {
+ }else if (ObjectUtils.isNotEmpty(auxiliaryOutputWorkingHoursDto.getWeekDay())){
+ //缁熻褰撳墠鐢ㄦ埛鐨勪骇鍝佸伐鏃�
+ auxiliaryOutputWorkingHours = auxiliaryOutputWorkingHoursMapper.selectLists(QueryWrappers.queryWrappers(outputWorkingHours),ids);
+ //缁熻褰撳墠鐢ㄦ埛鐨勮緟鍔╁伐鏃�
+ auxiliaryWorkingHoursDays = auxiliaryWorkingHoursDayMapper.selectLists(QueryWrappers.queryWrappers(workingHoursDay).eq("state","宸叉壒鍑�"),ids);
+ }
+ else {
auxiliaryOutputWorkingHours = auxiliaryOutputWorkingHoursMapper.selectListByIds(ids);
auxiliaryWorkingHoursDays = auxiliaryWorkingHoursDayMapper.selectListByIds(ids);
}
diff --git a/performance-server/src/main/java/com/yuanchu/mom/service/impl/AuxiliaryWorkingHoursDayServiceImpl.java b/performance-server/src/main/java/com/yuanchu/mom/service/impl/AuxiliaryWorkingHoursDayServiceImpl.java
index c5814b9..326ae57 100644
--- a/performance-server/src/main/java/com/yuanchu/mom/service/impl/AuxiliaryWorkingHoursDayServiceImpl.java
+++ b/performance-server/src/main/java/com/yuanchu/mom/service/impl/AuxiliaryWorkingHoursDayServiceImpl.java
@@ -1,5 +1,6 @@
package com.yuanchu.mom.service.impl;
+import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@@ -92,22 +93,38 @@
if (ObjectUtils.isNotEmpty(dates) && ObjectUtils.isNotEmpty(week)) {
String[] split = dates.replaceAll("\\[", "").replaceAll("]", "").replaceAll("\"", "").split(",");
String[] weeks = week.replaceAll("\\[", "").replaceAll("]", "").replaceAll("\"", "").split(",");
- map.put("body", auxiliaryWorkingHoursDayMapper.selectAuxiliaryWorkingHoursDay(page,
+ IPage<AuxiliaryWorkingHoursDayDto> auxiliaryWorkingHoursDayDtoIPage = auxiliaryWorkingHoursDayMapper.selectAuxiliaryWorkingHoursDay(page,
QueryWrappers.queryWrappers(auxiliaryWorkingHoursDayDto)
.ge("date_time", split[0]).le("date_time", split[1] + " 23:59:59")
- .ge("week", weeks[0]).le("week", weeks[1]), ids));
+ .ge("week", weeks[0]).le("week", weeks[1]), ids);
+ for (AuxiliaryWorkingHoursDayDto record : auxiliaryWorkingHoursDayDtoIPage.getRecords()) {
+ record.setDateTime(record.getDateTime().substring(0,10));
+ }
+ map.put("body", auxiliaryWorkingHoursDayDtoIPage);
} else if (ObjectUtils.isNotEmpty(dates) && ObjectUtils.isEmpty(week)) {
String[] split = dates.replaceAll("\\[", "").replaceAll("]", "").replaceAll("\"", "").split(",");
- map.put("body", auxiliaryWorkingHoursDayMapper.selectAuxiliaryWorkingHoursDay(page,
+ IPage<AuxiliaryWorkingHoursDayDto> auxiliaryWorkingHoursDayDtoIPage = auxiliaryWorkingHoursDayMapper.selectAuxiliaryWorkingHoursDay(page,
QueryWrappers.queryWrappers(auxiliaryWorkingHoursDayDto)
- .ge("date_time", split[0]).le("date_time", split[1] + " 23:59:59"), ids));
+ .ge("date_time", split[0]).le("date_time", split[1] + " 23:59:59"), ids);
+ for (AuxiliaryWorkingHoursDayDto record : auxiliaryWorkingHoursDayDtoIPage.getRecords()) {
+ record.setDateTime(record.getDateTime().substring(0,10));
+ }
+ map.put("body",auxiliaryWorkingHoursDayDtoIPage );
} else if (ObjectUtils.isEmpty(dates) && ObjectUtils.isNotEmpty(week)) {
String[] weeks = week.replaceAll("\\[", "").replaceAll("]", "").replaceAll("\"", "").split(",");
- map.put("body", auxiliaryWorkingHoursDayMapper.selectAuxiliaryWorkingHoursDay(page,
+ IPage<AuxiliaryWorkingHoursDayDto> auxiliaryWorkingHoursDayDtoIPage = auxiliaryWorkingHoursDayMapper.selectAuxiliaryWorkingHoursDay(page,
QueryWrappers.queryWrappers(auxiliaryWorkingHoursDayDto)
- .ge("week", weeks[0]).le("week", weeks[1]), ids));
+ .ge("week", weeks[0]).le("week", weeks[1]), ids);
+ for (AuxiliaryWorkingHoursDayDto record : auxiliaryWorkingHoursDayDtoIPage.getRecords()) {
+ record.setDateTime(record.getDateTime().substring(0,10));
+ }
+ map.put("body", auxiliaryWorkingHoursDayDtoIPage);
} else {
- map.put("body", auxiliaryWorkingHoursDayMapper.selectAuxiliaryWorkingHoursDay(page, QueryWrappers.queryWrappers(auxiliaryWorkingHoursDayDto), ids));
+ IPage<AuxiliaryWorkingHoursDayDto> auxiliaryWorkingHoursDayDtoIPage = auxiliaryWorkingHoursDayMapper.selectAuxiliaryWorkingHoursDay(page, QueryWrappers.queryWrappers(auxiliaryWorkingHoursDayDto), ids);
+ for (AuxiliaryWorkingHoursDayDto record : auxiliaryWorkingHoursDayDtoIPage.getRecords()) {
+ record.setDateTime(record.getDateTime().substring(0,10));
+ }
+ map.put("body", auxiliaryWorkingHoursDayDtoIPage);
}
return map;
}
--
Gitblit v1.9.3