From 3bcf6a65dfb9813dff2986c9cc03b638742ce64e Mon Sep 17 00:00:00 2001
From: xuhy <3313886187@qq.com>
Date: 星期一, 06 三月 2023 18:02:00 +0800
Subject: [PATCH] 司机管理,用户角色分类查询修改

---
 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TDriverServiceImpl.java            |   19 +
 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TCancelOrderServiceImpl.java       |    6 
 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/TOrderMapper.java                           |    3 
 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TBranchOfficeController.java |   92 +++++++++
 management/guns-admin/src/main/webapp/static/modular/system/tBranchOffice/tBranchOffice.js                            |  151 +++++++++++++--
 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TCancelOrderMapper.xml              |    6 
 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TEvaluateServiceImpl.java          |   13 +
 management/guns-admin/src/main/webapp/WEB-INF/view/system/tBranchOffice/tBranchOfficeDetail.html                      |  113 +++++++++++
 management/guns-admin/src/main/webapp/static/modular/system/tBranchOffice/tBranchOffice_info.js                       |    2 
 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TOrderMapper.xml                    |    6 
 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TEvaluateMapper.xml                 |    2 
 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TAgentServiceImpl.java             |    7 
 management/guns-admin/src/main/webapp/WEB-INF/view/system/tBranchOffice/tBranchOffice.html                            |   50 ++++
 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/system/LoginController.java          |    2 
 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TBranchOfficeServiceImpl.java      |   24 ++
 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TOrderServiceImpl.java             |    5 
 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/TSystemConfigMapper.java                    |    2 
 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/TCancelOrderMapper.java                     |    3 
 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/resp/TEvaluateResp.java              |   22 ++
 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/TBranchOffice.java                        |   23 ++
 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ITBranchOfficeService.java              |    7 
 21 files changed, 519 insertions(+), 39 deletions(-)

diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TBranchOfficeController.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TBranchOfficeController.java
index bebefe7..d806fe0 100644
--- a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TBranchOfficeController.java
+++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TBranchOfficeController.java
@@ -1,7 +1,15 @@
 package com.stylefeng.guns.modular.system.controller.general;
 
+import com.alibaba.fastjson.JSONObject;
+import com.baomidou.mybatisplus.mapper.EntityWrapper;
 import com.stylefeng.guns.core.base.controller.BaseController;
+import com.stylefeng.guns.core.shiro.ShiroKit;
+import com.stylefeng.guns.modular.system.model.TAppUser;
+import com.stylefeng.guns.modular.system.model.TSystemConfig;
+import com.stylefeng.guns.modular.system.model.User;
+import com.stylefeng.guns.modular.system.service.ITSystemConfigService;
 import org.springframework.stereotype.Controller;
+import org.springframework.util.StringUtils;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.ResponseBody;
 import org.springframework.ui.Model;
@@ -11,6 +19,8 @@
 import org.springframework.web.bind.annotation.RequestParam;
 import com.stylefeng.guns.modular.system.model.TBranchOffice;
 import com.stylefeng.guns.modular.system.service.ITBranchOfficeService;
+
+import java.util.Objects;
 
 /**
  * 控制器
@@ -26,6 +36,8 @@
 
     @Autowired
     private ITBranchOfficeService tBranchOfficeService;
+    @Autowired
+    private ITSystemConfigService tSystemConfigService;
 
     /**
      * 跳转到首页
@@ -55,11 +67,89 @@
     }
 
     /**
+     * 跳转到详情
+     */
+    @RequestMapping("/tBranchOfficeDetail")
+    public String tBranchOfficeDetail(Integer tBranchOfficeId, Model model) {
+        tBranchOfficeService.tBranchOfficeDetail(tBranchOfficeId,model);
+        TSystemConfig tSystemConfig = tSystemConfigService.selectOne(new EntityWrapper<TSystemConfig>().eq("type", 3));
+        JSONObject jsonObject = JSONObject.parseObject(tSystemConfig.getContent());
+        model.addAttribute("num2",jsonObject.getInteger("num2"));
+        model.addAttribute("num3",jsonObject.getInteger("num3"));
+        return PREFIX + "tBranchOfficeDetail.html";
+    }
+
+    /**
      * 获取列表
      */
     @RequestMapping(value = "/list")
     @ResponseBody
