Kaynağa Gözat

日常培训记录、组长履职情况记录、健康锐兵、宿舍消防安全专项自查、培训台账问题通报队室三级质控巡查记录、部门奖惩记录表、锦旗及感谢信以上台账取消一键导入功能和单独导入功能,台账查询页面也相应的隐藏

wangxx 2 hafta önce
ebeveyn
işleme
3947aa752a

+ 47 - 47
airport-admin/src/main/java/com/sundot/airport/web/controller/ledger/LedgerTemplateController.java

@@ -47,13 +47,13 @@ public class LedgerTemplateController extends BaseController {
47 47
         });
48 48
 
49 49
         // 2. 队室三级质控巡查记录表 (21列)
50
-        nm.put("patrolInspection", "队室三级质控巡查记录表");
51
-        hm.put("patrolInspection", 2);
52
-        cm.put("patrolInspection", new String[]{
53
-            "巡查日期","巡查区域","巡查工作点","巡查时间段","巡查岗位","被检查人员","有无问题","检查情况描述",
54
-            "类型","整改措施","附件","整改情况","佐证材料","班组","责任组长",
55
-            "队室质控员","队室负责人","填报人","队室内勤","填报时间","发送至相关人员"
56
-        });
50
+//        nm.put("patrolInspection", "队室三级质控巡查记录表");
51
+//        hm.put("patrolInspection", 2);
52
+//        cm.put("patrolInspection", new String[]{
53
+//            "巡查日期","巡查区域","巡查工作点","巡查时间段","巡查岗位","被检查人员","有无问题","检查情况描述",
54
+//            "类型","整改措施","附件","整改情况","佐证材料","班组","责任组长",
55
+//            "队室质控员","队室负责人","填报人","队室内勤","填报时间","发送至相关人员"
56
+//        });
57 57
 
58 58
         // 3. 部门实时质控拦截情况记录表 (29列)
59 59
         nm.put("realtimeInterception", "部门实时质控拦截情况记录表");
@@ -141,11 +141,11 @@ public class LedgerTemplateController extends BaseController {
141 141
         });
142 142
 
143 143
         // 13. 部门奖惩记录表 (5列)
144
-        nm.put("rewardPenalty", "部门奖惩记录表");
145
-        hm.put("rewardPenalty", 2);
146
-        cm.put("rewardPenalty", new String[]{
147
-            "姓名","班组","事由","罚款金额","最后更新时间"
148
-        });
144
+//        nm.put("rewardPenalty", "部门奖惩记录表");
145
+//        hm.put("rewardPenalty", 2);
146
+//        cm.put("rewardPenalty", new String[]{
147
+//            "姓名","班组","事由","罚款金额","最后更新时间"
148
+//        });
149 149
 
150 150
         // 14. 请、休假记录表(特殊)(6列)
151 151
         nm.put("leaveSpecial", "请、休假记录表(特殊)");
@@ -155,51 +155,51 @@ public class LedgerTemplateController extends BaseController {
155 155
         });
156 156
 
157 157
         // 15. 锦旗及感谢信 (7列)
158
-        nm.put("bannerLetter", "锦旗及感谢信");
159
-        hm.put("bannerLetter", 2);
160
-        cm.put("bannerLetter", new String[]{
161
-            "时间","姓名","内容","类别","图片附件","班组","队室内勤"
162
-        });
158
+//        nm.put("bannerLetter", "锦旗及感谢信");
159
+//        hm.put("bannerLetter", 2);
160
+//        cm.put("bannerLetter", new String[]{
161
+//            "时间","姓名","内容","类别","图片附件","班组","队室内勤"
162
+//        });
163 163
 
164 164
         // 16. 日常培训记录 (12列)
165
-        nm.put("dailyTraining", "日常培训记录");
166
-        hm.put("dailyTraining", 2);
167
-        cm.put("dailyTraining", new String[]{
168
-            "月度培训记录日期","班组","队室负责教员","队室培训负责队长","课时","项目名称",
169
-            "培训内容","培训教员","培训地点","参训人数","是否完成","备注"
170
-        });
165
+//        nm.put("dailyTraining", "日常培训记录");
166
+//        hm.put("dailyTraining", 2);
167
+//        cm.put("dailyTraining", new String[]{
168
+//            "月度培训记录日期","班组","队室负责教员","队室培训负责队长","课时","项目名称",
169
+//            "培训内容","培训教员","培训地点","参训人数","是否完成","备注"
170
+//        });
171 171
 
172 172
         // 17. 组长履职情况记录表 (6列)
173
-        nm.put("leaderDuty", "组长履职情况记录表");
174
-        hm.put("leaderDuty", 2);
175
-        cm.put("leaderDuty", new String[]{
176
-            "本班点评","问题处置及整改措施","工作提示","提交人","队室负责人","队室质控员"
177
-        });
173
+//        nm.put("leaderDuty", "组长履职情况记录表");
174
+//        hm.put("leaderDuty", 2);
175
+//        cm.put("leaderDuty", new String[]{
176
+//            "本班点评","问题处置及整改措施","工作提示","提交人","队室负责人","队室质控员"
177
+//        });
178 178
 
179 179
         // 18. 健康锐兵(2026_3)(21列)
