From 91fcd48801ad1120651027824f7a60a14deadf87 Mon Sep 17 00:00:00 2001 From: Pu Zhibing <393733352@qq.com> Date: 星期二, 08 七月 2025 19:21:21 +0800 Subject: [PATCH] 修改三方对接逻辑和环境参数配置 --- ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TDriverController.java | 1071 +++++++++++++++++++++++++++++++++++++---------------------- 1 files changed, 669 insertions(+), 402 deletions(-) diff --git a/ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TDriverController.java b/ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TDriverController.java index 6945131..283c952 100644 --- a/ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TDriverController.java +++ b/ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TDriverController.java @@ -22,7 +22,11 @@ import com.stylefeng.guns.modular.system.service.*; import com.stylefeng.guns.modular.system.util.*; import com.stylefeng.guns.modular.system.util.qianyuntong.EmployeeUtil; -import com.stylefeng.guns.modular.system.util.qianyuntong.model.*; +import com.stylefeng.guns.modular.system.util.qianyuntong.UserUtil; +import com.stylefeng.guns.modular.system.util.qianyuntong.model.DeleteStafNodeRequest; +import com.stylefeng.guns.modular.system.util.qianyuntong.model.QYTUserInfo; +import com.stylefeng.guns.modular.system.util.qianyuntong.model.SaveStaffNode; +import com.stylefeng.guns.modular.system.util.qianyuntong.model.SaveStaffNodeRequest; import org.apache.poi.ss.usermodel.Cell; import org.apache.poi.ss.usermodel.Row; import org.apache.poi.ss.usermodel.Sheet; @@ -78,8 +82,8 @@ @Resource private DriverPunishMapper driverPunishMapper; - @Autowired - private RedisTemplate redisTemplate; + @Resource + private RedisTemplate<String, Object> redisTemplate; @Value("${pushMinistryOfTransport}") private boolean pushMinistryOfTransport; @@ -95,6 +99,9 @@ @Autowired private IUserService userService; + + @Autowired + private ShiroExtUtil shiroExtUtil; /** * 跳转投诉页面 @@ -133,7 +140,7 @@ endTime = timeArray[1]; } Page<Map<String, Object>> page = new PageFactory<Map<String, Object>>().defaultPage(); - page.setRecords(tComplaintService.getComplaintList(page, ShiroExtUtil.getUser().getRoleType(), ShiroExtUtil.getUser().getObjectId(), beginTime, endTime, userName, userPhone, driverPhone, isHandle, driverId)); + page.setRecords(tComplaintService.getComplaintList(page, shiroExtUtil.getUser().getRoleType(), shiroExtUtil.getUser().getObjectId(), beginTime, endTime, userName, userPhone, driverPhone, isHandle, driverId)); return super.packForBT(page); } /** @@ -160,12 +167,12 @@ List<TCompany> companyList = tCompanyService.selectList(new EntityWrapper<TCompany>().eq("type", 2)); model.addAttribute("companyList", companyList); - Integer roleType = ShiroExtUtil.getUser().getRoleType(); + Integer roleType = shiroExtUtil.getUser().getRoleType(); model.addAttribute("roleType", roleType); if (2 == roleType) { List<TCompany> franchiseeList = tCompanyService.selectList(new EntityWrapper<TCompany>() .eq("type", 3) - .eq("superiorId", ShiroExtUtil.getUser().getObjectId()) + .eq("superiorId", shiroExtUtil.getUser().getObjectId()) .notIn("state", 1) .notIn("flag", 3)); model.addAttribute("franchiseeList", franchiseeList); @@ -173,7 +180,7 @@ model.addAttribute("franchiseeList", null); } //查询当前用户所属分公司/加盟商 - model.addAttribute("objectName", tCompanyService.selectById(ShiroExtUtil.getUser().getObjectId()).getName()); + model.addAttribute("objectName", tCompanyService.selectById(shiroExtUtil.getUser().getObjectId()).getName()); //查询线路列表 List<TLine> lineList = itLineService.selectList(new EntityWrapper<TLine>().eq("state", 1)); @@ -224,8 +231,12 @@ public String tDriver_look(@PathVariable Integer tDriverId, Model model) { Map<String, Object> tDriver = tDriverService.getDriverById(tDriverId); model.addAttribute("item",tDriver); - String placeOfPractice = tDriver.get("placeOfPractice").toString().replaceAll(",", "-"); - model.addAttribute("placeOfPractice", placeOfPractice); + Object placeOfPractice1 = tDriver.get("placeOfPractice"); + if(placeOfPractice1==null){ + model.addAttribute("placeOfPractice", ""); + }else { + model.addAttribute("placeOfPractice", placeOfPractice1.toString().replaceAll(",", "-")); + } LogObjectHolder.me().set(tDriver); return PREFIX + "tDriver_look.html"; } @@ -239,9 +250,9 @@ model.addAttribute("item", tDriver); LogObjectHolder.me().set(tDriver); - Integer roleType = ShiroExtUtil.getUser().getRoleType(); + Integer roleType = shiroExtUtil.getUser().getRoleType(); model.addAttribute("roleType", roleType); - model.addAttribute("objectName", tCompanyService.selectById(ShiroExtUtil.getUser().getObjectId()).getName()); + model.addAttribute("objectName", tCompanyService.selectById(shiroExtUtil.getUser().getObjectId()).getName()); if (1 == roleType) { List<TCompany> companyList = tCompanyService.selectList(new EntityWrapper<TCompany>().eq("type", 2).ne("flag", 3)); @@ -249,7 +260,7 @@ List<TCompany> franchiseeList = tCompanyService.selectList(new EntityWrapper<TCompany>().eq("type", 3).eq("superiorId", tDriver.getCompanyId())); model.addAttribute("franchiseeList", franchiseeList); } else if (2 == roleType) { - List<TCompany> franchiseeList = tCompanyService.selectList(new EntityWrapper<TCompany>().eq("type", 3).eq("superiorId", ShiroExtUtil.getUser().getObjectId())); + List<TCompany> franchiseeList = tCompanyService.selectList(new EntityWrapper<TCompany>().eq("type", 3).eq("superiorId", shiroExtUtil.getUser().getObjectId())); model.addAttribute("franchiseeList", franchiseeList); } @@ -570,13 +581,13 @@ Integer authState) { String beginTime = null; String endTime = null; - if (SinataUtil.isNotEmpty(insertTime)){ + if (SinataUtil.isNotEmpty(insertTime)) { String[] timeArray = insertTime.split(" - "); beginTime = timeArray[0]; endTime = timeArray[1]; } Page<Map<String, Object>> page = new PageFactory<Map<String, Object>>().defaultPage(); - if (ShiroExtUtil.getUser().getRoleType() != 1) { + if (shiroExtUtil.getUser().getRoleType() != 1) { page.setRecords(null); } else { page.setRecords(tDriverService.getAuthDriverList(page, beginTime, endTime, companyName, phone, account, addType, authState)); @@ -603,7 +614,7 @@ endTime = timeArray[1]; } Page<Map<String, Object>> page = new PageFactory<Map<String, Object>>().defaultPage(); - page.setRecords(tDriverService.getDriverList(page, ShiroExtUtil.getUser().getRoleType(), ShiroExtUtil.getUser().getObjectId(), beginTime, endTime, companyName, phone, name, addType, authState)); + page.setRecords(tDriverService.getDriverList(page, shiroExtUtil.getUser().getRoleType(), shiroExtUtil.getUser().getObjectId(), beginTime, endTime, companyName, phone, name, addType, authState)); return super.packForBT(page); } @@ -628,7 +639,7 @@ }*/ //2020-08-21:新需求,已被绑定的车辆可以被继续绑定 Page<Map<String, Object>> page = new PageFactory<Map<String, Object>>().defaultPage(); - page.setRecords(tDriverService.getCanSelectCarList(page, ShiroExtUtil.getUser().getRoleType(), ShiroExtUtil.getUser().getObjectId(), null, carLicensePlate, brandName, modelName, color, serverStr)); + page.setRecords(tDriverService.getCanSelectCarList(page, shiroExtUtil.getUser().getRoleType(), shiroExtUtil.getUser().getObjectId(), null, carLicensePlate, brandName, modelName, color, serverStr)); return super.packForBT(page); } @@ -640,6 +651,8 @@ @ResponseBody public Object authOpt(Integer id,Integer authState) { if (SinataUtil.isNotEmpty(id) && SinataUtil.isNotEmpty(authState)){ + ShiroUser user1 = shiroExtUtil.getUser(); + User user2 = userService.selectById(user1.getId()); TDriver tDriver = tDriverService.selectById(id); Integer type = 0; if (1 == authState){ @@ -668,28 +681,40 @@ System.out.println("司机注册审核发送短信 :【driverId=" + tDriver.getId().toString() + "】,调用接口:" + result); //审核通过,在中台添加司机账号 if (2 == tDriver.getAuthState()) { - ShiroUser user = ShiroExtUtil.getUser(); - Integer objectId = user.getObjectId(); + Integer objectId = tDriver.getCompanyId(); TCompany tCompany = itCompanyService.selectById(objectId); - User user1 = userService.selectById(user.getId()); - SaveStaffNodeRequest request = new SaveStaffNodeRequest(); - request.setMobile(user1.getPhone()); - request.setEntercode(tCompany.getEnterCode()); - request.setEmpName(tDriver.getName()); - request.setEmpNickname(tDriver.getName()); - request.setLoginNo(tDriver.getPhone()); - request.setEmpSex(tDriver.getSex() == 1 ? "男" : "女"); - request.setMphone(tDriver.getPhone()); - request.setEmail("qyt@qyt.com"); - request.setDeptId(0); - request.setPositionId(1); - request.setSuperLevel(0); - request.setHideMobile(0); - SaveStaffNode saveStaffNode = EmployeeUtil.saveStaffNode(request); - TCompany tCompany1 = itCompanyService.selectById(tDriver.getCompanyId()); - tDriver.setEmpId(saveStaffNode.getEmpId()); - tDriver.setEntercode(tCompany1.getEnterCode()); - tDriver.setEnterId(Long.valueOf(tCompany1.getEnterCode())); + List<QYTUserInfo> userInfoByPhone = UserUtil.getUserInfoByPhone(tDriver.getPhone(), tCompany.getEnterCode()); + Long empId = null; + Integer empnew = null; + if(null == userInfoByPhone || userInfoByPhone.size() == 0){ + SaveStaffNodeRequest request = new SaveStaffNodeRequest(); + request.setMobile(user2.getPhone()); + request.setEntercode(tCompany.getEnterCode()); + request.setEmpName(tDriver.getName()); + request.setEmpNickname(tDriver.getName()); + request.setLoginNo(tDriver.getPhone()); + request.setEmpSex(tDriver.getSex() == 1 ? "男" : "女"); + request.setMphone(tDriver.getPhone()); + request.setEmail(tDriver.getPhone() + "@qyt.com"); + request.setDeptId(0); + request.setPositionId(1); + request.setSuperLevel(0); + request.setHideMobile(0); + ResultUtil<SaveStaffNode> resultUtil = EmployeeUtil.saveStaffNode(request); + if(200 != resultUtil.getStatus()){ + return new ErrorTip(resultUtil.getStatus(), resultUtil.getMsg()); + } + SaveStaffNode saveStaffNode = resultUtil.getData(); + empId = saveStaffNode.getEmpId(); + empnew = 1; + }else{ + empId = userInfoByPhone.get(0).getEmpId(); + empnew = 0; + } + tDriver.setEmpId(empId); + tDriver.setEntercode(tCompany.getEnterCode()); + tDriver.setEnterId(Long.valueOf(tCompany.getEnterCode())); + tDriver.setEmpnew(empnew); } tDriverService.updateById(tDriver); } @@ -738,8 +763,8 @@ tDriver.setIsPlatCar(1); tDriver.setAuthState(2); }else if (2 == roleType) { //分公司 - if (SinataUtil.isNotEmpty(ShiroExtUtil.getUser().getObjectId())) { - tDriver.setCompanyId(ShiroExtUtil.getUser().getObjectId()); + if (SinataUtil.isNotEmpty(shiroExtUtil.getUser().getObjectId())) { + tDriver.setCompanyId(shiroExtUtil.getUser().getObjectId()); } if (SinataUtil.isNotEmpty(franchiseeId)) { tDriver.setFranchiseeId(franchiseeId); @@ -747,49 +772,65 @@ tDriver.setAddType(3); tDriver.setIsPlatCar(2); tDriver.setAuthState(1); - tDriver.setAddObjectId(ShiroExtUtil.getUser().getObjectId()); + tDriver.setAddObjectId(shiroExtUtil.getUser().getObjectId()); }else if (3 == roleType) { //加盟商 - TCompany tCompany = tCompanyService.selectById(ShiroExtUtil.getUser().getObjectId()); + TCompany tCompany = tCompanyService.selectById(shiroExtUtil.getUser().getObjectId()); if (SinataUtil.isNotEmpty(tCompany)) { tDriver.setCompanyId(tCompany.getSuperiorId()); } - if (SinataUtil.isNotEmpty(ShiroExtUtil.getUser().getObjectId())) { - tDriver.setFranchiseeId(ShiroExtUtil.getUser().getObjectId()); + if (SinataUtil.isNotEmpty(shiroExtUtil.getUser().getObjectId())) { + tDriver.setFranchiseeId(shiroExtUtil.getUser().getObjectId()); } tDriver.setAddType(4); tDriver.setIsPlatCar(2); tDriver.setAuthState(1); - tDriver.setAddObjectId(ShiroExtUtil.getUser().getObjectId()); + tDriver.setAddObjectId(shiroExtUtil.getUser().getObjectId()); } tDriver.setInsertTime(new Date()); - tDriver.setInsertUser(ShiroExtUtil.getUser().getId()); + tDriver.setInsertUser(shiroExtUtil.getUser().getId()); // tDriver.setPassword(MD5Util.encrypt(tDriver.getPassword())); - + tDriver.setAccount(tDriver.getPhone()); tDriver.setPassword(ShiroKit.md5(tDriver.getPassword(), "SA;d5#")); //审核通过,在中台添加司机账号 if (2 == tDriver.getAuthState()) { - ShiroUser user = ShiroExtUtil.getUser(); + ShiroUser user = shiroExtUtil.getUser(); + User user2 = userService.selectById(user.getId()); Integer objectId = user.getObjectId(); TCompany tCompany = itCompanyService.selectById(objectId); - User user1 = userService.selectById(user.getId()); - SaveStaffNodeRequest request = new SaveStaffNodeRequest(); - request.setMobile(user1.getPhone()); - request.setEntercode(tCompany.getEnterCode()); - request.setEmpName(tDriver.getName()); - request.setEmpNickname(tDriver.getName()); - request.setLoginNo(tDriver.getPhone()); - request.setEmpSex(tDriver.getSex() == 1 ? "男" : "女"); - request.setMphone(tDriver.getPhone()); - request.setEmail("qyt@qyt.com"); - request.setDeptId(0); - request.setPositionId(1); - request.setSuperLevel(0); - request.setHideMobile(0); - SaveStaffNode saveStaffNode = EmployeeUtil.saveStaffNode(request); + List<QYTUserInfo> userInfoByPhone = UserUtil.getUserInfoByPhone(tDriver.getPhone(), tCompany.getEnterCode()); + Long empId = null; + Integer empnew = null; + if(null == userInfoByPhone || userInfoByPhone.size() == 0){ + SaveStaffNodeRequest request = new SaveStaffNodeRequest(); + request.setMobile(user2.getPhone()); + request.setEntercode(tCompany.getEnterCode()); + request.setEmpName(tDriver.getName()); + request.setEmpNickname(tDriver.getName()); + request.setLoginNo(tDriver.getPhone()); + request.setEmpSex(tDriver.getSex() == 1 ? "男" : "女"); + request.setMphone(tDriver.getPhone()); + request.setEmail(tDriver.getPhone() + "@qyt.com"); + request.setDeptId(0); + request.setPositionId(1); + request.setSuperLevel(0); + request.setHideMobile(0); + ResultUtil<SaveStaffNode> resultUtil = EmployeeUtil.saveStaffNode(request); + if(200 != resultUtil.getStatus()){ + return new ErrorTip(resultUtil.getStatus(), resultUtil.getMsg()); + } + SaveStaffNode saveStaffNode = resultUtil.getData(); + empId = saveStaffNode.getEmpId(); + empnew = 1; + }else{ + empId = userInfoByPhone.get(0).getEmpId(); + empnew = 0; + } + TCompany tCompany1 = itCompanyService.selectById(tDriver.getCompanyId()); - tDriver.setEmpId(saveStaffNode.getEmpId()); + tDriver.setEmpId(empId); tDriver.setEntercode(tCompany1.getEnterCode()); tDriver.setEnterId(Long.valueOf(tCompany1.getEnterCode())); + tDriver.setEmpnew(empnew); } tDriverService.insert(tDriver); @@ -840,25 +881,27 @@ public Object delete(@RequestParam Integer tDriverId) { TDriver driver = tDriverService.selectById(tDriverId); driver.setFlag("3"); - ShiroUser user = ShiroKit.getUser(); - User user1 = userService.selectById(user.getId()); + ShiroUser user = shiroExtUtil.getUser(); TCompany tCompany = itCompanyService.selectById(user.getObjectId()); - //中台先删除司机 - GetStaffNodeRequest request = new GetStaffNodeRequest(); - request.setEmpId(driver.getEmpId()); - request.setMobile(user1.getPhone()); - request.setEntercode(tCompany.getEnterCode()); - StaffNodeInfo staffNode = EmployeeUtil.getStaffNode(request); - if ("1".equals(staffNode.getIsValid())) { - DeleteStafNodeRequest deleteStafNodeRequest = new DeleteStafNodeRequest(); - deleteStafNodeRequest.setEmpId(driver.getEmpId()); - deleteStafNodeRequest.setEntercode(tCompany.getEnterCode()); - deleteStafNodeRequest.setMobile(user1.getPhone()); - EmployeeUtil.ecrmDeleteStafNode(deleteStafNodeRequest); + if (null != driver.getEmpId() && 1 == driver.getEmpnew()) { + //中台先删除司机 + List<QYTUserInfo> userInfoByPhone = UserUtil.getUserInfoByPhone(driver.getPhone(), tCompany.getEnterCode()); + if (null != userInfoByPhone && 0 < userInfoByPhone.size() && 1 == driver.getEmpnew()) { + DeleteStafNodeRequest deleteStafNodeRequest = new DeleteStafNodeRequest(); + deleteStafNodeRequest.setEmpId(driver.getEmpId()); + deleteStafNodeRequest.setEntercode(tCompany.getEnterCode()); + deleteStafNodeRequest.setMobile(tCompany.getPrincipalPhone()); + ResultUtil resultUtil = EmployeeUtil.ecrmDeleteStafNode(deleteStafNodeRequest); + if(200 != resultUtil.getStatus()){ + return new ErrorTip(resultUtil.getStatus(), resultUtil.getMsg()); + } + } } tDriverService.updateById(driver); String value = (String) redisTemplate.opsForValue().get("DRIVER_" + driver.getPhone()); - redisTemplate.delete(value); + if (ToolUtil.isNotEmpty(value)) { + redisTemplate.delete(value); + } redisTemplate.delete("DRIVER_" + driver.getId()); redisTemplate.delete("DRIVER_" + driver.getPhone()); return SUCCESS_TIP; @@ -895,35 +938,52 @@ }).start(); String value = (String) redisTemplate.opsForValue().get("DRIVER_" + tDriver.getPhone()); - redisTemplate.delete(value); + if (ToolUtil.isNotEmpty(value)) { + redisTemplate.delete(value); + } redisTemplate.delete("DRIVER_" + tDriver.getId()); redisTemplate.delete("DRIVER_" + tDriver.getPhone()); } tDriver.setRemark(remark); //审核通过,在中台添加司机账号 - if (2 == tDriver.getAuthState()) { - ShiroUser user = ShiroExtUtil.getUser(); - Integer objectId = user.getObjectId(); + if (2 == tDriver.getAuthState() && tDriver.getEmpId() == null) { + ShiroUser user = shiroExtUtil.getUser(); + User user2 = userService.selectById(user.getId()); + Integer objectId = tDriver.getCompanyId(); TCompany tCompany = itCompanyService.selectById(objectId); - User user1 = userService.selectById(user.getId()); - SaveStaffNodeRequest request = new SaveStaffNodeRequest(); - request.setMobile(user1.getPhone()); - request.setEntercode(tCompany.getEnterCode()); - request.setEmpName(tDriver.getName()); - request.setEmpNickname(tDriver.getName()); - request.setLoginNo(tDriver.getPhone()); - request.setEmpSex(tDriver.getSex() == 1 ? "男" : "女"); - request.setMphone(tDriver.getPhone()); - request.setEmail("qyt@qyt.com"); - request.setDeptId(0); - request.setPositionId(1); - request.setSuperLevel(0); - request.setHideMobile(0); - SaveStaffNode saveStaffNode = EmployeeUtil.saveStaffNode(request); - TCompany tCompany1 = itCompanyService.selectById(tDriver.getCompanyId()); - tDriver.setEmpId(saveStaffNode.getEmpId()); - tDriver.setEntercode(tCompany1.getEnterCode()); - tDriver.setEnterId(Long.valueOf(tCompany1.getEnterCode())); + List<QYTUserInfo> userInfoByPhone = UserUtil.getUserInfoByPhone(tDriver.getPhone(), tCompany.getEnterCode()); + Long empId = null; + Integer empnew = null; + if(null == userInfoByPhone || userInfoByPhone.size() == 0){ + SaveStaffNodeRequest request = new SaveStaffNodeRequest(); + request.setMobile(user2.getPhone()); + request.setEntercode(tCompany.getEnterCode()); + request.setEmpName(tDriver.getName()); + request.setEmpNickname(tDriver.getName()); + request.setLoginNo(tDriver.getPhone()); + request.setEmpSex(tDriver.getSex() == 1 ? "男" : "女"); + request.setMphone(tDriver.getPhone()); + request.setEmail(tDriver.getPhone() + "@qyt.com"); + request.setDeptId(0); + request.setPositionId(1); + request.setSuperLevel(0); + request.setHideMobile(0); + ResultUtil<SaveStaffNode> resultUtil = EmployeeUtil.saveStaffNode(request); + if(200 != resultUtil.getStatus()){ + return new ErrorTip(resultUtil.getStatus(), resultUtil.getMsg()); + } + SaveStaffNode saveStaffNode = resultUtil.getData(); + empId = saveStaffNode.getEmpId(); + empnew = 1; + }else{ + empId = userInfoByPhone.get(0).getEmpId(); + empnew = 0; + } + + tDriver.setEmpId(empId); + tDriver.setEntercode(tCompany.getEnterCode()); + tDriver.setEnterId(Long.valueOf(tCompany.getEnterCode())); + tDriver.setEmpnew(empnew); } tDriverService.updateById(tDriver); @@ -959,27 +1019,27 @@ tDriver.setFranchiseeId(franchiseeId); } }else if (2 == roleType) { //分公司 - if (SinataUtil.isNotEmpty(ShiroExtUtil.getUser().getObjectId())) { - tDriver.setCompanyId(ShiroExtUtil.getUser().getObjectId()); + if (SinataUtil.isNotEmpty(shiroExtUtil.getUser().getObjectId())) { + tDriver.setCompanyId(shiroExtUtil.getUser().getObjectId()); } if (SinataUtil.isNotEmpty(franchiseeId)) { tDriver.setFranchiseeId(franchiseeId); } - }else if (3 == roleType) { //加盟商 - TCompany tCompany = tCompanyService.selectById(ShiroExtUtil.getUser().getObjectId()); + } else if (3 == roleType) { //加盟商 + TCompany tCompany = tCompanyService.selectById(shiroExtUtil.getUser().getObjectId()); if (SinataUtil.isNotEmpty(tCompany)) { tDriver.setCompanyId(tCompany.getSuperiorId()); } - if (SinataUtil.isNotEmpty(ShiroExtUtil.getUser().getObjectId())) { - tDriver.setFranchiseeId(ShiroExtUtil.getUser().getObjectId()); + if (SinataUtil.isNotEmpty(shiroExtUtil.getUser().getObjectId())) { + tDriver.setFranchiseeId(shiroExtUtil.getUser().getObjectId()); } } tDriver.setUpdateTime(new Date()); - tDriver.setUpdateUser(ShiroExtUtil.getUser().getId()); + tDriver.setUpdateUser(shiroExtUtil.getUser().getId()); // tDriver.setPassword(MD5Util.encrypt(tDriver.getPassword())); - if(ToolUtil.isEmpty(tDriver.getPassword())){ + if (ToolUtil.isEmpty(tDriver.getPassword())) { tDriver.setPassword(obj.getPassword()); - }else{ + } else { tDriver.setPassword(ShiroKit.md5(tDriver.getPassword(), "SA;d5#")); } obj.setCompanyId(tDriver.getCompanyId()); @@ -1027,18 +1087,18 @@ obj.setEmergencyContactPhone(tDriver.getEmergencyContactPhone()); obj.setEmergencyContactAddress(tDriver.getEmergencyContactAddress()); obj.setUpdateTime(new Date()); - obj.setUpdateUser(ShiroExtUtil.getUser().getId()); + obj.setUpdateUser(shiroExtUtil.getUser().getId()); tDriverService.updateAllColumnById(obj); - + //删除业务 - tDriverServiceService.delete(new EntityWrapper<TDriverService>().eq("driverId",tDriver.getId())); - + tDriverServiceService.delete(new EntityWrapper<TDriverService>().eq("driverId", tDriver.getId())); + //删除线路 - tDriverLineService.delete(new EntityWrapper<TDriverLine>().eq("driverId",tDriver.getId())); - + tDriverLineService.delete(new EntityWrapper<TDriverLine>().eq("driverId", tDriver.getId())); + //添加经营业务 String[] serverArray = serverBox.split(","); - for (int i=0;i<serverArray.length;i++){ + for (int i = 0; i < serverArray.length; i++) { TDriverService service = new TDriverService(); service.setDriverId(tDriver.getId()); service.setType(Integer.valueOf(serverArray[i])); @@ -1073,12 +1133,12 @@ public void uploadDriverModel(HttpServletRequest request, HttpServletResponse response) { // 表格数据【封装】 List<List<String>> dataList = new ArrayList<List<String>>(); - + String title = ""; - + // 首行【封装】 List<String> shellList = new ArrayList<String>(); - if (ShiroExtUtil.getUser().getRoleType() == 1) { + if (shiroExtUtil.getUser().getRoleType() == 1) { title = "平台导入司机模板"; shellList.add("司机名称"); @@ -1095,12 +1155,9 @@ shellList.add("经营业务:快车[是/否]"); shellList.add("经营业务:出租车[是/否]"); shellList.add("经营业务:跨城出行[是/否]"); - shellList.add("经营业务:小件同城物流[是/否]"); - shellList.add("经营业务:小件跨城物流[是/否]"); - shellList.add("经营业务:包车[是/否]"); shellList.add("登录账号[手机号]"); shellList.add("登录密码[密码长度为6-18]"); - } else if (ShiroExtUtil.getUser().getRoleType() == 2) { + } else if (shiroExtUtil.getUser().getRoleType() == 2) { title = "分公司导入司机模板"; shellList.add("司机名称"); @@ -1115,12 +1172,9 @@ shellList.add("经营业务:快车[是/否]"); shellList.add("经营业务:出租车[是/否]"); shellList.add("经营业务:跨城出行[是/否]"); - shellList.add("经营业务:小件同城物流[是/否]"); - shellList.add("经营业务:小件跨城物流[是/否]"); - shellList.add("经营业务:包车[是/否]"); shellList.add("登录账号[手机号]"); shellList.add("登录密码[密码长度为6-18]"); - } else if (ShiroExtUtil.getUser().getRoleType() == 3) { + } else if (shiroExtUtil.getUser().getRoleType() == 3) { title = "加盟商导入司机模板"; shellList.add("司机名称"); @@ -1134,9 +1188,6 @@ shellList.add("经营业务:快车[是/否]"); shellList.add("经营业务:出租车[是/否]"); shellList.add("经营业务:跨城出行[是/否]"); - shellList.add("经营业务:小件同城物流[是/否]"); - shellList.add("经营业务:小件跨城物流[是/否]"); - shellList.add("经营业务:包车[是/否]"); shellList.add("登录账号[手机号]"); shellList.add("登录密码[密码长度为6-18]"); } @@ -1158,10 +1209,12 @@ @RequestMapping(value="/exportDriver",method = RequestMethod.POST) @ResponseBody public Object exportDriver(HttpServletRequest request){ + ShiroUser user = shiroExtUtil.getUser(); + User user2 = userService.selectById(user.getId()); MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request; MultipartFile file = (MultipartFile) multipartRequest.getFile("myfile"); try { - if (ShiroExtUtil.getUser().getRoleType() == 1) { + if (shiroExtUtil.getUser().getRoleType() == 1) { Workbook book = WoUtil.ImportFile(file); Sheet sh = book.getSheetAt(0); //获取到第一个表 for (int i = 1; i <= sh.getLastRowNum(); i++) { @@ -1170,121 +1223,230 @@ Cell cell0 = row.getCell(0); //司机名称 String zero = null; if (SinataUtil.isNotEmpty(cell0)) { - zero = String.valueOf(cell0.getStringCellValue()).trim(); + int cellType = cell0.getCellType(); + switch (cellType) { + case Cell.CELL_TYPE_STRING: + zero = cell0.getStringCellValue().trim(); + break; + case Cell.CELL_TYPE_NUMERIC: + zero = String.valueOf((long)cell0.getNumericCellValue()).trim(); + break; + } } - + Cell cell1 = row.getCell(1); //所属机构[平台司机/加盟司机] String one = null; - if (SinataUtil.isNotEmpty(cell1)){ - one = String.valueOf(cell1.getStringCellValue()).trim(); + if (SinataUtil.isNotEmpty(cell1)) { + int cellType = cell1.getCellType(); + switch (cellType) { + case Cell.CELL_TYPE_STRING: + one = cell1.getStringCellValue().trim(); + break; + case Cell.CELL_TYPE_NUMERIC: + one = String.valueOf((long)cell1.getNumericCellValue()).trim(); + break; + } } - + Cell cell2 = row.getCell(2); //所属分公司[提示:加盟司机选填] String two = null; - if (SinataUtil.isNotEmpty(cell2)){ - two = String.valueOf(cell2.getStringCellValue()).trim(); + if (SinataUtil.isNotEmpty(cell2)) { + int cellType = cell2.getCellType(); + switch (cellType) { + case Cell.CELL_TYPE_STRING: + two = cell2.getStringCellValue().trim(); + break; + case Cell.CELL_TYPE_NUMERIC: + two = String.valueOf((long)cell2.getNumericCellValue()).trim(); + break; + } } Cell cell3 = row.getCell(3); //所属加盟商[提示:加盟司机选填] String three = null; if (SinataUtil.isNotEmpty(cell3)){ - three = String.valueOf(cell3.getStringCellValue()).trim(); + int cellType = cell3.getCellType(); + switch (cellType) { + case Cell.CELL_TYPE_STRING: + three = cell3.getStringCellValue().trim(); + break; + case Cell.CELL_TYPE_NUMERIC: + three = String.valueOf((long)cell3.getNumericCellValue()).trim(); + break; + } } Cell cell4 = row.getCell(4); //性别[男/女] String four = null; if (SinataUtil.isNotEmpty(cell4)){ - four = String.valueOf(cell4.getStringCellValue()).trim(); + int cellType = cell4.getCellType(); + switch (cellType) { + case Cell.CELL_TYPE_STRING: + four = cell4.getStringCellValue().trim(); + break; + case Cell.CELL_TYPE_NUMERIC: + four = String.valueOf((long)cell4.getNumericCellValue()).trim(); + break; + } } Cell cell5 = row.getCell(5); //驾驶证号码 String five = null; if (SinataUtil.isNotEmpty(cell5)){ - five = String.valueOf(cell5.getStringCellValue()).trim(); + int cellType = cell5.getCellType(); + switch (cellType) { + case Cell.CELL_TYPE_STRING: + five = cell5.getStringCellValue().trim(); + break; + case Cell.CELL_TYPE_NUMERIC: + five = String.valueOf((long)cell5.getNumericCellValue()).trim(); + break; + } } Cell cell6 = row.getCell(6); //驾龄 String six = null; if (SinataUtil.isNotEmpty(cell6)){ - six = String.valueOf(cell6.getStringCellValue()).trim(); + int cellType = cell6.getCellType(); + switch (cellType) { + case Cell.CELL_TYPE_STRING: + six = cell6.getStringCellValue().trim(); + break; + case Cell.CELL_TYPE_NUMERIC: + six = String.valueOf((long)cell6.getNumericCellValue()).trim(); + break; + } } Cell cell7 = row.getCell(7); //身份证号 String seven = null; if (SinataUtil.isNotEmpty(cell7)){ - seven = String.valueOf(cell7.getStringCellValue()).trim(); + int cellType = cell7.getCellType(); + switch (cellType) { + case Cell.CELL_TYPE_STRING: + seven = cell7.getStringCellValue().trim(); + break; + case Cell.CELL_TYPE_NUMERIC: + seven = String.valueOf((long)cell7.getNumericCellValue()).trim(); + break; + } } Cell cell8 = row.getCell(8); //居住地址 String eight = null; if (SinataUtil.isNotEmpty(cell8)){ - eight = String.valueOf(cell8.getStringCellValue()).trim(); + int cellType = cell8.getCellType(); + switch (cellType) { + case Cell.CELL_TYPE_STRING: + eight = cell8.getStringCellValue().trim(); + break; + case Cell.CELL_TYPE_NUMERIC: + eight = String.valueOf((long)cell8.getNumericCellValue()).trim(); + break; + } } Cell cell9 = row.getCell(9); //出租车资格证号 String nine = null; if (SinataUtil.isNotEmpty(cell9)){ - nine = String.valueOf(cell9.getStringCellValue()).trim(); + int cellType = cell9.getCellType(); + switch (cellType) { + case Cell.CELL_TYPE_STRING: + nine = cell9.getStringCellValue().trim(); + break; + case Cell.CELL_TYPE_NUMERIC: + nine = String.valueOf((long)cell9.getNumericCellValue()).trim(); + break; + } } Cell cell10 = row.getCell(10); //工号[选填] String ten = null; if (SinataUtil.isNotEmpty(cell10)){ - ten = String.valueOf(cell10.getStringCellValue()).trim(); + int cellType = cell10.getCellType(); + switch (cellType) { + case Cell.CELL_TYPE_STRING: + ten = cell10.getStringCellValue().trim(); + break; + case Cell.CELL_TYPE_NUMERIC: + ten = String.valueOf((long)cell10.getNumericCellValue()).trim(); + break; + } } Cell cell11 = row.getCell(11); //经营业务:快车[是/否] String eleven = null; if (SinataUtil.isNotEmpty(cell11)){ - eleven = String.valueOf(cell11.getStringCellValue()).trim(); + int cellType = cell11.getCellType(); + switch (cellType) { + case Cell.CELL_TYPE_STRING: + eleven = cell11.getStringCellValue().trim(); + break; + case Cell.CELL_TYPE_NUMERIC: + eleven = String.valueOf((long)cell11.getNumericCellValue()).trim(); + break; + } } Cell cell12 = row.getCell(12); //经营业务:快车[是/否] String twelve = null; if (SinataUtil.isNotEmpty(cell12)){ - twelve = String.valueOf(cell12.getStringCellValue()).trim(); + int cellType = cell12.getCellType(); + switch (cellType) { + case Cell.CELL_TYPE_STRING: + twelve = cell12.getStringCellValue().trim(); + break; + case Cell.CELL_TYPE_NUMERIC: + twelve = String.valueOf((long)cell12.getNumericCellValue()).trim(); + break; + } } Cell cell13 = row.getCell(13); //经营业务:跨城出行[是/否] String thirteen = null; if (SinataUtil.isNotEmpty(cell13)){ - thirteen = String.valueOf(cell13.getStringCellValue()).trim(); + int cellType = cell13.getCellType(); + switch (cellType) { + case Cell.CELL_TYPE_STRING: + thirteen = cell13.getStringCellValue().trim(); + break; + case Cell.CELL_TYPE_NUMERIC: + thirteen = String.valueOf((long)cell13.getNumericCellValue()).trim(); + break; + } } - Cell cell14 = row.getCell(14); //经营业务:小件同城物流[是/否] - String fourteen = null; - if (SinataUtil.isNotEmpty(cell14)){ - fourteen = String.valueOf(cell14.getStringCellValue()).trim(); - } - - Cell cell15 = row.getCell(15); //经营业务:小件跨城物流[是/否] - String fifteen = null; - if (SinataUtil.isNotEmpty(cell15)){ - fifteen = String.valueOf(cell15.getStringCellValue()).trim(); - } - - Cell cell16 = row.getCell(16); //经营业务:包车[是/否] - String sixteen = null; - if (SinataUtil.isNotEmpty(cell16)){ - sixteen = String.valueOf(cell16.getStringCellValue()).trim(); - } - - Cell cell17 = row.getCell(17); //登录账号[手机号] + Cell cell17 = row.getCell(14); //登录账号[手机号] String seventeen = null; if (SinataUtil.isNotEmpty(cell17)){ - seventeen = String.valueOf(cell17.getStringCellValue()).trim(); + int cellType = cell17.getCellType(); + switch (cellType) { + case Cell.CELL_TYPE_STRING: + seventeen = cell17.getStringCellValue().trim(); + break; + case Cell.CELL_TYPE_NUMERIC: + seventeen = String.valueOf((long)cell17.getNumericCellValue()).trim(); + break; + } } - Cell cell18 = row.getCell(18); //登录密码[密码长度为6-18] + Cell cell18 = row.getCell(15); //登录密码[密码长度为6-18] String eighteen = null; if (SinataUtil.isNotEmpty(cell18)){ - eighteen = String.valueOf(cell18.getStringCellValue()).trim(); + int cellType = cell18.getCellType(); + switch (cellType) { + case Cell.CELL_TYPE_STRING: + eighteen = cell18.getStringCellValue().trim(); + break; + case Cell.CELL_TYPE_NUMERIC: + eighteen = String.valueOf((long)cell18.getNumericCellValue()).trim(); + break; + } } if (SinataUtil.isEmpty(zero) || SinataUtil.isEmpty(one) || SinataUtil.isEmpty(four) || SinataUtil.isEmpty(five) || SinataUtil.isEmpty(six) || SinataUtil.isEmpty(nine) || SinataUtil.isEmpty(eleven) || SinataUtil.isEmpty(twelve) || SinataUtil.isEmpty(thirteen) - || SinataUtil.isEmpty(fourteen) || SinataUtil.isEmpty(fifteen) || SinataUtil.isEmpty(sixteen) || SinataUtil.isEmpty(seventeen)|| SinataUtil.isEmpty(eighteen)){ return new ErrorTip(500, "单元格不能为空"); }else{ @@ -1313,18 +1475,6 @@ //判断经营业务【跨城出行】 if (!thirteen.equals("是") && !thirteen.equals("否")){ return new ErrorTip(500, "经营业务【跨城出行】内容不正确"); - } - //判断经营业务【小件同城物流】 - if (!fourteen.equals("是") && !fourteen.equals("否")){ - return new ErrorTip(500, "经营业务【小件同城物流】内容不正确"); - } - //判断经营业务【小件跨城物流】 - if (!fifteen.equals("是") && !fifteen.equals("否")){ - return new ErrorTip(500, "经营业务【小件跨城物流】内容不正确"); - } - //判断经营业务【包车】 - if (!sixteen.equals("是") && !sixteen.equals("否")){ - return new ErrorTip(500, "经营业务【包车】内容不正确"); } //判断驾龄 if (!isInteger(six)){ @@ -1374,9 +1524,9 @@ driver.setDriverAge(Integer.valueOf(six)); driver.setDriveCard(five); driver.setTaxiAptitudeCard(nine); - if ("平台司机".equals(one)){ + if ("平台司机".equals(one)) { driver.setIsPlatCar(1); - }else if ("加盟司机".equals(one)){ + } else if ("加盟司机".equals(one)) { driver.setIsPlatCar(2); } driver.setCompanyId(companyId); @@ -1384,38 +1534,51 @@ driver.setState(2); driver.setAuthState(2); driver.setFlag("1"); - driver.setInsertUser(ShiroExtUtil.getUser().getId()); + driver.setInsertUser(shiroExtUtil.getUser().getId()); driver.setInsertTime(new Date()); driver.setAddType(2); - driver.setAddObjectId(ShiroExtUtil.getUser().getObjectId()); + driver.setAddObjectId(shiroExtUtil.getUser().getObjectId()); if (SinataUtil.isNotEmpty(eight)) { driver.setDriverAddress(eight); } //审核通过,在中台添加司机账号 if (2 == driver.getAuthState()) { - ShiroUser user = ShiroExtUtil.getUser(); - Integer objectId = user.getObjectId(); + Integer objectId = driver.getCompanyId(); TCompany tCompany = itCompanyService.selectById(objectId); - User user1 = userService.selectById(user.getId()); - SaveStaffNodeRequest saveStaffNodeRequest = new SaveStaffNodeRequest(); - saveStaffNodeRequest.setMobile(user1.getPhone()); - saveStaffNodeRequest.setEntercode(tCompany.getEnterCode()); - saveStaffNodeRequest.setEmpName(driver.getName()); - saveStaffNodeRequest.setEmpNickname(driver.getName()); - saveStaffNodeRequest.setLoginNo(driver.getPhone()); - saveStaffNodeRequest.setEmpSex(driver.getSex() == 1 ? "男" : "女"); - saveStaffNodeRequest.setMphone(driver.getPhone()); - saveStaffNodeRequest.setEmail("qyt@qyt.com"); - saveStaffNodeRequest.setDeptId(0); - saveStaffNodeRequest.setPositionId(1); - saveStaffNodeRequest.setSuperLevel(0); - saveStaffNodeRequest.setHideMobile(0); - SaveStaffNode saveStaffNode = EmployeeUtil.saveStaffNode(saveStaffNodeRequest); - TCompany tCompany1 = itCompanyService.selectById(driver.getCompanyId()); - driver.setEmpId(saveStaffNode.getEmpId()); - driver.setEntercode(tCompany1.getEnterCode()); - driver.setEnterId(Long.valueOf(tCompany1.getEnterCode())); + List<QYTUserInfo> userInfoByPhone = UserUtil.getUserInfoByPhone(driver.getPhone(), tCompany.getEnterCode()); + Long empId = null; + Integer empnew = null; + if(null == userInfoByPhone || userInfoByPhone.size() == 0){ + SaveStaffNodeRequest saveStaffNodeRequest = new SaveStaffNodeRequest(); + saveStaffNodeRequest.setMobile(user2.getPhone()); + saveStaffNodeRequest.setEntercode(tCompany.getEnterCode()); + saveStaffNodeRequest.setEmpName(driver.getName()); + saveStaffNodeRequest.setEmpNickname(driver.getName()); + saveStaffNodeRequest.setLoginNo(driver.getPhone()); + saveStaffNodeRequest.setEmpSex(driver.getSex() == 1 ? "男" : "女"); + saveStaffNodeRequest.setMphone(driver.getPhone()); + saveStaffNodeRequest.setEmail(driver.getPhone() + "@qyt.com"); + saveStaffNodeRequest.setDeptId(0); + saveStaffNodeRequest.setPositionId(1); + saveStaffNodeRequest.setSuperLevel(0); + saveStaffNodeRequest.setHideMobile(0); + ResultUtil<SaveStaffNode> resultUtil = EmployeeUtil.saveStaffNode(saveStaffNodeRequest); + if(200 != resultUtil.getStatus()){ + return new ErrorTip(resultUtil.getStatus(), resultUtil.getMsg()); + } + SaveStaffNode saveStaffNode = resultUtil.getData(); + empId = saveStaffNode.getEmpId(); + empnew = 1; + }else{ + empId = userInfoByPhone.get(0).getEmpId(); + empnew = 0; + } + + driver.setEmpId(empId); + driver.setEntercode(tCompany.getEnterCode()); + driver.setEnterId(Long.valueOf(tCompany.getEnterCode())); + driver.setEmpnew(empnew); } tDriverService.insert(driver); @@ -1441,30 +1604,9 @@ service.setType(3); itDriverServiceService.insert(service); } - //添加小件同城物流服务模式 - if ("是".equals(fourteen)){ - TDriverService service = new TDriverService(); - service.setDriverId(driver.getId()); - service.setType(4); - itDriverServiceService.insert(service); - } - //添加小件跨城物流服务模式 - if ("是".equals(fifteen)){ - TDriverService service = new TDriverService(); - service.setDriverId(driver.getId()); - service.setType(5); - itDriverServiceService.insert(service); - } - //添加包车服务模式 - if ("是".equals(sixteen)) { - TDriverService service = new TDriverService(); - service.setDriverId(driver.getId()); - service.setType(6); - itDriverServiceService.insert(service); - } } } - } else if (ShiroExtUtil.getUser().getRoleType() == 2) { + } else if (shiroExtUtil.getUser().getRoleType() == 2) { Workbook book = WoUtil.ImportFile(file); Sheet sh = book.getSheetAt(0); //获取到第一个表 for (int i = 1; i <= sh.getLastRowNum(); i++) { @@ -1473,109 +1615,202 @@ Cell cell0 = row.getCell(0); //司机名称 String zero = null; if (SinataUtil.isNotEmpty(cell0)) { - zero = String.valueOf(cell0.getStringCellValue()).trim(); + int cellType = cell0.getCellType(); + switch (cellType) { + case Cell.CELL_TYPE_STRING: + zero = cell0.getStringCellValue().trim(); + break; + case Cell.CELL_TYPE_NUMERIC: + zero = String.valueOf((long)cell0.getNumericCellValue()).trim(); + break; + } } - + Cell cell1 = row.getCell(1); //所属加盟商[选填] String one = null; - if (SinataUtil.isNotEmpty(cell1)){ - one = String.valueOf(cell1.getStringCellValue()).trim(); + if (SinataUtil.isNotEmpty(cell1)) { + int cellType = cell1.getCellType(); + switch (cellType) { + case Cell.CELL_TYPE_STRING: + one = cell1.getStringCellValue().trim(); + break; + case Cell.CELL_TYPE_NUMERIC: + one = String.valueOf((long)cell1.getNumericCellValue()).trim(); + break; + } } - + Cell cell2 = row.getCell(2); //性别[男/女] String two = null; - if (SinataUtil.isNotEmpty(cell2)){ - two = String.valueOf(cell2.getStringCellValue()).trim(); + if (SinataUtil.isNotEmpty(cell2)) { + int cellType = cell2.getCellType(); + switch (cellType) { + case Cell.CELL_TYPE_STRING: + two = cell2.getStringCellValue().trim(); + break; + case Cell.CELL_TYPE_NUMERIC: + two = String.valueOf((long)cell2.getNumericCellValue()).trim(); + break; + } } Cell cell3 = row.getCell(3); //驾驶证号码 String three = null; if (SinataUtil.isNotEmpty(cell3)){ - three = String.valueOf(cell3.getStringCellValue()).trim(); + int cellType = cell3.getCellType(); + switch (cellType) { + case Cell.CELL_TYPE_STRING: + three = cell3.getStringCellValue().trim(); + break; + case Cell.CELL_TYPE_NUMERIC: + three = String.valueOf((long)cell3.getNumericCellValue()).trim(); + break; + } } Cell cell4 = row.getCell(4); //驾龄 String four = null; if (SinataUtil.isNotEmpty(cell4)){ - four = String.valueOf(cell4.getStringCellValue()).trim(); + int cellType = cell4.getCellType(); + switch (cellType) { + case Cell.CELL_TYPE_STRING: + four = cell4.getStringCellValue().trim(); + break; + case Cell.CELL_TYPE_NUMERIC: + four = String.valueOf((long)cell4.getNumericCellValue()).trim(); + break; + } } Cell cell5 = row.getCell(5); //身份证号 String five = null; if (SinataUtil.isNotEmpty(cell5)){ - five = String.valueOf(cell5.getStringCellValue()).trim(); + int cellType = cell5.getCellType(); + switch (cellType) { + case Cell.CELL_TYPE_STRING: + five = cell5.getStringCellValue().trim(); + break; + case Cell.CELL_TYPE_NUMERIC: + five = String.valueOf((long)cell5.getNumericCellValue()).trim(); + break; + } } Cell cell6 = row.getCell(6); //居住地址 String six = null; if (SinataUtil.isNotEmpty(cell6)){ - six = String.valueOf(cell6.getStringCellValue()).trim(); + int cellType = cell6.getCellType(); + switch (cellType) { + case Cell.CELL_TYPE_STRING: + six = cell6.getStringCellValue().trim(); + break; + case Cell.CELL_TYPE_NUMERIC: + six = String.valueOf((long)cell6.getNumericCellValue()).trim(); + break; + } } Cell cell7 = row.getCell(7); //出租车资格证号 String seven = null; if (SinataUtil.isNotEmpty(cell7)){ - seven = String.valueOf(cell7.getStringCellValue()).trim(); + int cellType = cell7.getCellType(); + switch (cellType) { + case Cell.CELL_TYPE_STRING: + seven = cell7.getStringCellValue().trim(); + break; + case Cell.CELL_TYPE_NUMERIC: + seven = String.valueOf((long)cell7.getNumericCellValue()).trim(); + break; + } } Cell cell8 = row.getCell(8); //工号[选填] String eight = null; if (SinataUtil.isNotEmpty(cell8)){ - eight = String.valueOf(cell8.getStringCellValue()).trim(); + int cellType = cell8.getCellType(); + switch (cellType) { + case Cell.CELL_TYPE_STRING: + eight = cell8.getStringCellValue().trim(); + break; + case Cell.CELL_TYPE_NUMERIC: + eight = String.valueOf((long)cell8.getNumericCellValue()).trim(); + break; + } } Cell cell9 = row.getCell(9); //经营业务:快车[是/否] String nine = null; if (SinataUtil.isNotEmpty(cell9)){ - nine = String.valueOf(cell9.getStringCellValue()).trim(); + int cellType = cell9.getCellType(); + switch (cellType) { + case Cell.CELL_TYPE_STRING: + nine = cell9.getStringCellValue().trim(); + break; + case Cell.CELL_TYPE_NUMERIC: + nine = String.valueOf((long)cell9.getNumericCellValue()).trim(); + break; + } } Cell cell10 = row.getCell(10); //经营业务:出租车[是/否] String ten = null; if (SinataUtil.isNotEmpty(cell10)){ - ten = String.valueOf(cell10.getStringCellValue()).trim(); + int cellType = cell10.getCellType(); + switch (cellType) { + case Cell.CELL_TYPE_STRING: + ten = cell10.getStringCellValue().trim(); + break; + case Cell.CELL_TYPE_NUMERIC: + ten = String.valueOf((long)cell10.getNumericCellValue()).trim(); + break; + } } Cell cell11 = row.getCell(11); //经营业务:跨城出行[是/否] String eleven = null; if (SinataUtil.isNotEmpty(cell11)){ - eleven = String.valueOf(cell11.getStringCellValue()).trim(); + int cellType = cell11.getCellType(); + switch (cellType) { + case Cell.CELL_TYPE_STRING: + eleven = cell11.getStringCellValue().trim(); + break; + case Cell.CELL_TYPE_NUMERIC: + eleven = String.valueOf((long)cell11.getNumericCellValue()).trim(); + break; + } } - Cell cell12 = row.getCell(12); //经营业务:小件同城物流[是/否] - String twelve = null; - if (SinataUtil.isNotEmpty(cell12)){ - twelve = String.valueOf(cell12.getStringCellValue()).trim(); - } - - Cell cell13 = row.getCell(13); //经营业务:小件跨城物流[是/否] - String thirteen = null; - if (SinataUtil.isNotEmpty(cell13)){ - thirteen = String.valueOf(cell13.getStringCellValue()).trim(); - } - - Cell cell14 = row.getCell(14); //经营业务:包车[是/否] - String fourteen = null; - if (SinataUtil.isNotEmpty(cell14)){ - fourteen = String.valueOf(cell14.getStringCellValue()).trim(); - } - - Cell cell15 = row.getCell(15); //登录账号[手机号] + Cell cell15 = row.getCell(12); //登录账号[手机号] String fifteen = null; if (SinataUtil.isNotEmpty(cell15)){ - fifteen = String.valueOf(cell15.getStringCellValue()).trim(); + int cellType = cell15.getCellType(); + switch (cellType) { + case Cell.CELL_TYPE_STRING: + fifteen = cell15.getStringCellValue().trim(); + break; + case Cell.CELL_TYPE_NUMERIC: + fifteen = String.valueOf((long)cell15.getNumericCellValue()).trim(); + break; + } } - Cell cell16 = row.getCell(16); //登录密码[密码长度为6-18] + Cell cell16 = row.getCell(13); //登录密码[密码长度为6-18] String sixteen = null; if (SinataUtil.isNotEmpty(cell16)){ - sixteen = String.valueOf(cell16.getStringCellValue()).trim(); + int cellType = cell16.getCellType(); + switch (cellType) { + case Cell.CELL_TYPE_STRING: + sixteen = cell16.getStringCellValue().trim(); + break; + case Cell.CELL_TYPE_NUMERIC: + sixteen = String.valueOf((long)cell16.getNumericCellValue()).trim(); + break; + } } if (SinataUtil.isEmpty(zero) || SinataUtil.isEmpty(two) || SinataUtil.isEmpty(three) || SinataUtil.isEmpty(four) || SinataUtil.isEmpty(five) || SinataUtil.isEmpty(seven) || SinataUtil.isEmpty(nine) || SinataUtil.isEmpty(ten) - || SinataUtil.isEmpty(eleven) || SinataUtil.isEmpty(twelve) || SinataUtil.isEmpty(thirteen) - || SinataUtil.isEmpty(fourteen) || SinataUtil.isEmpty(fifteen) || SinataUtil.isEmpty(sixteen)){ + || SinataUtil.isEmpty(eleven) || SinataUtil.isEmpty(fifteen) || SinataUtil.isEmpty(sixteen)){ return new ErrorTip(500, "单元格不能为空"); }else{ //判断账号是否存在 @@ -1599,41 +1834,29 @@ if (!eleven.equals("是") && !eleven.equals("否")){ return new ErrorTip(500, "经营业务【跨城出行】内容不正确"); } - //判断经营业务【小件同城物流】 - if (!twelve.equals("是") && !twelve.equals("否")){ - return new ErrorTip(500, "经营业务【小件同城物流】内容不正确"); - } - //判断经营业务【小件跨城物流】 - if (!thirteen.equals("是") && !thirteen.equals("否")){ - return new ErrorTip(500, "经营业务【小件跨城物流】内容不正确"); - } - //判断经营业务【包车】 - if (!fourteen.equals("是") && !fourteen.equals("否")){ - return new ErrorTip(500, "经营业务【包车】内容不正确"); - } //判断驾龄 if (!isInteger(four)){ return new ErrorTip(500, "驾龄格式不正确"); } //判断手机号 - if (!isPhone(fifteen)){ + if (!isPhone(fifteen)) { return new ErrorTip(500, "登录账号[手机号]格式不正确"); } //判断登录密码 - if (!isPassword(sixteen)){ + if (!isPassword(sixteen)) { return new ErrorTip(500, "登录密码格式不正确"); } //查找平台公司 - Integer companyId = ShiroExtUtil.getUser().getObjectId(); + Integer companyId = shiroExtUtil.getUser().getObjectId(); Integer franchiseeId = 0; //判断所属分公司是否存在 - if (SinataUtil.isNotEmpty(one)){ - TCompany franchisee = itCompanyService.selectOne(new EntityWrapper<TCompany>().eq("superiorId",companyId).eq("name", one).eq("type", 3).notIn("flag", "3").last(" limit 1")); - if (SinataUtil.isNotEmpty(franchisee)){ + if (SinataUtil.isNotEmpty(one)) { + TCompany franchisee = itCompanyService.selectOne(new EntityWrapper<TCompany>().eq("superiorId", companyId).eq("name", one).eq("type", 3).notIn("flag", "3").last(" limit 1")); + if (SinataUtil.isNotEmpty(franchisee)) { franchiseeId = franchisee.getId(); } } - + TDriver driver = new TDriver(); driver.setAccount(fifteen); driver.setJobNumber(eight); @@ -1655,17 +1878,17 @@ driver.setState(1); driver.setAuthState(1); driver.setFlag("1"); - driver.setInsertUser(ShiroExtUtil.getUser().getId()); + driver.setInsertUser(shiroExtUtil.getUser().getId()); driver.setInsertTime(new Date()); driver.setAddType(3); - driver.setAddObjectId(ShiroExtUtil.getUser().getObjectId()); - if (SinataUtil.isNotEmpty(six)){ + driver.setAddObjectId(shiroExtUtil.getUser().getObjectId()); + if (SinataUtil.isNotEmpty(six)) { driver.setDriverAddress(six); } tDriverService.insert(driver); - + //添加快车服务模式 - if ("是".equals(nine)){ + if ("是".equals(nine)) { TDriverService service = new TDriverService(); service.setDriverId(driver.getId()); service.setType(1); @@ -1685,31 +1908,10 @@ service.setType(3); itDriverServiceService.insert(service); } - //添加小件同城物流服务模式 - if ("是".equals(twelve)){ - TDriverService service = new TDriverService(); - service.setDriverId(driver.getId()); - service.setType(4); - itDriverServiceService.insert(service); - } - //添加小件跨城物流服务模式 - if ("是".equals(thirteen)){ - TDriverService service = new TDriverService(); - service.setDriverId(driver.getId()); - service.setType(5); - itDriverServiceService.insert(service); - } - //添加包车服务模式 - if ("是".equals(fourteen)) { - TDriverService service = new TDriverService(); - service.setDriverId(driver.getId()); - service.setType(6); - itDriverServiceService.insert(service); - } } } - } else if (ShiroExtUtil.getUser().getRoleType() == 3) { + } else if (shiroExtUtil.getUser().getRoleType() == 3) { Workbook book = WoUtil.ImportFile(file); Sheet sh = book.getSheetAt(0); //获取到第一个表 for (int i = 1; i <= sh.getLastRowNum(); i++) { @@ -1718,102 +1920,187 @@ Cell cell0 = row.getCell(0); //司机名称 String zero = null; if (SinataUtil.isNotEmpty(cell0)) { - zero = String.valueOf(cell0.getStringCellValue()).trim(); + int cellType = cell0.getCellType(); + switch (cellType) { + case Cell.CELL_TYPE_STRING: + zero = cell0.getStringCellValue().trim(); + break; + case Cell.CELL_TYPE_NUMERIC: + zero = String.valueOf((long)cell0.getNumericCellValue()).trim(); + break; + } } - + Cell cell2 = row.getCell(1); //性别[男/女] String one = null; - if (SinataUtil.isNotEmpty(cell2)){ - one = String.valueOf(cell2.getStringCellValue()).trim(); + if (SinataUtil.isNotEmpty(cell2)) { + int cellType = cell2.getCellType(); + switch (cellType) { + case Cell.CELL_TYPE_STRING: + one = cell2.getStringCellValue().trim(); + break; + case Cell.CELL_TYPE_NUMERIC: + one = String.valueOf((long)cell2.getNumericCellValue()).trim(); + break; + } } - + Cell cell3 = row.getCell(2); //驾驶证号码 String two = null; - if (SinataUtil.isNotEmpty(cell3)){ - two = String.valueOf(cell3.getStringCellValue()).trim(); + if (SinataUtil.isNotEmpty(cell3)) { + int cellType = cell3.getCellType(); + switch (cellType) { + case Cell.CELL_TYPE_STRING: + two = cell3.getStringCellValue().trim(); + break; + case Cell.CELL_TYPE_NUMERIC: + two = String.valueOf((long)cell3.getNumericCellValue()).trim(); + break; + } } Cell cell4 = row.getCell(3); //驾龄 String three = null; if (SinataUtil.isNotEmpty(cell4)){ - three = String.valueOf(cell4.getStringCellValue()).trim(); + int cellType = cell4.getCellType(); + switch (cellType) { + case Cell.CELL_TYPE_STRING: + three = cell4.getStringCellValue().trim(); + break; + case Cell.CELL_TYPE_NUMERIC: + three = String.valueOf((long)cell4.getNumericCellValue()).trim(); + break; + } } Cell cell5 = row.getCell(4); //身份证号 String four = null; if (SinataUtil.isNotEmpty(cell5)){ - four = String.valueOf(cell5.getStringCellValue()).trim(); + int cellType = cell5.getCellType(); + switch (cellType) { + case Cell.CELL_TYPE_STRING: + four = cell5.getStringCellValue().trim(); + break; + case Cell.CELL_TYPE_NUMERIC: + four = String.valueOf((long)cell5.getNumericCellValue()).trim(); + break; + } } Cell cell6 = row.getCell(5); //居住地址 String five = null; if (SinataUtil.isNotEmpty(cell6)){ - five = String.valueOf(cell6.getStringCellValue()).trim(); + int cellType = cell6.getCellType(); + switch (cellType) { + case Cell.CELL_TYPE_STRING: + five = cell6.getStringCellValue().trim(); + break; + case Cell.CELL_TYPE_NUMERIC: + five = String.valueOf((long)cell6.getNumericCellValue()).trim(); + break; + } } Cell cell7 = row.getCell(6); //出租车资格证号 String six = null; if (SinataUtil.isNotEmpty(cell7)){ - six = String.valueOf(cell7.getStringCellValue()).trim(); + int cellType = cell7.getCellType(); + switch (cellType) { + case Cell.CELL_TYPE_STRING: + six = cell7.getStringCellValue().trim(); + break; + case Cell.CELL_TYPE_NUMERIC: + six = String.valueOf((long)cell7.getNumericCellValue()).trim(); + break; + } } Cell cell8 = row.getCell(7); //工号[选填] String seven = null; if (SinataUtil.isNotEmpty(cell8)){ - seven = String.valueOf(cell8.getStringCellValue()).trim(); + int cellType = cell8.getCellType(); + switch (cellType) { + case Cell.CELL_TYPE_STRING: + seven = cell8.getStringCellValue().trim(); + break; + case Cell.CELL_TYPE_NUMERIC: + seven = String.valueOf((long)cell8.getNumericCellValue()).trim(); + break; + } } Cell cell9 = row.getCell(8); //经营业务:快车[是/否] String eight = null; if (SinataUtil.isNotEmpty(cell9)){ - eight = String.valueOf(cell9.getStringCellValue()).trim(); + int cellType = cell9.getCellType(); + switch (cellType) { + case Cell.CELL_TYPE_STRING: + eight = cell9.getStringCellValue().trim(); + break; + case Cell.CELL_TYPE_NUMERIC: + eight = String.valueOf((long)cell9.getNumericCellValue()).trim(); + break; + } } Cell cell10 = row.getCell(9); //经营业务:出租车[是/否] String nine = null; if (SinataUtil.isNotEmpty(cell10)){ - nine = String.valueOf(cell10.getStringCellValue()).trim(); + int cellType = cell10.getCellType(); + switch (cellType) { + case Cell.CELL_TYPE_STRING: + nine = cell10.getStringCellValue().trim(); + break; + case Cell.CELL_TYPE_NUMERIC: + nine = String.valueOf((long)cell10.getNumericCellValue()).trim(); + break; + } } Cell cell11 = row.getCell(10); //经营业务:跨城出行[是/否] String ten = null; if (SinataUtil.isNotEmpty(cell11)){ - ten = String.valueOf(cell11.getStringCellValue()).trim(); + int cellType = cell11.getCellType(); + switch (cellType) { + case Cell.CELL_TYPE_STRING: + ten = cell11.getStringCellValue().trim(); + break; + case Cell.CELL_TYPE_NUMERIC: + ten = String.valueOf((long)cell11.getNumericCellValue()).trim(); + break; + } } - Cell cell12 = row.getCell(11); //经营业务:小件同城物流[是/否] - String eleven = null; - if (SinataUtil.isNotEmpty(cell12)){ - eleven = String.valueOf(cell12.getStringCellValue()).trim(); - } - - Cell cell13 = row.getCell(12); //经营业务:小件跨城物流[是/否] - String twelve = null; - if (SinataUtil.isNotEmpty(cell13)){ - twelve = String.valueOf(cell13.getStringCellValue()).trim(); - } - - Cell cell14 = row.getCell(13); //经营业务:包车[是/否] - String thirteen = null; - if (SinataUtil.isNotEmpty(cell14)){ - thirteen = String.valueOf(cell14.getStringCellValue()).trim(); - } - - Cell cell15 = row.getCell(14); //登录账号[手机号] + Cell cell15 = row.getCell(11); //登录账号[手机号] String fourteen = null; if (SinataUtil.isNotEmpty(cell15)){ - fourteen = String.valueOf(cell15.getStringCellValue()).trim(); + int cellType = cell15.getCellType(); + switch (cellType) { + case Cell.CELL_TYPE_STRING: + fourteen = cell15.getStringCellValue().trim(); + break; + case Cell.CELL_TYPE_NUMERIC: + fourteen = String.valueOf((long)cell15.getNumericCellValue()).trim(); + break; + } } - Cell cell16 = row.getCell(15); //登录密码[密码长度为6-18] + Cell cell16 = row.getCell(12); //登录密码[密码长度为6-18] String fifteen = null; if (SinataUtil.isNotEmpty(cell16)){ - fifteen = String.valueOf(cell16.getStringCellValue()).trim(); + int cellType = cell16.getCellType(); + switch (cellType) { + case Cell.CELL_TYPE_STRING: + fifteen = cell16.getStringCellValue().trim(); + break; + case Cell.CELL_TYPE_NUMERIC: + fifteen = String.valueOf((long)cell16.getNumericCellValue()).trim(); + break; + } } if (SinataUtil.isEmpty(zero) || SinataUtil.isEmpty(one) || SinataUtil.isEmpty(two) || SinataUtil.isEmpty(three) || SinataUtil.isEmpty(four) || SinataUtil.isEmpty(six) || SinataUtil.isEmpty(eight) || SinataUtil.isEmpty(nine) || SinataUtil.isEmpty(ten) - || SinataUtil.isEmpty(eleven) || SinataUtil.isEmpty(twelve) || SinataUtil.isEmpty(thirteen) || SinataUtil.isEmpty(fourteen) || SinataUtil.isEmpty(fifteen) ){ return new ErrorTip(500, "单元格不能为空"); }else{ @@ -1838,42 +2125,30 @@ if (!ten.equals("是") && !ten.equals("否")){ return new ErrorTip(500, "经营业务【跨城出行】内容不正确"); } - //判断经营业务【小件同城物流】 - if (!eleven.equals("是") && !eleven.equals("否")){ - return new ErrorTip(500, "经营业务【小件同城物流】内容不正确"); - } - //判断经营业务【小件跨城物流】 - if (!twelve.equals("是") && !twelve.equals("否")){ - return new ErrorTip(500, "经营业务【小件跨城物流】内容不正确"); - } - //判断经营业务【包车】 - if (!thirteen.equals("是") && !thirteen.equals("否")){ - return new ErrorTip(500, "经营业务【包车】内容不正确"); - } //判断驾龄 if (!isInteger(three)){ return new ErrorTip(500, "驾龄格式不正确"); } //判断手机号 - if (!isPhone(fourteen)){ + if (!isPhone(fourteen)) { return new ErrorTip(500, "登录账号[手机号]格式不正确"); } //判断登录密码 - if (!isPassword(fifteen)){ + if (!isPassword(fifteen)) { return new ErrorTip(500, "登录密码格式不正确"); } //查找平台公司 Integer companyId = 0; Integer franchiseeId = 0; - TCompany franchisee = itCompanyService.selectById(ShiroExtUtil.getUser().getObjectId()); - if (SinataUtil.isNotEmpty(franchisee)){ + TCompany franchisee = itCompanyService.selectById(shiroExtUtil.getUser().getObjectId()); + if (SinataUtil.isNotEmpty(franchisee)) { companyId = franchisee.getSuperiorId(); franchiseeId = franchisee.getId(); } - if (companyId == 0 && franchiseeId == 0){ + if (companyId == 0 && franchiseeId == 0) { return new ErrorTip(500, "当前登录账户上级分公司不能为空"); } - + TDriver driver = new TDriver(); driver.setAccount(fourteen); driver.setJobNumber(seven); @@ -1895,17 +2170,17 @@ driver.setState(1); driver.setAuthState(1); driver.setFlag("1"); - driver.setInsertUser(ShiroExtUtil.getUser().getId()); + driver.setInsertUser(shiroExtUtil.getUser().getId()); driver.setInsertTime(new Date()); driver.setAddType(4); - driver.setAddObjectId(ShiroExtUtil.getUser().getObjectId()); - if (SinataUtil.isNotEmpty(five)){ + driver.setAddObjectId(shiroExtUtil.getUser().getObjectId()); + if (SinataUtil.isNotEmpty(five)) { driver.setDriverAddress(five); } tDriverService.insert(driver); - + //添加快车服务模式 - if ("是".equals(eight)){ + if ("是".equals(eight)) { TDriverService service = new TDriverService(); service.setDriverId(driver.getId()); service.setType(1); @@ -1923,27 +2198,6 @@ TDriverService service = new TDriverService(); service.setDriverId(driver.getId()); service.setType(3); - itDriverServiceService.insert(service); - } - //添加小件同城物流服务模式 - if ("是".equals(eleven)){ - TDriverService service = new TDriverService(); - service.setDriverId(driver.getId()); - service.setType(4); - itDriverServiceService.insert(service); - } - //添加小件跨城物流服务模式 - if ("是".equals(twelve)){ - TDriverService service = new TDriverService(); - service.setDriverId(driver.getId()); - service.setType(5); - itDriverServiceService.insert(service); - } - //添加包车服务模式 - if ("是".equals(thirteen)){ - TDriverService service = new TDriverService(); - service.setDriverId(driver.getId()); - service.setType(6); itDriverServiceService.insert(service); } } @@ -2006,8 +2260,21 @@ * 导出司机信息 */ @RequestMapping(value = "/outDriver") - public void outDriver(HttpServletRequest request, HttpServletResponse response) { - List<Map<String, Object>> listMap = tDriverService.getDriverListNoPage(ShiroExtUtil.getUser().getRoleType(), ShiroExtUtil.getUser().getObjectId()); + public void outDriver(String insertTime, + String companyName, + String phone, + String name, + Integer addType, + Integer authState, HttpServletRequest request, HttpServletResponse response) { + String beginTime = null; + String endTime = null; + if (SinataUtil.isNotEmpty(insertTime)){ + String[] timeArray = insertTime.split(" - "); + beginTime = timeArray[0]; + endTime = timeArray[1]; + } + Page<Map<String, Object>> page = new Page<>(0, 10000); + List<Map<String, Object>> listMap = tDriverService.getDriverList(page, shiroExtUtil.getUser().getRoleType(), shiroExtUtil.getUser().getObjectId(), beginTime, endTime, companyName, phone, name, addType, authState); // 表格数据【封装】 List<List<String>> dataList = new ArrayList<>(); -- Gitblit v1.7.1