yusm 2 days ago
parent
commit
efb1130df0

+ 1 - 1
fhKeeper/formulahousekeeper/management-workshop/src/main/java/com/management/platform/mapper/PlanProcedureTotalMapper.java

@@ -16,6 +16,6 @@ import java.util.List;
  */
 public interface PlanProcedureTotalMapper extends BaseMapper<PlanProcedureTotal> {
 
-    @Select("select DISTINCT plan_id from plan_procedure_total where station_id=#{departmentId}")
+    @Select("select DISTINCT plan_id from plan_procedure_total where station_id=#{departmentId} and is_transfer=1 and total_progress !=100")
     List<Integer> selectPlanIdsWithTransfer(Integer departmentId);
 }

+ 5 - 14
fhKeeper/formulahousekeeper/management-workshop/src/main/java/com/management/platform/service/impl/AttendanceServiceImpl.java

@@ -14,6 +14,7 @@ import org.apache.poi.openxml4j.exceptions.InvalidFormatException;
 import org.apache.poi.ss.usermodel.*;
 import org.apache.poi.xssf.usermodel.XSSFCell;
 import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
 import org.springframework.util.StringUtils;
 import org.springframework.web.multipart.MultipartFile;
 
@@ -56,6 +57,7 @@ public class AttendanceServiceImpl extends ServiceImpl<AttendanceMapper, Attenda
     private AttendanceStaffService attendanceStaffService;
 
     @Override
+    @Transactional(rollbackFor = Exception.class)
     public HttpRespMsg importAttendanceData(String month, MultipartFile file, HttpServletRequest request) {
         HttpRespMsg msg=new HttpRespMsg();
         try(InputStream inputStream= file.getInputStream()) {
@@ -159,21 +161,10 @@ public class AttendanceServiceImpl extends ServiceImpl<AttendanceMapper, Attenda
             attendanceStaffService.refreshData(month);
             msg.data=dataCount;
             return msg;
-        } catch (IOException e){
+        } catch (Exception e) { // 统一捕获所有异常
             e.printStackTrace();
-            //msg.setError("文件处理出错");
-            msg.setError(MessageUtils.message("file.error"));
-            return msg;
-        } catch (InvalidFormatException e) {
-            e.printStackTrace();
-            //msg.setError("文件格式错误,如果安装了加密软件需要先解密再上传");
-            msg.setError(MessageUtils.message("file.FormatErrorAndDecrypt"));
-            return msg;
-        } catch (EncryptedDocumentException e) {
-            e.printStackTrace();
-            //msg.setError("文件加密状态,需要先解除加密状态再上传");
-            msg.setError(MessageUtils.message("file.encryption"));
-            return msg;
+            msg.setError("导入失败: " + e.getMessage());
+            throw new RuntimeException(e); // 抛出运行时异常,触发回滚
         }
     }
 

+ 1 - 3
fhKeeper/formulahousekeeper/management-workshop/src/main/java/com/management/platform/service/impl/PlanServiceImpl.java

@@ -1236,7 +1236,6 @@ public class PlanServiceImpl extends ServiceImpl<PlanMapper, Plan> implements Pl
                                 new LambdaQueryWrapper<PlanProcedureTotal>()
                                         .eq(PlanProcedureTotal::getPlanId, plan.getId())
                                         .eq(PlanProcedureTotal::getStationId,userSelect.getDepartmentId())
-                                        .ne(PlanProcedureTotal::getTotalProgress,100)
                         );
                     }
                     //看其他工位的
@@ -1244,12 +1243,11 @@ public class PlanServiceImpl extends ServiceImpl<PlanMapper, Plan> implements Pl
                         procedureTotals = planProcedureTotalService.list(new QueryWrapper<PlanProcedureTotal>()
                                 .eq("plan_id", plan.getId())
                                 .ne("station_id", userSelect.getDepartmentId())
-                                .ne("total_progress",100)
                         );
                     }
                     //全部
                     else {
-                        procedureTotals = planProcedureTotalService.list(new QueryWrapper<PlanProcedureTotal>().eq("plan_id", plan.getId()).ne("total_progress",100));
+                        procedureTotals = planProcedureTotalService.list(new QueryWrapper<PlanProcedureTotal>().eq("plan_id", plan.getId()));
                     }
                     List<Integer> procedureIds = procedureTotals.stream().map(PlanProcedureTotal::getProdProcedureId).distinct().collect(Collectors.toList());
                     procedureIds.add(-1);