180
-        nm.put("healthSoldier", "健康锐兵(2026_3)");
181
-        hm.put("healthSoldier", 2);
182
-        cm.put("healthSoldier", new String[]{
183
-            "慢性病情况","提交人","近期身体不适情况","是否进行过体检","体检报告是否有异常",
184
-            "近期是否有重大疾病","作息及生活习惯","心理状态","工作压力情况","佐证材料",
185
-            "重大疾病(其他)","体检异常(其他)","近期不适(其他)","慢性病(轻度)","慢性病(重度)",
186
-            "既往病史","既往病史(其他)","提交时间","班组","队室负责人","亚健康人员状态"
187
-        });
180
+//        nm.put("healthSoldier", "健康锐兵(2026_3)");
181
+//        hm.put("healthSoldier", 2);
182
+//        cm.put("healthSoldier", new String[]{
183
+//            "慢性病情况","提交人","近期身体不适情况","是否进行过体检","体检报告是否有异常",
184
+//            "近期是否有重大疾病","作息及生活习惯","心理状态","工作压力情况","佐证材料",
185
+//            "重大疾病(其他)","体检异常(其他)","近期不适(其他)","慢性病(轻度)","慢性病(重度)",
186
+//            "既往病史","既往病史(其他)","提交时间","班组","队室负责人","亚健康人员状态"
187
+//        });
188 188
 
189 189
         // 19. 宿舍消防安全专项自查表(部门)(11列)
190
-        nm.put("dormFireSafety", "宿舍消防安全专项自查表(部门)");
191
-        hm.put("dormFireSafety", 2);
192
-        cm.put("dormFireSafety", new String[]{
193
-            "检查日期","寝室所在位置","寝室号","自查覆盖项","风险类型排查情况","发现具体隐患",
194
-            "照片","整改责任人","整改完成时间","提交时间","提交人"
195
-        });
190
+//        nm.put("dormFireSafety", "宿舍消防安全专项自查表(部门)");
191
+//        hm.put("dormFireSafety", 2);
192
+//        cm.put("dormFireSafety", new String[]{
193
+//            "检查日期","寝室所在位置","寝室号","自查覆盖项","风险类型排查情况","发现具体隐患",
194
+//            "照片","整改责任人","整改完成时间","提交时间","提交人"
195
+//        });
196 196
 
197 197
         // 20. 培训台账问题通报 (7列)
198
-        nm.put("trainingIssue", "培训台账问题通报");
199
-        hm.put("trainingIssue", 2);
200
-        cm.put("trainingIssue", new String[]{
201
-            "问题台账日期","问题台账内容","具体问题","处理人","班组","二次复核问题","是否完成整改"
202
-        });
198
+//        nm.put("trainingIssue", "培训台账问题通报");
199
+//        hm.put("trainingIssue", 2);
200
+//        cm.put("trainingIssue", new String[]{
201
+//            "问题台账日期","问题台账内容","具体问题","处理人","班组","二次复核问题","是否完成整改"
202
+//        });
203 203
 
204 204
         KEY_TO_SHEET = Collections.unmodifiableMap(nm);
205 205
         KEY_TO_HEADS = Collections.unmodifiableMap(hm);

+ 252 - 252
airport-ledger/src/main/java/com/sundot/airport/ledger/service/impl/LedgerCombinedImportServiceImpl.java

@@ -134,7 +134,7 @@ public class LedgerCombinedImportServiceImpl implements ILedgerCombinedImportSer
134 134
     private int dispatch(Sheet sheet, String handler, String batchNo, String username) {
135 135
         switch (handler) {
136 136
             case "supervisionProblem":    return doSupervisionProblem(sheet, batchNo, username);
137
-            case "patrolInspection":      return doPatrolInspection(sheet, batchNo, username);
137
+//            case "patrolInspection":      return doPatrolInspection(sheet, batchNo, username);
138 138
             case "realtimeInterception":  return doRealtimeInterception(sheet, batchNo, username);
139 139
             case "servicePatrol":         return doServicePatrol(sheet, batchNo, username);
140 140
             case "complaint":             return doComplaint(sheet, batchNo, username);
@@ -145,14 +145,14 @@ public class LedgerCombinedImportServiceImpl implements ILedgerCombinedImportSer
145 145
             case "terminalBonus":         return doTerminalBonus(sheet, batchNo, username);
146 146
             case "examScore":             return doExamScore(sheet, batchNo, username);
147 147
             case "rewardApproval":        return doRewardApproval(sheet, batchNo, username);
148
-            case "rewardPenalty":         return doRewardPenalty(sheet, batchNo, username);
148
+//            case "rewardPenalty":       return doRewardPenalty(sheet, batchNo, username);
149 149
             case "leaveSpecial":          return doLeaveSpecial(sheet, batchNo, username);
150
-            case "bannerLetter":          return doBannerLetter(sheet, batchNo, username);
151
-            case "dailyTraining":         return doDailyTraining(sheet, batchNo, username);
152
-            case "leaderDuty":            return doLeaderDuty(sheet, batchNo, username);
153
-            case "healthSoldier":         return doHealthSoldier(sheet, batchNo, username);
154
-            case "dormFireSafety":        return doDormFireSafety(sheet, batchNo, username);
155
-            case "trainingIssue":         return doTrainingIssue(sheet, batchNo, username);
150
+//            case "bannerLetter":          return doBannerLetter(sheet, batchNo, username);
151
+//            case "dailyTraining":         return doDailyTraining(sheet, batchNo, username);
152
+//            case "leaderDuty":            return doLeaderDuty(sheet, batchNo, username);
153
+//            case "healthSoldier":         return doHealthSoldier(sheet, batchNo, username);
154
+//            case "dormFireSafety":        return doDormFireSafety(sheet, batchNo, username);
155
+//            case "trainingIssue":         return doTrainingIssue(sheet, batchNo, username);
156 156
             default: return 0;
157 157
         }
158 158
     }