-    public Object list(String condition) {
+    public Object list(String branchOfficeName,String principal,String principalPhone,Integer operatingBusiness ,Integer status) {
+        EntityWrapper<TBranchOffice> wrapper = new EntityWrapper<>();
+        // 分公司名称
+        if(StringUtils.hasLength(branchOfficeName)){
+            wrapper.like("branchOfficeName",branchOfficeName);
+        }
+        // 负责人
+        if(StringUtils.hasLength(principal)){
+            wrapper.like("principal",principal);
+        }
+        // 负责人电话
+        if(StringUtils.hasLength(principalPhone)){
+            wrapper.like("principalPhone",principalPhone);
+        }
+        // 经营业务
+        if(Objects.nonNull(operatingBusiness)){
+            wrapper.eq("operatingBusiness",operatingBusiness);
+        }
+        // 状态
+        if(Objects.nonNull(status)){
+            wrapper.eq("status",status);
+        }
+        // 判断代理商 分公司
+        Integer roleType = Objects.requireNonNull(ShiroKit.getUser()).getRoleType();
+        Integer objectId = Objects.requireNonNull(ShiroKit.getUser()).getObjectId();
+        if(2 == roleType){
+            // 分公司
+            wrapper.eq("id",objectId);
+        }
+        if(3 == roleType){
+            // 代理商
+            wrapper.eq("agentId",objectId);
+        }
+        return tBranchOfficeService.selectList(wrapper);
+    }
+
+    /**
+     * 启用分公司
+     */
+    @RequestMapping(value = "/start")
+    @ResponseBody
+    public Object start(Integer id) {
+        TBranchOffice tBranchOffice = tBranchOfficeService.selectById(id);
+        tBranchOffice.setStatus(1);
+        tBranchOfficeService.updateById(tBranchOffice);
+        return SUCCESS_TIP;
+    }
+
+    /**
+     * 冻结分公司
+     */
+    @RequestMapping(value = "/stop")
+    @ResponseBody
+    public Object updateStatus(Integer id) {
+        TBranchOffice tBranchOffice = tBranchOfficeService.selectById(id);
+        tBranchOffice.setStatus(2);
+        tBranchOfficeService.updateById(tBranchOffice);
+        return SUCCESS_TIP;
+    }
+
+    /**
+     * 获取列表
+     */
+    @RequestMapping(value = "/list-back")
+    @ResponseBody
+    public Object listBack(String condition) {
         return tBranchOfficeService.selectList(null);
     }
 
diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/resp/TEvaluateResp.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/resp/TEvaluateResp.java
index 4a72566..f092b06 100644
--- a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/resp/TEvaluateResp.java
+++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/resp/TEvaluateResp.java
@@ -20,6 +20,28 @@
     @ApiModelProperty(value = "司机手机号")
     private String driverPhone;
 
+    @ApiModelProperty(value = "分公司id")
+    private Integer branchOfficeId;
+
+    @ApiModelProperty(value = "代理商id")
+    private Integer agentId;
+
+    public Integer getBranchOfficeId() {
+        return branchOfficeId;
+    }
+
+    public void setBranchOfficeId(Integer branchOfficeId) {
+        this.branchOfficeId = branchOfficeId;
+    }
+
+    public Integer getAgentId() {
+        return agentId;
+    }
+
+    public void setAgentId(Integer agentId) {
+        this.agentId = agentId;
+    }
+
     public String getCode() {
         return code;
     }
diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/system/LoginController.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/system/LoginController.java
index 1e4ac3a..f8f86c5 100644
--- a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/system/LoginController.java
+++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/system/LoginController.java
@@ -164,9 +164,7 @@
             // 校验密码
             ShiroUser shiroUser1 = shiroFactory.shiroUser(user);
             SimpleAuthenticationInfo info = shiroFactory.info(shiroUser1, user, username);
-            System.out.println(info.getCredentials());
             String pass = ShiroKit.md5(password, user.getSalt());
-            System.out.println(pass);
             if(!info.getCredentials().equals(pass)){
                 f++;
                 loginFailures.put(username, f);
diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/TCancelOrderMapper.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/TCancelOrderMapper.java
index b4ef7d7..a2f70da 100644
--- a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/TCancelOrderMapper.java
+++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/TCancelOrderMapper.java
@@ -33,7 +33,8 @@
      */
     List<TOrderResp> getCancelOrderList(@Param("startTime") String startTime, @Param("endTime")String endTime, @Param("code") String code,
                                         @Param("source") Integer source, @Param("userName")String userName, @Param("userPhone")String userPhone,
-                                        @Param("state")Integer state, @Param("driverName")String driverName);
+                                        @Param("state")Integer state, @Param("driverName")String driverName,@Param("roleType")Integer roleType,
+                                        @Param("objectId")Integer objectId);
 
     /**
      * 订单异常详情页面的取消记录列表
diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/TOrderMapper.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/TOrderMapper.java
index 75bd05b..9a2e7bb 100644
--- a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/TOrderMapper.java
+++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/TOrderMapper.java
@@ -33,5 +33,6 @@
      */
     List<TOrderResp> getOrderList(@Param("startTime") String startTime,@Param("endTime")String endTime, @Param("code") String code,
                                   @Param("source") Integer source,@Param("userName")String userName, @Param("userPhone")String userPhone,
-                                  @Param("state")Integer state,@Param("driverName")String driverName,@Param("isException") Integer isException);
+                                  @Param("state")Integer state,@Param("driverName")String driverName,@Param("isException") Integer isException,
+                                  @Param("roleType")Integer roleType,@Param("objectId")Integer objectId);
 }
diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/TSystemConfigMapper.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/TSystemConfigMapper.java
index 83a2146..02ee4df 100644
--- a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/TSystemConfigMapper.java
+++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/TSystemConfigMapper.java
@@ -2,6 +2,7 @@
 
 import com.stylefeng.guns.modular.system.model.TSystemConfig;
 import com.baomidou.mybatisplus.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Mapper;
 
 /**
  * <p>
@@ -11,6 +12,7 @@
  * @author stylefeng
  * @since 2023-03-02
  */
+@Mapper
 public interface TSystemConfigMapper extends BaseMapper<TSystemConfig> {
 
 }
diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TCancelOrderMapper.xml b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TCancelOrderMapper.xml
index 6d11c18..25e999b 100644
--- a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TCancelOrderMapper.xml
+++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TCancelOrderMapper.xml
@@ -51,6 +51,12 @@
             <if test="driverName != null and driverName != ''">
                 AND d.name LIKE concat('%',#{driverName},'%')
             </if>
+            <if test="roleType != null and roleType == 2">
+                AND o.branchOfficeId = #{objectId}
+            </if>
+            <if test="roleType != null and roleType == 3">
+                AND o.agentId = #{objectId}
+            </if>
             AND co.userType = 1
         </where>
         ORDER BY co.createTime
diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TEvaluateMapper.xml b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TEvaluateMapper.xml
index 30feff1..e0dc37c 100644
--- a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TEvaluateMapper.xml
+++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TEvaluateMapper.xml
@@ -19,7 +19,7 @@
     </sql>
     <select id="selectPageList" resultType="com.stylefeng.guns.modular.system.controller.resp.TEvaluateResp">
         select e.id, e.orderId, e.userId, e.score, e.evaluate, e.status, e.createTime,
-               a.nickname AS userName,a.phone AS userPhone,o.code,d.name AS driverName,d.phone AS driverPhone
+               a.nickname AS userName,a.phone AS userPhone,o.code,o.agentId,o.branchOfficeId,d.name AS driverName,d.phone AS driverPhone
         from t_evaluate e
         left join t_app_user a on e.userId = a.id
         left join t_order o on e.orderId = o.id
diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TOrderMapper.xml b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TOrderMapper.xml
index 7d7635d..0a1fd14 100644
--- a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TOrderMapper.xml
+++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TOrderMapper.xml
@@ -94,6 +94,12 @@
             <if test="isException != null">
                 AND a.is_exception = #{isException}
             </if>
+            <if test="roleType != null and roleType == 2">
+                AND o.branchOfficeId = #{objectId}
+            </if>
+            <if test="roleType != null and roleType == 3">
+                AND o.agentId = #{objectId}
+            </if>
         </where>
         ORDER BY o.createTime
     </select>
diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/TBranchOffice.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/TBranchOffice.java
index 324c224..0655fc1 100644
--- a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/TBranchOffice.java
+++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/TBranchOffice.java
@@ -73,7 +73,30 @@
      * 添加时间
      */
     private Date createTime;
+    /**
+     * 分公司名称
+     */
+    private String branchOfficeName;
+    /**
+     * 经营业务 1司机代驾
+     */
+    private Integer operatingBusiness;
 
+    public String getBranchOfficeName() {
+        return branchOfficeName;
+    }
+
+    public void setBranchOfficeName(String branchOfficeName) {
+        this.branchOfficeName = branchOfficeName;
+    }
+
+    public Integer getOperatingBusiness() {
+        return operatingBusiness;
+    }
+
+    public void setOperatingBusiness(Integer operatingBusiness) {
+        this.operatingBusiness = operatingBusiness;
+    }
 
     public Integer getId() {
         return id;
diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ITBranchOfficeService.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ITBranchOfficeService.java
index d07d5fc..147f11c 100644
--- a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ITBranchOfficeService.java
+++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ITBranchOfficeService.java
@@ -2,6 +2,7 @@
 
 import com.stylefeng.guns.modular.system.model.TBranchOffice;
 import com.baomidou.mybatisplus.service.IService;
+import org.springframework.ui.Model;
 
 /**
  * <p>
@@ -13,4 +14,10 @@
  */
 public interface ITBranchOfficeService extends IService<TBranchOffice> {
 
+    /**
+     * 跳转到详情
+     * @param tBranchOfficeId
+     * @param model
+     */
+    void tBranchOfficeDetail(Integer tBranchOfficeId, Model model);
 }
diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TAgentServiceImpl.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TAgentServiceImpl.java
index 584192f..79bbc1d 100644
--- a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TAgentServiceImpl.java
+++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TAgentServiceImpl.java
@@ -1,6 +1,7 @@
 package com.stylefeng.guns.modular.system.service.impl;
 
 import com.baomidou.mybatisplus.mapper.EntityWrapper;
+import com.stylefeng.guns.core.shiro.ShiroKit;
 import com.stylefeng.guns.core.util.DateUtil;
 import com.stylefeng.guns.modular.system.controller.resp.TAgentResp;
 import com.stylefeng.guns.modular.system.dao.*;
@@ -67,6 +68,10 @@
             Date endTime = DateUtil.getDate_str4(split[1]);
             wrapper.between("createTime",startTime,endTime);
         }
+        // 判断是否为代理商
+        if(Objects.requireNonNull(ShiroKit.getUser()).getRoleType() == 3){
+            wrapper.eq("id",ShiroKit.getUser().getObjectId());
+        }
         return wrapper;
     }
 
@@ -106,7 +111,7 @@
         }
         // 优惠券信息
         // 过滤代理商发放的优惠券
-        List<TCoupon> tCoupons = tCouponMapper.selectList(new EntityWrapper<TCoupon>().eq("agentId", tAgent.getId()));
+        List<TCoupon> tCoupons = tCouponMapper.selectList(new EntityWrapper<TCoupon>());
         model.addAttribute("issuedCoupon",tCoupons.size());
         // 司机信息
         // 司机数
diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TBranchOfficeServiceImpl.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TBranchOfficeServiceImpl.java
index 98aed9f..e873d51 100644
--- a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TBranchOfficeServiceImpl.java
+++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TBranchOfficeServiceImpl.java
@@ -1,10 +1,16 @@
 package com.stylefeng.guns.modular.system.service.impl;
 
+import com.stylefeng.guns.modular.system.dao.TCouponMapper;
+import com.stylefeng.guns.modular.system.dao.TOrderMapper;
+import com.stylefeng.guns.modular.system.dao.TSystemConfigMapper;
 import com.stylefeng.guns.modular.system.model.TBranchOffice;
 import com.stylefeng.guns.modular.system.dao.TBranchOfficeMapper;
+import com.stylefeng.guns.modular.system.model.TSystemConfig;
 import com.stylefeng.guns.modular.system.service.ITBranchOfficeService;
 import com.baomidou.mybatisplus.service.impl.ServiceImpl;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+import org.springframework.ui.Model;
 
 /**
  * <p>
@@ -17,4 +23,22 @@
 @Service
 public class TBranchOfficeServiceImpl extends ServiceImpl<TBranchOfficeMapper, TBranchOffice> implements ITBranchOfficeService {
 
+    @Autowired
+    private TBranchOfficeMapper tBranchOfficeMapper;
+
+    @Autowired
+    private TCouponMapper tCouponMapper;
+
+    @Autowired
+    private TOrderMapper tOrderMapper;
+
+    @Override
+    public void tBranchOfficeDetail(Integer tBranchOfficeId, Model model) {
+        // 分公司信息
+        TBranchOffice tBranchOffice = tBranchOfficeMapper.selectById(tBranchOfficeId);
+        model.addAttribute("principal",tBranchOffice.getPrincipal());
+        model.addAttribute("createTime",tBranchOffice.getCreateTime());
+        model.addAttribute("email",tBranchOffice.getEmail());
+        model.addAttribute("area",tBranchOffice.getProvinceName()+tBranchOffice.getCityName()+tBranchOffice.getDistrictName());
+    }
 }
diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TCancelOrderServiceImpl.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TCancelOrderServiceImpl.java
index ac11d5a..9366c42 100644
--- a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TCancelOrderServiceImpl.java
+++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TCancelOrderServiceImpl.java
@@ -1,5 +1,6 @@
 package com.stylefeng.guns.modular.system.service.impl;
 
+import com.stylefeng.guns.core.shiro.ShiroKit;
 import com.stylefeng.guns.modular.system.controller.resp.TOrderResp;
 import com.stylefeng.guns.modular.system.model.TCancelOrder;
 import com.stylefeng.guns.modular.system.dao.TCancelOrderMapper;
@@ -13,6 +14,7 @@
 
 import java.text.SimpleDateFormat;
 import java.util.List;
+import java.util.Objects;
 
 /**
  * <p>
@@ -40,7 +42,9 @@
             startTime = split[0];
             endTime = split[1];
         }
-        return tCancelOrderMapper.getCancelOrderList(startTime,endTime,code,source,userName,userPhone,state,driverName);
+        Integer roleType = Objects.requireNonNull(ShiroKit.getUser()).getRoleType();
+        Integer objectId = Objects.requireNonNull(ShiroKit.getUser()).getObjectId();
+        return tCancelOrderMapper.getCancelOrderList(startTime,endTime,code,source,userName,userPhone,state,driverName,roleType,objectId);
     }
 
     @Override
diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TDriverServiceImpl.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TDriverServiceImpl.java
index cf65d45..818891c 100644
--- a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TDriverServiceImpl.java
+++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TDriverServiceImpl.java
@@ -3,6 +3,7 @@
 import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.mapper.EntityWrapper;
 import com.stylefeng.guns.core.base.tips.SuccessTip;
+import com.stylefeng.guns.core.shiro.ShiroKit;
 import com.stylefeng.guns.core.util.DateUtil;
 import com.stylefeng.guns.modular.system.controller.resp.TDriverCommissionResp;
 import com.stylefeng.guns.modular.system.controller.resp.TDriverResp;
@@ -84,6 +85,15 @@
             wrapper.between("createTime",startTime,endTime);
         }
         wrapper.orderBy(true,"approvalStatus");
+        // 判断是否为代理商或者分公司
+        if(Objects.requireNonNull(ShiroKit.getUser()).getRoleType() == 2){
+            // 分公司
+            wrapper.eq("branchOfficeId",ShiroKit.getUser().getObjectId());
+        }
+        if(Objects.requireNonNull(ShiroKit.getUser()).getRoleType() == 3){
+            // 代理商
+            wrapper.eq("agentId",ShiroKit.getUser().getObjectId());
+        }
         return wrapper;
     }
 
@@ -331,6 +341,15 @@
             wrapper.like("name",name);
         }
         wrapper.orderBy(true,"approvalStatus");
+        // 判断是否为代理商或者分公司
+        if(Objects.requireNonNull(ShiroKit.getUser()).getRoleType() == 2){
+            // 分公司
+            wrapper.eq("branchOfficeId",ShiroKit.getUser().getObjectId());
+        }
+        if(Objects.requireNonNull(ShiroKit.getUser()).getRoleType() == 3){
+            // 代理商
+            wrapper.eq("agentId",ShiroKit.getUser().getObjectId());
+        }
         return wrapper;
     }
 
diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TEvaluateServiceImpl.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TEvaluateServiceImpl.java
index 7aaa6bd..d796a6c 100644
--- a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TEvaluateServiceImpl.java
+++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TEvaluateServiceImpl.java
@@ -1,5 +1,6 @@
 package com.stylefeng.guns.modular.system.service.impl;
 
+import com.stylefeng.guns.core.shiro.ShiroKit;
 import com.stylefeng.guns.modular.system.controller.resp.TEvaluateResp;
 import com.stylefeng.guns.modular.system.dao.*;
 import com.stylefeng.guns.modular.system.model.*;
@@ -13,6 +14,7 @@
 import java.text.SimpleDateFormat;
 import java.util.List;
 import java.util.Objects;
+import java.util.stream.Collectors;
 
 /**
  * <p>
@@ -47,7 +49,16 @@
             startTime = split[0];
             endTime = split[1];
         }
-        return tEvaluateMapper.selectPageList(startTime,endTime,userName,driverName,orderType,score);
+        List<TEvaluateResp> list = tEvaluateMapper.selectPageList(startTime, endTime, userName, driverName, orderType, score);
+        Integer roleType = Objects.requireNonNull(ShiroKit.getUser()).getRoleType();
+        Integer objectId = Objects.requireNonNull(ShiroKit.getUser()).getObjectId();
+        if(3 == roleType){
+            list = list.stream().filter(tEvaluate -> tEvaluate.getAgentId().equals(objectId)).collect(Collectors.toList());
+        }
+        if(2 == roleType){
+            list = list.stream().filter(tEvaluate -> tEvaluate.getBranchOfficeId().equals(objectId)).collect(Collectors.toList());
+        }
+        return list;
     }
 
     @Override
diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TOrderServiceImpl.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TOrderServiceImpl.java
index 8396d4b..5fee007 100644
--- a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TOrderServiceImpl.java
+++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TOrderServiceImpl.java
@@ -1,6 +1,7 @@
 package com.stylefeng.guns.modular.system.service.impl;
 
 import com.baomidou.mybatisplus.mapper.EntityWrapper;
+import com.stylefeng.guns.core.shiro.ShiroKit;
 import com.stylefeng.guns.core.util.DateUtil;
 import com.stylefeng.guns.modular.system.controller.resp.TOrderResp;
 import com.stylefeng.guns.modular.system.dao.TAppUserMapper;
@@ -54,7 +55,9 @@
             startTime = split[0];
             endTime = split[1];
         }
-        return tOrderMapper.getOrderList(startTime,endTime,code,source,userName,userPhone,state,driverName,isException);
+        Integer roleType = Objects.requireNonNull(ShiroKit.getUser()).getRoleType();
+        Integer objectId = Objects.requireNonNull(ShiroKit.getUser()).getObjectId();
+        return tOrderMapper.getOrderList(startTime,endTime,code,source,userName,userPhone,state,driverName,isException,roleType,objectId);
     }
 
     @Override
diff --git a/management/guns-admin/src/main/webapp/WEB-INF/view/system/tBranchOffice/tBranchOffice.html b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tBranchOffice/tBranchOffice.html
index 532cb64..c6ae61e 100644
--- a/management/guns-admin/src/main/webapp/WEB-INF/view/system/tBranchOffice/tBranchOffice.html
+++ b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tBranchOffice/tBranchOffice.html
@@ -9,24 +9,58 @@
                 <div class="row row-lg">
                     <div class="col-sm-12">
                         <div class="row">
-                            <div class="col-sm-3">
-                                <#NameCon id="condition" name="名称" />
+                            <div class="col-sm-2">
+                                <#NameCon id="branchOfficeName" name="分公司名称" />
                             </div>
-                            <div class="col-sm-3">
+                            <div class="col-sm-2">
+                                <#NameCon id="principal" name="负责人名称" />
+                            </div>
+                            <div class="col-sm-2">
+                                <#NameCon id="principalPhone" name="负责人电话" />
+                            </div>
+                            <!--<div class="col-sm-2">
+                                <#NameCon id="condition" name="管理人名称" />
+                            </div>
+                            <div class="col-sm-2">
+                                <#NameCon id="condition" name="管理人电话" />
+                            </div>-->
+                            <div class="col-sm-2">
+                                <select class="input-group" id="operatingBusiness" style="width: 180px;height: 33px" name="operatingBusiness">
+                                    <option value="">选择经营业务</option>
+                                    <option value="1">司机代驾</option>
+                                </select>
+                            </div>
+                            <div class="col-sm-2">
+                                <select class="input-group" id="status" style="width: 180px;height: 33px" name="status">
+                                    <option value="">选择状态</option>
+                                    <option value="1">正常</option>
+                                    <option value="2">冻结</option>
+                                    <option value="3">已删除</option>
+                                </select>
+                            </div>
+                            <div class="col-sm-2">
                                 <#button name="搜索" icon="fa-search" clickFun="TBranchOffice.search()"/>
+                                <#button name="重置" icon="fa-trash" clickFun="TBranchOffice.resetSearch()" space="true"/>
+                            </div>
+                            <div class="col-sm-12">
+                                @if(shiro.hasPermission("/tBranchOffice/add")){
+                                <#button name="添加" icon="fa-plus" clickFun="TBranchOffice.openAddTBranchOffice()"/>
+                                @}
+                                @if(shiro.hasPermission("/tBranchOffice/update")){
+                                <#button name="编辑" icon="fa-edit" clickFun="TBranchOffice.openTBranchOfficeDetail()" space="true"/>
+                                @}
+                                <#button name="冻结" icon="fa-edit" clickFun="TBranchOffice.stop()" space="true"/>
+                                <#button name="启动" icon="fa-edit" clickFun="TBranchOffice.start()" space="true"/>
                             </div>
                         </div>
-                        <div class="hidden-xs" id="TBranchOfficeTableToolbar" role="group">
+                        <!--<div class="hidden-xs" id="TBranchOfficeTableToolbar" role="group">
                             @if(shiro.hasPermission("/tBranchOffice/add")){
                                 <#button name="添加" icon="fa-plus" clickFun="TBranchOffice.openAddTBranchOffice()"/>
                             @}
                             @if(shiro.hasPermission("/tBranchOffice/update")){
                                 <#button name="修改" icon="fa-edit" clickFun="TBranchOffice.openTBranchOfficeDetail()" space="true"/>
                             @}
-                            @if(shiro.hasPermission("/tBranchOffice/delete")){
-                                <#button name="删除" icon="fa-remove" clickFun="TBranchOffice.delete()" space="true"/>
-                            @}
-                        </div>
+                        </div>-->
                         <#table id="TBranchOfficeTable"/>
                     </div>
                 </div>
diff --git a/management/guns-admin/src/main/webapp/WEB-INF/view/system/tBranchOffice/tBranchOfficeDetail.html b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tBranchOffice/tBranchOfficeDetail.html
new file mode 100644
index 0000000..ddd0c31
--- /dev/null
+++ b/management/guns-admin/src/main/webapp/WEB-INF/view/system/tBranchOffice/tBranchOfficeDetail.html
@@ -0,0 +1,113 @@
+@layout("/common/_container.html"){
+<div class="row">
+    <div class="col-sm-12">
+        <div class="ibox float-e-margins">
+            <div class="ibox-title">
+                <h5>管理</h5>
+            </div>
+            <div class="ibox-content">
+                <div class="row row-lg">
+                    <div class="col-sm-12">
+                        <hr/>
+                        <div class="initialLevel col-sm-12 control-label form-group"  >
+                            <div style="background-color: gray;height: 35px;line-height: 35px">
+                                <label style="color: #0C0C0C">分公司资料</label>
+                            </div>
+                        </div>
+                        <hr/>
+
+                        <div class="initialLevel col-sm-12 control-label form-group"  >
+                            <div class="initialLevel col-sm-3 control-label form-group"  >
+                                <label class="control-label" >负责人姓名:</label>
+                                <label>${principal}</label>
+                            </div>
+                            <div class="initialLevel col-sm-2 control-label form-group" >
+                                <label class="control-label">添加时间:</label>
+                                <label>${createTime}</label>
+                            </div>
+                        </div>
+
+                        <div class="initialLevel col-sm-12 control-label form-group"  >
+                            <div class="initialLevel col-sm-3 control-label form-group"  >
+                                <label class="control-label" >邮箱:</label>
+                                <label>${principal}</label>
+                            </div>
+                            <div class="initialLevel col-sm-2 control-label form-group" >
+                                <label class="control-label">抽成规则:</label>
+                                <label>抽成,每笔订单满</label>
+                                <label>${num2}</label>
+                                <label>元/单,抽取</label>
+                                <label>${num3}</label>
+                                <label>元</label>
+                            </div>
+                        </div>
+
+                        <div class="initialLevel col-sm-12 control-label form-group"  >
+                            <div class="initialLevel col-sm-2 control-label form-group" >
+                                <label class="control-label">代理区域:</label>
+                                <label>${principal}</label>
+                            </div>
+                        </div>
+
+                        <hr/>
+                        <div class="initialLevel col-sm-12 control-label form-group"  >
+                            <div style="background-color: gray;height: 35px;line-height: 35px">
+                                <label style="color: #0C0C0C">基本信息</label>
+                            </div>
+                        </div>
+                        <hr/>
+
+                        <div class="initialLevel col-sm-12 control-label form-group"  >
+                            <div class="initialLevel col-sm-3 control-label form-group"  >
+                                <label class="control-label" >统计时间:</label>
+                                <span>${principal}</span>
+                            </div>
+                        </div>
+
+                        <div class="initialLevel col-sm-12 control-label form-group"  >
+                            <div class="initialLevel col-sm-3 control-label form-group"  >
+                                <label class="control-label" >累计订单量:</label>
+                                <label>${principal}</label>单
+                            </div>
+                            <div class="initialLevel col-sm-2 control-label form-group" >
+                                <label class="control-label">累计优惠券金额:</label>
+                                <label>${principal}</label>元
+                            </div>
+                        </div>
+
+                        <div class="initialLevel col-sm-12 control-label form-group"  >
+                            <div class="initialLevel col-sm-3 control-label form-group"  >
+                                <label class="control-label" >有效订单:</label>
+                                <label>${principal}</label>单
+                            </div>
+                            <div class="initialLevel col-sm-2 control-label form-group" >
+                                <label class="control-label">累计优惠券金额:</label>
+                                <label>${principal}</label>元
+                            </div>
+                        </div>
+                        <div class="initialLevel col-sm-12 control-label form-group"  >
+                            <div class="initialLevel col-sm-3 control-label form-group"  >
+                                <label class="control-label" >已发放优惠券:</label>
+                                <label>${principal}</label>张
+                            </div>
+                            <div class="initialLevel col-sm-2 control-label form-group" >
+                                <label class="control-label">司机数量:</label>
+                                <label>${principal}</label>人
+                            </div>
+                        </div>
+
+                    </div>
+                </div>
+            </div>
+        </div>
+    </div>
+</div>
+<script src="${ctxPath}/static/modular/system/tAgent/tAgent.js"></script>
+<script type="text/javascript">
+    laydate.render({
+        elem: '#createTime',
+        type: 'date',
+        range: true
+    });
+</script>
+@}
diff --git a/management/guns-admin/src/main/webapp/static/modular/system/tBranchOffice/tBranchOffice.js b/management/guns-admin/src/main/webapp/static/modular/system/tBranchOffice/tBranchOffice.js
index 5914920..b6d9f0a 100644
--- a/management/guns-admin/src/main/webapp/static/modular/system/tBranchOffice/tBranchOffice.js
+++ b/management/guns-admin/src/main/webapp/static/modular/system/tBranchOffice/tBranchOffice.js
@@ -14,19 +14,52 @@
 TBranchOffice.initColumn = function () {
     return [
         {field: 'selectItem', radio: true},
-            {title: '主键', field: 'id', visible: true, align: 'center', valign: 'middle'},
-            {title: '代理商id', field: 'agentId', visible: true, align: 'center', valign: 'middle'},
-            {title: '负责人姓名', field: 'principal', visible: true, align: 'center', valign: 'middle'},
-            {title: '负责人电话', field: 'principalPhone', visible: true, align: 'center', valign: 'middle'},
-            {title: '邮箱', field: 'email', visible: true, align: 'center', valign: 'middle'},
-            {title: '代理区域省编号', field: 'provinceCode', visible: true, align: 'center', valign: 'middle'},
-            {title: '代理区域省名称', field: 'provinceName', visible: true, align: 'center', valign: 'middle'},
-            {title: '代理区域市编号', field: 'cityCode', visible: true, align: 'center', valign: 'middle'},
-            {title: '代理区域市名称', field: 'cityName', visible: true, align: 'center', valign: 'middle'},
-            {title: '代理区域区编号', field: 'districtCode', visible: true, align: 'center', valign: 'middle'},
-            {title: '代理区域区名称', field: 'districtName', visible: true, align: 'center', valign: 'middle'},
-            {title: '状态(1=正常,2=冻结,3=删除)', field: 'status', visible: true, align: 'center', valign: 'middle'},
-            {title: '添加时间', field: 'createTime', visible: true, align: 'center', valign: 'middle'}
+            {title: '主键', field: 'id', visible: false, align: 'center', valign: 'middle'},
+        {title: '代理商id', field: 'agentId', visible: false, align: 'center', valign: 'middle'},
+        {title: '添加时间', field: 'createTime', visible: true, align: 'center', valign: 'middle'},
+        {title: '分公司名称', field: 'branchOfficeName', visible: true, align: 'center', valign: 'middle'},
+        {title: '负责人姓名', field: 'principal', visible: true, align: 'center', valign: 'middle'},
+        {title: '负责人电话', field: 'principalPhone', visible: true, align: 'center', valign: 'middle'},
+        {title: '邮箱', field: 'email', visible: false, align: 'center', valign: 'middle'},
+        {title: '代理区域省编号', field: 'provinceCode', visible: false, align: 'center', valign: 'middle'},
+        {title: '代理区域省名称', field: 'provinceName', visible: false, align: 'center', valign: 'middle'},
+        {title: '代理区域市编号', field: 'cityCode', visible: false, align: 'center', valign: 'middle'},
+        {title: '代理区域市名称', field: 'cityName', visible: false, align: 'center', valign: 'middle'},
+        {title: '代理区域区编号', field: 'districtCode', visible: false, align: 'center', valign: 'middle'},
+        {title: '代理区域区名称', field: 'districtName', visible: false, align: 'center', valign: 'middle'},
+
+        {title: '订单数量', field: 'principalPhone', visible: true, align: 'center', valign: 'middle'},
+        {title: '有效订单', field: 'principalPhone', visible: true, align: 'center', valign: 'middle'},
+        {title: '已发放优惠券', field: 'principalPhone', visible: true, align: 'center', valign: 'middle'},
+        {title: '已使用优惠券', field: 'principalPhone', visible: true, align: 'center', valign: 'middle'},
+        {title: '累计优惠券金额', field: 'principalPhone', visible: true, align: 'center', valign: 'middle'},
+
+        {title: '经营业务', field: 'operatingBusiness', visible: true, align: 'center', valign: 'middle',
+            formatter: function (value, row) {
+                if (row.operatingBusiness === 1){
+                    return '<span>司机代驾</span>'
+                }
+            }
+        },
+
+        {title: '司机数', field: 'driverCount', visible: true, align: 'center', valign: 'middle'},
+        {title: '状态', field: 'status', visible: true, align: 'center', valign: 'middle',
+            formatter: function (value, row) {
+                if (row.status === 1){
+                    return '<span>正常</span>'
+                }else if(row.status === 2){
+                    return '<span>冻结</span>'
+                }else if (row.status === 3){
+                    return '<span>已删除</span>'
+                }
+            }
+        },
+        {title: '操作', visible: true, align: 'center', valign: 'middle',width:150,
+            formatter: function (value, row) {
+                return '<a href="#" onclick="TBranchOffice.searchTBranchOfficeDetail('+row.id+')" style="color:blue">详情</a>' +'&nbsp;' +
+                    '<a href="#" onclick="TBranchOffice.delete('+row.id+')" style="color:red">删除</a>'
+            }
+        }
     ];
 };
 
@@ -75,19 +108,79 @@
         this.layerIndex = index;
     }
 };
+/**
+ * 打开查看详情(使用中)
+ */
+TBranchOffice.searchTBranchOfficeDetail = function (id) {
+    var index = layer.open({
+        type: 2,
+        title: '详情',
+        area: ['100%', '100%'], //宽高
+        fix: false, //不固定
+        maxmin: true,
+        content: Feng.ctxPath + '/tBranchOffice/tBranchOfficeDetail?tBranchOfficeId=' + id
+    });
+    this.layerIndex = index;
+};
 
 /**
  * 删除
  */
