From f6e7379fbfbba4f6667944a2be62f99461bf97f0 Mon Sep 17 00:00:00 2001
From: zss <zss@example.com>
Date: 星期三, 26 六月 2024 16:14:10 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderPlanServiceImpl.java | 81 +++++++++++++++++++++++++++++-----------
1 files changed, 58 insertions(+), 23 deletions(-)
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 652e4b3..c2720da 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
@@ -3,6 +3,7 @@
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.date.DateTime;
import cn.hutool.core.date.DateUtil;
+import cn.hutool.core.lang.Console;
import cn.hutool.core.lang.UUID;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil;
@@ -10,6 +11,8 @@
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
+import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -19,6 +22,7 @@
import com.deepoove.poi.data.*;
import com.deepoove.poi.data.style.*;
import com.deepoove.poi.util.TableTools;
+import com.deepoove.poi.xwpf.WidthScalePattern;
import com.yuanchu.mom.common.GetLook;
import com.yuanchu.mom.common.PrintChina;
import com.yuanchu.mom.dto.ExcelDto;
@@ -33,7 +37,6 @@
import com.yuanchu.mom.utils.QueryWrappers;
import com.yuanchu.mom.vo.InsOrderPlanTaskSwitchVo;
import com.yuanchu.mom.vo.InsOrderPlanVO;
-import com.yuanchu.mom.vo.Result;
import org.apache.commons.io.IOUtils;
import org.apache.poi.xwpf.usermodel.*;
import org.springframework.beans.factory.annotation.Value;
@@ -270,9 +273,12 @@
JSONObject jo = JSON.parseObject(JSON.toJSONString(v));
InsProduct insProduct = new InsProduct();
insProduct.setId(Integer.parseInt(k));
- InsProductResult result = insProductResultMapper.selectOne(Wrappers.<InsProductResult>lambdaQuery().eq(InsProductResult::getInsProductId, insProduct.getId()));
- if (BeanUtil.isEmpty(result)) {
- result = new InsProductResult();
+ List<InsProductResult> results = insProductResultMapper.selectList(Wrappers.<InsProductResult>lambdaQuery().eq(InsProductResult::getInsProductId, insProduct.getId()));
+ InsProductResult result;
+ if (CollectionUtils.isEmpty(results)) {
+ result = new InsProductResult();
+ } else {
+ result = results.get(0);
}
result.setInsProductId(Integer.parseInt(k));
if (jo.get("insValue") != null) {
@@ -363,7 +369,7 @@
.eq(AuxiliaryOutputWorkingHours::getCheck, userId)
.eq(AuxiliaryOutputWorkingHours::getInspectProject, insProduct.getInspectionItemSubclass() + insProduct.getInspectionItem())
.eq(AuxiliaryOutputWorkingHours::getOrderNo, insOrder.getEntrustCode()));
- if (count == 0) {
+ if (count == 0 && ObjectUtils.isNotEmpty(insProduct.getManHour())) {
//娣诲姞姣忎釜浜虹殑浜ч噺宸ユ椂
AuxiliaryOutputWorkingHours auxiliaryOutputWorkingHours = new AuxiliaryOutputWorkingHours();
auxiliaryOutputWorkingHours.setInspectProject(insProduct.getInspectionItemSubclass() + insProduct.getInspectionItem());//妫�娴嬮」鐩�
@@ -453,6 +459,7 @@
for (InsProduct insProduct : insProducts) {
if (insProduct.getInsResult() == 0) {
InsUnPass insUnPass = new InsUnPass();
+ insUnPass.setId(null);
insUnPass.setModel(insSample.getModel());
insUnPass.setSample(insSample.getSample());
insUnPass.setInspectionItem(insProduct.getInspectionItem());
@@ -465,16 +472,14 @@
insUnPasses.add(insUnPass);
}
}
- insUnPassService.saveBatch(insUnPasses);
}
+ insUnPassService.saveBatch(insUnPasses);
InsOrder insOrder = insOrderMapper.selectById(orderId);
Map<String, String> user = insProductMapper.selectUserById(insOrder.getUserId());
List<SampleProductDto> samples = insSampleMapper.selectSampleProductListByOrderId(orderId);
InsReport insReport = new InsReport();
insReport.setCode(insOrder.getEntrustCode());
insReport.setInsOrderId(orderId);
- Set<Integer> set = new HashSet<>();
- Map<Integer, String> map2 = new HashMap<>();
List<Map<String, Object>> tables = new ArrayList<>();
Set<String> standardMethod = new HashSet<>();
Set<String> deviceSet = new HashSet<>();
@@ -484,6 +489,8 @@
AtomicReference<String> resultCh = new AtomicReference<>("");
AtomicReference<String> resultEn = new AtomicReference<>("");
samples.forEach(a -> {
+ Set<Integer> set = new HashSet<>();
+ Map<Integer, String> map2 = new HashMap<>();
Long productCount = insProductMapper.selectCount(Wrappers.<InsProduct>lambdaQuery().eq(InsProduct::getInsSampleId, a.getId()));
productSize.set(productSize.get() + Integer.parseInt(productCount + ""));
models.add(a.getModel());
@@ -545,7 +552,6 @@
Map<String, InsProduct> pMap = new HashMap<>();
Set<String> delRSet = new HashSet<>();
delRSet.add("0");
- delRSet.add("1");
for (JSONObject jo1 : temp) {
JSONObject v = JSON.parseObject(JSON.toJSONString(jo1.get("v")));
if (Integer.parseInt(jo1.get("c") + "") > 9) {
@@ -614,7 +620,7 @@
if (p != null && v.get("ps") != null) {
String value = JSON.parseObject(JSON.toJSONString(v.get("ps"))).get("value") + "";
if (value.equals("瑕佹眰鍊�")) {
- textRenderData.setText(p.getAsk());
+ textRenderData.setText(ObjectUtils.isNotEmpty(p.getTell()) ? p.getTell() : "");
} else if (value.equals("鍗曚綅")) {
textRenderData.setText(p.getUnit());
} else if (value.equals("缁撹")) {
@@ -647,6 +653,14 @@
textRenderData.setText(a.getSample());
} else if (value.equals("璇曢獙鏂规硶")) {
textRenderData.setText(p.getMethodS());
+ } else if (value.equals("妫�楠岄」")) {
+ textRenderData.setText(p.getInspectionItem() + "\n" + p.getInspectionItemEn());
+ } else if (value.equals("妫�楠屽瓙椤�")) {
+ if (ObjectUtils.isEmpty(p.getInspectionItemSubclassEn())) {
+ textRenderData.setText(p.getInspectionItemSubclass());
+ } else {
+ textRenderData.setText(p.getInspectionItemSubclass() + "\n" + p.getInspectionItemSubclassEn());
+ }
} else {
textRenderData.setText(v.get("v") == null ? "" : v.get("v") + "");
}
@@ -704,10 +718,10 @@
tableRenderData.setRows(rows);
int countSize = tableRenderData.getRows().get(0).getCells().size();
for (RowRenderData row : tableRenderData.getRows()) {
- for (CellRenderData cell : row.getCells()) {
+ /*for (CellRenderData cell : row.getCells()) {
System.out.print(cell.getParagraphs().get(0).getContents());
}
- System.out.println("");
+ System.out.println("");*/
if (row.getCells().size() != countSize) {
throw new ErrorException("姣忚鍗曞厓鏍间笉鐩哥瓑");
}
@@ -778,14 +792,15 @@
ConfigureBuilder builder = Configure.builder();
builder.useSpringEL(true);
List<Map<String, String>> finalDeviceList = deviceList;
- Integer userId = insSampleUserMapper.selectOne(Wrappers.<InsSampleUser>lambdaQuery().eq(InsSampleUser::getInsSampleId, orderId).orderByDesc(InsSampleUser::getCreateTime).last("limit 1")).getUserId();
+ Integer userId = insSampleUserMapper.selectOne(Wrappers.<InsSampleUser>lambdaQuery().eq(InsSampleUser::getInsSampleId, orderId).last("limit 1")).getUserId();
String signatureUrl;
try {
signatureUrl = userMapper.selectById(userId).getSignatureUrl();
} catch (Exception e) {
throw new ErrorException("鎵句笉鍒版楠屼汉鐨勭鍚�");
}
- Custom custom = customMapper.selectById(user.get("company"));
+ //Custom custom = customMapper.selectById(user.get("company"));
+ Custom custom = customMapper.selectById(insOrder.getCompanyId());
if (!resultCh.get().equals("")) {
resultCh.set("渚濇嵁濮旀墭瑕佹眰锛�" + resultCh.get().replaceFirst("銆�", "") + "绛夋墍妫�椤圭洰涓嶇鍚堣姹傦紝鍏朵綑鎵�妫�椤圭洰鍧囩鍚堣姹傘��");
resultEn.set("According to commissioned requirements," + resultEn.get().replaceFirst("銆�", "") + " these inspected items do not meet the requirements, all other inspected items meet the requirements.");
@@ -863,7 +878,7 @@
cells.add(cellRenderData);
} else {
//椤圭洰淇℃伅
- textRenderData.setText(insProducts1.get((int) (j - 2)).getInspectionItem() + "\n" + insProducts1.get((int) (j - 2)).getInspectionItemEn()+"鈭�"+(j+101));
+ textRenderData.setText(insProducts1.get((int) (j - 2)).getInspectionItem() + "\n" + insProducts1.get((int) (j - 2)).getInspectionItemEn() + "鈭�" + (j + 101));
renderData.add(textRenderData);
paragraphRenderData.setContents(renderData);
paragraphRenderDataList.add(paragraphRenderData);
@@ -882,7 +897,7 @@
cells.add(cellRenderData);
} else if (j == 1) {
//绗簩鍒�
- textRenderData.setText("鍏夌氦鑹叉爣\tScanning Number鈭�101");
+ textRenderData.setText("鍏夌氦鑹叉爣\nScanning Number鈭�101");
renderData.add(textRenderData);
paragraphRenderData.setContents(renderData);
paragraphRenderDataList.add(paragraphRenderData);
@@ -892,9 +907,9 @@
//椤圭洰淇℃伅
//鍒ゆ柇鏄惁鏈夐」鐩瓙绫�
if (insProducts1.get((int) (j - 2)).getInspectionItemSubclass().equals("") || insProducts1.get((int) (j - 2)).getInspectionItemSubclass() == null) {
- textRenderData.setText(insProducts1.get((int) (j - 2)).getInspectionItem() + "\n" + insProducts1.get((int) (j - 2)).getInspectionItemEn()+"鈭�"+(j+101));
+ textRenderData.setText(insProducts1.get((int) (j - 2)).getInspectionItem() + "\n" + insProducts1.get((int) (j - 2)).getInspectionItemEn() + "鈭�" + (j + 101));
} else {
- textRenderData.setText(insProducts1.get((int) (j - 2)).getInspectionItemSubclass() + "\n" + insProducts1.get((int) (j - 2)).getInspectionItemSubclassEn());
+ textRenderData.setText(insProducts1.get((int) (j - 2)).getInspectionItemSubclass() + "\n\n" + insProducts1.get((int) (j - 2)).getInspectionItemSubclassEn());
}
renderData.add(textRenderData);
paragraphRenderData.setContents(renderData);
@@ -945,10 +960,10 @@
tableRenderData.setRows(rows);
int countSize = tableRenderData.getRows().get(0).getCells().size();
for (RowRenderData row : tableRenderData.getRows()) {
- for (CellRenderData cell : row.getCells()) {
+ /*for (CellRenderData cell : row.getCells()) {
System.out.print(cell.getParagraphs().get(0).getContents());
}
- System.out.println("");
+ System.out.println("");*/
if (row.getCells().size() != countSize) {
throw new ErrorException("姣忚鍗曞厓鏍间笉鐩哥瓑");
}
@@ -968,18 +983,37 @@
Map<String, Object> table = new HashMap<>();
table.put("table2", tableRenderData);
table.put("report", insReport);
- table.put("sample_number",sample.getSampleCode() );
+ table.put("sample_number", sample.getSampleCode());
table.put("type", sample.getModel());
tables2.add(table);
});
}
+ /*鑾峰彇闄勪欢鍥剧墖绫诲瀷*/
+ List<Map<String, Object>> images = new ArrayList<>();
+ List<InsOrderFile> insOrderFiles = insOrderFileMapper.selectList(Wrappers.<InsOrderFile>lambdaQuery().eq(InsOrderFile::getType, 1).eq(InsOrderFile::getInsOrderId, orderId));
+ if (CollectionUtils.isNotEmpty(insOrderFiles)) {
+ insOrderFiles.forEach(insOrderFile -> {
+ Map<String, Object> image = new HashMap<>();
+ PictureRenderData pictureRenderData = Pictures.ofLocal(imgUrl + "/" + insOrderFile.getFileUrl()).sizeInCm(17, 20).create();
+ image.put("url", pictureRenderData);
+ image.put("report", insReport);
+ images.add(image);
+ });
+ }
+ //濮旀墭浜哄拰鐢佃瘽瀛楁鍒ゆ柇
+ if (ObjectUtils.isEmpty(insOrder.getPrepareUser())) {
+ insOrder.setPrepareUser("/");
+ }
+ if (ObjectUtils.isEmpty(insOrder.getPhone())) {
+ insOrder.setPhone("/");
+ }
XWPFTemplate template = XWPFTemplate.compile(url, builder.build()).render(
new HashMap<String, Object>() {{
put("order", insOrder);
put("report", insReport);
- put("user", user);
+ //put("user", user);
put("custom", custom);
put("sampleSize", samples.size());
put("tables", tables);
@@ -996,6 +1030,7 @@
put("insTimeEn", monthNames[insOrder.getInsTime().getMonthValue() - 1] + " " + now.getDayOfMonth() + ", " + now.getYear());
put("writeUrl", null);
put("insUrl", Pictures.ofLocal(imgUrl + "/" + signatureUrl).create());
+ put("images", images);
put("examineUrl", null);
put("ratifyUrl", null);
put("sampleEn", sampleEn);
@@ -1113,7 +1148,7 @@
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));
- insProducts.addAll(insProductMapper.selectFiberInsProduct(ids));
+ insProducts.addAll(insProductMapper.selectFiberInsProduct(ids, laboratory));
if (insProducts.size() > 0) {
String str = "";
int count = 0;
--
Gitblit v1.9.3