@@ -252,78 +252,78 @@ public class LedgerCombinedImportServiceImpl implements ILedgerCombinedImportSer
252 252
      *          队室质控员(15) 队室负责人(16) 填报人(17) 队室内勤(18) 填报时间(19)
253 253
      *          发送至相关人员(20)
254 254
      */
255
-    private int doPatrolInspection(Sheet sheet, String batchNo, String username) {
256
-        List<LedgerPatrolInspection> list = new ArrayList<>();
257
-        for (Object[] c : dataRows(sheet, 2)) {
258
-            LedgerPatrolInspection o = new LedgerPatrolInspection();
259
-            
260
-            // 按照新的导入顺序映射字段
261
-            o.setRecordDate(date(c, 0));           // 巡查日期
262
-            o.setLocation(str(c, 1));              // 巡查区域
263
-            o.setChannelNo(str(c, 2));             // 巡查工作点
264
-            o.setPatrolTimePeriod(str(c, 3));      // 巡查时间段
265
-            String positionName = str(c, 4);       // 巡查岗位
266
-            o.setPatrolItem(positionName);
267
-            String inspectedName = str(c, 5);      // 被检查人员
268
-            o.setInspectedName(inspectedName);
269
-            o.setHasProblem(str(c, 6));            // 有无问题
270
-            o.setProblemDesc(str(c, 7));           // 检查情况描述
271
-            o.setPatrolType(str(c, 8));            // 类型
272
-            o.setResultHandling(str(c, 9));        // 整改措施
273
-            o.setEvidenceFile(str(c, 10));         // 附件
274
-            o.setRectificationStatus(str(c, 11));  // 整改情况
275
-            o.setEvidenceMaterial(str(c, 12));     // 佐证材料
276
-            o.setTeamName(str(c, 13));             // 班组
277
-            o.setResponsibleLeader(str(c, 14));    // 责任组长
278
-            o.setQualityOfficer(str(c, 15));       // 队室质控员
279
-            o.setTeamLeader(str(c, 16));           // 队室负责人
280
-            o.setReporter(str(c, 17));             // 填报人
281
-            o.setTeamInternalDuty(str(c, 18));     // 队室内勤
282
-            o.setReportTime(date(c, 19));          // 填报时间
283
-            o.setSendToRelevant(str(c, 20));       // 发送至相关人员
284
-            
285
-            // 根据被查人名称查找组织ID和名称
286
-            if (inspectedName != null && !inspectedName.trim().isEmpty()) {
287
-                Map<String, Object> orgInfo = resolveOrgInfoByNameWithCache(inspectedName);
288
-                if (!orgInfo.isEmpty()) {
289
-                    o.setInspectedId((Long) orgInfo.get("userId"));
290
-                    o.setDeptId((Long) orgInfo.get("deptId"));
291
-                    o.setDeptName((String) orgInfo.get("deptName"));
292
-                    o.setTeamId((Long) orgInfo.get("teamId"));
293
-                    o.setTeamName((String) orgInfo.get("teamName"));
294
-                    o.setGroupId((Long) orgInfo.get("groupId"));
295
-                    o.setGroupName((String) orgInfo.get("groupName"));
296
-                }
297
-            }
298
-            
299
-            // 根据岗位和区域查找对应ID
300
-            if (importCache != null) {
301
-                // 岗位ID
302
-                if (positionName != null && !positionName.trim().isEmpty()) {
303
-                    Long positionId = importCache.getPositionIdByName(positionName.trim());
304
-                    if (positionId != null) {
305
-                        o.setPositionId(positionId);
306
-                    }
307
-                }
308
-                
309
-                // 区域ID
310
-                String areaName = o.getLocation();
311
-                if (areaName != null && !areaName.trim().isEmpty()) {
312
-                    Long areaId = importCache.getAreaIdByName(areaName.trim());
313
-                    if (areaId != null) {
314
-                        o.setAreaId(areaId);
315
-                    }
316
-                }
317
-            }
318
-            
319
-            o.setImportBatch(batchNo);
320
-            o.setSourceType("1");
321
-            o.setCreateBy(username);
322
-            list.add(o);
323
-        }
324
-        patrolInspectionService.batchInsert(list);
325
-        return list.size();
326
-    }
255
+//    private int doPatrolInspection(Sheet sheet, String batchNo, String username) {
256
+//        List<LedgerPatrolInspection> list = new ArrayList<>();
257
+//        for (Object[] c : dataRows(sheet, 2)) {
258
+//            LedgerPatrolInspection o = new LedgerPatrolInspection();
259
+//
260
+//            // 按照新的导入顺序映射字段
261
+//            o.setRecordDate(date(c, 0));           // 巡查日期
262
+//            o.setLocation(str(c, 1));              // 巡查区域
263
+//            o.setChannelNo(str(c, 2));             // 巡查工作点
264
+//            o.setPatrolTimePeriod(str(c, 3));      // 巡查时间段
265
+//            String positionName = str(c, 4);       // 巡查岗位
266
+//            o.setPatrolItem(positionName);
267
+//            String inspectedName = str(c, 5);      // 被检查人员
268
+//            o.setInspectedName(inspectedName);
269
+//            o.setHasProblem(str(c, 6));            // 有无问题
270
+//            o.setProblemDesc(str(c, 7));           // 检查情况描述
271
+//            o.setPatrolType(str(c, 8));            // 类型
272
+//            o.setResultHandling(str(c, 9));        // 整改措施
273
+//            o.setEvidenceFile(str(c, 10));         // 附件
274
+//            o.setRectificationStatus(str(c, 11));  // 整改情况
275
+//            o.setEvidenceMaterial(str(c, 12));     // 佐证材料
276
+//            o.setTeamName(str(c, 13));             // 班组
277
+//            o.setResponsibleLeader(str(c, 14));    // 责任组长
278
+//            o.setQualityOfficer(str(c, 15));       // 队室质控员
279
+//            o.setTeamLeader(str(c, 16));           // 队室负责人
280
+//            o.setReporter(str(c, 17));             // 填报人
281
+//            o.setTeamInternalDuty(str(c, 18));     // 队室内勤
282
+//            o.setReportTime(date(c, 19));          // 填报时间
283
+//            o.setSendToRelevant(str(c, 20));       // 发送至相关人员
284
+//
285
+//            // 根据被查人名称查找组织ID和名称
286
+//            if (inspectedName != null && !inspectedName.trim().isEmpty()) {
287
+//                Map<String, Object> orgInfo = resolveOrgInfoByNameWithCache(inspectedName);
288
+//                if (!orgInfo.isEmpty()) {
289
+//                    o.setInspectedId((Long) orgInfo.get("userId"));
290
+//                    o.setDeptId((Long) orgInfo.get("deptId"));
291
+//                    o.setDeptName((String) orgInfo.get("deptName"));
292
+//                    o.setTeamId((Long) orgInfo.get("teamId"));
293
+//                    o.setTeamName((String) orgInfo.get("teamName"));
294
+//                    o.setGroupId((Long) orgInfo.get("groupId"));
295
+//                    o.setGroupName((String) orgInfo.get("groupName"));
296
+//                }
297
+//            }
298
+//
299
+//            // 根据岗位和区域查找对应ID
300
+//            if (importCache != null) {
301
+//                // 岗位ID
302
+//                if (positionName != null && !positionName.trim().isEmpty()) {
303
+//                    Long positionId = importCache.getPositionIdByName(positionName.trim());
304
+//                    if (positionId != null) {
305
+//                        o.setPositionId(positionId);
306
+//                    }
307
+//                }
308
+//
309
+//                // 区域ID
310
+//                String areaName = o.getLocation();
311
+//                if (areaName != null && !areaName.trim().isEmpty()) {
312
+//                    Long areaId = importCache.getAreaIdByName(areaName.trim());
313
+//                    if (areaId != null) {
314
+//                        o.setAreaId(areaId);
315
+//                    }
316
+//                }
317
+//            }
318
+//
319
+//            o.setImportBatch(batchNo);
320
+//            o.setSourceType("1");
321
+//            o.setCreateBy(username);
322
+//            list.add(o);
323
+//        }
324
+//        patrolInspectionService.batchInsert(list);
325
+//        return list.size();
326
+//    }
327 327
 
