From 4f258638d62ccaae0050f1ed6c7231941b66fb50 Mon Sep 17 00:00:00 2001
From: deslrey <deslre0381@gmail.com>
Date: 星期六, 10 一月 2026 11:29:04 +0800
Subject: [PATCH] 【物料属性】的回显及查询
---
inspect-server/src/main/java/com/ruoyi/inspect/service/impl/InsOrderPlanServiceImpl.java | 585 ++++++++++++++++++++++++++++++++++++++++++----------------
1 files changed, 424 insertions(+), 161 deletions(-)
diff --git a/inspect-server/src/main/java/com/ruoyi/inspect/service/impl/InsOrderPlanServiceImpl.java b/inspect-server/src/main/java/com/ruoyi/inspect/service/impl/InsOrderPlanServiceImpl.java
index 7f9701e..ad03024 100644
--- a/inspect-server/src/main/java/com/ruoyi/inspect/service/impl/InsOrderPlanServiceImpl.java
+++ b/inspect-server/src/main/java/com/ruoyi/inspect/service/impl/InsOrderPlanServiceImpl.java
@@ -2,6 +2,7 @@
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.collection.CollUtil;
+import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.date.DateTime;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.ObjectUtil;
@@ -30,13 +31,13 @@
import com.ruoyi.basic.pojo.IfsInventoryQuantity;
import com.ruoyi.basic.pojo.StandardTemplate;
import com.ruoyi.basic.service.StandardTemplateService;
-import com.ruoyi.basic.vo.IfsInventoryQuantityVO;
import com.ruoyi.common.constant.DictDataConstants;
import com.ruoyi.common.constant.InsOrderTypeConstants;
import com.ruoyi.common.constant.MenuJumpPathConstants;
import com.ruoyi.common.core.domain.entity.Custom;
import com.ruoyi.common.core.domain.entity.InformationNotification;
import com.ruoyi.common.core.domain.entity.User;
+import com.ruoyi.common.enums.OrderType;
import com.ruoyi.common.utils.*;
import com.ruoyi.framework.exception.ErrorException;
import com.ruoyi.inspect.dto.*;
@@ -46,13 +47,10 @@
import com.ruoyi.inspect.util.HackLoopTableRenderPolicy;
import com.ruoyi.inspect.vo.InsOrderPlanTaskSwitchVo;
import com.ruoyi.inspect.vo.InsOrderPlanVO;
+import com.ruoyi.inspect.vo.InsSampleUserVO;
import com.ruoyi.performance.mapper.AuxiliaryOutputWorkingHoursMapper;
-import com.ruoyi.performance.mapper.PerformanceShiftMapper;
-import com.ruoyi.performance.mapper.ShiftTimeMapper;
import com.ruoyi.performance.pojo.AuxiliaryOutputWorkingHours;
-import com.ruoyi.performance.pojo.AuxiliaryOutputWorkingHoursTemporary;
import com.ruoyi.performance.service.AuxiliaryOutputWorkingHoursService;
-import com.ruoyi.performance.service.AuxiliaryOutputWorkingHoursTemporaryService;
import com.ruoyi.system.mapper.CustomMapper;
import com.ruoyi.system.mapper.UserMapper;
import com.ruoyi.system.service.ISysDictTypeService;
@@ -75,9 +73,7 @@
import java.nio.file.Paths;
import java.text.DecimalFormat;
import java.text.SimpleDateFormat;
-import java.time.LocalDate;
import java.time.LocalDateTime;
-import java.time.LocalTime;
import java.time.format.DateTimeFormatter;
import java.util.*;
import java.util.concurrent.atomic.AtomicBoolean;
@@ -132,6 +128,8 @@
@Resource
private IfsInventoryQuantityMapper ifsInventoryQuantityMapper;
@Resource
+ private IfsPartPropsRecordMapper ifsPartPropsRecordMapper;
+ @Resource
private InsReportService insReportService;
@Resource
private InsUnqualifiedRetestProductMapper insUnqualifiedRetestProductMapper;
@@ -168,9 +166,7 @@
public IPage<InsOrderPlanVO> selectInsOrderPlanList(Page page, InsOrderPlanDTO insOrderPlanDTO) {
// todo: 浠呯湅鑷繁鎴栬�呭疄楠屽
//鑾峰彇褰撳墠浜烘墍灞炲疄楠屽id
-
String laboratory = null;
-
String userName = null;
Integer userId = null;
if (ObjectUtil.isNotEmpty(insOrderPlanDTO.getUserId())) {
@@ -181,13 +177,17 @@
Integer isCheck = insOrderPlanDTO.getIsCheck();
insOrderPlanDTO.setIsCheck(null);
String sonLaboratory = insOrderPlanDTO.getSonLaboratory();//璇曢獙瀹�
+ // 鏁版嵁缃┖锛岄槻姝㈠弽灏勭敓鎴愰噸澶嶆暟鎹�
+ String materialProp = insOrderPlanDTO.getMaterialProp();
+ insOrderPlanDTO.setMaterialProp(null);
IPage<InsOrderPlanVO> insOrderPage = insSampleMapper.findInsSampleAndOrder(page,
QueryWrappers.queryWrappers(insOrderPlanDTO),
userName,
userId,
sonLaboratory,
laboratory,
- isCheck);
+ isCheck,
+ materialProp);
return insOrderPage;
}
@@ -278,7 +278,7 @@
}
@Override
- public Map<String,Object> checkSubmitPlan(Integer orderId, String laboratory) {
+ public Map<String, Object> checkSubmitPlan(Integer orderId, String laboratory) {
Map<String, Object> map = new HashMap<>();
List<String> collect = new ArrayList<>();
List<InsSample> insSamples = insSampleMapper.selectList(Wrappers.<InsSample>lambdaQuery().eq(InsSample::getInsOrderId, orderId).select(InsSample::getId));
@@ -308,15 +308,15 @@
//鏌ヨifs鎷嗗垎璁㈠崟鏄惁鏈夊凡涓嬪崟浣嗘槸鏈瀹岀殑鍗曞瓙
long count = 0L;
InsOrder insOrder = insOrderMapper.selectById(orderId);
- if(Objects.nonNull(insOrder.getIfsInventoryId())){
+ if (Objects.nonNull(insOrder.getIfsInventoryId())) {
IfsInventoryQuantity one = ifsInventoryQuantityMapper.selectById(insOrder.getIfsInventoryId());
//杩囨护鍑轰笉鍚堟牸鎴栨湭鎻愪氦鐨勫崟瀛�
- count = ifsInventoryQuantityMapper.selectSplitOrderList(one.getPartNo(),one.getLineNo(),one.getReleaseNo(),one.getReceiptNo(),one.getOrderNo())
+ count = ifsInventoryQuantityMapper.selectSplitOrderList(one.getPartNo(), one.getLineNo(), one.getReleaseNo(), one.getReceiptNo(), one.getOrderNo())
.stream()
- .filter(f->(Objects.nonNull(f.getInsOrderId()) && !Objects.equals(f.getInsOrderId(),orderId)) && (Objects.isNull(f.getInsResult()) || 0==f.getInsResult())).count();
+ .filter(f -> (Objects.nonNull(f.getInsOrderId()) && !Objects.equals(f.getInsOrderId(), orderId)) && (Objects.isNull(f.getInsResult()) || 0 == f.getInsResult())).count();
}
- map.put("errorMsg",collect);
- map.put("unInsOrderCount",count);
+ map.put("errorMsg", collect);
+ map.put("unInsOrderCount", count);
return map;
}
@@ -624,6 +624,7 @@
/**
* 鏌ヨ妯℃澘鍐呭
+ *
* @param order
* @param insProducts
*/
@@ -688,6 +689,7 @@
/**
* todo: 鍘熷璁板綍妯℃澘娓呴櫎娌℃湁浣跨敤鐨勬楠岄」(鏆傛椂鏈塨ug鏃犳硶浣跨敤)
+ *
* @param sheet
* @param itemNameList
*/
@@ -760,6 +762,7 @@
/**
* 鍧愭爣鎷兼帴
+ *
* @param r 妯潗鏍�
* @param c 绾靛潗鏍�
* @return
@@ -772,7 +775,7 @@
@Override
@Transactional(rollbackFor = Exception.class)
- public int submitPlan(Integer orderId, String laboratory, Integer verifyUser, String entrustCode,Boolean registerInsResults) {
+ public int submitPlan(Integer orderId, String laboratory, Integer verifyUser, String entrustCode, Boolean registerInsResults) {
InsOrder order = insOrderMapper.selectById(orderId);
// 1. 鍒ゆ柇鏄惁鏈夐噸澶嶇紪鍙�, 鏈夐噸澶嶇紪鍙峰仛鎻愰啋
Long codeCount = insOrderMapper.selectCount(Wrappers.<InsOrder>lambdaQuery()
@@ -811,7 +814,7 @@
int count = 0;
for (InsProduct product : insProducts) {
count++;
- str += (count != 0 ? "\n" : "") + count + "锛�" +
+ str += (count != 0 ? "\n" : "") + count + "锛�" +
product.getInspectionItemClass() + " " +
product.getInspectionItem() + " " +
product.getInspectionItemSubclass();
@@ -919,30 +922,29 @@
InsSample insSample = insSampleMapper.selectOne(Wrappers.<InsSample>lambdaQuery()
.eq(InsSample::getInsOrderId, orderId)
.last("limit 1"));
-// threadPoolTaskExecutor.execute(() -> {
-// String message = "";
-// message += "鑰愪笣绯荤粺妫�楠屼换鍔″鏍搁�氱煡";
-// message += "\n鎻愪氦浜�: " + userName;
-// message += "\n濮旀墭缂栧彿: " + order.getEntrustCode();
-// message += "\n鏍峰搧鍚嶇О: " + insSample.getModel();
-// message += "\n瑙勬牸鍨嬪彿: " + order.getPartDetail();
-// if (ifsInventoryQuantity != null) {
-// message += "\n鎵规鍙�: " + ifsInventoryQuantity.getUpdateBatchNo();
-// }
-// //鍙戦�佷紒涓氬井淇℃秷鎭�氱煡 鎻愪氦澶嶆牳
-// try {
-// WxCpUtils.inform(sendUserAccount, message, null);
-// } catch (Exception e) {
-// throw new RuntimeException(e);
-// }
-// });
-
+ threadPoolTaskExecutor.execute(() -> {
+ String message = "";
+ message += "鑰愪笣绯荤粺妫�楠屼换鍔″鏍搁�氱煡";
+ message += "\n鎻愪氦浜�: " + userName;
+ message += "\n濮旀墭缂栧彿: " + order.getEntrustCode();
+ message += "\n鏍峰搧鍚嶇О: " + insSample.getModel();
+ message += "\n瑙勬牸鍨嬪彿: " + order.getPartDetail();
+ if (ifsInventoryQuantity != null) {
+ message += "\n鎵规鍙�: " + ifsInventoryQuantity.getUpdateBatchNo();
+ }
+ //鍙戦�佷紒涓氬井淇℃秷鎭�氱煡 鎻愪氦澶嶆牳
+ try {
+ WxCpUtils.inform(sendUserAccount, message, null);
+ } catch (Exception e) {
+ throw new RuntimeException(e);
+ }
+ });
// 14.ifs绉诲簱(鍘熸潗鏂欓渶瑕佽繘琛岀Щ搴撴搷浣�) --> 鏈�鍚庢墽琛�,鍥犱负澶辫触鏃犳硶鍥炴粴
if (ifsInventoryQuantity != null) {
// 鐧昏妫�楠岀粨鏋�
// 鍒ゆ柇鏄惁鏈変笉鍚堟牸, 鏈変笉鍚堟牸涓嶈兘绉诲簱
// todo: ifs绉诲簱
- insReportService.isRawMaterial(order,registerInsResults,false);
+ insReportService.isRawMaterial(order, registerInsResults, false);
// 15 鍒ゆ柇褰撳墠鏍峰搧鏄惁涓哄師鏉愭枡, 鍘熸潗鏂欓渶瑕佽繘琛屾暟鎹垎鏋�, 鍒ゆ柇涔嬪墠10鏉℃暟鎹悓涓�涓緵搴斿晢, 鍚屼竴涓楠岄」鐨勫亸宸槸鍚﹁秴杩�10%
// 鏌ヨifs淇℃伅鑾峰彇鑾峰彇鍓�10涓緵搴斿晢涓�鏍风殑, 妫�楠岄」涓�鏍蜂俊鎭�
@@ -950,8 +952,6 @@
// 娣诲姞鍒嗘瀽鏁版嵁
addAnalysis(productList, ifsInventoryQuantity, order, sendUserAccount);
});
-
-
} else {
// 淇敼鎴愬搧鐘舵��
// 鍒ゆ柇鏄惁鏈変笉鍚堟牸
@@ -966,12 +966,12 @@
.set(InsOrder::getInsResult, 0));
}
}
-
return 1;
}
/**
* *****娣诲姞鍒嗘瀽鏁版嵁******
+ *
* @param productList
* @param ifsInventoryQuantity
* @param order
@@ -1062,6 +1062,7 @@
/**
* *****璁$畻鍋忓樊****
+ *
* @param data
* @param targetStr
* @return
@@ -1087,11 +1088,12 @@
/**
* *****璁$畻鍋忓樊****
+ *
* @param targetStr
* @return
*/
public static double isDeviationOverTenPercentByAsked(String asked, String targetStr) {
- if(!isNumeric(asked)) return 0;
+ if (!isNumeric(asked)) return 0;
double average = Double.parseDouble(asked);
double target = Double.parseDouble(targetStr);
@@ -1105,6 +1107,7 @@
/**
* ******鍘熷璁板綍妯℃澘澶嶅埗*****
+ *
* @param orderId
* @param ids
*/
@@ -1138,6 +1141,7 @@
/**
* 妫�楠屼换鍔″鏍�
+ *
* @param orderId
* @param laboratory
* @param type
@@ -1267,6 +1271,7 @@
/**
* 鐢熸垚鎶ュ憡
+ *
* @param orderId
*/
private void generateReport(Integer orderId) {
@@ -1306,6 +1311,7 @@
/**
* 鐢电紗閰嶇疆, 鏌ョ湅閰嶇疆鏍囪瘑
+ *
* @param id
* @param laboratory
* @return
@@ -1317,6 +1323,7 @@
/**
* 鍘熸潗鏂欐煡鐪嬫爣璇�
+ *
* @param id
* @param laboratory
* @return
@@ -1328,6 +1335,7 @@
/**
* 鏌ョ湅閲嶅鏍囪瘑
+ *
* @param id
* @param laboratory
* @return
@@ -1339,6 +1347,7 @@
/**
* 鏂板涓嶅悎鏍煎娴嬪唴瀹�
+ *
* @return
*/
@Override
@@ -1535,6 +1544,7 @@
/**
* 鏌ヨ杩涜揣鍘熷璁板綍
+ *
* @param insOrderId
* @return
*/
@@ -1590,6 +1600,7 @@
/**
* 淇濆瓨鍘熸潗鏂欒繘璐ч獙璇�
+ *
* @param factoryVerify
* @return
*/
@@ -1640,7 +1651,100 @@
/***************************************************** 灏忔姤鍛� ***************************************************************************/
/**
+ * 璁剧疆琛ㄦ牸鏍峰紡
+ *
+ * @param max 鏍囪瘑鏈�澶т釜鏁�
+ * @return
+ */
+ private TableStyle setTableStyle(int max) {
+ //璁剧疆鏍峰紡
+ TableStyle tableStyle = new TableStyle();
+ if (max <= 5) {
+ for (int i = 1; i <= max; i++) {
+ // 鏍规嵁妫�楠岀粨鏋滀釜鏁颁慨鏀归暱搴�
+ switch (i) {
+ case 1:
+ tableStyle.setColWidths(new int[]{650, 2900, 850, 2300, 2100, 1200});
+ break;
+ case 2:
+ tableStyle.setColWidths(new int[]{650, 2700, 850, 2200, 1200, 1200, 1200});
+ break;
+ case 3:
+ tableStyle.setColWidths(new int[]{650, 2700, 850, 1600, 1000, 1000, 1000, 1200});
+ break;
+ case 4:
+ tableStyle.setColWidths(new int[]{650, 2400, 850, 1500, 850, 850, 850, 850, 1200});
+ break;
+ case 5:
+ tableStyle.setColWidths(new int[]{650, 2200, 850, 1350, 770, 770, 770, 770, 770, 1100});
+ break;
+ }
+ }
+ }
+
+ tableStyle.setWidth("10000");
+ tableStyle.setAlign(TableRowAlign.CENTER);
+ BorderStyle borderStyle = new BorderStyle();
+ borderStyle.setColor("000000");
+ borderStyle.setType(XWPFTable.XWPFBorderType.SINGLE);
+ borderStyle.setSize(4);
+ tableStyle.setLeftBorder(borderStyle);
+ tableStyle.setRightBorder(borderStyle);
+ tableStyle.setInsideHBorder(borderStyle); // 璁剧疆姘村钩鍐呰竟妗�
+ tableStyle.setInsideVBorder(borderStyle);
+ return tableStyle;
+ }
+
+ /**
+ * 澶勭悊鏈夌數缂嗛鑹叉爣璇嗙殑妫�娴嬮」
+ *
+ * @param cableTags 鐢电紗棰滆壊鏍囪瘑
+ * @param collect 妫�娴嬮」鍒楄〃
+ * @param startIndex 璧峰涓嬫爣
+ * @param endIndex 缁撴潫涓嬫爣
+ * @return
+ */
+ private List<SampleProductExportDto> transformSampleProduct(List<String> cableTags, Map<String, List<SampleProductExportDto>> collect, int startIndex, int endIndex) {
+ List<SampleProductExportDto> sampleProductExportDtos = new ArrayList<>();
+ for (String s : collect.keySet()) {
+ List<String> lastValueList = new ArrayList<>();
+ SampleProductExportDto dto = new SampleProductExportDto();
+ BeanUtil.copyProperties(collect.get(s).get(0), dto);
+ Set<String> tellSet = new HashSet<>();
+ for (int i = startIndex; i < endIndex; i++) {
+ String cableTag = cableTags.get(i);
+ for (SampleProductExportDto sDto : collect.get(s)) {
+ tellSet.add(sDto.getTell());
+ if (sDto.getCableTag().equals(cableTag)) {
+ lastValueList.add(sDto.getLastValue());
+ }
+ }
+ }
+ //鍒囧壊鐢电紗閰嶇疆椤�
+ dto.setTell(String.join("\n", tellSet.stream().sorted(Comparator.naturalOrder()).collect(Collectors.toList())));
+ dto.setLastValueList(lastValueList);
+ sampleProductExportDtos.add(dto);
+ }
+ return sampleProductExportDtos;
+ }
+
+ /**
+ * 妫�娴嬮」鎺掑簭
+ *
+ * @param sourceMap
+ * @param targetMap
+ */
+ private void sortSampleProduct(Map<String, List<SampleProductExportDto>> sourceMap, Map<String, List<SampleProductExportDto>> targetMap) {
+ List<Map.Entry<String, List<SampleProductExportDto>>> entries = new ArrayList<>(sourceMap.entrySet());
+ entries.sort(Comparator.comparingInt(o -> (o.getValue().get(0).getSort() == null ? 0 : o.getValue().get(0).getSort())));
+ for (Map.Entry<String, List<SampleProductExportDto>> entry : entries) {
+ targetMap.put(entry.getKey(), entry.getValue());
+ }
+ }
+
+ /**
* 灏忔姤鍛婄敓鎴�
+ *
* @param orderId
* @param insOrder
* @param insSamples
@@ -1657,11 +1761,17 @@
enterFactoryReport.setSample(insOrder.getSample());
// 鑾峰彇ifs鏁版嵁
IfsInventoryQuantity ifsInventoryQuantity = ifsInventoryQuantityMapper.selectById(insOrder.getIfsInventoryId());
+ //鏌ヨ闆朵欢灞炴��
+ IfsPartPropsRecord ifsPartPropsRecord = ifsPartPropsRecordMapper.selectOne(Wrappers.<IfsPartPropsRecord>lambdaQuery()
+ .eq(IfsPartPropsRecord::getIfsInventoryId, ifsInventoryQuantity.getId()));
+ if (Objects.nonNull(ifsPartPropsRecord)) {
+ enterFactoryReport.setOuterColor(ifsPartPropsRecord.getOuterColor());
+ }
enterFactoryReport.setQtyArrived(ifsInventoryQuantity.getQtyArrived() == null ? "" :
ifsInventoryQuantity.getQtyArrived().stripTrailingZeros().toPlainString() + ifsInventoryQuantity.getBuyUnitMeas());
enterFactoryReport.setQuantity(insOrder.getTestQuantity());
enterFactoryReport.setPartDesc(insOrder.getPartDetail());
- enterFactoryReport.setSupplierName("**********");
+ enterFactoryReport.setSupplierName(ifsInventoryQuantity.getSupplierName());
enterFactoryReport.setLotBatchNo(ifsInventoryQuantity.getUpdateBatchNo());
// 妫�娴嬩緷鎹�
@@ -1679,6 +1789,7 @@
List<RowRenderData> rows = new ArrayList<>();
List<TextRenderData> text = new ArrayList<>();
RowRenderData rowRenderData = null;
+ List<Map<String, Object>> cableTagEnclosureTables = new ArrayList<>();
// 鏌ヨ妫�楠屽唴瀹�
List<SampleProductExportDto> sampleProductDto2s = insOrderMapper.selectSampleBySampleId(insSamples.stream()
@@ -1689,21 +1800,168 @@
List<SampleProductExportDto> sampleList = new ArrayList<>();
Integer max = insSamples.stream().mapToInt(InsSample::getQuantity).sum();
+ TableRenderData tableRenderData = new TableRenderData();
+ String templateName;
+ if (StringUtils.equals(OrderType.WG.getValue(), ifsInventoryQuantity.getOrderType())) {
+ //杩囨护涓嶅垽瀹氱殑妫�娴嬮」
+ List<SampleProductExportDto> filterItems = sampleProductDto2s.stream().filter(f -> f.getInsResult() != 3).collect(Collectors.toList());
+ int maxCableTag = 5;//鍗曚釜琛ㄦ牸锛岀數缂嗛鑹叉爣璇嗘渶澶т釜鏁�
+ templateName = "/static/small-wg-report-template.docx";
+ //鏌ヨ妫�楠屽崟娑堟伅
+ InsSampleUserVO insSampleUser = insSampleUserMapper.selectUserNameByOrderId(orderId);
+ if (Objects.nonNull(insSampleUser)) {
+ enterFactoryReport.setPartDesc(insSampleUser.getModel());
+ enterFactoryReport.setInspector(insSampleUser.getInspector());
+ enterFactoryReport.setInspectDate(insSampleUser.getInspectDate());
+ }
- // 杞垚Mpa杩涜鎺掑簭
- Map<String, List<SampleProductExportDto>> sortedMap = sampleProductDto2s.stream()
- .filter(sampleProductDto2 -> StringUtils.isNotBlank(sampleProductDto2.getInspectionItem()))
- .collect(Collectors.groupingBy(SampleProductExportDto::getInspectionItem));
- List<Map.Entry<String, List<SampleProductExportDto>>> entries = new ArrayList<>(sortedMap.entrySet());
- entries.sort((o1, o2) -> (o1.getValue().get(0).getSort() == null ? 0 : o1.getValue().get(0).getSort())
- - (o2.getValue().get(0).getSort() == null ? 0 : o2.getValue().get(0).getSort()));
- // 鍒涘缓涓�涓� LinkedHashMap 鏉ヤ繚鎸佹彃鍏ラ『搴�
- Map<String, List<SampleProductExportDto>> item = new LinkedHashMap<>();
- for (Map.Entry<String, List<SampleProductExportDto>> entry : entries) {
- item.put(entry.getKey(), entry.getValue());
+ Map<String, List<SampleProductExportDto>> totalItem = new LinkedHashMap<>();//妫�娴嬮」鍒楄〃
+ Map<String, List<SampleProductExportDto>> cableTagItem = new LinkedHashMap<>();//鐢电紗閰嶇疆妫�娴嬮」
+ Map<String, List<SampleProductExportDto>> cableTagEnclosureItem = new LinkedHashMap<>();//鐢电紗閰嶇疆妫�娴嬮」闄勪欢
+
+ AtomicInteger finalIndex = new AtomicInteger(1);
+ List<String> cableTags = insOrderMapper.selectSampleCableTag(insSample.getId());
+ max = Math.max(cableTags.size(), 1);
+ //澶勭悊鐢电紗閰嶇疆妫�娴嬮」
+ Map<String, List<SampleProductExportDto>> tempMap = new HashMap<>();
+ Map<String, List<SampleProductExportDto>> tempMap2 = new HashMap<>();
+ Map<String, List<SampleProductExportDto>> listMap2 = filterItems.stream()
+ .filter(f -> StringUtils.isNotBlank(f.getCableTag()) && StringUtils.isNotBlank(f.getInspectionItem()))
+ .collect(Collectors.groupingBy(SampleProductExportDto::getInspectionItem));
+ for (String key : listMap2.keySet()) {
+ List<SampleProductExportDto> sampleProductExportDtos;
+ List<SampleProductExportDto> sampleProductExportDtos2;
+ //澶勭悊鐢电紗閰嶇疆椤�
+ Map<String, List<SampleProductExportDto>> collect = listMap2.get(key).stream().collect(Collectors.groupingBy(SampleProductExportDto::getInspectionItemSubclass));
+ if (cableTags.size() > maxCableTag) {
+ sampleProductExportDtos = transformSampleProduct(cableTags, collect, 0, maxCableTag);
+ sampleProductExportDtos2 = transformSampleProduct(cableTags, collect, maxCableTag, cableTags.size());
+ tempMap2.put(key, sampleProductExportDtos2);
+ } else {
+ sampleProductExportDtos = transformSampleProduct(cableTags, collect, 0, cableTags.size());
+ }
+ cableTagItem.put(key, sampleProductExportDtos);
+ }
+ //澶勭悊闈炵數缂嗛厤缃娴嬮」
+ Map<String, List<SampleProductExportDto>> listMap = filterItems.stream()
+ .filter(f -> StringUtils.isBlank(f.getCableTag()) && StringUtils.isNotBlank(f.getInspectionItem()))
+ .collect(Collectors.groupingBy(s -> s.getInspectionItem() + "&"));
+ //鍚堝苟妫�娴嬮」鍒楄〃
+ tempMap.putAll(cableTagItem);
+ tempMap.putAll(listMap);
+ sortSampleProduct(tempMap, totalItem);
+ int tagNum = Math.min(max, maxCableTag);
+ List<String> tagList = cableTags.isEmpty() ? new ArrayList<>() : cableTags.subList(0, tagNum);
+ handlerSampleItems(OrderType.WG.getValue(), totalItem, finalIndex, sampleList, tagNum, text, rows, rowRenderData, resultCh, tagList, true);
+
+ if (CollectionUtil.isNotEmpty(tempMap2)) {
+ sortSampleProduct(tempMap2, cableTagEnclosureItem);
+ //鐢熸垚闄勪欢鐢电紗琛ㄦ牸
+ TableRenderData tableRenderData2 = new TableRenderData();
+ List<String> newCableTags = cableTags.subList(maxCableTag, cableTags.size());
+ AtomicInteger finalIndex2 = new AtomicInteger(1);
+ List<TextRenderData> newText = new ArrayList<TextRenderData>();
+ List<RowRenderData> newRows = new ArrayList<>();
+ RowRenderData newRowRenderData = null;
+ handlerSampleItems(OrderType.WG.getValue(), cableTagEnclosureItem, finalIndex2, new ArrayList<>(), newCableTags.size(), newText, newRows, newRowRenderData, resultCh, newCableTags, true);
+ tableRenderData2.setRows(newRows);
+ tableRenderData2.setTableStyle(setTableStyle(newCableTags.size()));
+ HashMap<String, Object> tableMap = new HashMap<>();
+ tableMap.put("enclosureTable", tableRenderData2);
+ tableMap.put("resultCh", resultCh);
+ tableMap.put("writeUrl", null);
+ tableMap.put("examineUrl", null);
+ tableMap.put("ratifyUrl", null);
+ tableMap.put("writeDateUrl", null);
+ tableMap.put("examineDateUrl", null);
+ tableMap.put("ratifyDateUrl", null);
+ tableMap.put("seal1", null);
+ cableTagEnclosureTables.add(tableMap);
+ }
+
+ tableRenderData.setRows(rows);
+ tableRenderData.setTableStyle(setTableStyle(tagNum));
+ if (!resultCh.get().isEmpty()) {
+ resultCh.set("缁忔楠岋紝" + resultCh.get() + "鎵�妫�椤圭洰涓嶅悎鏍硷紝鍏朵綑鎵�妫�椤圭洰鍧囧悎鏍笺�傦紙鐩栫珷鏈夋晥锛�");
+ } else {
+ resultCh.set("鏈骇鍝佺鍚堢浉鍏虫爣鍑嗚姹傦紝缁忔楠屽悎鏍煎噯浜堝嚭鍘傦紙鐩栫珷鏈夋晥锛�");
+ }
+
+ } else {
+ templateName = "/static/small-report-template.docx";
+ // 杞垚Mpa杩涜鎺掑簭
+ Map<String, List<SampleProductExportDto>> sortedMap = sampleProductDto2s.stream()
+ .filter(sampleProductDto2 -> StringUtils.isNotBlank(sampleProductDto2.getInspectionItem()))
+ .collect(Collectors.groupingBy(SampleProductExportDto::getInspectionItem));
+// // 鍒涘缓涓�涓� LinkedHashMap 鏉ヤ繚鎸佹彃鍏ラ『搴�
+ Map<String, List<SampleProductExportDto>> item = new LinkedHashMap<>();
+ sortSampleProduct(sortedMap, item);
+
+
+ AtomicInteger finalIndex = new AtomicInteger(1);
+ handlerSampleItems(OrderType.RAW.getValue(), item, finalIndex, sampleList, max, text, rows, rowRenderData, resultCh, null, true);
+ tableRenderData.setRows(rows);
+ tableRenderData.setTableStyle(setTableStyle(max));
+
+ if (!resultCh.get().equals("")) {
+ resultCh.set("缁忔楠岋紝" + resultCh.get() + "鎵�妫�椤圭洰涓嶅悎鏍硷紝鍏朵綑鎵�妫�椤圭洰鍧囧悎鏍笺��");
+ } else {
+ resultCh.set("缁忔楠屾鎵�" + enterFactoryReport.getSample() + "鍚勯」鐩潎绗﹀悎妫�楠岃鑼冭姹傘��");
+ }
}
- AtomicInteger finalIndex = new AtomicInteger(1);
+ ConfigureBuilder builder = Configure.builder();
+ builder.useSpringEL(true);
+
+ InputStream inputStream = this.getClass().getResourceAsStream(templateName);
+ XWPFTemplate template = XWPFTemplate.compile(inputStream, builder.build()).render(
+ new HashMap<String, Object>() {{
+ put("report", enterFactoryReport);
+ put("standardMethod", standardMethod2.toString().equals("null") ? "" : standardMethod2);
+ put("orderType", orderType);
+ put("table", tableRenderData);
+ put("enclosureTables", cableTagEnclosureTables.isEmpty() ? null : cableTagEnclosureTables);
+ put("resultCh", resultCh);
+ put("writeUrl", null);
+ put("examineUrl", null);
+ put("ratifyUrl", null);
+ put("writeDateUrl", null);
+ put("examineDateUrl", null);
+ put("ratifyDateUrl", null);
+ put("seal1", null);
+ }});
+ try {
+ // 淇敼鎹㈣鍜屽悎骞堕棶棰�
+ updaeMerge(template.getXWPFDocument(), true);
+ String name = insReport.getCode().replace("/", "") + "-J.docx";
+ template.writeAndClose(Files.newOutputStream(Paths.get(wordUrl + "/" + name)));
+ insReport.setUrl("/word/" + name);
+ insReport.setIsPass(0);
+ insReport.setWriteUserId(SecurityUtils.getUserId().intValue());//鎻愪氦浜�
+ insReport.setWriteTime(LocalDateTime.now());//鎻愪氦鏃堕棿
+ // 鏌ヨ鎶ュ憡, 鍒ゆ柇涔嬪墠鏄惁娣诲姞杩�, 娣诲姞杩囧垹闄�
+ insReportMapper.delete(Wrappers.<InsReport>lambdaQuery()
+ .eq(InsReport::getInsOrderId, insOrder.getId()));
+ insReportMapper.insert(insReport);
+ inputStream.close();
+ } catch (IOException e) {
+ throw new RuntimeException(e);
+ }
+ }
+
+ /**
+ * 澶勭悊甯歌妫�娴嬮」
+ *
+ * @param item
+ * @param finalIndex
+ * @param sampleList
+ * @param max
+ * @param text
+ * @param rows
+ * @param rowRenderData
+ * @param resultCh
+ */
+ private static void handlerSampleItems(String orderType, Map<String, List<SampleProductExportDto>> item, AtomicInteger finalIndex, List<SampleProductExportDto> sampleList, Integer max, List<TextRenderData> text, List<RowRenderData> rows, RowRenderData rowRenderData, AtomicReference<String> resultCh, List<String> cableTagList, Boolean hasAddHead) {
item.forEach((s, sampleProductDtoInside) -> {
// 娣诲姞妫�楠岄」
SampleProductExportDto dto2 = new SampleProductExportDto();
@@ -1716,19 +1974,23 @@
// 澶勭悊闆嗗悎
Map<String, SampleProductExportDto> map = new LinkedHashMap<>();
for (SampleProductExportDto productDto2 : sampleProductDtoInside) {
- String productName = productDto2.getInspectionItemClass() + productDto2.getInspectionItem();
+ String productName = productDto2.getInspectionItemClass() + productDto2.getInspectionItem() + productDto2.getCableTag();
if (map.containsKey(productName)) {
// 濡傛灉鍚嶇О宸茬粡瀛樺湪锛屾坊鍔� lastValue 鍊煎埌 lastValueList 鍒楄〃
- map.get(productName)
- .getLastValueList()
- .add(productDto2.getLastValue());
+ if (CollectionUtil.isEmpty(map.get(productName).getLastValueList()) || StringUtils.equals(OrderType.RAW.getValue(), orderType)) {
+ map.get(productName)
+ .getLastValueList()
+ .add(productDto2.getLastValue());
+ }
map.get(productName)
.getInsResultList()
.add(productDto2.getInsResult());
} else {
// 濡傛灉鍚嶇О涓嶅瓨鍦紝鐩存帴鏀惧叆 map
- productDto2.setLastValueList(new ArrayList<>()); // 妫�楠屽唴瀹�
- productDto2.getLastValueList().add(productDto2.getLastValue());
+ if (CollectionUtil.isEmpty(productDto2.getLastValueList()) || StringUtils.equals(OrderType.RAW.getValue(), orderType)) {
+ productDto2.setLastValueList(new ArrayList<>()); // 妫�楠屽唴瀹�
+ productDto2.getLastValueList().add(productDto2.getLastValue());
+ }
productDto2.setInsResultList(new ArrayList<>()); // 缁撴灉
productDto2.getInsResultList().add(productDto2.getInsResult());
@@ -1757,19 +2019,23 @@
// 澶勭悊闆嗗悎
Map<String, SampleProductExportDto> map = new LinkedHashMap<>();
for (SampleProductExportDto productDto2 : sampleProductDtoInside) {
- String productName = productDto2.getInspectionItemClass() + productDto2.getInspectionItem() + productDto2.getInspectionItemSubclass();
+ String productName = productDto2.getInspectionItemClass() + productDto2.getInspectionItem() + productDto2.getInspectionItemSubclass() + productDto2.getCableTag();
if (map.containsKey(productName)) {
// 濡傛灉鍚嶇О宸茬粡瀛樺湪锛屾坊鍔� lastValue 鍊煎埌 lastValueList 鍒楄〃
- map.get(productName)
- .getLastValueList()
- .add(productDto2.getLastValue());
+ if (CollectionUtil.isEmpty(map.get(productName).getLastValueList()) || StringUtils.equals(OrderType.RAW.getValue(), orderType)) {
+ map.get(productName)
+ .getLastValueList()
+ .add(productDto2.getLastValue());
+ }
map.get(productName)
.getInsResultList()
.add(productDto2.getInsResult());
} else {
// 濡傛灉鍚嶇О涓嶅瓨鍦紝鐩存帴鏀惧叆 map
- productDto2.setLastValueList(new ArrayList<>()); // 妫�楠屽唴瀹�
- productDto2.getLastValueList().add(productDto2.getLastValue());
+ if (CollectionUtil.isEmpty(productDto2.getLastValueList()) || StringUtils.equals(OrderType.RAW.getValue(), orderType)) {
+ productDto2.setLastValueList(new ArrayList<>()); // 妫�楠屽唴瀹�
+ productDto2.getLastValueList().add(productDto2.getLastValue());
+ }
productDto2.setInsResultList(new ArrayList<>()); // 缁撴灉
productDto2.getInsResultList().add(productDto2.getInsResult());
@@ -1787,8 +2053,9 @@
});
// 娣诲姞灏忔姤鍛婅〃澶�
- text = addSmallHead(text, max, rows);
-
+ if (hasAddHead) {
+ text = addSmallHead(text, max, rows, cableTagList);
+ }
// 涓棿妫�娴嬪�兼坊鍔�
for (int i = 0; i < sampleList.size(); i++) {
@@ -1805,7 +2072,9 @@
// 妫�楠岄」鐩�
TextRenderData middleRenderData2 = new TextRenderData();
- middleRenderData2.setText(sample.getInspectionName());
+ String[] split = sample.getInspectionName().split("&");
+ String itemName = split.length > 0 ? split[0] : sample.getInspectionName();
+ middleRenderData2.setText(itemName + "鈭�" + itemName + i + "_" + finalIndex);
Style middleStyle2 = new Style();
middleStyle2.setFontFamily("瀹嬩綋");
middleStyle2.setColor("000000");
@@ -1892,7 +2161,7 @@
TextRenderData middleRenderData6 = new TextRenderData();
middleRenderData6.setText((StringUtils.isNotEmpty(sample.getLastValue()) ?
sample.getLastValue() : "")
- + "鈭�" + (7 + i));
+ + "鈭�" + (finalIndex.get() + "_" + i));
Style middleStyle6 = new Style();
middleStyle6.setFontFamily("瀹嬩綋");
middleStyle6.setColor("000000");
@@ -1930,7 +2199,7 @@
String type;
if (count.equals(0)) {
// 娣诲姞涓嶅悎鏍兼弿杩�
- String item1 = (max == 1 ? "" : "绗�" + Integer.toString(index) + "娆�")
+ String item1 = (max == 1 ? "" : "绗�" + index + "娆�")
+ sample.getInspectionItem()
+ (StringUtils.isBlank(sample.getInspectionItemSubclass()) ? "" : "" + sample.getInspectionItemSubclass());
if (resultCh.get().equals("")) {
@@ -1970,95 +2239,18 @@
text = new ArrayList<>();
}
- TableRenderData tableRenderData = new TableRenderData();
- tableRenderData.setRows(rows);
-
- //璁剧疆鏍峰紡
- TableStyle tableStyle = new TableStyle();
- for (int i = 1; i <= max; i++) {
- // 鏍规嵁鍑忓帇閭g粨鏋滀釜鏁颁慨鏀归暱搴�
- switch (i) {
- case 1:
- tableStyle.setColWidths(new int[]{650, 2900, 850, 2300, 2100, 1200});
- break;
- case 2:
- tableStyle.setColWidths(new int[]{650, 2700, 850, 2200, 1200, 1200, 1200});
- break;
- case 3:
- tableStyle.setColWidths(new int[]{650, 2700, 850, 1600, 1000, 1000, 1000, 1200});
- break;
- case 4:
- tableStyle.setColWidths(new int[]{650, 2400, 850, 1500, 850, 850, 850, 850, 1200});
- break;
- case 5:
- tableStyle.setColWidths(new int[]{650, 2200, 850, 1350, 750, 750, 750, 750, 750, 1200});
- break;
- }
- }
- tableStyle.setWidth("10000");
- tableStyle.setAlign(TableRowAlign.CENTER);
- BorderStyle borderStyle = new BorderStyle();
- borderStyle.setColor("000000");
- borderStyle.setType(XWPFTable.XWPFBorderType.SINGLE);
- borderStyle.setSize(4);
- tableStyle.setLeftBorder(borderStyle);
- tableStyle.setRightBorder(borderStyle);
- tableStyle.setInsideHBorder(borderStyle); // 璁剧疆姘村钩鍐呰竟妗�
- tableStyle.setInsideVBorder(borderStyle);
- tableRenderData.setTableStyle(tableStyle);
-
- if (!resultCh.get().equals("")) {
- resultCh.set("缁忔楠岋紝" + resultCh.get() + "鎵�妫�椤圭洰涓嶅悎鏍硷紝鍏朵綑鎵�妫�椤圭洰鍧囧悎鏍笺��");
- } else {
- resultCh.set("缁忔楠屾鎵�" + enterFactoryReport.getSample() + "鍚勯」鐩潎绗﹀悎妫�楠岃鑼冭姹傘��");
- }
-
- ConfigureBuilder builder = Configure.builder();
- builder.useSpringEL(true);
-
- InputStream inputStream = this.getClass().getResourceAsStream("/static/small-report-template.docx");
- XWPFTemplate template = XWPFTemplate.compile(inputStream, builder.build()).render(
- new HashMap<String, Object>() {{
- put("report", enterFactoryReport);
- put("standardMethod", standardMethod2.toString().equals("null") ? "" : standardMethod2);
- put("orderType", orderType);
- put("table", tableRenderData);
- put("resultCh", resultCh);
- put("writeUrl", null);
- put("examineUrl", null);
- put("ratifyUrl", null);
- put("writeDateUrl", null);
- put("examineDateUrl", null);
- put("ratifyDateUrl", null);
- put("seal1", null);
- }});
- try {
- // 淇敼鎹㈣鍜屽悎骞堕棶棰�
- updaeMerge(template.getXWPFDocument(), true);
- String name = insReport.getCode().replace("/", "") + "-J.docx";
- template.writeAndClose(Files.newOutputStream(Paths.get(wordUrl + "/" + name)));
- insReport.setUrl("/word/" + name);
- insReport.setIsPass(0);
- insReport.setWriteUserId(SecurityUtils.getUserId().intValue());//鎻愪氦浜�
- insReport.setWriteTime(LocalDateTime.now());//鎻愪氦鏃堕棿
- // 鏌ヨ鎶ュ憡, 鍒ゆ柇涔嬪墠鏄惁娣诲姞杩�, 娣诲姞杩囧垹闄�
- insReportMapper.delete(Wrappers.<InsReport>lambdaQuery()
- .eq(InsReport::getInsOrderId, insOrder.getId()));
- insReportMapper.insert(insReport);
- inputStream.close();
- } catch (IOException e) {
- throw new RuntimeException(e);
- }
}
+
/**
- * 娣诲姞灏忓疂琛ㄥご
+ * 娣诲姞灏忔姤鍛婅〃澶�
+ *
* @param text
* @param max
* @param rows
* @return
*/
- private static List<TextRenderData> addSmallHead(List<TextRenderData> text, Integer max, List<RowRenderData> rows) {
+ private static List<TextRenderData> addSmallHead(List<TextRenderData> text, Integer max, List<RowRenderData> rows, List<String> cableTagList) {
RowRenderData rowRenderData;
// // 澶�
TextRenderData headRenderData1 = new TextRenderData();
@@ -2116,7 +2308,7 @@
text = new ArrayList<>();
// 绗簩琛�(鍙兘娌℃湁)
- if (max > 1) {
+ if (max > 1 && CollectionUtil.isEmpty(cableTagList)) {
TextRenderData tagRenderData1 = new TextRenderData();
tagRenderData1.setText("");
Style tagStyle1 = new Style();
@@ -2170,8 +2362,62 @@
rowRenderData = Rows.of(text4).center().rowAtleastHeight(1).create();
rows.add(rowRenderData);
text = new ArrayList<>();
+ }
+ //濡傛灉鏈夌數缂嗛鑹诧紝鐢熸垚棰滆壊鏍囪瘑琛�
+ if (CollectionUtil.isNotEmpty(cableTagList)) {
+ TextRenderData tagRenderData1 = new TextRenderData();
+ tagRenderData1.setText("");
+ Style tagStyle1 = new Style();
+ tagStyle1.setFontFamily("瀹嬩綋");
+ tagStyle1.setColor("000000");
+ tagRenderData1.setStyle(tagStyle1);
+ text.add(tagRenderData1);
+ TextRenderData tagRenderData2 = new TextRenderData();
+ tagRenderData2.setText("缁濈紭绾胯姱棰滆壊鍜屾爣蹇�");
+ Style tagStyle2 = new Style();
+ tagStyle2.setFontFamily("瀹嬩綋");
+ tagStyle2.setColor("000000");
+ tagRenderData2.setStyle(tagStyle2);
+ text.add(tagRenderData2);
+ TextRenderData tagRenderData4 = new TextRenderData();
+ tagRenderData4.setText("/");
+ Style tagStyle4 = new Style();
+ tagStyle4.setFontFamily("瀹嬩綋");
+ tagStyle4.setColor("000000");
+ tagRenderData4.setStyle(tagStyle4);
+ text.add(tagRenderData4);
+
+ TextRenderData tagRenderData5 = new TextRenderData();
+ tagRenderData5.setText("/");
+ Style tagStyle5 = new Style();
+ tagStyle5.setFontFamily("瀹嬩綋");
+ tagStyle5.setColor("000000");
+ tagRenderData5.setStyle(tagStyle5);
+ text.add(tagRenderData5);
+
+ for (String cableTag : cableTagList) {
+ TextRenderData tagRenderData6 = new TextRenderData();
+ tagRenderData6.setText(cableTag);
+ Style tagStyle6 = new Style();
+ tagStyle6.setFontFamily("瀹嬩綋");
+ tagStyle6.setColor("000000");
+ tagRenderData6.setStyle(tagStyle6);
+ text.add(tagRenderData6);
+ }
+ TextRenderData tagRenderData7 = new TextRenderData();
+ tagRenderData7.setText("/");
+ Style tagStyle7 = new Style();
+ tagStyle7.setFontFamily("瀹嬩綋");
+ tagStyle7.setColor("000000");
+ tagRenderData7.setStyle(tagStyle7);
+ text.add(tagRenderData7);
+
+ TextRenderData[] text4 = text.toArray(new TextRenderData[0]);
+ rowRenderData = Rows.of(text4).center().rowAtleastHeight(1).create();
+ rows.add(rowRenderData);
+ text = new ArrayList<>();
}
return text;
@@ -2181,6 +2427,7 @@
/**
* 鍒涘缓澶ф姤鍛�
+ *
* @param orderId
* @param insOrder
* @param
@@ -2606,6 +2853,7 @@
/**
* 璋冩暣楂樺害
+ *
* @param row
* @param rowHeight
* @return
@@ -2837,12 +3085,13 @@
/**
* 娣诲姞鎶ュ憡琛ㄥご
+ *
* @param sample
* @param text
* @param rowRenderData
* @param rows
* @param max
- * @param cableTags 绾胯姱棰滆壊
+ * @param cableTags 绾胯姱棰滆壊
*/
private static void addHead(SampleProductDto sample, List<TextRenderData> text, RowRenderData rowRenderData, List<RowRenderData> rows, int max, List<String> cableTags) {
// 绗竴琛�
@@ -3060,16 +3309,17 @@
/**
* 娣诲姞妫�娴嬪��
- * @param a 褰撳墠鏍峰搧
+ *
+ * @param a 褰撳墠鏍峰搧
* @param text
* @param rowRenderData
* @param rows
- * @param max 妫�楠屾暟閲�
+ * @param max 妫�楠屾暟閲�
* @param resultChList 涓嶇鍚堜俊鎭腑鏂�
* @param resultEhList 涓嶇鍚堜俊鎭嫳鏂�
* @param insSamples
- * @param cableTags 绾胯姱棰滆壊
- * @param isOneSample 鍒ゆ柇鏄惁鏄彧鏈変竴涓牱鍝�
+ * @param cableTags 绾胯姱棰滆壊
+ * @param isOneSample 鍒ゆ柇鏄惁鏄彧鏈変竴涓牱鍝�
*/
private int addTestValue(SampleProductDto a,
List<TextRenderData> text,
@@ -3748,6 +3998,7 @@
/**
* 娣诲姞鎶ュ憡缁撹涓嫳鏂�
+ *
* @param sample
* @param itemCh
* @param itemEn
@@ -3807,6 +4058,7 @@
/**
* 鏍煎紡鍖栦慨鏀规楠岄」
+ *
* @param sampleProductDto2s
*/
private void formatProducts(List<SampleProductExportDto> sampleProductDto2s) {
@@ -3876,6 +4128,7 @@
/**
* 娣诲姞缁撳熬
+ *
* @param text
* @param rowRenderData
* @param rows
@@ -3907,6 +4160,7 @@
/**
* 鍒ゆ柇褰撳墠鍐呭鏄惁鏄瀛﹁鏁版硶
+ *
* @param str
* @return
*/
@@ -3923,6 +4177,7 @@
/**
* 淇敼瑕佹眰鎻忚堪鐨勭瀛﹁鏁版硶
+ *
* @param input
*/
public static String convertToScientificNotation(String input) {
@@ -3952,6 +4207,7 @@
/**
* 灞曠ず鎴愮瀛﹁鏁版硶
+ *
* @param number
* @return
*/
@@ -4048,6 +4304,7 @@
/**
* 鏍规嵁瑕佹眰鎻忚堪淇濈暀缁撴灉灏忔暟鐐逛綅鏁�
+ *
* @param reference
* @param value
* @return
@@ -4116,6 +4373,7 @@
/**
* 淇濈暀浣嶆暟, 濡傛灉绛変簬0 杩斿洖鎵惧埌鐨勪竴涓潪0浣嶆暟
+ *
* @param number 褰撳墠鏁板瓧
* @param scale 鍘熸湰淇濈暀鐨勪綅鏁�
* @return
@@ -4154,9 +4412,10 @@
/**
* *****淇濆瓨鍏冩闃块噷杩涜揣楠岃瘉鍘熷璁板綍*****
- * @param insOrderId 璁㈠崟Id
- * @param examineUserId 澶嶆牳浜篒d
- * @param writeUserId 妫�楠屽憳Id
+ *
+ * @param insOrderId 璁㈠崟Id
+ * @param examineUserId 澶嶆牳浜篒d
+ * @param writeUserId 妫�楠屽憳Id
*/
private void reportFactoryVerify(Integer insOrderId, Integer examineUserId, Integer writeUserId) {
// 鏌ヨ杩涜揣楠岃瘉鍘熷璁板綍
@@ -4309,6 +4568,7 @@
/**
* ***鏍煎紡鍖栬繘鍘傞獙璇佸唴瀹�****
+ *
* @param basicType
* @return
*/
@@ -4338,6 +4598,7 @@
/**
* ***word杞崲pdf***
+ *
* @param path
* @return
*/
@@ -4386,6 +4647,7 @@
/**
* *****淇敼鎴愬搧鎶芥牱鐘舵��******
+ *
* @param insSamples
* @param order
*/
@@ -4423,6 +4685,7 @@
/**
* 娣诲姞宸ユ椂
+ *
* @param userId
* @param insProduct
* @param insOrder
--
Gitblit v1.9.3