zangguocen преди 3 години
родител
ревизия
da4378bd53

+ 6 - 1
yijia-admin/src/main/java/com/yijia/web/controller/system/SysDeptController.java

@@ -174,13 +174,18 @@ public class SysDeptController extends BaseController
     @GetMapping("/searchDeptList")
     public AjaxResult searchDeptList(SysDept dept)
     {
+        LoginUser currentUser = SecurityUtils.getLoginUser();
         List<SysDept> depts = new ArrayList<>();
         if(dept!=null&& dept.getDeptId()!=null ){
             SysDept sysDept =new SysDept();
             sysDept.setParentId(dept.getDeptId());
             depts = deptService.searchDeptList(sysDept);
         }else{
-            logger.info("请输入集团信息");
+            if(currentUser.getUser().getDept().getJiBie()!=null && currentUser.getUser().getDept().getJiBie()==1){
+                SysDept sysDept =new SysDept();
+                sysDept.setParentId(currentUser.getUser().getDeptId());
+                depts = deptService.searchDeptList(sysDept);
+            }
         }
         return AjaxResult.success(depts);
     }

+ 2 - 4
yijia-station/src/main/java/com/yijia/station/controller/NoOilOrderController.java

@@ -33,16 +33,14 @@ public class NoOilOrderController  extends BaseController {
     @GetMapping("/list")
     public TableDataInfo list(PayOrder payOrder)
     {
-        LoginUser currentUser = SecurityUtils.getLoginUser();
-        SysDept dept =new SysDept();
-        dept.setDeptId(currentUser.getUser().getDeptId());
-        List<String> list = deptService.selectDeptId(dept);
+        List<String> list = deptService.levelDeptList(payOrder.getLevelId());
         if(list!=null && list.size()>0){
             payOrder.setStationIdList(list);
             payOrder.setStationId(null);
         }
         startPage();
         payOrder.setStatus("1");
+        payOrder.setOrderType("2");
         List<PayOrder> payOrderlist = payOrderService.selectPayOrderList(payOrder);
         return getDataTable(payOrderlist);
     }

+ 79 - 145
yijia-station/src/main/java/com/yijia/station/controller/PayOrderController.java

@@ -1,5 +1,6 @@
 package com.yijia.station.controller;
 
+import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.List;
 
@@ -50,15 +51,24 @@ public class PayOrderController extends BaseController
     @GetMapping("/list")
     public TableDataInfo list(PayOrder payOrder)
     {
-        if(payOrder.getStationId() ==null){
-            LoginUser currentUser = SecurityUtils.getLoginUser();
-            SysDept dept =new SysDept();
-            dept.setDeptId(currentUser.getUser().getDeptId());
-            List<String> list = deptService.selectDeptId(dept);
-            if(list!=null && list.size()>0){
-                payOrder.setStationIdList(list);
-                payOrder.setStationId(null);
-            }
+        List<String> list = deptService.levelDeptList(payOrder.getLevelId());
+        if(list!=null && list.size()>0){
+            payOrder.setStationIdList(list);
+            payOrder.setStationId(null);
+        }
+        startPage();
+        payOrder.setStatus("1");
+        List<PayOrder> payOrderList = payOrderService.selectPayOrderList(payOrder);
+        return getDataTable(payOrderList);
+    }
+
+    @GetMapping("/selectPayOrderList")
+    public TableDataInfo selectPayOrderList(PayOrder payOrder)
+    {
+        List<String> list = deptService.levelDeptList(payOrder.getLevelId());
+        if(list!=null && list.size()>0){
+            payOrder.setStationIdList(list);
+            payOrder.setStationId(null);
         }
         startPage();
         payOrder.setStatus("1");
@@ -71,15 +81,10 @@ public class PayOrderController extends BaseController
     @GetMapping("/listInfo")
     public TableDataInfo listInfo(PayOrder payOrder)
     {
-        if(payOrder.getStationId() ==null) {
-            LoginUser currentUser = SecurityUtils.getLoginUser();
-            SysDept dept = new SysDept();
-            dept.setDeptId(currentUser.getUser().getDeptId());
-            List<String> list = deptService.selectDeptId(dept);
-            if (list != null && list.size() > 0) {
-                payOrder.setStationIdList(list);
-                payOrder.setStationId(null);
-            }
+        List<String> list = deptService.levelDeptList(payOrder.getLevelId());
+        if(list!=null && list.size()>0){
+            payOrder.setStationIdList(list);
+            payOrder.setStationId(null);
         }
         payOrder.setOrderType("1");
         payOrder.setStatus("1");
@@ -95,15 +100,10 @@ public class PayOrderController extends BaseController
     @GetMapping("/selectDaySources")
     public AjaxResult selectDaySources(PayOrder payOrder)
     {
-        if(payOrder.getStationId() ==null) {
-            LoginUser currentUser = SecurityUtils.getLoginUser();
-            SysDept dept = new SysDept();
-            dept.setDeptId(currentUser.getUser().getDeptId());
-            List<String> list = deptService.selectDeptId(dept);
-            if (list != null && list.size() > 0) {
-                payOrder.setStationIdList(list);
-                payOrder.setStationId(null);
-            }
+        List<String> list = deptService.levelDeptList(payOrder.getLevelId());
+        if(list!=null && list.size()>0){
+            payOrder.setStationIdList(list);
+            payOrder.setStationId(null);
         }
         payOrder.setStatus("1");
         payOrder.setOrderType("1");
@@ -119,15 +119,10 @@ public class PayOrderController extends BaseController
     @GetMapping("/selectOilTypeSources")
     public TableDataInfo selectOilTypeSources(PayOrder payOrder)
     {
-        if(payOrder.getStationId() ==null) {
-            LoginUser currentUser = SecurityUtils.getLoginUser();
-            SysDept dept =new SysDept();
-            dept.setDeptId(currentUser.getUser().getDeptId());
-            List<String> list = deptService.selectDeptId(dept);
-            if(list!=null && list.size()>0){
-                payOrder.setStationIdList(list);
-                payOrder.setStationId(null);
-            }
+        List<String> list = deptService.levelDeptList(payOrder.getLevelId());
+        if(list!=null && list.size()>0){
+            payOrder.setStationIdList(list);
+            payOrder.setStationId(null);
         }
         payOrder.setStatus("1");
         payOrder.setOrderType("1");
@@ -143,15 +138,10 @@ public class PayOrderController extends BaseController
     @GetMapping("/dayOilTypeSources")
     public TableDataInfo dayOilTypeSources(PayOrder payOrder)
     {
-        if(payOrder.getStationId() ==null) {
-            LoginUser currentUser = SecurityUtils.getLoginUser();
-            SysDept dept =new SysDept();
-            dept.setDeptId(currentUser.getUser().getDeptId());
-            List<String> list = deptService.selectDeptId(dept);
-            if(list!=null && list.size()>0){
-                payOrder.setStationIdList(list);
-                payOrder.setStationId(null);
-            }
+        List<String> list = deptService.levelDeptList(payOrder.getLevelId());
+        if(list!=null && list.size()>0){
+            payOrder.setStationIdList(list);
+            payOrder.setStationId(null);
         }
         payOrder.setStatus("1");
         payOrder.setOrderType("1");
@@ -166,15 +156,10 @@ public class PayOrderController extends BaseController
     @GetMapping("/selectOverViewData")
     public AjaxResult selectOverViewData(PayOrder payOrder)
     {
-        if(payOrder.getStationId() ==null) {
-            LoginUser currentUser = SecurityUtils.getLoginUser();
-            SysDept dept =new SysDept();
-            dept.setDeptId(currentUser.getUser().getDeptId());
-            List<String> list = deptService.selectDeptId(dept);
-            if(list!=null && list.size()>0){
-                payOrder.setStationIdList(list);
-                payOrder.setStationId(null);
-            }
+        List<String> list = deptService.levelDeptList(payOrder.getLevelId());
+        if(list!=null && list.size()>0){
+            payOrder.setStationIdList(list);
+            payOrder.setStationId(null);
         }
         payOrder.setStatus("1");
         payOrder.setOrderType("1");
@@ -188,15 +173,10 @@ public class PayOrderController extends BaseController
     @GetMapping("/selectDayReportDetail")
     public TableDataInfo selectDayReportDetail(PayOrder payOrder)
     {
-        if(payOrder.getStationId() ==null) {
-            LoginUser currentUser = SecurityUtils.getLoginUser();
-            SysDept dept =new SysDept();
-            dept.setDeptId(currentUser.getUser().getDeptId());
-            List<String> list = deptService.selectDeptId(dept);
-            if(list!=null && list.size()>0){
-                payOrder.setStationIdList(list);
-                payOrder.setStationId(null);
-            }
+        List<String> list = deptService.levelDeptList(payOrder.getLevelId());
+        if(list!=null && list.size()>0){
+            payOrder.setStationIdList(list);
+            payOrder.setStationId(null);
         }
         //默认当前登陆人的ID 5冯总油站
         startPage();
@@ -214,15 +194,10 @@ public class PayOrderController extends BaseController
     @GetMapping("/selectDayReport")
     public TableDataInfo selectDayReport(PayOrder payOrder)
     {
-        if(payOrder.getStationId() ==null) {
-            LoginUser currentUser = SecurityUtils.getLoginUser();
-            SysDept dept = new SysDept();
-            dept.setDeptId(currentUser.getUser().getDeptId());
-            List<String> list = deptService.selectDeptId(dept);
-            if (list != null && list.size() > 0) {
-                payOrder.setStationIdList(list);
-                payOrder.setStationId(null);
-            }
+        List<String> list = deptService.levelDeptList(payOrder.getLevelId());
+        if(list!=null && list.size()>0){
+            payOrder.setStationIdList(list);
+            payOrder.setStationId(null);
         }
         payOrder.setStatus("1");
         payOrder.setOrderType("1");
@@ -237,21 +212,15 @@ public class PayOrderController extends BaseController
     @GetMapping("/export")
     public AjaxResult export(PayOrder payOrder)
     {
-        if(payOrder.getStationId() ==null) {
-            LoginUser currentUser = SecurityUtils.getLoginUser();
-            SysDept dept = new SysDept();
-            dept.setDeptId(currentUser.getUser().getDeptId());
-            List<String> list = deptService.selectDeptId(dept);
-            if (list != null && list.size() > 0) {
-                payOrder.setStationIdList(list);
-                payOrder.setStationId(null);
-            }
+        List<String> list = deptService.levelDeptList(payOrder.getLevelId());
+        if(list!=null && list.size()>0){
+            payOrder.setStationIdList(list);
+            payOrder.setStationId(null);
         }
         payOrder.setStatus("1");
         payOrder.setOrderType("1");
         List<PayOrder> payOrderList = payOrderService.selectPayOrderExport(payOrder);
         ExcelUtil<PayOrder> util = new ExcelUtil<PayOrder>(PayOrder.class);
-
         return util.exportExcel(payOrderList, "order");
     }
 
@@ -273,15 +242,10 @@ public class PayOrderController extends BaseController
     @GetMapping("/listQydata92")
     public TableDataInfo listQydata92(PayOrder payOrder)
     {
-        if(payOrder.getStationId() ==null) {
-            LoginUser currentUser = SecurityUtils.getLoginUser();
-            SysDept dept =new SysDept();
-            dept.setDeptId(currentUser.getUser().getDeptId());
-            List<String> list = deptService.selectDeptId(dept);
-            if(list!=null && list.size()>0){
-                payOrder.setStationIdList(list);
-                payOrder.setStationId(null);
-            }
+        List<String> list = deptService.levelDeptList(payOrder.getLevelId());
+        if(list!=null && list.size()>0){
+            payOrder.setStationIdList(list);
+            payOrder.setStationId(null);
         }
         payOrder.setOilName("92#");
         payOrder.setStatus("1");
@@ -297,15 +261,10 @@ public class PayOrderController extends BaseController
     @GetMapping("/listQydata95")
     public TableDataInfo listQydata95(PayOrder payOrder)
     {
-        if(payOrder.getStationId() ==null) {
-            LoginUser currentUser = SecurityUtils.getLoginUser();
-            SysDept dept = new SysDept();
-            dept.setDeptId(currentUser.getUser().getDeptId());
-            List<String> list = deptService.selectDeptId(dept);
-            if (list != null && list.size() > 0) {
-                payOrder.setStationIdList(list);
-                payOrder.setStationId(null);
-            }
+        List<String> list = deptService.levelDeptList(payOrder.getLevelId());
+        if(list!=null && list.size()>0){
+            payOrder.setStationIdList(list);
+            payOrder.setStationId(null);
         }
         payOrder.setOilName("95#");
         payOrder.setStatus("1");
@@ -321,15 +280,10 @@ public class PayOrderController extends BaseController
     @GetMapping("/listQydata98")
     public TableDataInfo listQydata98(PayOrder payOrder)
     {
-        if(payOrder.getStationId() ==null) {
-            LoginUser currentUser = SecurityUtils.getLoginUser();
-            SysDept dept = new SysDept();
-            dept.setDeptId(currentUser.getUser().getDeptId());
-            List<String> list = deptService.selectDeptId(dept);
-            if (list != null && list.size() > 0) {
-                payOrder.setStationIdList(list);
-                payOrder.setStationId(null);
-            }
+        List<String> list = deptService.levelDeptList(payOrder.getLevelId());
+        if(list!=null && list.size()>0){
+            payOrder.setStationIdList(list);
+            payOrder.setStationId(null);
         }
         payOrder.setOilName("98#");
         payOrder.setStatus("1");
@@ -346,15 +300,10 @@ public class PayOrderController extends BaseController
     @GetMapping("/listQydata20")
     public TableDataInfo listQydata20(PayOrder payOrder)
     {
-        if(payOrder.getStationId() ==null) {
-            LoginUser currentUser = SecurityUtils.getLoginUser();
-            SysDept dept = new SysDept();
-            dept.setDeptId(currentUser.getUser().getDeptId());
-            List<String> list = deptService.selectDeptId(dept);
-            if (list != null && list.size() > 0) {
-                payOrder.setStationIdList(list);
-                payOrder.setStationId(null);
-            }
+        List<String> list = deptService.levelDeptList(payOrder.getLevelId());
+        if(list!=null && list.size()>0){
+            payOrder.setStationIdList(list);
+            payOrder.setStationId(null);
         }
         payOrder.setOilName("-20#");
         payOrder.setStatus("1");
@@ -370,15 +319,10 @@ public class PayOrderController extends BaseController
     @GetMapping("/listQydata0")
     public TableDataInfo listQydata0(PayOrder payOrder)
     {
-        if(payOrder.getStationId() ==null) {
-            LoginUser currentUser = SecurityUtils.getLoginUser();
-            SysDept dept = new SysDept();
-            dept.setDeptId(currentUser.getUser().getDeptId());
-            List<String> list = deptService.selectDeptId(dept);
-            if (list != null && list.size() > 0) {
-                payOrder.setStationIdList(list);
-                payOrder.setStationId(null);
-            }
+        List<String> list = deptService.levelDeptList(payOrder.getLevelId());
+        if(list!=null && list.size()>0){
+            payOrder.setStationIdList(list);
+            payOrder.setStationId(null);
         }
         payOrder.setOilName("0#");
         payOrder.setStatus("1");
@@ -394,15 +338,10 @@ public class PayOrderController extends BaseController
     @GetMapping("/listQydata10")
     public TableDataInfo listQydata10(PayOrder payOrder)
     {
-        if(payOrder.getStationId() ==null) {
-            LoginUser currentUser = SecurityUtils.getLoginUser();
-            SysDept dept = new SysDept();
-            dept.setDeptId(currentUser.getUser().getDeptId());
-            List<String> list = deptService.selectDeptId(dept);
-            if (list != null && list.size() > 0) {
-                payOrder.setStationIdList(list);
-                payOrder.setStationId(null);
-            }
+        List<String> list = deptService.levelDeptList(payOrder.getLevelId());
+        if(list!=null && list.size()>0){
+            payOrder.setStationIdList(list);
+            payOrder.setStationId(null);
         }
         payOrder.setOilName("-10#");
         payOrder.setStatus("1");
@@ -418,15 +357,10 @@ public class PayOrderController extends BaseController
     @GetMapping("/listXdata")
     public TableDataInfo listXdata(PayOrder payOrder)
     {
-        if(payOrder.getStationId() ==null) {
-            LoginUser currentUser = SecurityUtils.getLoginUser();
-            SysDept dept = new SysDept();
-            dept.setDeptId(currentUser.getUser().getDeptId());
-            List<String> list = deptService.selectDeptId(dept);
-            if (list != null && list.size() > 0) {
-                payOrder.setStationIdList(list);
-                payOrder.setStationId(null);
-            }
+        List<String> list = deptService.levelDeptList(payOrder.getLevelId());
+        if(list!=null && list.size()>0){
+            payOrder.setStationIdList(list);
+            payOrder.setStationId(null);
         }
         payOrder.setStatus("1");
         payOrder.setOrderType("1");

+ 3 - 9
yijia-station/src/main/java/com/yijia/station/controller/StationClassesSummaryController.java

@@ -26,7 +26,7 @@ import com.yijia.common.core.page.TableDataInfo;
 
 /**
  * 班结汇总Controller
- * 
+ *
  * @author yijia
  * @date 2020-12-28
  */
@@ -44,10 +44,7 @@ public class StationClassesSummaryController extends BaseController
     @GetMapping("/list")
     public TableDataInfo list(StationClassesSummary stationClassesSummary)
     {
-        LoginUser currentUser = SecurityUtils.getLoginUser();
-        SysDept dept =new SysDept();
-        dept.setDeptId(currentUser.getUser().getDeptId());
-        List<String> list = deptService.selectDeptId(dept);
+        List<String> list = deptService.levelDeptList(stationClassesSummary.getLevelId());
         if(list!=null && list.size()>0){
             stationClassesSummary.setStationIdList(list);
             stationClassesSummary.setStationId(null);
@@ -64,10 +61,7 @@ public class StationClassesSummaryController extends BaseController
     @GetMapping("/export")
     public AjaxResult export(StationClassesSummary stationClassesSummary)
     {
-        LoginUser currentUser = SecurityUtils.getLoginUser();
-        SysDept dept =new SysDept();
-        dept.setDeptId(currentUser.getUser().getDeptId());
-        List<String> list = deptService.selectDeptId(dept);
+        List<String> list = deptService.levelDeptList(stationClassesSummary.getLevelId());
         if(list!=null && list.size()>0){
             stationClassesSummary.setStationIdList(list);
             stationClassesSummary.setStationId(null);

+ 28 - 0
yijia-station/src/main/java/com/yijia/station/domain/DeptInfoDemo.java

@@ -0,0 +1,28 @@
+package com.yijia.station.domain;
+
+import com.yijia.common.core.domain.BaseEntity;
+
+public class DeptInfoDemo extends BaseEntity {
+    private static final long serialVersionUID = 1L;
+    /** 部门ID */
+    private Long deptId;
+
+    /** 部门名称 */
+    private String deptName;
+
+    public Long getDeptId() {
+        return deptId;
+    }
+
+    public void setDeptId(Long deptId) {
+        this.deptId = deptId;
+    }
+
+    public String getDeptName() {
+        return deptName;
+    }
+
+    public void setDeptName(String deptName) {
+        this.deptName = deptName;
+    }
+}

+ 1 - 1
yijia-station/src/main/resources/mapper/station/PayOrderMapper.xml

@@ -183,7 +183,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <include refid="selectPayOrderVo"/>
         where order_id = #{orderId}
     </select>
-    <select id="selectDaySources" parameterType="Long" resultMap="PayOrderResult">
+    <select id="selectDaySources" parameterType="PayOrder" resultMap="PayOrderResult">
         SELECT SUM(amt) as amt,sum(order_liters) as order_liters
         from pay_order
         <where>

+ 13 - 0
yijia-system/src/main/java/com/yijia/system/mapper/SysDeptMapper.java

@@ -161,4 +161,17 @@ public interface SysDeptMapper
      * @return
      */
     public List<SysDept> selectGroupAgentList(SysDept sysDept);
+
+    /**
+     * 查询是否共享的集团
+     * @param sysDept
+     * @return
+     */
+    public List<SysDept> selectShareGroup(SysDept sysDept);
+    /**
+     * 查询是否共享的站点
+     * @param sysDept
+     * @return
+     */
+    List<SysDept> selectNotShareDept(SysDept sysDept);
 }

+ 7 - 0
yijia-system/src/main/java/com/yijia/system/service/ISysDeptService.java

@@ -192,4 +192,11 @@ public interface ISysDeptService
      * @return
      */
     public  List<SysDept> selectGroupAgentList(SysDept sysDept);
+
+    /**
+     * 查询电子是否共享集团和站点信息
+     * @param levelId
+     * @return
+     */
+    public List<String> levelShareCardList(Long levelId);
 }

+ 131 - 23
yijia-system/src/main/java/com/yijia/system/service/impl/SysDeptServiceImpl.java

@@ -502,34 +502,33 @@ public class SysDeptServiceImpl implements ISysDeptService
         LoginUser currentUser = SecurityUtils.getLoginUser();
         List<SysDept> deptList = new ArrayList<>();
         List<String> stringList = new ArrayList<>();
-        if(currentUser.getUser().getDept().getJiBie()!=null && currentUser.getUser().getDept().getJiBie() == 0 && currentUser.getUser().getAgentFlag()!=null&& currentUser.getUser().getAgentFlag().equals("0")){
-            //顶级 查询处所有的 集团和油站id
-            if(levelId!=null){
-                deptList =deptMapper.selectChildrenDeptById(levelId);
-            }else{
+        if(levelId!=null){
+            //查询油站信息
+           SysDept dept = deptMapper.selectDeptById(levelId);
+           if(dept!=null && dept.getJiBie()!=null &&dept.getJiBie()==0){
+               deptList =deptMapper.selectChildrenDeptById(levelId);
+           }else if(dept!=null && dept.getJiBie()!=null && dept.getJiBie()==1){
+               deptList =deptMapper.selectGroupAndDeptList(levelId);
+           }else if(dept!=null && dept.getJiBie()!=null && dept.getJiBie()==2){
+               deptList.add(dept);
+           }
+        }else{
+            if(currentUser.getUser().getDept().getJiBie()!=null && currentUser.getUser().getDept().getJiBie() == 0 && currentUser.getUser().getAgentFlag()!=null&& currentUser.getUser().getAgentFlag().equals("0")){
+                //顶级 查询处所有的 集团和油站id
                 deptList =deptMapper.selectChildrenDeptById(currentUser.getUser().getDeptId());
-            }
-        }else if(currentUser.getUser().getDept().getJiBie()!=null && currentUser.getUser().getDept().getJiBie() == 0 && currentUser.getUser().getAgentFlag()!=null&& currentUser.getUser().getAgentFlag().equals("1")){
-            SysDept dept =new SysDept();
-            if(levelId!=null){
-                dept.setUserId(levelId);
-                deptList = deptMapper.selectDeptAgentList(dept);
-            }else{
+            }else if(currentUser.getUser().getDept().getJiBie()!=null && currentUser.getUser().getDept().getJiBie() == 0 && currentUser.getUser().getAgentFlag()!=null&& currentUser.getUser().getAgentFlag().equals("1")){
+                SysDept dept =new SysDept();
                 dept.setUserId(currentUser.getUser().getUserId());
                 deptList = deptMapper.selectDeptAgentList(dept);
-            }
-        }else if(currentUser.getUser().getDept().getJiBie()!=null && currentUser.getUser().getDept().getJiBie() == 1){
-            //查询集团及站点
-            if(levelId!=null){
-                deptList =deptMapper.selectGroupAndDeptList(levelId);
-            }else{
+            }else if(currentUser.getUser().getDept().getJiBie()!=null && currentUser.getUser().getDept().getJiBie() == 1){
+                //查询集团及站点
                 deptList =deptMapper.selectGroupAndDeptList(currentUser.getUser().getDeptId());
+            }else{
+                SysDept dept =new SysDept();
+                dept.setDeptId(currentUser.getUser().getDeptId());
+                dept.setParentId(currentUser.getUser().getDept().getParentId());
+                deptList.add(dept);
             }
-        }else{
-            SysDept dept =new SysDept();
-            dept.setDeptId(currentUser.getUser().getDeptId());
-            dept.setParentId(currentUser.getUser().getDept().getParentId());
-            deptList.add(dept);
         }
         if(deptList!=null && deptList.size()>0){
             for(SysDept sysDept:deptList){
@@ -550,6 +549,115 @@ public class SysDeptServiceImpl implements ISysDeptService
     }
 
     /**
+     * 根据当前人查询集团是否共享电子卡
+     * @param levelId
+     * @return
+     */
+    @Override
+    public List<String> levelShareCardList(Long levelId) {
+        LoginUser currentUser = SecurityUtils.getLoginUser();
+        List<SysDept> deptList = new ArrayList<>();
+        List<String> stringList = new ArrayList<>();
+        if(levelId!=null){
+            //查询油站信息
+            SysDept dept = deptMapper.selectDeptById(levelId);
+            if(dept!=null && dept.getJiBie()!=null &&dept.getJiBie()==0){
+                //查询出所有共享电子卡的集团
+                SysDept sysDept = new SysDept();
+                sysDept.setJiBie(1);
+                sysDept.setCardRuleFlag("1");
+                List<SysDept>  shareGroupList =deptMapper.selectShareGroup(sysDept);
+                if(shareGroupList!=null && shareGroupList.size()>0){
+                    deptList.addAll(shareGroupList);
+                }
+                //查询所有不共享的站点
+                List<SysDept>  notShareDeptList =deptMapper.selectNotShareDept(sysDept);
+                if(notShareDeptList!=null && notShareDeptList.size()>0){
+                    deptList.addAll(notShareDeptList);
+                }
+            }else if(dept!=null && dept.getJiBie()!=null && dept.getJiBie()==1){
+                //判断集团电子卡共享
+                if(dept.getCardRuleFlag()!=null && dept.getCardRuleFlag().equals("1")){
+                    deptList.add(dept);
+                }else{
+                    //判断集团电子卡不共享,查询出所有的站点
+                    SysDept sysDept = new SysDept();
+                    sysDept.setParentId(dept.getDeptId());
+                    List<SysDept>   sysList =deptMapper.searchDeptList(sysDept);
+                    if(sysList!=null &&sysList.size()>0){
+                        deptList.addAll(sysList);
+                    }
+                }
+                deptList =deptMapper.selectGroupAndDeptList(levelId);
+            }else if(dept!=null && dept.getJiBie()!=null && dept.getJiBie()==2){
+                deptList.add(dept);
+            }
+        }else{
+            if(currentUser.getUser().getDept().getJiBie()!=null && currentUser.getUser().getDept().getJiBie() == 0 && currentUser.getUser().getAgentFlag()!=null&& currentUser.getUser().getAgentFlag().equals("0")){
+                //顶级 查询处所有的 集团和油站id
+                //查询出所有共享电子卡的集团
+                SysDept sysDept = new SysDept();
+                sysDept.setJiBie(1);
+                sysDept.setCardRuleFlag("1");
+                List<SysDept>  shareGroupList =deptMapper.selectShareGroup(sysDept);
+                if(shareGroupList!=null && shareGroupList.size()>0){
+                    deptList.addAll(shareGroupList);
+                }
+                //查询所有不共享的站点
+                List<SysDept>  notShareDeptList =deptMapper.selectNotShareDept(sysDept);
+                if(notShareDeptList!=null && notShareDeptList.size()>0){
+                    deptList.addAll(notShareDeptList);
+                }
+            }else if(currentUser.getUser().getDept().getJiBie()!=null && currentUser.getUser().getDept().getJiBie() == 0 && currentUser.getUser().getAgentFlag()!=null&& currentUser.getUser().getAgentFlag().equals("1")){
+                SysDept dept =new SysDept();
+                dept.setUserId(currentUser.getUser().getUserId());
+                //查询出代理人所有的集团信息
+               List<SysDept> deptAgentList = deptMapper.selectGroupAgentList(dept);
+                //查询出共享的集团
+                if(deptAgentList!=null && deptAgentList.size()>0){
+                    for(SysDept deptAgent:deptAgentList){
+                        if(deptAgent.getCardRuleFlag()!=null && deptAgent.getCardRuleFlag().equals("1")){
+                            deptList.add(dept);
+                        }else if(deptAgent.getCardRuleFlag()!=null && deptAgent.getCardRuleFlag().equals("0")){
+                            //查询不共享的集团下的所有油站
+                            SysDept sysDept = new SysDept();
+                            sysDept.setParentId(deptAgent.getDeptId());
+                            List<SysDept>   sysList =deptMapper.searchDeptList(sysDept);
+                            if(sysList!=null &&sysList.size()>0){
+                                deptList.addAll(sysList);
+                            }
+                        }
+                    }
+                }
+            }else if(currentUser.getUser().getDept().getJiBie()!=null && currentUser.getUser().getDept().getJiBie() == 1){
+                //判断集团电子卡共享
+                if( currentUser.getUser().getDept().getCardRuleFlag()!=null &&  currentUser.getUser().getDept().getCardRuleFlag().equals("1")){
+                    deptList.add(currentUser.getUser().getDept());
+                }else if(currentUser.getUser().getDept().getCardRuleFlag()!=null &&  currentUser.getUser().getDept().getCardRuleFlag().equals("0")){
+                    //判断集团电子卡不共享,查询出所有的站点
+                    SysDept sysDept = new SysDept();
+                    sysDept.setParentId(currentUser.getUser().getDeptId());
+                    List<SysDept>   sysList =deptMapper.searchDeptList(sysDept);
+                    if(sysList!=null &&sysList.size()>0){
+                        deptList.addAll(sysList);
+                    }
+                }
+            }else{
+                SysDept dept =new SysDept();
+                dept.setDeptId(currentUser.getUser().getDeptId());
+                dept.setParentId(currentUser.getUser().getDept().getParentId());
+                deptList.add(dept);
+            }
+        }
+        if(deptList!=null && deptList.size()>0){
+            for(SysDept sysDept:deptList){
+                stringList.add(sysDept.getDeptId()+"");
+            }
+        }
+        return stringList;
+    }
+
+    /**
      * 递归列表
      */
     private void recursionFn(List<SysDept> list, SysDept t)

+ 71 - 6
yijia-system/src/main/resources/mapper/system/SysDeptMapper.xml

@@ -173,7 +173,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 		)
 	</select>
 
-<!--查询代理人对应的集团站点信息-->
+<!--查询代理人对应的集团下的站点信息-->
 	<select id="selectDeptAgentList" parameterType="SysDept" resultMap="SysDeptResult">
 		SELECT dept_id from sys_dept t
 		where t.parent_id in (
@@ -184,12 +184,10 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 	</select>
 	<!--查询代理人对应的集团信息-->
 	<select id="selectGroupAgentList" parameterType="SysDept" resultMap="SysDeptResult">
-		SELECT dept_id from sys_dept t
-		where t.parent_id in (
-		SELECT dept_id from sys_dept d join  sys_agent a on d.dept_id =a.group_id
+		SELECT dept_id,dept_name,integral_rule_flag,card_rule_flag,coupon_flag,label_flag
+		from sys_dept d join  sys_agent a on d.dept_id =a.group_id
 		where d.del_flag = '0'
-		<if test="userId != null "> and a.user_id = #{userId}</if>)
-		and  t.del_flag = '0'
+		<if test="userId != null "> and a.user_id = #{userId}</if>
 	</select>
 
 	<!--根据集团查询油站id-->
@@ -208,6 +206,73 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 			AND ( dept_id = #{orDeptId} or  parent_id = #{orDeptId} )
 		</if>
 	</select>
+
+	<!--查询集团及共享信息-->
+	<select id="selectShareGroup" parameterType="SysDept" resultMap="SysDeptResult">
+		select d.dept_id, d.parent_id, d.ancestors, d.dept_name,card_enabled_flag,d.app_id,d.integral_flag,d.integral_rule_flag,d.card_rule_flag,
+		d.coupon_flag,d.label_flag,d.print_device_type
+        from sys_dept d
+		where d.del_flag = '0'
+		<if test="integralRuleFlag != null">
+			AND integral_rule_flag = #{integralRuleFlag}
+		</if>
+		<if test="couponFlag != null">
+			AND coupon_flag = #{couponFlag}
+		</if>
+		<if test="cardRuleFlag != null">
+			AND card_rule_flag = #{cardRuleFlag}
+		</if>
+		<if test="cardRuleFlag != null">
+			AND card_rule_flag = #{cardRuleFlag}
+		</if>
+		<if test="deptId != null">
+			AND dept_id = #{deptId}
+		</if>
+		<if test="deptId != null">
+			AND dept_id = #{deptId}
+		</if>
+		<if test="jiBie != null">
+			AND ji_bie = #{jiBie}
+		</if>
+		<if test="orDeptId != null">
+			AND ( dept_id = #{orDeptId} or  parent_id = #{orDeptId} )
+		</if>
+		<if test="deptName != null and deptName != ''">
+			AND dept_name like concat('%', #{deptName}, '%')
+		</if>
+		<if test="status != null and status != ''">
+			AND status = #{status}
+		</if>
+		<if test="deptIdList != null ">
+			and dept_id in
+			<foreach item="item" index="index" collection="deptIdList"
+					 open="(" separator="," close=")">
+				#{item}
+			</foreach>
+		</if>
+	</select>
+
+	<!--查询所有不共享的站点-->
+	<select id="selectNotShareDept" parameterType="SysDept" resultMap="SysDeptResult">
+		select d.dept_id, d.parent_id, d.ancestors, d.dept_name,card_enabled_flag,d.app_id,d.integral_flag,d.integral_rule_flag,d.card_rule_flag,
+		d.coupon_flag,d.label_flag,d.print_device_type
+		from sys_dept d
+		where d.del_flag = "0"
+		and d.parent_id in (
+			SELECT dept_id from sys_dept t
+			where t.ji_bie ='1' and del_flag = "0"
+			<if test="integralRuleFlag != null">
+				AND integral_rule_flag = #{integralRuleFlag}
+			</if>
+			<if test="couponFlag != null">
+				AND coupon_flag = #{couponFlag}
+			</if>
+			<if test="cardRuleFlag != null">
+				AND card_rule_flag = #{cardRuleFlag}
+			</if>
+		)
+	</select>
+
     <insert id="insertDept" parameterType="SysDept">
  		insert into sys_dept(
  			<if test="deptId != null and deptId != 0">dept_id,</if>