328 328
     /** 3. 部门实时质控拦截情况记录表 → ledger_realtime_interception
329 329
      * 导入顺序:时间(0) 区域(1) 工作点(2) 岗位(3) 责任人(4) 实时质控拦截物品(5) 个数(6)
@@ -964,25 +964,25 @@ public class LedgerCombinedImportServiceImpl implements ILedgerCombinedImportSer
964 964
     /** 13. 部门奖惩记录表 → ledger_reward_penalty
965 965
      * R2: 姓名(0) 班组(1) 事由(2) 扣罚金额(3) 最后更新时间(4)
966 966
      */
967
-    private int doRewardPenalty(Sheet sheet, String batchNo, String username) {
968
-        List<LedgerRewardPenalty> list = new ArrayList<>();
969
-        for (Object[] c : dataRows(sheet, 2)) {
970
-            LedgerRewardPenalty o = new LedgerRewardPenalty();
971
-            o.setPersonName(str(c, 0));
972
-            o.setTeamName(str(c, 1));
973
-            o.setEventDesc(str(c, 2));
974
-            BigDecimal amt = decimal(c, 3);
975
-            o.setScoreChange(amt != null ? amt.negate() : null);
976
-            o.setType("2");  // 扣罚
977
-            o.setRecordDate(date(c, 4));
978
-            o.setImportBatch(batchNo);
979
-            o.setSourceType("1");
980
-            o.setCreateBy(username);
981
-            list.add(o);
982
-        }
983
-        rewardPenaltyService.batchInsert(list);
984
-        return list.size();
985
-    }
967
+//    private int doRewardPenalty(Sheet sheet, String batchNo, String username) {
968
+//        List<LedgerRewardPenalty> list = new ArrayList<>();
969
+//        for (Object[] c : dataRows(sheet, 2)) {
970
+//            LedgerRewardPenalty o = new LedgerRewardPenalty();
971
+//            o.setPersonName(str(c, 0));
972
+//            o.setTeamName(str(c, 1));
973
+//            o.setEventDesc(str(c, 2));
974
+//            BigDecimal amt = decimal(c, 3);
975
+//            o.setScoreChange(amt != null ? amt.negate() : null);
976
+//            o.setType("2");  // 扣罚
977
+//            o.setRecordDate(date(c, 4));
978
+//            o.setImportBatch(batchNo);
979
+//            o.setSourceType("1");
980
+//            o.setCreateBy(username);
981
+//            list.add(o);
982
+//        }
983
+//        rewardPenaltyService.batchInsert(list);
984
+//        return list.size();
985
+//    }
986 986
 
