ソースを参照

Merge remote-tracking branch 'origin/master'

ezhizao_zx 9 ヶ月 前
コミット
9a2f0aed57

+ 50 - 31
src/main/java/cn/ezhizao/project/business/technologicalProcessDetailDrawing/controller/BizTechnologicalProcessDetailDrawingController.java

@@ -36,11 +36,9 @@ import com.itextpdf.text.pdf.PdfReader;
 import com.itextpdf.text.pdf.PdfStamper;
 import org.springframework.web.multipart.MultipartFile;
 
-import java.io.ByteArrayOutputStream;
-import java.io.FileOutputStream;
+import java.io.*;
 import javax.annotation.Resource;
 import javax.servlet.http.HttpServletResponse;
-import java.io.IOException;
 import java.text.SimpleDateFormat;
 import java.time.LocalDate;
 import java.time.format.DateTimeFormatter;
@@ -81,7 +79,7 @@ public class BizTechnologicalProcessDetailDrawingController extends BaseControll
 
 
         BizTechnologicalProcessDetailDrawing item = new BizTechnologicalProcessDetailDrawing();
-        List<BizTechnologicalProcessDetailDrawing> list = bizTechnologicalProcessDetailDrawingService.getDrawingList(item);
+        List<BizTechnologicalProcessDetailDrawing> list = bizTechnologicalProcessDetailDrawingService.getDrawingListByBasics(item);
         for (BizTechnologicalProcessDetailDrawing bizTechnologicalProcessDetailDrawing : list) {
 
 
@@ -104,7 +102,7 @@ public class BizTechnologicalProcessDetailDrawingController extends BaseControll
     {
         ExcelUtil<BizTechnologicalProcessDetailDrawing> util = new ExcelUtil<>(BizTechnologicalProcessDetailDrawing.class);
         List<BizTechnologicalProcessDetailDrawing> bizTechnologicalProcessDetailDrawings = util.importExcel(file.getInputStream());
-        List<SysUser> noSealUserList = new ArrayList<>();
+        List<BizTechnologicalProcessDetailDrawing> noSealUserList = new ArrayList<>();
         for(BizTechnologicalProcessDetailDrawing item : bizTechnologicalProcessDetailDrawings){
             SysUser userParam = new SysUser();
             SysUser user = new SysUser();
@@ -112,14 +110,31 @@ public class BizTechnologicalProcessDetailDrawingController extends BaseControll
             userParam.setNickName(item.getProducer());
             List<SysUser> userList = userService.getListByUserName(userParam);
             if (userList.isEmpty()){
-                userParam.setRemark("制作");
-                noSealUserList.add(userParam);
-
-                break;
+                item.setMessage("制作人信息录入错误");
+                noSealUserList.add(item);
+                continue;
             }else {
                 user = userList.get(0);
             }
+            SysUser Reviewer = new SysUser();
+            Reviewer.setUserName(item.getReviewerCode());
+            Reviewer.setNickName(item.getReviewer());
+            List<SysUser> ReviewerList = userService.getListByUserName(Reviewer);
+            if (ReviewerList.isEmpty()){
+                item.setMessage("审核人信息录入错误");
+                noSealUserList.add(item);
+                continue;
+            }
+            SysUser Issuer = new SysUser();
+            Issuer.setUserName(item.getIssuerCode());
+            Issuer.setNickName(item.getIssuer());
 
+            List<SysUser> IssuerList = userService.getListByUserName(Issuer);
+            if (IssuerList.isEmpty()){
+                item.setMessage("批准人信息录入错误");
+                noSealUserList.add(item);
+                continue;
+            }
             BizPersonalSeal person = new BizPersonalSeal();
             person.setUserId(user.getUserId());
             String filePath = RuoYiConfig.getProfile();
@@ -133,13 +148,20 @@ public class BizTechnologicalProcessDetailDrawingController extends BaseControll
             // 格式化日期
             String formattedDate = currentDate.format(formatter);
             if(personList.isEmpty()){
-                user.setRemark("没有个人章");
-                noSealUserList.add(user);
-                break ;
+                item.setMessage("没有个人章");
+                noSealUserList.add(item);
+                continue ;
+            }
+            BizTechnologicalProcessDetailDrawing repeatList = bizTechnologicalProcessDetailDrawingService.query().eq("id", item.getId()).one();
+            if(repeatList.getProducerId() !=0 || repeatList.getReviewerId() !=0 || repeatList.getIssuerId() !=0){
+                item.setMessage("该图纸已走会签流程");
+                noSealUserList.add(item);
+                continue ;
             }
             String personalSeal = personList.get(0).getUrl().substring("/profile".length());
             BizTechnologicalProcessDetailDrawing getItem = bizTechnologicalProcessDetailDrawingService.query().eq("id",item.getId()).one();
-
+            getItem.setMarkD(item.getMarkD());
+            getItem.setIdentification(item.getIdentification());
 
             String url = "";
             url = getItem.getUrl();
@@ -173,32 +195,29 @@ public class BizTechnologicalProcessDetailDrawingController extends BaseControll
             List<BizTechnologicalProcessDetailDrawing>itemList = new ArrayList<>();
             itemList.add(getItem);
             //开始正是走审核流程
-            SysUser Reviewer = new SysUser();
-            Reviewer.setUserName(item.getReviewerCode());
-            Reviewer.setNickName(item.getReviewer());
-            List<SysUser> ReviewerList = userService.getListByUserName(Reviewer);
-            if (ReviewerList.isEmpty()){
-                Reviewer.setRemark("审核");
-                noSealUserList.add(Reviewer);
-                break;
-            }
+
             bizTechnologicalProcessDetailDrawingService.saveData(itemList,item.getReviewerCode(),item.getReviewer());
             //批准流程
-            SysUser Issuer = new SysUser();
-            Issuer.setUserName(item.getIssuerCode());
-            Issuer.setNickName(item.getIssuer());
 
-            List<SysUser> IssuerList = userService.getListByUserName(Issuer);
-            if (IssuerList.isEmpty()){
-                Issuer.setRemark("批准");
-                noSealUserList.add(Issuer);
-                break;
-            }
             bizTechnologicalProcessDetailDrawingService.saveData(itemList,item.getIssuerCode(),item.getIssuer());
         }
         if (!noSealUserList.isEmpty()){
             System.out.println("11111111111111111111111111111111111111111111111111111");
             System.out.println(noSealUserList);
+            String filePath = RuoYiConfig.getProfile();
+            String listAsString = String.join(System.lineSeparator(), noSealUserList.stream()
+                    .map(BizTechnologicalProcessDetailDrawing::toString) // 假设SysUser有一个toString方法
+                    .toArray(String[]::new));
+
+            // 指定文件路径,例如保存在当前项目目录
+            String txtFilePath = filePath+"/upload/" +"noSealUserList.txt";
+
+            // 将字符串写入文件
+            try (BufferedWriter writer = new BufferedWriter(new FileWriter(txtFilePath))) {
+                writer.write(listAsString);
+            } catch (IOException e) {
+                e.printStackTrace();
+            }
             return success(noSealUserList);
         }
         return success(bizTechnologicalProcessDetailDrawings);

+ 2 - 0
src/main/java/cn/ezhizao/project/business/technologicalProcessDetailDrawing/domain/BizTechnologicalProcessDetailDrawing.java

@@ -144,5 +144,7 @@ public class BizTechnologicalProcessDetailDrawing extends BaseEntity
     private Integer recordsType;
     @TableField(exist = false)
     private  Integer recordsAbandoned;
+    @TableField(exist = false)
+    private String message;
 
 }

+ 3 - 0
src/main/java/cn/ezhizao/project/business/technologicalProcessDetailDrawing/mapper/BizTechnologicalProcessDetailDrawingMapper.java

@@ -32,6 +32,9 @@ public interface BizTechnologicalProcessDetailDrawingMapper extends BaseMapper<B
      */
     public List<BizTechnologicalProcessDetailDrawing> getDrawingList(BizTechnologicalProcessDetailDrawing bizTechnologicalProcessDetailDrawing);
 
+
+    public List<BizTechnologicalProcessDetailDrawing> getDrawingListByBasics(BizTechnologicalProcessDetailDrawing bizTechnologicalProcessDetailDrawing);
+
     /**
      * 物理删除
      * @param bizTechnologicalProcessDetailDrawing

+ 3 - 0
src/main/java/cn/ezhizao/project/business/technologicalProcessDetailDrawing/service/IBizTechnologicalProcessDetailDrawingService.java

@@ -43,6 +43,9 @@ public interface IBizTechnologicalProcessDetailDrawingService extends IService<B
      */
     public List<BizTechnologicalProcessDetailDrawing> getDrawingList(BizTechnologicalProcessDetailDrawing bizTechnologicalProcessDetailDrawing);
 
+
+    public List<BizTechnologicalProcessDetailDrawing> getDrawingListByBasics(BizTechnologicalProcessDetailDrawing bizTechnologicalProcessDetailDrawing);
+
     /**
      * 查询产品在工序的电子图纸
      */

+ 6 - 0
src/main/java/cn/ezhizao/project/business/technologicalProcessDetailDrawing/service/impl/BizTechnologicalProcessDetailDrawingServiceImpl.java

@@ -33,6 +33,7 @@ import java.io.FileOutputStream;
 import java.io.IOException;
 import java.time.LocalDate;
 import java.time.format.DateTimeFormatter;
+import java.util.Collections;
 import java.util.Date;
 import java.util.List;
 
@@ -89,6 +90,11 @@ public class BizTechnologicalProcessDetailDrawingServiceImpl extends ServiceImpl
         return bizTechnologicalProcessDetailDrawingMapper.getDrawingList(bizTechnologicalProcessDetailDrawing);
     }
 
