From 993a85ca2a2f4bb33a0322326f7589c5d61a8c39 Mon Sep 17 00:00:00 2001
From: Pu Zhibing <393733352@qq.com>
Date: 星期二, 16 九月 2025 09:43:13 +0800
Subject: [PATCH] 新增加司机选择所属企业接口

---
 DriverOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/DriverController.java                  |   49 +++++++++++++++++++++++-
 DriverOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/RegisteredWarpper.java      |   10 +++++
 DriverOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/DriverServiceImpl.java |   20 ---------
 3 files changed, 57 insertions(+), 22 deletions(-)

diff --git a/DriverOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/DriverController.java b/DriverOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/DriverController.java
index 1169c8f..dacaf57 100644
--- a/DriverOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/DriverController.java
+++ b/DriverOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/DriverController.java
@@ -1,6 +1,7 @@
 package com.stylefeng.guns.modular.api;
 
 import com.alibaba.fastjson.JSON;
+import com.baomidou.mybatisplus.mapper.EntityWrapper;
 import com.stylefeng.guns.core.util.ToolUtil;
 import com.stylefeng.guns.modular.crossCity.model.OrderCrossCity;
 import com.stylefeng.guns.modular.crossCity.server.IOrderCrossCityService;
@@ -8,13 +9,11 @@
 import com.stylefeng.guns.modular.smallLogistics.server.IOrderLogisticsService;
 import com.stylefeng.guns.modular.specialTrain.model.OrderPrivateCar;
 import com.stylefeng.guns.modular.specialTrain.server.IOrderPrivateCarService;
-import com.stylefeng.guns.modular.system.model.Income;
+import com.stylefeng.guns.modular.system.model.*;
 import com.stylefeng.guns.modular.system.util.ALiSendSms;
 //import com.stylefeng.guns.modular.system.util.ICBCPayUtil;
 import com.stylefeng.guns.modular.system.util.HuaWeiSMSUtil;
 import com.stylefeng.guns.modular.system.warpper.ActivityWarpper;
-import com.stylefeng.guns.modular.system.model.Driver;
-import com.stylefeng.guns.modular.system.model.OrderPosition;
 import com.stylefeng.guns.modular.system.service.*;
 import com.stylefeng.guns.modular.system.util.ResultUtil;
 import com.stylefeng.guns.modular.system.warpper.*;
@@ -31,6 +30,7 @@
 import javax.servlet.http.HttpServletResponse;
 import java.text.SimpleDateFormat;
 import java.util.*;
+import java.util.stream.Collectors;
 
 /**
  * 司机控制器
@@ -72,6 +72,12 @@
 
     @Autowired
     private IOrderLogisticsService orderLogisticsService;
+
+    @Autowired
+    private ICompanyService companyService;
+
+    @Autowired
+    private ICompanyCityService companyCityService;
 
 
 
@@ -1196,4 +1202,41 @@
             return ResultUtil.runErr();
         }
     }
+
+
+
+    @ResponseBody
+    @PostMapping("/base/driver/getCompanyByCityCode")
+    @ApiOperation(value = "根据省市区编号获取可选择的企业", tags = {"司机端-注册"}, notes = "")
+    @ApiImplicitParams({
+            @ApiImplicitParam(value = "省编号", name = "provinceCode", required = true, dataType = "String"),
+            @ApiImplicitParam(value = "市编号", name = "cityCode", required = false, dataType = "String"),
+            @ApiImplicitParam(value = "区编号", name = "districtCode", required = false, dataType = "String"),
+    })
+    public ResultUtil<List<Map<String, Object>>> getCompanyByCityCode(String provinceCode, String cityCode, String districtCode){
+        List<Integer> companyId = null;
+        if(ToolUtil.isNotEmpty(districtCode)){
+            List<CompanyCity> areaCode = companyCityService.selectList(new EntityWrapper<CompanyCity>().eq("areaCode", districtCode));
+            companyId = areaCode.stream().map(CompanyCity::getCompanyId).collect(Collectors.toList());
+        }
+        if(ToolUtil.isNotEmpty(cityCode) && (null == companyId ||companyId.isEmpty())){
+            List<CompanyCity> areaCode = companyCityService.selectList(new EntityWrapper<CompanyCity>().eq("cityCode", cityCode).isNull("areaCode"));
+            companyId = areaCode.stream().map(CompanyCity::getCompanyId).collect(Collectors.toList());
+        }
+        if(ToolUtil.isNotEmpty(provinceCode) && (null == companyId ||companyId.isEmpty())){
+            List<CompanyCity> areaCode = companyCityService.selectList(new EntityWrapper<CompanyCity>().eq("provinceCode", provinceCode).isNull("cityCode").isNull("areaCode"));
+            companyId = areaCode.stream().map(CompanyCity::getCompanyId).collect(Collectors.toList());
+        }
+        if(null != companyId && !companyId.isEmpty()){
+            List<Company> companies = companyService.selectBatchIds(companyId);
+            List<Map<String, Object>> collect = companies.stream().map(s -> {
+                Map<String, Object> map = new HashMap<>();
+                map.put("id", s.getId());
+                map.put("name", s.getName());
+                return map;
+            }).collect(Collectors.toList());
+            return ResultUtil.success(collect);
+        }
+        return ResultUtil.success(new ArrayList<>());
+    }
 }
diff --git a/DriverOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/DriverServiceImpl.java b/DriverOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/DriverServiceImpl.java
index e03b951..2ffcd24 100644
--- a/DriverOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/DriverServiceImpl.java
+++ b/DriverOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/DriverServiceImpl.java
@@ -342,25 +342,7 @@
         driver.setSex(registeredWarpper.getSex());
         driver.setIdCard(registeredWarpper.getIdCard());
 
-        String code = registeredWarpper.getPlaceOfEmployment();
-        Company query = companyCityService.query(code);
-        if(null == query){
-            return ResultUtil.error("选择从业地暂未开通业务");
-        }
-        if(null != query){
-            switch (query.getType()){
-                case 1://平台
-                    driver.setCompanyId(query.getId());
-                    break;
-                case 2://分公司
-                    driver.setCompanyId(query.getId());
-                    break;
-                case 3://加盟商
-                    driver.setCompanyId(query.getSuperiorId());
-                    driver.setFranchiseeId(query.getId());
-                    break;
-            }
-        }
+        driver.setCompanyId(registeredWarpper.getCompanyId());
         driver.setHeadImgUrl(registeredWarpper.getHeadImgUrl());
         driver.setIdCardImgUrl1(registeredWarpper.getIdCardImgUrl1());
         driver.setIdCardImgUrl2(registeredWarpper.getIdCardImgUrl2());
diff --git a/DriverOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/RegisteredWarpper.java b/DriverOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/RegisteredWarpper.java
index 049b69f..6ee6c66 100644
--- a/DriverOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/RegisteredWarpper.java
+++ b/DriverOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/RegisteredWarpper.java
@@ -41,6 +41,8 @@
     private String networkCarlssueImg;
     @ApiModelProperty("出租车资格证号")
     private String taxiAptitudeCard;
+    @ApiModelProperty("企业id")
+    private Integer companyId;
 
 
     public String getPhone() {
@@ -179,6 +181,14 @@
         this.placeOfPractice = placeOfPractice;
     }
 
+    public Integer getCompanyId() {
+        return companyId;
+    }
+
+    public void setCompanyId(Integer companyId) {
+        this.companyId = companyId;
+    }
+
     @Override
     public String toString() {
         return "RegisteredWarpper{" +

--
Gitblit v1.7.1