987 987
     /** 14. 请、休假记录表(特殊)→ ledger_leave_special
988 988
      * R2: 姓名(0) 班组(1) 时间(起)(2) 时间(止)(3) 休假类别(4) 天数/时长(5)
@@ -1011,93 +1011,93 @@ public class LedgerCombinedImportServiceImpl implements ILedgerCombinedImportSer
1011 1011
      * R2: 时间(0) 姓名(1) 获得感谢信的具体内容(2) 类别(3) 图片和附件(4) 班组(5) 队室内勤(6)
1012 1012
      * 类别: 锦旗→'1', 其他→'2'
1013 1013
      */
1014
-    private int doBannerLetter(Sheet sheet, String batchNo, String username) {
1015
-        List<LedgerBannerLetter> list = new ArrayList<>();
1016
-        for (Object[] c : dataRows(sheet, 2)) {
1017
-            LedgerBannerLetter o = new LedgerBannerLetter();
1018
-            o.setRecordDate(date(c, 0));                        // 时间
1019
-            String personName = str(c, 1);
1020
-            o.setPersonName(personName);                         // 姓名
1021
-            o.setContentDesc(str(c, 2));                        // 获得感谢信的具体内容
1022
-            String typeStr = str(c, 3);
1023
-            o.setType("锦旗".equals(typeStr) ? "1" : "2");      // 类别
1024
-            o.setEvidenceFile(str(c, 4));                        // 图片和附件
1025
-            o.setTeamName(str(c, 5));                           // 班组
1026
-            o.setTeamInternalDuty(str(c, 6));                    // 队室内勤
1027
-            
1028
-            // 根据姓名查找组织ID
1029
-            if (personName != null && !personName.trim().isEmpty()) {
1030
-                Map<String, Object> orgInfo = resolveOrgInfoByNameWithCache(personName);
1031
-                if (!orgInfo.isEmpty()) {
1032
-                    o.setPersonUserId((Long) orgInfo.get("userId"));
1033
-                    o.setDeptId((Long) orgInfo.get("deptId"));
1034
-                    o.setDeptName((String) orgInfo.get("deptName"));
1035
-                    o.setTeamId((Long) orgInfo.get("teamId"));
1036
-                    o.setTeamName((String) orgInfo.get("teamName"));
1037
-                    o.setGroupId((Long) orgInfo.get("groupId"));
1038
-                    o.setGroupName((String) orgInfo.get("groupName"));
1039
-                }
1040
-            }
1041
-            
1042
-            o.setImportBatch(batchNo);
1043
-            o.setSourceType("1");
1044
-            o.setCreateBy(username);
1045
-            list.add(o);
1046
-        }
1047
-        bannerLetterService.batchInsert(list);
1048
-        return list.size();
1049
-    }
1014
+//    private int doBannerLetter(Sheet sheet, String batchNo, String username) {
1015
+//        List<LedgerBannerLetter> list = new ArrayList<>();
1016
+//        for (Object[] c : dataRows(sheet, 2)) {
1017
+//            LedgerBannerLetter o = new LedgerBannerLetter();
1018
+//            o.setRecordDate(date(c, 0));                        // 时间
1019
+//            String personName = str(c, 1);
1020
+//            o.setPersonName(personName);                         // 姓名
1021
+//            o.setContentDesc(str(c, 2));                        // 获得感谢信的具体内容
1022
+//            String typeStr = str(c, 3);
1023
+//            o.setType("锦旗".equals(typeStr) ? "1" : "2");      // 类别
1024
+//            o.setEvidenceFile(str(c, 4));                        // 图片和附件
1025
+//            o.setTeamName(str(c, 5));                           // 班组
1026
+//            o.setTeamInternalDuty(str(c, 6));                    // 队室内勤
1027
+//
1028
+//            // 根据姓名查找组织ID
1029
+//            if (personName != null && !personName.trim().isEmpty()) {
1030
+//                Map<String, Object> orgInfo = resolveOrgInfoByNameWithCache(personName);
1031
+//                if (!orgInfo.isEmpty()) {
1032
+//                    o.setPersonUserId((Long) orgInfo.get("userId"));
1033
+//                    o.setDeptId((Long) orgInfo.get("deptId"));
1034
+//                    o.setDeptName((String) orgInfo.get("deptName"));
1035
+//                    o.setTeamId((Long) orgInfo.get("teamId"));
1036
+//                    o.setTeamName((String) orgInfo.get("teamName"));
1037
+//                    o.setGroupId((Long) orgInfo.get("groupId"));
1038
+//                    o.setGroupName((String) orgInfo.get("groupName"));
1039
+//                }
1040
+//            }
1041
+//
1042
+//            o.setImportBatch(batchNo);
1043
+//            o.setSourceType("1");
1044
+//            o.setCreateBy(username);
1045
+//            list.add(o);
1046
+//        }
1047
+//        bannerLetterService.batchInsert(list);
1048
+//        return list.size();
1049
+//    }
1050 1050
 