+    @Override
+    public List<BizTechnologicalProcessDetailDrawing> getDrawingListByBasics(BizTechnologicalProcessDetailDrawing bizTechnologicalProcessDetailDrawing) {
+        return bizTechnologicalProcessDetailDrawingMapper.getDrawingListByBasics(bizTechnologicalProcessDetailDrawing);
+    }
+
     @Override
     public Integer getProcuctDrawing() {
         return bizTechnologicalProcessDetailDrawingMapper.getProcuctDrawing();

+ 22 - 0
src/main/resources/mybatis/business/technologicalProcessDetailDrawing/BizTechnologicalProcessDetailDrawingMapper.xml

@@ -71,6 +71,28 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         order by create_time desc
     </select>
 
+
+    <select id="getDrawingListByBasics" parameterType="BizTechnologicalProcessDetailDrawing" resultMap="BizTechnologicalProcessDetailDrawingResult">
+        SELECT * FROM biz_technological_process_detail_drawing
+        <trim prefix=" WHERE" suffix="" suffixOverrides="AND">
+            deleted = 0 and issuer_id = 0 and reviewer_id = 0 and producer_id = 0
+            <if test="abandoned != null  "> AND abandoned = #{abandoned}</if>
+            <if test="url != null  and url != ''"> AND url = #{url}</if>
+            <if test="status != null ">AND status = #{status}</if>
+            <if test="productId != null">and product_id = #{productId} </if>
+            <if test="productVersion != null and productVersion !=''">AND product_version = #{productVersion}</if>
+            <if test="technologyVersion != null and technologyVersion !=''">AND product_version = #{technologyVersion}</if>
+            <if test="processCode != null and processCode != 'undefined' and processCode != ''">AND process_code = #{processCode}</if>
+            <if test="drawingName != null  and drawingName != ''"> AND drawing_name = #{drawingName}</if>
+            <if test="drawingNumber != null and drawingNumber != ''">AND  product_id IN (select id from biz_product where deleted = 0 and drawing_number  like concat('%', #{drawingNumber}, '%')) </if>
+            <if test="companyAlias != null and companyAlias != ''">AND  product_id IN (select id from biz_product where deleted = 0 and company_alias  like concat('%', #{companyAlias}, '%')) </if>
+            <if test="specification != null and specification != ''">AND  product_id IN (select id from biz_product where deleted = 0 and specification  like concat('%', #{specification}, '%')) </if>
+            <if test="description != null and description != ''">AND product_id IN (select id from biz_product where deleted = 0 and description like concat('%', #{description}, '%')) </if>
+            <if test="processAlias !=null and processAlias !=''">AND process_code IN(select process_code from biz_process where deleted = 0 and  process_alias  like concat('%', #{processAlias}, '%')) </if>
+            <if test="pattern != null and pattern != ''">AND pattern like concat('%', #{pattern}, '%')</if>
+        </trim>
+        order by create_time desc
+    </select>
     <delete id="physicalDelete">
         DELETE FROM biz_technological_process_detail_drawing
         <trim prefix=" WHERE" suffix="" suffixOverrides="AND">