Pārlūkot izejas kodu

调整返回审批信息

daili 3 gadi atpakaļ
vecāks
revīzija
7c245ce75e

+ 8 - 4
application-facade/src/main/java/com/factory/web/entity/fa/FirstArticleApprovalTask.java

@@ -32,14 +32,18 @@ public class FirstArticleApprovalTask implements Serializable {
 
     @ApiModelProperty(value = "角色ID")
     private Long approvalRole;
-    
+
     @ApiModelProperty(value = "1质量工程师审批 2质量经理审批")
-    private Integer approvalLevel;
-    
-    
+    private String approvalLevel;
+
+
     @ApiModelProperty(value = "审批人")
     private Long approvalUserId;
 
+    @TableField(exist = false)
+    @ApiModelProperty(value = "审批人")
+    private String approvalUserName;
+
     @ApiModelProperty(value = "审批状态 0初始化 1放行 2不放行")
     private Integer status;
 

+ 34 - 13
application-facade/src/main/java/com/factory/web/service/impl/fa/FirstArticleServiceImpl.java

@@ -17,6 +17,10 @@ import java.util.stream.Collectors;
 import java.util.stream.IntStream;
 import java.util.stream.Stream;
 
+import com.alibaba.excel.metadata.Head;
+import com.alibaba.excel.write.merge.AbstractMergeStrategy;
+import org.apache.poi.ss.usermodel.Cell;
+import org.apache.poi.ss.usermodel.Sheet;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
@@ -923,17 +927,18 @@ public class FirstArticleServiceImpl extends ServiceImpl<FirstArticleMapper, Ben
     @Override
     public void setApproval(ApprovalRule approvalRuleNextLevel,Long taskId,Long userId) {
 	    if (approvalRuleNextLevel!=null) {
-	    	firstArticleApprovalTaskService.save(FirstArticleApprovalTask.builder()
-            .firstArticleTaskId(taskId)
-            .approvalLevel(approvalRuleNextLevel.getApprovalLevel())
-            .approvalRole(approvalRuleNextLevel.getRoleId())
-            .status(0)
-            .build());
-		 	FirstArticleTask firstArticleTask = firstArticleTaskService.getById(taskId);
-	        FirstArticleCalendar calendar = firstArticleCalendarService.getById(firstArticleTask.getFirstArticleCalendarId());
-	        BentelerPlan plan = this.getById(calendar.getBentelerPlanId());
-	        String type= firstArticleTask.getTypeFlag()==0?"首件":firstArticleTask.getTypeFlag()==1?"200件":"中断";
-	        String planName = plan.getName().length()>15?(plan.getName().substring(0,12)+"..."):plan.getName();
+            int approvalLevel = approvalRuleNextLevel.getApprovalLevel();
+            firstArticleApprovalTaskService.save(FirstArticleApprovalTask.builder()
+                    .firstArticleTaskId(taskId)
+                    .approvalLevel(String.valueOf(approvalLevel))
+                    .approvalRole(approvalRuleNextLevel.getRoleId())
+                    .status(0)
+                    .build());
+            FirstArticleTask firstArticleTask = firstArticleTaskService.getById(taskId);
+            FirstArticleCalendar calendar = firstArticleCalendarService.getById(firstArticleTask.getFirstArticleCalendarId());
+            BentelerPlan plan = this.getById(calendar.getBentelerPlanId());
+            String type = firstArticleTask.getTypeFlag() == 0 ? "首件" : firstArticleTask.getTypeFlag() == 1 ? "200件" : "中断";
+            String planName = plan.getName().length() > 15 ? (plan.getName().substring(0, 12) + "...") : plan.getName();
 			//向下一级别发送提醒
 			wxService.sendWechatMessageByRole(SendMsgReq.builder()
 				.title("计划放行("+type+")")
@@ -1437,7 +1442,14 @@ public class FirstArticleServiceImpl extends ServiceImpl<FirstArticleMapper, Ben
                 //频率 首件&200&中断
                 beanMap.put("frequency", collect);
                 //放行记录
-                beanMap.put("permit", new Integer(1).equals(item1.getReleaseFlag()) ? "存在" : "无");
+                if (item1.getPermitDesc() != null && item1.getPermitDesc().size() > 0) {
+                    beanMap.put("permit", item1.getPermitDesc().stream().map(item2 -> {
+                        return
+                                Optional.ofNullable(item2.getApprovalUserName()).orElse("") +
+                                        Optional.ofNullable(item2.getUpdatedTime()).map(item3 -> item2.getUpdatedTime().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"))).orElse("") +
+                                        Optional.ofNullable(item2.getReason()).orElse("");
+                    }).collect(Collectors.joining("\r\n")));
+                }
                 //工具
                 beanMap.put("tool", item1.getToolId().equals("-1") ? "非工具校验" : item1.getToolId() + item1.getToolDesc());
                 //序号 1-n
@@ -1458,7 +1470,16 @@ public class FirstArticleServiceImpl extends ServiceImpl<FirstArticleMapper, Ben
             tempFile = File.createTempFile("shoujian", ".xlsx");
 
             // 这里 会填充到第一个sheet, 然后文件流会自动关闭
-            excelWriter = EasyExcel.write(tempFile).withTemplate(templateFileName).build();
+            //设置识别自动换行
+            excelWriter = EasyExcel.write(tempFile).withTemplate(templateFileName).registerWriteHandler(new AbstractMergeStrategy() {
+                @Override
+                protected void merge(Sheet sheet, Cell cell, Head head, Integer relativeRowIndex) {
+                    if (cell.getColumnIndex() >= 4) {
+                        // 设置自动换行
+                        cell.getCellStyle().setWrapText(true);
+                    }
+                }
+            }).build();
 
 
             WriteSheet writeSheet = EasyExcel.writerSheet("首件")

+ 1 - 1
application-facade/src/main/java/com/factory/wx/service/impl/PlanPassFAServiceImpl.java

@@ -217,7 +217,7 @@ public class PlanPassFAServiceImpl implements PlanPassFAService {
         if(otOld==null||!planApprovalTaskReq.getRoleIds().contains(otOld.getApprovalRole())) {
         	return updateStatus;
         }
-        planApprovalTaskReq.setApprovalLevel(otOld.getApprovalLevel());
+        planApprovalTaskReq.setApprovalLevel(Integer.parseInt(otOld.getApprovalLevel()));
         otUpdate.setId(otOld.getId()); 
         updateStatus = firstArticleApprovalTaskMapper.updateById(otUpdate);
         return updateStatus;

+ 5 - 2
application-facade/src/main/resources/mapper/FirstArticleMapper.xml

@@ -407,15 +407,18 @@
     </select>
     <!-- 获取放行记录 FirstArticleApprovalTask-->
     <select id="getFaItemRelease" resultType="com.factory.web.entity.fa.FirstArticleApprovalTask">
-        select approval.*
+        select approval.*,
+               uu.username as approvalUserName
         from first_article_item_result result,
              first_article_task task,
-             first_article_approval_task approval
+             first_article_approval_task approval,
+             us_user uu
         where result.first_article_item_id = #{req.firstArticleItemId}
           and result.result = 1
           and result.first_article_task_id = task.id
           and approval.first_article_task_id = task.id
           and DATE_FORMAT(task.task_time, '%Y-%m-%d') = #{req.checkDate}
+          and uu.id = approval.approval_user_id
     </select>
 
     <!--取得点检人 -->