1051 1051
     /** 16. 日常培训记录 → ledger_daily_training
1052 1052
      * R2: 月度培训记录(0) 班组(1) 队室负责教员(2) 队室培训负责队长(3) 课时(4)
1053 1053
      *     项目名称(5) 培训内容(6) 培训教员(7) 培训地点(8) 参训人数(9) 是否完成(10) 备注(11)
1054 1054
      */
1055
-    private int doDailyTraining(Sheet sheet, String batchNo, String username) {
1056
-        List<LedgerDailyTraining> list = new ArrayList<>();
1057
-        for (Object[] c : dataRows(sheet, 2)) {
1058
-            LedgerDailyTraining o = new LedgerDailyTraining();
1059
-            o.setRecordDate(date(c, 0));
1060
-            o.setTeamName(str(c, 1));
1061
-            o.setResponsibleTeacher(str(c, 2));
1062
-            o.setResponsibleLeader(str(c, 3));
1063
-            o.setHours(str(c, 4));
1064
-            o.setProjectName(str(c, 5));
1065
-            o.setTrainingContent(str(c, 6));
1066
-            o.setTrainer(str(c, 7));
1067
-            o.setTrainingLocation(str(c, 8));
1068
-            o.setParticipantCount(integer(c, 9));
1069
-            o.setIsCompleted(str(c, 10));
1070
-            o.setRemark(str(c, 11));
1071
-            o.setImportBatch(batchNo);
1072
-            o.setSourceType("1");
1073
-            o.setCreateBy(username);
1074
-            list.add(o);
1075
-        }
1076
-        dailyTrainingService.batchInsert(list);
1077
-        return list.size();
1078
-    }
1055
+//    private int doDailyTraining(Sheet sheet, String batchNo, String username) {
1056
+//        List<LedgerDailyTraining> list = new ArrayList<>();
1057
+//        for (Object[] c : dataRows(sheet, 2)) {
1058
+//            LedgerDailyTraining o = new LedgerDailyTraining();
1059
+//            o.setRecordDate(date(c, 0));
1060
+//            o.setTeamName(str(c, 1));
1061
+//            o.setResponsibleTeacher(str(c, 2));
1062
+//            o.setResponsibleLeader(str(c, 3));
1063
+//            o.setHours(str(c, 4));
1064
+//            o.setProjectName(str(c, 5));
1065
+//            o.setTrainingContent(str(c, 6));
1066
+//            o.setTrainer(str(c, 7));
1067
+//            o.setTrainingLocation(str(c, 8));
1068
+//            o.setParticipantCount(integer(c, 9));
1069
+//            o.setIsCompleted(str(c, 10));
1070
+//            o.setRemark(str(c, 11));
1071
+//            o.setImportBatch(batchNo);
1072
+//            o.setSourceType("1");
1073
+//            o.setCreateBy(username);
1074
+//            list.add(o);
1075
+//        }
1076
+//        dailyTrainingService.batchInsert(list);
1077
+//        return list.size();
1078
+//    }
1079 1079
 
1080 1080
     /** 17. 组长履职情况记录表 → ledger_leader_duty
1081 1081
      * R2: 本班点评(0) 问题处置及整改措施(1) 工作提示(2) 提交人(3) 队室负责人(4) 队室质控员(5)
1082 1082
      */
1083
-    private int doLeaderDuty(Sheet sheet, String batchNo, String username) {
1084
-        List<LedgerLeaderDuty> list = new ArrayList<>();
1085
-        for (Object[] c : dataRows(sheet, 2)) {
1086
-            LedgerLeaderDuty o = new LedgerLeaderDuty();
1087
-            o.setClassComment(str(c, 0));
1088
-            o.setProblemHandling(str(c, 1));
1089
-            o.setWorkTip(str(c, 2));
1090
-            o.setSubmitter(str(c, 3));
1091
-            o.setTeamLeader(str(c, 4));
1092
-            o.setQualityOfficer(str(c, 5));
1093
-            o.setImportBatch(batchNo);
1094
-            o.setSourceType("1");
1095
-            o.setCreateBy(username);
1096
-            list.add(o);
1097
-        }
1098
-        leaderDutyService.batchInsert(list);
1099
-        return list.size();
1100
-    }
1083
+//    private int doLeaderDuty(Sheet sheet, String batchNo, String username) {
1084
+//        List<LedgerLeaderDuty> list = new ArrayList<>();
1085
+//        for (Object[] c : dataRows(sheet, 2)) {
1086
+//            LedgerLeaderDuty o = new LedgerLeaderDuty();
1087
+//            o.setClassComment(str(c, 0));
1088
+//            o.setProblemHandling(str(c, 1));
1089
+//            o.setWorkTip(str(c, 2));
1090
+//            o.setSubmitter(str(c, 3));
1091
+//            o.setTeamLeader(str(c, 4));
1092
+//            o.setQualityOfficer(str(c, 5));
1093
+//            o.setImportBatch(batchNo);
1094
+//            o.setSourceType("1");
1095
+//            o.setCreateBy(username);
1096
+//            list.add(o);
1097
+//        }
1098
+//        leaderDutyService.batchInsert(list);
1099
+//        return list.size();
1100
+//    }
1101 1101
 