-TBranchOffice.delete = function () {
-    if (this.check()) {
-        var ajax = new $ax(Feng.ctxPath + "/tBranchOffice/delete", function (data) {
-            Feng.success("删除成功!");
-            TBranchOffice.table.refresh();
+TBranchOffice.delete = function (id) {
+    var ajax = new $ax(Feng.ctxPath + "/tBranchOffice/delete", function (data) {
+        Feng.success("删除成功!");
+        TBranchOffice.table.refresh();
+    }, function (data) {
+        Feng.error("删除失败!" + data.responseJSON.message + "!");
+    });
+    ajax.set("tBranchOfficeId",id);
+    ajax.start();
+};
+
+/**
+ * 提交冻结
+ */
+TBranchOffice.stop = function () {
+    if(this.check()){
+        if(2 == this.seItem.status){
+            Feng.error("该条数据已冻结!");
+            return;
+        }
+        var ajax = new $ax(Feng.ctxPath + "/tBranchOffice/stop?id="+this.seItem.id, function (data) {
+            if(500 == data.code){
+                Feng.error(data.message);
+                return;
+            }else {
+                Feng.success("冻结成功!");
+                TBranchOffice.table.refresh();
+            }
         }, function (data) {
-            Feng.error("删除失败!" + data.responseJSON.message + "!");
+            Feng.error("冻结失败!" + data.message + "!");
         });
-        ajax.set("tBranchOfficeId",this.seItem.id);
+        ajax.start();
+    }
+};
+
+/**
+ * 提交启用
+ */
+TBranchOffice.start = function () {
+    if(this.check()){
+        if(1 == this.seItem.status){
+            Feng.error("该条数据已启用!");
+            return;
+        }
+        var ajax = new $ax(Feng.ctxPath + "/tBranchOffice/start?id="+this.seItem.id, function (data) {
+            if(500 == data.code){
+                Feng.error(data.message);
+                return;
+            }else {
+                Feng.success("启用成功!");
+                TBranchOffice.table.refresh();
+            }
+        }, function (data) {
+            Feng.error("启用失败!" + data.message + "!");
+        });
         ajax.start();
     }
 };
@@ -97,10 +190,26 @@
  */
 TBranchOffice.search = function () {
     var queryData = {};
-    queryData['condition'] = $("#condition").val();
+    queryData['branchOfficeName'] = $("#branchOfficeName").val();
+    queryData['principal'] = $("#principal").val();
+    queryData['principalPhone'] = $("#principalPhone").val();
+    queryData['operatingBusiness'] = $("#operatingBusiness").val();
+    queryData['status'] = $("#status").val();
     TBranchOffice.table.refresh({query: queryData});
 };
 
+/**
+ * 重置
+ */
+TBranchOffice.resetSearch = function (){
+    $("#branchOfficeName").val('');
+    $("#principal").val('');
+    $("#principalPhone").val('');
+    $("#operatingBusiness").val('');
+    $("#status").val('');
+    TBranchOffice.search();
+}
+
 $(function () {
     var defaultColunms = TBranchOffice.initColumn();
     var table = new BSTable(TBranchOffice.id, "/tBranchOffice/list", defaultColunms);
diff --git a/management/guns-admin/src/main/webapp/static/modular/system/tBranchOffice/tBranchOffice_info.js b/management/guns-admin/src/main/webapp/static/modular/system/tBranchOffice/tBranchOffice_info.js
index 86c4666..41f2086 100644
--- a/management/guns-admin/src/main/webapp/static/modular/system/tBranchOffice/tBranchOffice_info.js
+++ b/management/guns-admin/src/main/webapp/static/modular/system/tBranchOffice/tBranchOffice_info.js
@@ -56,6 +56,8 @@
     .set('cityName')
     .set('districtCode')
     .set('districtName')
+    .set('branchOfficeName')
+    .set('operatingBusiness')
     .set('status')
     .set('createTime');
 }

--
Gitblit v1.7.1