DLC 1 рік тому
батько
коміт
8c280a502d

+ 1 - 1
cx-equipment/cx-equipment-common/src/main/java/com/rongwei/bscommon/sys/dao/EquFrockTestRecordDao.java

@@ -8,7 +8,7 @@ import org.apache.ibatis.annotations.Select;
 import java.util.List;
 
 public interface EquFrockTestRecordDao extends BaseMapper<EquFrockTestRecordDo> {
-    @Select("select FROCKNUM from equ_frock_list where DELETED='0'")
+    @Select("select ID,FROCKNUM from equ_frock_list where DELETED='0'")
     List<EquFrockListDo> getAllFrocknum();
 
     @Select("select FROCKNUM,DATE(TESTDATE) as TESTDATE from equ_frock_test_record where DELETED='0'")

+ 14 - 7
cx-equipment/cx-equipment-common/src/main/java/com/rongwei/bscommon/sys/service/impl/EquFrockTestRecordServiceImpl.java

@@ -30,6 +30,7 @@ import java.util.ArrayList;
 import java.util.Date;
 import java.util.List;
 import java.util.regex.Pattern;
+import java.util.stream.Collectors;
 
 @Service
 public class EquFrockTestRecordServiceImpl extends ServiceImpl<EquFrockTestRecordDao, EquFrockTestRecordDo> implements EquFrockTestRecordService {
@@ -68,6 +69,7 @@ public class EquFrockTestRecordServiceImpl extends ServiceImpl<EquFrockTestRecor
                 if (ExcelUtils.isRowEmpty(row)) {
                     continue;
                 }
+                String mainid = "";
                 String ownedfactory = row.getCell(1) == null ? "" : row.getCell(1).toString().trim();
                 String frockname = row.getCell(2) == null ? "" : row.getCell(2).toString().trim();
                 String usedept = row.getCell(3) == null ? "" : row.getCell(3).toString().trim();
@@ -96,7 +98,7 @@ public class EquFrockTestRecordServiceImpl extends ServiceImpl<EquFrockTestRecor
                     stringBuilder.append("使用车间必填 ");
                 }
                 String testdate = "";
-                if (StringUtils.isBlank(exctestdate)) {
+                if (StringUtils.isBlank(exctestdate) || exctestdate.equals("null")) {
                     stringBuilder.append("检定日期必填 ");
                 } else {
                     testdate = dateFormat.format(DateUtils.importExcelFormatExcel((XSSFCell) row.getCell(6))).split(" ")[0];
@@ -104,12 +106,15 @@ public class EquFrockTestRecordServiceImpl extends ServiceImpl<EquFrockTestRecor
                 if (StringUtils.isBlank(frocknum)) {
                     stringBuilder.append("工装编号必填 ");
                 } else {
-                    if (equFrockListDoList.stream().anyMatch(item -> item.getFrocknum().equals(frocknum))) {
-                        if (equFrockTestRecordDoList.stream().anyMatch(item -> item.getFrocknum().equals(frocknum) && item.getTestdate().toString().equals(exctestdate))) {
+                    List<EquFrockListDo> efls = equFrockListDoList.stream().filter(item -> item.getFrocknum().equals(frocknum)).collect(Collectors.toList());
+                    if (efls.isEmpty()) {
+                        stringBuilder.append("工装编号" + frocknum + "在系统中不存在 ");
+                    } else {
+                        mainid = efls.get(0).getId();
+                        String finalTestdate = testdate;
+                        if (equFrockTestRecordDoList.stream().anyMatch(item -> item.getFrocknum().equals(frocknum) && dateFormat.format(item.getTestdate()).split(" ")[0].equals(finalTestdate))) {
                             stringBuilder.append(frockname + "(" + frocknum + ")已存在" + testdate + "的检测记录,不可重复导入 ");
                         }
-                    } else {
-                        stringBuilder.append("工装编号" + frocknum + "在系统中不存在 ");
                     }
                 }
                 if (StringUtils.isBlank(belongequname)) {
@@ -148,7 +153,8 @@ public class EquFrockTestRecordServiceImpl extends ServiceImpl<EquFrockTestRecor
                 if (StringUtils.isBlank(hs9) || !pattern.matcher(hs9).matches()) {
                     stringBuilder.append("检测硬度值(HS9)必填且只能为数字 ");
                 }
-                if (equFrockTestRecordDos.stream().anyMatch(item -> item.getFrocknum().equals(frocknum) && item.getTestdate().toString().equals(exctestdate))) {
+                String finalTestdate1 = testdate;
+                if (equFrockTestRecordDos.stream().anyMatch(item -> item.getFrocknum().equals(frocknum) && dateFormat.format(item.getTestdate()).split(" ")[0].equals(finalTestdate1))) {
                     stringBuilder.append("工装编号" + frocknum + "、检定日期" + testdate + "数据重复");
                 }
 
@@ -163,12 +169,13 @@ public class EquFrockTestRecordServiceImpl extends ServiceImpl<EquFrockTestRecor
                             .setCreateuserid(currentUser.getId())
                             .setModifyusername(currentUser.getName())
                             .setModifyuserid(currentUser.getId())
+                            .setFrockid(mainid)
                             .setOwnedfactory(ownedfactory)
                             .setFrockname(frockname)
                             .setUsedept(usedept)
                             .setFrocknum(frocknum)
                             .setBelongequname(belongequname)
-                            .setTestdate(dateFormat.parse(testdate + " 00:00:00"))
+                            .setTestdate(dateFormat.parse(testdate + " 08:00:00"))
                             .setDiameter(new BigDecimal(diameter))
                             .setHs1(BigDecimal.valueOf(Double.parseDouble(hs1)))
                             .setHs2(BigDecimal.valueOf(Double.parseDouble(hs2)))