1102 1102
     /** 18. 健康锐兵 → ledger_health_soldier
1103 1103
      * R2(0~20): 慢性病(0) 提交人(1) 近期不适(2) 是否体检(3) 体检异常(4) 重大疾病(5)
@@ -1106,90 +1106,90 @@ public class LedgerCombinedImportServiceImpl implements ILedgerCombinedImportSer
1106 1106
      *           ext_chronic_mild(13) ext_chronic_severe(14) 既往病史(15) ext_medical_history(16)
1107 1107
      *           提交时间(17) 班组(18) 队室负责人(19) 亚健康人员(20)
1108 1108
      */
1109
-    private int doHealthSoldier(Sheet sheet, String batchNo, String username) {
1110
-        List<LedgerHealthSoldier> list = new ArrayList<>();
1111
-        for (Object[] c : dataRows(sheet, 2)) {
1112
-            LedgerHealthSoldier o = new LedgerHealthSoldier();
1113
-            o.setChronicDisease(str(c, 0));
1114
-            o.setSubmitter(str(c, 1));
1115
-            o.setRecentSymptoms(str(c, 2));
1116
-            o.setHasPhysicalExam(str(c, 3));
1117
-            o.setExamReportAbnormal(str(c, 4));
1118
-            o.setMajorDiseaseRecent(str(c, 5));
1119
-            o.setDailyHabits(str(c, 6));
1120
-            o.setMentalState(str(c, 7));
1121
-            o.setWorkPressure(str(c, 8));
1122
-            o.setEvidenceFile(str(c, 9));
1123
-            o.setExtMajorDisease(str(c, 10));
1124
-            o.setExtExamAbnormal(str(c, 11));
1125
-            o.setExtRecentSymptoms(str(c, 12));
1126
-            o.setExtChronicMild(str(c, 13));
1127
-            o.setExtChronicSevere(str(c, 14));
1128
-            o.setMedicalHistory(str(c, 15));
1129
-            o.setExtMedicalHistory(str(c, 16));
1130
-            o.setSubmitTime(date(c, 17));
1131
-            o.setTeamName(str(c, 18));
1132
-            o.setTeamLeader(str(c, 19));
1133
-            o.setSubHealthStatus(str(c, 20));
1134
-            o.setImportBatch(batchNo);
1135
-            o.setSourceType("1");
1136
-            o.setCreateBy(username);
1137
-            list.add(o);
1138
-        }
1139
-        healthSoldierService.batchInsert(list);
1140
-        return list.size();
1141
-    }
1109
+//    private int doHealthSoldier(Sheet sheet, String batchNo, String username) {
1110
+//        List<LedgerHealthSoldier> list = new ArrayList<>();
1111
+//        for (Object[] c : dataRows(sheet, 2)) {
1112
+//            LedgerHealthSoldier o = new LedgerHealthSoldier();
1113
+//            o.setChronicDisease(str(c, 0));
1114
+//            o.setSubmitter(str(c, 1));
1115
+//            o.setRecentSymptoms(str(c, 2));
1116
+//            o.setHasPhysicalExam(str(c, 3));
1117
+//            o.setExamReportAbnormal(str(c, 4));
1118
+//            o.setMajorDiseaseRecent(str(c, 5));
1119
+//            o.setDailyHabits(str(c, 6));
1120
+//            o.setMentalState(str(c, 7));
1121
+//            o.setWorkPressure(str(c, 8));
1122
+//            o.setEvidenceFile(str(c, 9));
1123
+//            o.setExtMajorDisease(str(c, 10));
1124
+//            o.setExtExamAbnormal(str(c, 11));
1125
+//            o.setExtRecentSymptoms(str(c, 12));
1126
+//            o.setExtChronicMild(str(c, 13));
1127
+//            o.setExtChronicSevere(str(c, 14));
1128
+//            o.setMedicalHistory(str(c, 15));
1129
+//            o.setExtMedicalHistory(str(c, 16));
1130
+//            o.setSubmitTime(date(c, 17));
1131
+//            o.setTeamName(str(c, 18));
1132
+//            o.setTeamLeader(str(c, 19));
1133
+//            o.setSubHealthStatus(str(c, 20));
1134
+//            o.setImportBatch(batchNo);
1135
+//            o.setSourceType("1");
1136
+//            o.setCreateBy(username);
1137
+//            list.add(o);
1138
+//        }
1139
+//        healthSoldierService.batchInsert(list);
1140
+//        return list.size();
1141
+//    }
1142 1142
 
