Sfoglia il codice sorgente

费用报销导入问题修改

Min 1 anno fa
parent
commit
fc9b20dfd7

+ 31 - 31
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/service/impl/ExpenseSheetServiceImpl.java

@@ -874,24 +874,24 @@ public class ExpenseSheetServiceImpl extends ServiceImpl<ExpenseSheetMapper, Exp
                     }
                     targetUserList= (List<User>) respMsg.data;
                 }
-                if(dingding!=null&&dingding.getContactNeedTranslate()==1&&userNameList.size()>0){
-                    System.out.println("参与搜素的人员列表"+userNameList + userNameList.size());
-                    for (String name : userNameList) {
-                        respMsg= companyDingdingService.getSearchUserInfo(dingding,name,1);
-                        SearchUserResponse searchUserResponse = (SearchUserResponse) respMsg.data;
-                        if(searchUserResponse.body.totalCount>1){
-                            msg.setError("姓名为["+name+"]的人员存在重复,请使用工号!");
-                            return msg;
-                        }
-                        if(searchUserResponse.body.list.size()>0){
-                            User item=new User();
-                            //为了修改代码 此处用企业微信同一个字段 setCorpwxUserid
-                            item.setName(name);
-                            item.setCorpwxUserid(searchUserResponse.body.list.get(0));
-                            targetUserList.add(item);
-                        }
-                    }
-                }
+//                if(dingding!=null&&dingding.getContactNeedTranslate()==1&&userNameList.size()>0){
+//                    System.out.println("参与搜素的人员列表"+userNameList + userNameList.size());
+//                    for (String name : userNameList) {
+//                        respMsg= companyDingdingService.getSearchUserInfo(dingding,name,1);
+//                        SearchUserResponse searchUserResponse = (SearchUserResponse) respMsg.data;
+//                        if(searchUserResponse.body.totalCount>1){
+//                            msg.setError("姓名为["+name+"]的人员存在重复,请使用工号!");
+//                            return msg;
+//                        }
+//                        if(searchUserResponse.body.list.size()>0){
+//                            User item=new User();
+//                            //为了修改代码 此处用企业微信同一个字段 setCorpwxUserid
+//                            item.setName(name);
+//                            item.setCorpwxUserid(searchUserResponse.body.list.get(0));
+//                            targetUserList.add(item);
+//                        }
+//                    }
+//                }
                 ExpenseSheet expenseSheet = new ExpenseSheet();
                 if(functionList.size()>0){
                     expenseSheet.setStatus(0);
@@ -919,18 +919,18 @@ public class ExpenseSheetServiceImpl extends ServiceImpl<ExpenseSheetMapper, Exp
                         .atZone(ZoneId.systemDefault()).toLocalDate();
                 expenseSheet.setCreateDate(localDate);
                 Optional<User> first;
-                if((wxCorpInfo!=null&&wxCorpInfo.getSaasSyncContact()==1)||(dingding!=null&&dingding.getContactNeedTranslate()==1)){
-                    Optional<User> optional = targetUserList.stream().filter(tl -> tl.getName().equals(reimburserName)).findFirst();
-                    first = userList.stream().filter(us -> us.getName().equals(reimburserName)||(us.getJobNumber()!=null&&us.getJobNumber().equals(reimburserName))||(optional.isPresent()&&(us.getCorpwxUserid()!=null&&us.getCorpwxUserid().equals(optional.get().getCorpwxUserid()))||(us.getDingdingUserid()!=null&&us.getDingdingUserid().equals(optional.get().getCorpwxUserid())))).findFirst();
-                }else {
-                    first = userList.stream().filter(us -> us.getName().equals(reimburserName)||(us.getJobNumber()!=null&&us.getJobNumber().equals(reimburserName))).findFirst();
-                }
-                if (first != null && first.isPresent()) {
-                    expenseSheet.setOwnerId(first.get().getId());
-                    expenseSheet.setOwnerName(first.get().getName());
-                } else {
-                    throw new Exception("报销人[" +reimburserCell+"]不存在");
-                }
+//                if((wxCorpInfo!=null&&wxCorpInfo.getSaasSyncContact()==1)||(dingding!=null&&dingding.getContactNeedTranslate()==1)){
+//                    Optional<User> optional = targetUserList.stream().filter(tl -> tl.getName().equals(reimburserName)).findFirst();
+//                    first = userList.stream().filter(us -> us.getName().equals(reimburserName)||(us.getJobNumber()!=null&&us.getJobNumber().equals(reimburserName))||(optional.isPresent()&&(us.getCorpwxUserid()!=null&&us.getCorpwxUserid().equals(optional.get().getCorpwxUserid()))||(us.getDingdingUserid()!=null&&us.getDingdingUserid().equals(optional.get().getCorpwxUserid())))).findFirst();
+//                }else {
+//                    first = userList.stream().filter(us -> us.getName().equals(reimburserName)||(us.getJobNumber()!=null&&us.getJobNumber().equals(reimburserName))).findFirst();
+//                }
+//                if (first != null && first.isPresent()) {
+//                    expenseSheet.setOwnerId(first.get().getId());
+//                    expenseSheet.setOwnerName(first.get().getName());
+//                } else {
+//                    throw new Exception("报销人[" +reimburserCell+"]不存在");
+//                }
                 expenseSheet.setOperatorId(user.getId());
                 expenseSheet.setRemark(remarksCell.getStringCellValue());
                 if(StringUtils.isEmpty(expenseTypeCell.getStringCellValue())){
@@ -1031,7 +1031,7 @@ public class ExpenseSheetServiceImpl extends ServiceImpl<ExpenseSheetMapper, Exp
                         }
                     }
                     if(subExpenseTypeCell!=null){
-                        List<String> stringList = expenseTypeList.stream().filter(et -> et.getMainType().equals(expenseSheet.getType())).map(et -> et.getTypeName()).collect(Collectors.toList());
+                        List<String> stringList = expenseTypeList.stream().filter(et ->et.getMainType()!=null&&et.getMainType().equals(expenseSheet.getType())).map(et -> et.getTypeName()).collect(Collectors.toList());
                         if(stringList!=null&&!stringList.contains(subExpenseTypeCell.getStringCellValue())){
                             //msg.setError("当前费用类型["+expenseTypeCell.getStringCellValue()+"]中不存在["+subExpenseTypeCell.getStringCellValue()+"]类型");
                             msg.setError(MessageUtils.message("Reimbursement.TypeError",expenseTypeCell.getStringCellValue(),subExpenseTypeCell.getStringCellValue()));