1143 1143
     /** 19. 宿舍消防安全专项自查表 → ledger_dorm_fire_safety
1144 1144
      * R2: 检查日期(0) 寝室所在位置(1) 寝室号(2) 自查覆盖项(3) 风险类型排查情况(4)
1145 1145
      *     发现具体隐患(5) 照片(6) 整改责任人(7) 整改完成时间(8) 提交时间(9) 提交人(10)
1146 1146
      */
1147
-    private int doDormFireSafety(Sheet sheet, String batchNo, String username) {
1148
-        List<LedgerDormFireSafety> list = new ArrayList<>();
1149
-        for (Object[] c : dataRows(sheet, 2)) {
1150
-            LedgerDormFireSafety o = new LedgerDormFireSafety();
1151
-            o.setCheckDate(date(c, 0));
1152
-            o.setDormLocation(str(c, 1));
1153
-            o.setDormNo(str(c, 2));
1154
-            o.setCheckItems(str(c, 3));
1155
-            o.setRiskStatus(str(c, 4));
1156
-            o.setFoundRisk(str(c, 5));
1157
-            o.setPhotos(str(c, 6));
1158
-            o.setRectifyPerson(str(c, 7));
1159
-            o.setRectifyTime(date(c, 8));
1160
-            o.setSubmitTime(date(c, 9));
1161
-            o.setSubmitter(str(c, 10));
1162
-            o.setImportBatch(batchNo);
1163
-            o.setSourceType("1");
1164
-            o.setCreateBy(username);
1165
-            list.add(o);
1166
-        }
1167
-        dormFireSafetyService.batchInsert(list);
1168
-        return list.size();
1169
-    }
1147
+//    private int doDormFireSafety(Sheet sheet, String batchNo, String username) {
1148
+//        List<LedgerDormFireSafety> list = new ArrayList<>();
1149
+//        for (Object[] c : dataRows(sheet, 2)) {
1150
+//            LedgerDormFireSafety o = new LedgerDormFireSafety();
1151
+//            o.setCheckDate(date(c, 0));
1152
+//            o.setDormLocation(str(c, 1));
1153
+//            o.setDormNo(str(c, 2));
1154
+//            o.setCheckItems(str(c, 3));
1155
+//            o.setRiskStatus(str(c, 4));
1156
+//            o.setFoundRisk(str(c, 5));
1157
+//            o.setPhotos(str(c, 6));
1158
+//            o.setRectifyPerson(str(c, 7));
1159
+//            o.setRectifyTime(date(c, 8));
1160
+//            o.setSubmitTime(date(c, 9));
1161
+//            o.setSubmitter(str(c, 10));
1162
+//            o.setImportBatch(batchNo);
1163
+//            o.setSourceType("1");
1164
+//            o.setCreateBy(username);
1165
+//            list.add(o);
1166
+//        }
1167
+//        dormFireSafetyService.batchInsert(list);
1168
+//        return list.size();
1169
+//    }
1170 1170
 
1171 1171
     /** 20. 培训台账问题通报 → ledger_training_issue
1172 1172
      * R2: 问题台账日期(0) 问题台账内容(1) 具体问题(2) 处理人(3) 班组(4) 二次复核问题(5) 是否完成整改(6)
1173 1173
      */
1174
-    private int doTrainingIssue(Sheet sheet, String batchNo, String username) {
1175
-        List<LedgerTrainingIssue> list = new ArrayList<>();
1176
-        for (Object[] c : dataRows(sheet, 2)) {
1177
-            LedgerTrainingIssue o = new LedgerTrainingIssue();
1178
-            o.setRecordDate(date(c, 0));
1179
-            o.setLedgerContent(str(c, 1));
1180
-            o.setSpecificProblem(str(c, 2));
1181
-            o.setHandler(str(c, 3));
1182
-            o.setTeamName(str(c, 4));
1183
-            o.setRecheckProblem(str(c, 5));
1184
-            o.setIsRectified(str(c, 6));
1185
-            o.setImportBatch(batchNo);
1186
-            o.setSourceType("1");
1187
-            o.setCreateBy(username);
1188
-            list.add(o);
1189
-        }
1190
-        trainingIssueService.batchInsert(list);
1191
-        return list.size();
1192
-    }
1174
+//    private int doTrainingIssue(Sheet sheet, String batchNo, String username) {
1175
+//        List<LedgerTrainingIssue> list = new ArrayList<>();
1176
+//        for (Object[] c : dataRows(sheet, 2)) {
1177
+//            LedgerTrainingIssue o = new LedgerTrainingIssue();
1178
+//            o.setRecordDate(date(c, 0));
1179
+//            o.setLedgerContent(str(c, 1));
1180
+//            o.setSpecificProblem(str(c, 2));
1181
+//            o.setHandler(str(c, 3));
1182
+//            o.setTeamName(str(c, 4));
1183
+//            o.setRecheckProblem(str(c, 5));
1184
+//            o.setIsRectified(str(c, 6));
1185
+//            o.setImportBatch(batchNo);
1186
+//            o.setSourceType("1");
1187
+//            o.setCreateBy(username);
1188
+//            list.add(o);
1189
+//        }
1190
+//        trainingIssueService.batchInsert(list);
1191
+//        return list.size();
1192
+//    }
1193 1193
 
1194 1194
     // ════════════════════════════════════════════════════════════════
1195 1195
     //  POI 工具方法