Browse Source

初步版本修改结束

plg 6 months ago
parent
commit
316a1fea95

+ 1 - 0
package.json

@@ -14,6 +14,7 @@
     "bi-vue-mindmap": "^0.7.8",
     "core-js": "^2.6.5",
     "crypto-js": "^4.1.1",
+    "date-fns": "^3.6.0",
     "echarts": "^5.5.0",
     "element-ui": "^2.15.12",
     "exif-js": "^2.3.0",

+ 503 - 0
src/components/ComparePlanProfession.vue

@@ -0,0 +1,503 @@
+<template>
+  <div class="out">
+    <el-dialog
+      :visible.sync="dialogVisible"
+      :close-on-click-modal="false"
+      width="80%"
+      style="border-radius: 40px"
+    >
+      <div slot="title" id="el-com">
+        <p style="text-align: center; font-weight: 700; margin-bottom: 20px">不同专业对比</p>
+        <p class="data_asyni">数据对比</p>
+        <div class="table-content">
+          <div ref="echarts_ld" style="width: 70vw; height: 100vh"></div>
+        </div>
+        <!-- <p class="data_asyni">选择计划对比</p> -->
+        <p class="data_asyni" style="margin-top:20px">选择维度</p>
+
+        <div class="table-content">
+          <el-radio-group
+            class="data_asyni"
+            v-model="radio"
+            size="mini"
+            v-if="radioList.length > 0"
+            @input="singleFun"
+          >
+            <el-radio v-for="item in radioList" :key="item" :label="item">{{
+              item
+            }}</el-radio>
+          </el-radio-group>
+          <div ref="echarts_plan" style="width: 70vw; height: 100vh"></div>
+        </div>
+      </div>
+    </el-dialog>
+  </div>
+</template>
+<script>
+//引入echarts组件
+import * as echarts from "echarts";
+import { Loading } from "element-ui";
+
+export default {
+  data() {
+    return {
+      planInfo: {},
+      dialogVisible: false,
+      compareVisible: false,
+
+      echarts_ld: "",
+      option_w: {},
+
+      echarts_plan: "",
+      groupData: [],
+      radioList: [],
+      radio: "",
+    };
+  },
+  mounted() {
+    this.echarts_ld = this.$refs.echarts_ld;
+    this.echarts_plan = this.$refs.echarts_plan;
+    this.option_w = {
+      title: {},
+      tooltip: {
+        trigger: "axis",
+        axisPointer: {
+          type: "shadow",
+        },
+      },
+      legend: {},
+      grid: {
+        containLabel: true,
+      },
+      xAxis: {
+        type: "value",
+        boundaryGap: [0, 0.01],
+      },
+      yAxis: {
+        type: "category",
+        data: [],
+      },
+      series: [
+        {
+          name: "专业1",
+          type: "bar",
+          data: [0],
+        },
+        {
+          name: "专业2",
+          type: "bar",
+          data: [0],
+        },
+      ],
+    };
+    // const myChart = echarts.init(this.echarts_ld);
+    // myChart.setOption(this.option_w);
+
+    this.option_plan = {
+      title: {},
+      tooltip: {
+        trigger: "axis",
+        axisPointer: {
+          type: "shadow",
+        },
+      },
+      legend: {},
+      grid: {
+        containLabel: true,
+      },
+      xAxis: {
+        type: "value",
+        boundaryGap: [0, 0.01],
+      },
+      yAxis: {
+        type: "category",
+        data: ["人生意义--中等"],
+      },
+      series: [
+        {
+          name: "专业1",
+          type: "bar",
+          data: [0, 23489, 29034, 104970, 131744, 0],
+        },
+        {
+          name: "专业2",
+          type: "bar",
+          data: [19325, 23438, 31000, 121594, 134141, 681807],
+        },
+      ],
+    };
+
+    // setTimeout(() => {
+    //   myChart.resize();
+    // }, 2000);
+  },
+  methods: {
+    open(val) {
+      this.planInfo = val;
+      this.dialogVisible = true;
+      this.radio = "";
+      this.getChannel();
+      this.searchList();
+    },
+    //进来先查询下组织架构
+    //查询出来组织架构
+    //与专业进行对比
+    getChannel() {
+      this.$http.get(`/org/findAllOrgByPOrgNo`, {}, (res) => {
+        //  this.$toast.success({message:'成功'});
+        if (res && res.code == 200) {
+          //将值赋值给list
+          if (res.data.length > 0) {
+            this.groupData = res.data;
+            //得到的组织架构数据
+            console.log(res.data);
+          } else {
+            this.groupData = [];
+          }
+          // this.channelList = res.data;
+        } else {
+          this.$message.error(res.msg);
+        }
+      });
+    },
+    //进来调用已选列表接口
+    searchList() {
+      let loadingInstance = Loading.service({
+        text: "loading",
+        background: "rgba(0, 0, 0, 0.4)",
+        target: document.querySelector("#el-com"),
+      });
+      //&orgNo=${this.planInfo.planOrgNo}
+      let url = `/plan/countByOrgNoAndDimension?planId=${this.planInfo.id}`;
+      this.$http.get(url, {}, (res) => {
+        console.log(res);
+        if (res && res.code == 200) {
+          this.allData = res.data;
+          //获取到数据后进行加工
+          //Y轴展示的内容字段
+          //循环全部数据得到全部维度和全部专业的问题
+          this.allFun();
+          this.singleFun(this.radio);
+          // console.log(tabList)
+          this.$nextTick(() => {
+            // 以服务的方式调用的 Loading 需要异步关闭
+            loadingInstance.close();
+          });
+        } else {
+          // this.$toast.fail(res.msg);
+          this.$nextTick(() => {
+            // 以服务的方式调用的 Loading 需要异步关闭
+            loadingInstance.close();
+          });
+          this.$message.error(res.msg);
+        }
+      });
+    },
+    //渲染第一个图表
+    allFun() {
+      let data = JSON.parse(JSON.stringify(this.allData));
+      let tabList = [];
+      //先判断就有几个专业
+      let proList = [];
+      //储存每个专业的值
+      let proAll = [];
+
+      //储存数据为格式化的数据--各个专业的数据
+      let formatterPro = [];
+      let radioArr = [];
+      //储存全部一级数据
+      for (let item in data) {
+        // console.log(item)
+
+        if (this.radio == "") {
+          this.radio = item;
+        }
+        radioArr.push(item);
+        for (let item1 in data[item]) {
+          // console.log(item+'-'+itemInner);
+          tabList.push(item + "-" + item1);
+          for (let item2 in data[item][item1]) {
+            // console.log(item2)
+            proList.push(item2);
+            let obj = { name: item2, value: data[item][item1][item2] };
+            proAll.push(obj);
+          }
+        }
+      }
+      this.radioList = radioArr;
+      //针对 专业数组进行去重
+
+      let prolistFin = proList.filter((item, index, proList) => {
+        return proList.indexOf(item) == index;
+      });
+      //
+      //输出全部指标
+      //循环得到专业指标
+      for (let i = 0; i < prolistFin.length; i++) {
+        let lin = [];
+        for (let j = 0; j < proAll.length; j++) {
+          if (proAll[j].name == prolistFin[i]) {
+            //
+            lin.push(proAll[j].value);
+          }
+        }
+        formatterPro.push(lin);
+      }
+      //储存的需要渲染的数据
+      console.log("需要渲染的数据");
+      console.log(formatterPro);
+
+      //设置data数据
+      this.option_w.yAxis.data = tabList;
+      //设置各个专业的数据
+      //将设置为汉语专业
+      //
+      let prolistFinName = [];
+      console.log(prolistFin);
+      console.log(JSON.stringify(this.groupData));
+      for (let i = 0; i < prolistFin.length; i++) {
+        //
+        for (let j = 0; j < this.groupData.length; j++) {
+          if (prolistFin[i] === this.groupData[j].orgNo) {
+            prolistFinName.push(this.groupData[j].orgName);
+          }
+        }
+      }
+
+      let series = [];
+      for (let i = 0; i < prolistFinName.length; i++) {
+        //
+        let obj = {
+          name: prolistFinName[i],
+          type: "bar",
+          data: formatterPro[i],
+        };
+        series.push(obj);
+      }
+      this.option_w.series = series;
+      //重新渲染柱状图
+      let myChart = echarts.init(this.echarts_ld);
+      myChart.setOption(this.option_w);
+    },
+    singleFun(val) {
+      let data = JSON.parse(JSON.stringify(this.allData));
+      let tabList = [];
+      //先判断就有几个专业
+      let proList = [];
+      //储存每个专业的值
+      let proAll = [];
+
+      //储存数据为格式化的数据--各个专业的数据
+      let formatterPro = [];
+      for (let item in data) {
+        // console.log(item)
+        if (item == val) {
+          for (let item1 in data[item]) {
+            // console.log(item+'-'+itemInner);
+            // tabList.push(item + "-" + item1);
+            tabList.push(item1);
+            for (let item2 in data[item][item1]) {
+              //
+              // console.log(item2)
+              proList.push(item2);
+              let obj = { name: item2, value: data[item][item1][item2] };
+              proAll.push(obj);
+            }
+          }
+        }
+      }
+      //针对 专业数组进行去重
+
+      let prolistFin = proList.filter((item, index, proList) => {
+        return proList.indexOf(item) == index;
+      });
+      //输出全部指标
+      //循环得到专业指标
+      for (let i = 0; i < prolistFin.length; i++) {
+        let lin = [];
+        for (let j = 0; j < proAll.length; j++) {
+          if (proAll[j].name == prolistFin[i]) {
+            //
+            lin.push(proAll[j].value);
+          }
+        }
+        console.log(lin);
+        formatterPro.push(lin);
+      }
+      //储存的需要渲染的数据
+      console.log("需要渲染的数据");
+      console.log(formatterPro);
+
+      //设置data数据
+      this.option_plan.yAxis.data = tabList;
+
+      let prolistFinName = [];
+      for (let i = 0; i < prolistFin.length; i++) {
+        //
+        for (let j = 0; j < this.groupData.length; j++) {
+          if (prolistFin[i] == this.groupData[j].orgNo) {
+            prolistFinName.push(this.groupData[j].orgName);
+          }
+        }
+      }
+      //设置各个专业的数据
+      let series = [];
+      for (let i = 0; i < prolistFinName.length; i++) {
+        //
+        let obj = {
+          name: prolistFinName[i],
+          type: "bar",
+          data: formatterPro[i],
+        };
+        series.push(obj);
+      }
+      this.option_plan.series = series;
+      //重新渲染柱状图
+      let myChart = echarts.init(this.echarts_plan);
+      myChart.setOption(this.option_plan);
+    },
+  },
+};
+</script>
+<style lang="less" scoped>
+.out/deep/ .el-dialog {
+  border-radius: 20px !important;
+  background-color: #f7f7f7 !important;
+}
+
+.pag_class /deep/ .el-input__inner {
+  width: 100% !important;
+}
+
+.compare_class {
+  display: flex;
+  flex-direction: row;
+  .compare_user1 {
+    flex: 1;
+    margin-right: 10px;
+    background-color: #f1f7ff;
+    padding: 20px 20px;
+    border-radius: 20px;
+    .compare_user1_out {
+      display: flex;
+      align-items: center;
+      img {
+        width: 100px;
+      }
+      .compare_user1_info {
+        display: flex;
+        flex-direction: column;
+        justify-content: space-around;
+        height: 100px;
+        margin-left: 30px;
+        font-size: 20px;
+      }
+    }
+    .compare_group {
+      font-size: 20px;
+      margin-top: 20px;
+      color: #999999;
+    }
+    .compare_group_detail {
+      margin-top: 20px;
+      font-size: 20px;
+      color: #006fff;
+    }
+  }
+  .compare_user2 {
+    margin-left: 10px;
+    flex: 1;
+    background-color: #fff4f2;
+    border-radius: 20px;
+    padding: 20px 20px;
+    .compare_user1_out {
+      display: flex;
+      align-items: center;
+      img {
+        width: 100px;
+      }
+      .compare_user1_info {
+        display: flex;
+        flex-direction: column;
+        justify-content: space-around;
+        height: 100px;
+        margin-left: 30px;
+        font-size: 20px;
+      }
+    }
+    .compare_group {
+      font-size: 20px;
+      margin-top: 20px;
+      color: #999999;
+    }
+    .compare_group_detail {
+      margin-top: 20px;
+      font-size: 20px;
+      color: #ff3014;
+    }
+  }
+}
+
+.compare_plan {
+  margin-top: 40px;
+  margin-bottom: 10px;
+  display: flex;
+  flex-direction: row;
+  .compare_plan_out1 {
+    flex: 1;
+    margin-right: 10px;
+    display: flex;
+    justify-content: space-between;
+    .compare_plan_time {
+      color: #999999;
+    }
+  }
+
+  .compare_plan_out2 {
+    margin-left: 10px;
+    flex: 1;
+    display: flex;
+    justify-content: space-between;
+    .compare_plan_time {
+      color: #999999;
+    }
+  }
+}
+.compare_score {
+  display: flex;
+  flex-direction: row;
+  .compare_score_inner {
+    padding-left: 20px;
+    flex: 1;
+    .compare_score_left {
+      color: #006fff;
+      margin-top: 20px;
+      margin-bottom: 10px;
+      font-size: 20px;
+      letter-spacing: 3px;
+    }
+    .compare_score_right {
+      color: #ff3014;
+      margin-top: 20px;
+      margin-bottom: 10px;
+      font-size: 20px;
+      letter-spacing: 3px;
+    }
+    .compare_result {
+      font-size: 20px;
+      letter-spacing: 3px;
+    }
+  }
+}
+.data_asyni {
+  font-size: 20px;
+  padding-left: 20px;
+  margin-bottom: 20px;
+}
+
+.table-content {
+  padding-top: 20px;
+  background-color: #ffffff;
+  border-radius: 20px;
+}
+</style>

+ 66 - 26
src/components/ComparePlanUser.vue

@@ -1,5 +1,5 @@
 <template>
-  <div>
+  <div class="out">
     <el-dialog
       :visible.sync="dialogVisible"
       :close-on-click-modal="false"
@@ -7,6 +7,7 @@
       style="border-radius: 40px"
     >
       <div slot="title">
+        <p style="text-align: center;margin-bottom: 20px; font-weight: 700;">用户列表</p>
         <div class="table-content">
           <el-table
             :data="tableData"
@@ -18,17 +19,22 @@
             <el-table-column type="selection" width="55"> </el-table-column>
             <el-table-column
               show-overflow-tooltip
-              prop="planName"
-              label="计划名称"
+              prop="userName"
+              label="用户姓名"
               align="center"
               width=""
             >
             </el-table-column>
-            <el-table-column prop="planOrgName" label="所属专业" align="center" width="">
+            <el-table-column prop="userNo" label="学号" align="center" width="">
             </el-table-column>
-            <el-table-column prop="score" label="总分" align="center" width="">
-            </el-table-column>
-            <el-table-column prop="planEndTime" label="结束时间" align="center" width="">
+
+            <el-table-column
+              prop="isComplete"
+              label="完成状态"
+              :formatter="formaCom"
+              align="center"
+              width=""
+            >
             </el-table-column>
 
             <!-- <el-table-column label="操作" width="510px" align="center">
@@ -55,9 +61,10 @@
           :total="total"
         >
         </el-pagination>
-        <el-button type="success" round class="add_class" @click="isCompare"
+        <p style="text-align: center;margin-top:20px">  <el-button type="success" round class="add_class" @click="isCompare"
           >对比</el-button
-        >
+        ></p>
+      
       </div>
     </el-dialog>
 
@@ -69,22 +76,23 @@
         style="border-radius: 40px"
       >
         <div slot="title">
+          <p style="text-align: center;margin-bottom: 20px; font-weight: 700;">同一计划不同用户对比</p>
           <div class="compare_plan">
             <div class="compare_plan_out1">
-              <span class="compare_plan_name" v-if="multipleSelection[0]"
-                >计划名称:{{ multipleSelection[0].planName }}</span
+              <span class="compare_plan_name" v-if="userData1.length > 0"
+                >计划名称:{{ userData1[0].planName }}</span
               >
-              <span class="compare_plan_time" v-if="multipleSelection[0]"
+              <!-- <span class="compare_plan_time" v-if="multipleSelection[0]"
                 >结束时间:{{ multipleSelection[0].planEndTime }}</span
-              >
+              > -->
             </div>
             <div class="compare_plan_out2">
-              <span class="compare_plan_name" v-if="multipleSelection[1]"
-                >计划名称:{{ multipleSelection[1].planName }}</span
+              <span class="compare_plan_name" v-if="userData2.length > 0"
+                >计划名称:{{ userData2[0].planName }}</span
               >
-              <span class="compare_plan_time" v-if="multipleSelection[1]"
+              <!-- <span class="compare_plan_time" v-if="multipleSelection[1]"
                 >结束时间:{{ multipleSelection[1].planEndTime }}</span
-              >
+              > -->
             </div>
           </div>
           <div class="compare_class">
@@ -92,8 +100,12 @@
               <div class="compare_user1_out">
                 <img src="../assets/report/man.png" />
                 <div class="compare_user1_info">
-                  <div>姓名:{{ userInfo.userName }}</div>
-                  <div>学号:{{ userInfo.userNo }}</div>
+                  <div v-if="multipleSelection.length == 2">
+                    姓名:{{ multipleSelection[0].userName }}
+                  </div>
+                  <div v-if="multipleSelection.length == 2">
+                    学号:{{ multipleSelection[0].userNo }}
+                  </div>
                 </div>
               </div>
               <div class="compare_group">所属组织架构</div>
@@ -105,8 +117,12 @@
               <div class="compare_user1_out">
                 <img src="../assets/report/man.png" />
                 <div class="compare_user1_info">
-                  <div>姓名:{{ userInfo.userName }}</div>
-                  <div>学号:{{ userInfo.userNo }}</div>
+                  <div v-if="multipleSelection.length == 2">
+                    姓名:{{ multipleSelection[1].userName }}
+                  </div>
+                  <div v-if="multipleSelection.length == 2">
+                    学号:{{ multipleSelection[1].userNo }}
+                  </div>
                 </div>
               </div>
               <div class="compare_group">所属组织架构</div>
@@ -281,7 +297,7 @@ export default {
               },
               //阴影面积
               areaStyle: {
-                color: "#ABCDF8",
+                color: "rgba(0,111,255,0.3)",
               },
             },
             {
@@ -302,7 +318,7 @@ export default {
                 // }
               },
               areaStyle: {
-                color: "#F8B4AB",
+                color: "rgba(255,30,0,0.3)",
               },
             },
           ],
@@ -342,6 +358,7 @@ export default {
       this.dialogVisible = true;
       this.searchTarget();
     },
+
     //对比方法
     isCompare() {
       //判断是否是选了两个用户
@@ -360,7 +377,7 @@ export default {
       //调用查询各个报告的方法
     },
     queryDetail1(id) {
-      let url = `/userRecordScore/findAllByPlanIdAndUserNo?planId=${id}&userNo=${this.userInfo.userNo}`;
+      let url = `/userRecordScore/findAllByPlanIdAndUserNo?planId=${this.userInfo.id}&userNo=${this.multipleSelection[0].userNo}`;
       this.$http.get(url, {}, (res) => {
         console.log(res);
         if (res && res.code == 200) {
@@ -382,7 +399,7 @@ export default {
       });
     },
     queryDetail2(id) {
-      let url = `/userRecordScore/findAllByPlanIdAndUserNo?planId=${id}&userNo=${this.userInfo.userNo}`;
+      let url = `/userRecordScore/findAllByPlanIdAndUserNo?planId=${this.userInfo.id}&userNo=${this.multipleSelection[1].userNo}`;
       this.$http.get(url, {}, (res) => {
         console.log(res);
         if (res && res.code == 200) {
@@ -446,6 +463,24 @@ export default {
     },
     //选择用户进行对比的方法
     handleSelectionChange(val) {
+      // isComplete
+            //判断里边是否有未完成的
+      let hasNo =false
+      if (val.length > 0) {
+        for (let i = 0; i < val.length; i++) {
+          //
+          if(val[i].isComplete=='0'){
+            hasNo=true
+          }
+        }
+      }
+      if(hasNo){
+        this.$message({
+          type: "warning",
+          message: "请选已完成的",
+        });
+        return
+      }
       if (val.length > 2) {
         this.$message({
           type: "warning",
@@ -461,7 +496,7 @@ export default {
     },
     //进来调用已选列表接口
     searchList() {
-      let url = `/plan/findCompletePlanByUser?pageSize=${this.pageSize}&pageNum=${this.pageNum}&userNo=${this.userInfo.userNo}`;
+      let url = `/planUser/findUserProgressByPage?pageSize=${this.pageSize}&pageNum=${this.pageNum}&planId=${this.userInfo.id}`;
       this.$http.get(url, {}, (res) => {
         console.log(res);
         if (res && res.code == 200) {
@@ -494,6 +529,11 @@ export default {
 };
 </script>
 <style lang="less" scoped>
+.out/deep/ .el-dialog {
+  border-radius: 20px !important;
+  // background-color: #f7f7f7 !important;
+}
+
 .pag_class /deep/ .el-input__inner {
   width: 100% !important;
 }

+ 24 - 6
src/components/CompareUser.vue

@@ -1,5 +1,5 @@
 <template>
-  <div>
+  <div class="out">
     <el-dialog
       :visible.sync="dialogVisible"
       :close-on-click-modal="false"
@@ -7,6 +7,7 @@
       style="border-radius: 40px"
     >
       <div slot="title">
+        <p style="text-align: center; margin-bottom: 20px; font-weight: 700">计划列表</p>
         <div class="table-content">
           <el-table
             :data="tableData"
@@ -55,9 +56,11 @@
           :total="total"
         >
         </el-pagination>
-        <el-button type="success" round class="add_class" @click="isCompare"
-          >对比</el-button
-        >
+        <p style="text-align: center; margin-top: 20px">
+          <el-button type="success" round class="add_class" @click="isCompare"
+            >对比</el-button
+          >
+        </p>
       </div>
     </el-dialog>
 
@@ -69,6 +72,7 @@
         style="border-radius: 40px"
       >
         <div slot="title">
+          <p style="text-align: center; margin-bottom: 20px; font-weight: 700">同一用户不同计划对比</p>
           <div class="compare_plan">
             <div class="compare_plan_out1">
               <span class="compare_plan_name" v-if="multipleSelection[0]"
@@ -281,7 +285,7 @@ export default {
               },
               //阴影面积
               areaStyle: {
-                color: "#ABCDF8",
+                color: "rgba(0,111,255,0.3)",
               },
             },
             {
@@ -302,7 +306,7 @@ export default {
                 // }
               },
               areaStyle: {
-                color: "#F8B4AB",
+                color: "rgba(255,30,0,0.3)",
               },
             },
           ],
@@ -446,6 +450,16 @@ export default {
     },
     //选择用户进行对比的方法
     handleSelectionChange(val) {
+      //判断里边是否有未完成的
+      // let hasNo =false
+      // if (val.length > 0) {
+      //   for (let i = 0; i < val.length; i++) {
+      //     //
+      //     if(val[i].){
+
+      //     }
+      //   }
+      // }
       if (val.length > 2) {
         this.$message({
           type: "warning",
@@ -494,6 +508,10 @@ export default {
 };
 </script>
 <style lang="less" scoped>
+.out/deep/ .el-dialog {
+  border-radius: 20px !important;
+  // background-color: #f7f7f7 !important;
+}
 .pag_class /deep/ .el-input__inner {
   width: 100% !important;
 }

+ 2 - 2
src/components/PlanRegister.vue

@@ -124,7 +124,7 @@ export default {
       });
     },
     edit(val) {
-      debugger;
+    
       this.dialogVisible = true;
       this.isView = false;
       this.ruleForm.planName = val.planName;
@@ -192,7 +192,7 @@ export default {
       console.log(this.ruleForm.endTime);
       let that = this;
       console.log(this.userInfo)
-      debugger;
+   
 
       // this.ruleForm.password = md5(this.ruleForm.password);
       this.$http.post(

+ 58 - 52
src/components/PlanReport.vue

@@ -7,37 +7,38 @@
       style="border-radius: 40px"
     >
       <div slot="title">
-        <div>
-          <div ref="echarts_bing" style="width: 500px; height: 600px"></div>
-          <div ref="echarts_zhu" style="width: 500; height: 600px"></div>
+        <div style="display: flex; margin-top: 40px">
+          <div ref="echarts_bing" style="width: 100%; height: 600px; flex: 1"></div>
+          <div ref="echarts_zhu" style="width: 100%; height: 600px; flex: 1"></div>
         </div>
         <div class="table-content">
-              <el-table
-                :data="tableData"
-                :row-style="{ height: '0px' }"
-                :cell-style="{ padding: '5px' }"
-                :header-cell-style="{ background: '#F8F8F8', color: '#606266' }"
-              >
-                <el-table-column
-                  show-overflow-tooltip
-                  prop="userName"
-                  label="姓名"
-                  align="center"
-                  width=""
-                >
-                </el-table-column>
-                <el-table-column prop="userNo" label="学号" align="center" width="">
-                </el-table-column>
-                <el-table-column prop="isComplete" label="是否已完成" :formatter="formaCom" align="center" width="">
-                </el-table-column>
-                <el-table-column
-                  prop="orgName"
-                  label="所属组织架构"
-                  align="center"
-                  width=""
-                >
-                </el-table-column>
-                <!-- <el-table-column label="操作" width="510px" align="center">
+          <el-table
+            :data="tableData"
+            :row-style="{ height: '0px' }"
+            :cell-style="{ padding: '5px' }"
+            :header-cell-style="{ background: '#F8F8F8', color: '#606266' }"
+          >
+            <el-table-column
+              show-overflow-tooltip
+              prop="userName"
+              label="姓名"
+              align="center"
+              width=""
+            >
+            </el-table-column>
+            <el-table-column prop="userNo" label="学号" align="center" width="">
+            </el-table-column>
+            <el-table-column
+              prop="isComplete"
+              label="是否已完成"
+              :formatter="formaCom"
+              align="center"
+              width=""
+            >
+            </el-table-column>
+            <el-table-column prop="orgName" label="所属组织架构" align="center" width="">
+            </el-table-column>
+            <!-- <el-table-column label="操作" width="510px" align="center">
                   <template slot-scope="scope">
                     <div class="detail_button_out">
                       <div class="detail_button" @click="deleteUser(scope.row)">
@@ -47,20 +48,20 @@
                     </div>
                   </template>
                 </el-table-column> -->
-              </el-table>
-            </div>
-            <el-pagination
-              class="pag_class"
-              background
-              @size-change="handleSizeChange"
-              @current-change="handleCurrentChange"
-              :current-page.sync="pageNum"
-              layout="total, sizes, prev, pager, next"
-              :page-size="pageSize"
-              :page-sizes="[10, 20, 50, 100]"
-              :total="total"
-            >
-            </el-pagination>
+          </el-table>
+        </div>
+        <el-pagination
+          class="pag_class"
+          background
+          @size-change="handleSizeChange"
+          @current-change="handleCurrentChange"
+          :current-page.sync="pageNum"
+          layout="total, sizes, prev, pager, next"
+          :page-size="pageSize"
+          :page-sizes="[10, 20, 50, 100]"
+          :total="total"
+        >
+        </el-pagination>
       </div>
     </el-dialog>
 
@@ -127,15 +128,20 @@ export default {
         left: "center",
       },
       xAxis: {
-        type: "category",
-        data: ["Mon"],
+        type: "value",
         // axisLabel:{
         //     interval:0,
         //     rotate:-90
         // }
       },
       yAxis: {
-        type: "value",
+        type: "category",
+        data: ["Mon"],
+        axisLabel: {
+          rotate: -45, // 根据文字长度自动旋转标签
+          // margin:-40,
+          padding:-70
+        },
       },
       radar: {
         //
@@ -185,7 +191,7 @@ export default {
             nameList.push(item);
             scoreList.push(res.data[item]);
           }
-          this.option_zhu.xAxis.data = nameList;
+          this.option_zhu.yAxis.data = nameList;
           this.option_zhu.series[0].data = scoreList;
 
           console.log(this.option_zhu);
@@ -223,11 +229,11 @@ export default {
       this.pageNum = val;
       this.searchList();
     },
-    formaCom(val){
-      if(val.isComplete=='0'){
-        return '未完成'
-      }else{
-        return '已完成'
+    formaCom(val) {
+      if (val.isComplete == "0") {
+        return "未完成";
+      } else {
+        return "已完成";
       }
     },
   },

+ 21 - 0
src/components/PlanUser.vue

@@ -16,6 +16,7 @@
             <div slot="footer"></div>
             <el-button
               type="success"
+              style="margin-bottom: 10px;"
               round
               class="add_class"
               icon="el-icon-plus"
@@ -89,6 +90,7 @@
             <el-button
               type="success"
               round
+              style="margin-bottom: 10px;"
               class="add_class"
               icon="el-icon-plus"
               @click="isComUser(1, 1)"
@@ -126,6 +128,7 @@
                     <div class="detail_button_out">
                       <div class="detail_button" @click="isComUser(2, scope.row)">
                         <!-- <img style="width: 20px" src="../assets/img/table/delete.png" /> -->
+                        <i class="el-icon-plus" style="color: #42C88E;"></i>
                         <span> 添加 </span>
                       </div>
                     </div>
@@ -438,4 +441,22 @@ export default {
     font-weight: 700;
   }
 }
+.detail_button_out {
+  display: flex;
+  justify-content: space-around;
+  .detail_button {
+    display: flex;
+    align-items: center;
+    cursor: pointer;
+    letter-spacing: 2px;
+    img {
+      width: 15px;
+      margin-right: 5px;
+    }
+    span {
+      color: #00bf78;
+      // font-weight: 600;
+    }
+  }
+}
 </style>

+ 1 - 1
src/components/PlanUserStatus.vue

@@ -261,7 +261,7 @@ export default {
       }
     },
     open(val) {
-      debugger;
+    
       this.proDataLin = val;
       this.dialogVisible = true;
       this.searchTarget();

+ 73 - 67
src/components/Register.vue

@@ -26,7 +26,7 @@
                 placeholder="请选择组织架构"
                 v-model="ruleForm.group"
                 :options="groupData"
-               :show-all-levels="false"
+                :show-all-levels="false"
                 clearable
               ></el-cascader>
             </el-form-item>
@@ -48,15 +48,15 @@
                 </el-form-item>
               </el-col>
             </el-row>
-        
-            <el-form-item  v-if="isView"  label="密码" prop="password">
+
+            <el-form-item v-if="isView" label="密码" prop="password">
               <el-input
                 type="password"
                 v-model="ruleForm.password"
                 autocomplete="off"
               ></el-input>
             </el-form-item>
-            <el-form-item  v-if="isView"  label="确认密码" prop="comPassword">
+            <el-form-item v-if="isView" label="确认密码" prop="comPassword">
               <el-input
                 type="password"
                 v-model="ruleForm.comPassword"
@@ -68,9 +68,7 @@
               <!-- <el-button type="success" round @click="submitForm('ruleForm')"
                 >提交</el-button
               > -->
-              <el-button type="success" round @click="submitCom()"
-                >提交</el-button
-              >
+              <el-button type="success" round @click="submitCom()">提交</el-button>
             </div>
           </el-form>
         </div>
@@ -116,8 +114,9 @@ export default {
       }
     };
     return {
+      userInfo: "",
       //编辑返回的值
-      userDetailData:{},
+      userDetailData: {},
       //组织架构名字
       groupName: "",
       ppData: [],
@@ -166,16 +165,11 @@ export default {
     };
   },
   mounted() {
-    let userInfo = JSON.parse(oSessionStorage.getItem("userInfo"));
-    this.ruleForm.parentCode = userInfo.invitationCode;
-
     //获取渠道信息
-
     // this.ruleForm.type = "3";
   },
   methods: {
-
-    resetData(){
+    resetData() {
       this.$refs["ruleForm"].clearValidate();
       //清空表单
       this.ruleForm.group = "";
@@ -190,7 +184,6 @@ export default {
       this.$http.get(`/org/findAllOrgByPOrgNo`, {}, (res) => {
         //  this.$toast.success({message:'成功'});
         if (res && res.code == 200) {
-
           //将值赋值给list
           if (res.data.length > 0) {
             let resAdd = this.addPro(res.data);
@@ -199,8 +192,6 @@ export default {
             // console.log('格式化的结构')
             // console.log(forRes)
             let resultRes = this.deleteChildren(forRes);
-            console.log("格式化的结构且去掉children");
-            console.log(resultRes);
             this.groupData = resultRes;
           } else {
             this.groupData = [];
@@ -222,12 +213,20 @@ export default {
     },
     //非递归方式:将平铺数据转换为树形结构数据
     arrToTree(arr) {
+      console.log("arr----");
+      console.log(arr);
+      console.log(this.userInfo);
+      console.log(this.userInfo.orgNo);
       let data = arr.filter((item) => {
         item.children = arr.filter((e) => {
           return item.orgNo === e.parentOrgNo;
         });
-        return !item.parentOrgNo;
+
+        return this.userInfo.orgNo == item.orgNo;
+        //return !item.parentOrgNo;
       });
+      console.log("data------");
+      console.log(data);
       return data;
     },
     //去除转换树形结构数据后存在的空children
@@ -246,7 +245,7 @@ export default {
     },
     queryOrgName() {
       for (let i = 0; i < this.ppData.length; i++) {
-        if (this.ruleForm.group[this.ruleForm.group.length-1] == this.ppData[i].orgNo) {
+        if (this.ruleForm.group[this.ruleForm.group.length - 1] == this.ppData[i].orgNo) {
           this.groupName = this.ppData[i].orgName;
         }
       }
@@ -275,9 +274,9 @@ export default {
       }
     },
     open(val) {
-       this.cancle();
+      this.userInfo = JSON.parse(oSessionStorage.getItem("userInfo"));
+      this.cancle();
       this.getChannel();
-     
       this.dialogVisible = true;
       this.isView = val;
 
@@ -286,45 +285,47 @@ export default {
       });
     },
     edit(val) {
-   debugger;
+      this.userInfo = JSON.parse(oSessionStorage.getItem("userInfo"));
       this.getChannel();
       this.dialogVisible = true;
       this.isView = false;
-      this.queryUserDetail(val.id)
+      this.queryUserDetail(val.id);
       //调用查询详情的接口
     },
     //调用查询详情的接口
-    queryUserDetail(val){
-      let url = `/user/findUserById?id=${val}`
-      
-      this.$http.get(url,
-        {
-        },
-        (res) => {
-    
-          console.log(res)
-          if (res && res.code == 200) {
-           //获取返回值
-           //根据将数据存储
-           this.userDetailData=res.data;
-           let a =[]
-           for(let i=res.data.orgList.length;i>0;i--){
-                //
-                a.push(res.data.orgList[i-1].orgNo)                      
-           }
-           //回显学号
-           this.ruleForm.studentNumber=res.data.userNo;
-           //回显姓名
-           this.ruleForm.name=res.data.userName
-           //回显性别
-            this.ruleForm.sex=res.data.gender
-           this.ruleForm.group=a;
-          } else {
-            // this.$toast.fail(res.msg);
-            this.$message.error(res.msg);
-          }
+    queryUserDetail(val) {
+      let url = `/user/findUserById?id=${val}`;
+
+      this.$http.get(url, {}, (res) => {
+        console.log(res);
+        if (res && res.code == 200) {
+          //获取返回值
+          //根据将数据存储
+          this.userDetailData = res.data;
+          let a = [];
+          a.push(this.userInfo.orgNo);
+          a.push(res.data.orgNo);
+
+          console.log("a------------------");
+          console.log(a);
+          // debugger;
+          // for (let i = res.data.orgList.length; i > 0; i--) {
+          //   //
+          //   a.push(res.data.orgList[i - 1].orgNo);
+          // }
+          //回显学号
+          this.ruleForm.studentNumber = res.data.userNo;
+          //回显姓名
+          this.ruleForm.name = res.data.userName;
+          //回显性别
+          this.ruleForm.sex = res.data.gender;
+          //
+          this.ruleForm.group = a;
+        } else {
+          // this.$toast.fail(res.msg);
+          this.$message.error(res.msg);
         }
-      );
+      });
     },
     cancle() {
       this.$refs["ruleForm"].clearValidate();
@@ -380,30 +381,36 @@ export default {
       });
     },
     register() {
+      if (this.ruleForm.group.length == 1) {
+        this.$message({
+          message: "请选择专业节点",
+          type: "warning",
+        });
+        return;
+      }
       this.queryOrgName();
-     
-      console.log( this.ruleForm.group)
+
+      console.log(this.ruleForm.group);
       let that = this;
       // this.ruleForm.password = md5(this.ruleForm.password);
       this.$http.post(
         `/user/addOrUpdateUser`,
         {
-          orgNo:this.ruleForm.group[this.ruleForm.group.length-1] ,
+          orgNo: this.ruleForm.group[this.ruleForm.group.length - 1],
           orgName: this.groupName,
           userNo: this.ruleForm.studentNumber,
           userName: this.ruleForm.name,
           gender: this.ruleForm.sex,
           password: md5(this.ruleForm.password),
           //roleType     1普通用户    roleType   管理员
-          roleType:'1'
+          roleType: "1",
         },
         (res) => {
-
           this.disableFlagStatus();
           // this.disableFlag = false;
           if (res && res.code == 200) {
             this.dialogVisible = false;
-      
+
             // this.$toast.success({ message: "成功" });
             //调用父组件的查询方法
             that.$emit("search");
@@ -417,18 +424,17 @@ export default {
       );
     },
     editUserFun() {
-      
       let that = this;
       this.queryOrgName();
-      this.userDetailData.orgNo=this.ruleForm.group[this.ruleForm.group.length-1];
-      this.userDetailData.orgName=this.groupName; 
-      this.userDetailData.userName= this.ruleForm.name;
-      this.userDetailData.gender= this.ruleForm.sex;
-      this.userDetailData.userNo= this.ruleForm.studentNumber;
+      this.userDetailData.orgNo = this.ruleForm.group[this.ruleForm.group.length - 1];
+      this.userDetailData.orgName = this.groupName;
+      this.userDetailData.userName = this.ruleForm.name;
+      this.userDetailData.gender = this.ruleForm.sex;
+      this.userDetailData.userNo = this.ruleForm.studentNumber;
       this.$http.post(
-     `/user/addOrUpdateUser`,
+        `/user/addOrUpdateUser`,
         {
-        ...this.userDetailData
+          ...this.userDetailData,
         },
         (res) => {
           this.disableFlagStatus();

+ 50 - 16
src/components/Report.vue

@@ -1,5 +1,5 @@
 <template>
-  <div>
+  <div class="out">
     <!---lxh-修改密码-->
     <div class="dig_update">
       <el-dialog
@@ -47,12 +47,12 @@
                   width=""
                 >
                 </el-table-column>
-                <el-table-column label="操作" width="510px" align="center">
+                <el-table-column label="操作" width="auto" align="center">
                   <template slot-scope="scope">
-                    <div class="detail_button_out">
+                    <div class="detail_button_out" v-if="scope.row.isComplete=='1'">
                       <div class="detail_button" @click="queryRport(scope.row)">
-                        <img style="width: 20px" src="../assets/img/table/delete.png" />
-                        <span> 查看报告 </span>
+                        <img style="width: 20px" src="../assets/img/table/search.png" />
+                        <span>查看报告</span>
                       </div>
                     </div>
                   </template>
@@ -81,11 +81,11 @@
       <el-dialog
         :visible.sync="userVisible"
         append-to-body
-        width="80%"
+        width="81%"
         style="border-radius: 40px"
       >
-        <div slot="title">
-          <p style="text-align: center">查看报告</p>
+        <div slot="title" style="border-radius: 40px">
+          <p style="text-align: center; font-weight: 700">查看报告</p>
           <div class="kply">
             <div class="kply_inner">
               <div style="padding: 20px 40px">
@@ -93,10 +93,10 @@
                   <div class="report_info_out">
                     <img src="../assets/report/man.png" />
                     <div class="report_info_user">
-                      <span class="info">姓名:{{ proDataLin.userName }}</span>
-                      <span class="info">学号:{{ proDataLin.userNo }}</span>
+                      <span class="info">姓名:&nbsp;&nbsp;{{ proDataLin.userName }}</span>
+                      <span class="info">学号:&nbsp;&nbsp;{{ proDataLin.userNo }}</span>
                       <span class="info"
-                        >所属组织结构:<span style="color: #00bf78">{{
+                        >所属组织结构:&nbsp;&nbsp;<span style="color: #00bf78">{{
                           orgName
                         }}</span></span
                       >
@@ -123,9 +123,9 @@
                       style="
                         display: flex;
                         flex-direction: row;
-                     
+
                         width: 100%;
-                        flex-wrap:wrap;
+                        flex-wrap: wrap;
                         padding-top: 40px;
                         padding-bottom: 40px;
                       "
@@ -186,7 +186,7 @@ export default {
   data() {
     return {
       //接收所属组织结构的词语
-      orgName:'',
+      orgName: "",
       userVisible: false,
       //编辑返回的值
       userDetailData: {},
@@ -305,6 +305,7 @@ export default {
     },
     //查询报告 //根据planId 和用户编号
     queryRport(val) {
+  
       let params = {
         planId: val.id,
         userNo: this.proDataLin.userNo,
@@ -323,7 +324,7 @@ export default {
           let a = res.data.report.filter((item) => {
             return item.isIcon == "1";
           });
-          this.orgName=res.data.user.orgName
+          this.orgName = res.data.user.orgName;
           console.log(a);
           this.reportData = a;
           // let a =[res.data[0].]
@@ -534,8 +535,21 @@ export default {
   },
 };
 </script>
-
+<style>
+.el-dialog {
+  border-radius: 20px !important;
+  /* background-color: #f7f7f7 !important; */
+}
+</style>
 <style lang="less" scoped>
+.out /deep/.el-dialog {
+  border-radius: 20px !important;
+  // background-color: #f7f7f7 !important;
+}
+.out/deep/ .el-dialog__header {
+  padding: 0px 0px 0px !important;
+}
+
 .progress_out/deep/ .el-progress-bar__inner {
   background-image: linear-gradient(to right, #ff4e00, #ffffff);
 }
@@ -546,6 +560,7 @@ export default {
   width: 100%;
 }
 .dig_update /deep/.el-dialog {
+  border-radius: 20px !important;
   box-shadow: none !important;
   background: transparent !important;
 }
@@ -767,4 +782,23 @@ export default {
     // font-weight: 700;
   }
 }
+.detail_button_out {
+  flex: 1;
+  display: flex;
+  justify-content: space-around;
+  .detail_button {
+    display: flex;
+    align-items: center;
+    cursor: pointer;
+    letter-spacing: 2px;
+    img {
+      width: 15px;
+      margin-right: 5px;
+    }
+    span {
+      color: #00bf78;
+      // font-weight: 600;
+    }
+  }
+}
 </style>

+ 2 - 2
src/views/loginNew.vue

@@ -118,7 +118,7 @@ export default {
     };
   },
   mounted() {
-    this.getCode();
+    // this.getCode();
   },
   methods: {
     getCode() {
@@ -156,7 +156,7 @@ export default {
                 if (res.data.user.roleType == "3") {
                   this.$router.push({ path: "/manage/userManage" });
                 } else if (res.data.user.roleType == "2") {
-                  this.$router.push({ path: "/manage/channelInfo" });
+                  this.$router.push({ path: "/manage/userManage" });
                 } else if (res.data.user.roleType == "1") {
                   this.$message({
                     message: '请使用管理账号登录',

+ 8 - 11
src/views/manage/channelInfo/channelUserManage.vue

@@ -48,7 +48,6 @@
               >搜索</el-button
             >
             <el-button type="info" round @click="clearSearch">清空</el-button>
-           
           </div>
         </el-col>
       </el-row>
@@ -96,8 +95,6 @@
                   <img src="../../../assets/img/table/search.png" />
                   <span> 选择计划 </span>
                 </div>
-    
-            
               </div>
               <!-- <el-popconfirm
                 v-if="scope.row.state != 0"
@@ -238,18 +235,16 @@ export default {
   methods: {
     //文件上传成功
     fileSuccess(res) {
-  
-
       if (res.code == 200) {
         this.searchTarget();
         this.$message({
-          message:res.msg,
+          message: res.msg,
           type: "success",
         });
-      }else{
+      } else {
         this.$message({
-          message:res.msg,
-          type: 'error',
+          message: res.msg,
+          type: "error",
         });
       }
       //查询列表
@@ -332,7 +327,9 @@ export default {
         item.children = arr.filter((e) => {
           return item.orgNo === e.parentOrgNo;
         });
-        return !item.parentOrgNo;
+
+        return this.userInfo.orgNo == item.orgNo;
+        //return !item.parentOrgNo;
       });
       return data;
     },
@@ -431,7 +428,7 @@ export default {
       let url = `/user/findUserListByPage?pageSize=${this.pageSize}&pageNum=${
         this.pageNum
       }${this.sex == "" ? "" : `&gender=${this.sex}`}${
-        this.group.length == 0 ? "" : `&orgNo=${this.group[this.group.length - 1]}`
+        this.group.length == 0 ? `&orgNo=${this.userInfo.orgNo}` : `&orgNo=${this.group[this.group.length - 1]}`
       }${this.name == "" ? "" : `&userName=${this.name}`}${
         this.studentNumber == "" ? "" : `&userNo=${this.studentNumber}`
       }`;

+ 28 - 18
src/views/manage/channelInfo/invite.vue

@@ -101,19 +101,27 @@
                   <img src="../../../assets/img/table/edit.png" />
                   <span> 编辑 </span>
                 </div>
-                <div class="detail_button" v-show="scope.row.status=='1'" @click="resetPlan(false, scope.row)">
+                <div
+                  class="detail_button"
+                  v-show="scope.row.status == '1'"
+                  @click="resetPlan(false, scope.row)"
+                >
                   <img src="../../../assets/img/table/xiafa.png" />
                   <span> 下发 </span>
                 </div>
-                <div class="detail_button" @click="userOp( scope.row)">
+                <div class="detail_button" @click="userOp(scope.row)">
                   <img src="../../../assets/img/table/people.png" />
                   <span> 人员配置 </span>
                 </div>
-                <div class="detail_button" @click="userPlanStatusFun( scope.row)">
+                <div class="detail_button" @click="userPlanStatusFun(scope.row)">
                   <img src="../../../assets/img/table/pro.png" />
                   <span> 进度查看 </span>
                 </div>
-                <div class="detail_button" v-show="scope.row.status=='1'" @click="resetPlan(true, scope.row)">
+                <div
+                  class="detail_button"
+                  v-show="scope.row.status == '1'"
+                  @click="resetPlan(true, scope.row)"
+                >
                   <img src="../../../assets/img/table/delete.png" />
                   <span> 删除 </span>
                 </div>
@@ -139,8 +147,8 @@
       </el-pagination> -->
     </div>
     <PlanRegister ref="register" @search="searchTarget" />
-    <PlanUser ref="planUserAdd"/>
-    <PlanUserStatus  ref="userStatus" />
+    <PlanUser ref="planUserAdd" />
+    <PlanUserStatus ref="userStatus" />
     <el-dialog
       class="dig_update"
       :visible.sync="centerDialogVisible"
@@ -196,7 +204,7 @@
         <div class="demo-ruleForm">
           <p v-show="!isDelete" class="dig_title">下发计划</p>
           <p v-show="isDelete" class="dig_title">删除计划</p>
-          <p v-show="!isDelete">将下发{{opPlanName}}计划吗</p>
+          <p v-show="!isDelete">将下发{{ opPlanName }}计划吗</p>
           <p v-show="isDelete">确认将删除{{ opPlanName }}计划?</p>
           <div class="dig_button">
             <el-button type="info" round @click="cancle()">取消</el-button>
@@ -263,8 +271,8 @@ export default {
   name: "userManage",
   components: {
     PlanRegister: planRegister,
-    PlanUser:planUser,
-    PlanUserStatus:planUserStatus
+    PlanUser: planUser,
+    PlanUserStatus: planUserStatus,
   },
   data() {
     return {
@@ -331,11 +339,11 @@ export default {
       ],
       planStatus: "",
       planName: "",
-      
+
       //删除时用的planId
-      opPlanId :'',
-        //删除时用的planName
-      opPlanName :''
+      opPlanId: "",
+      //删除时用的planName
+      opPlanName: "",
     };
   },
   created() {},
@@ -351,10 +359,10 @@ export default {
   },
   methods: {
     //打开用户列表弹出框
-    userOp(val){
+    userOp(val) {
       this.$refs.planUserAdd.open(val);
     },
-    userPlanStatusFun(val){
+    userPlanStatusFun(val) {
       this.$refs.userStatus.open(val);
     },
     //文件上传成功
@@ -480,11 +488,11 @@ export default {
       }
     },
     resetPlan(flag, val) {
-      this.isDelete=flag
+      this.isDelete = flag;
       this.resetVisible = true;
       this.opPlanId = val.id;
       this.opPlanName = val.planName;
- 
+
       //当前用户id
 
       //重置密码
@@ -555,7 +563,9 @@ export default {
     },
     //根据现有情况进行搜索
     searchList() {
-      let url = `/plan/findListByPage?pageSize=${this.pageSize}&pageNum=${this.pageNum}${
+      let url = `/plan/findListByPage?pageSize=${this.pageSize}&pageNum=${
+        this.pageNum
+      }&orgNo=${this.userInfo.orgNo}${
         this.planName == "" ? "" : `&planName=${this.planName}`
       }${this.planStatus == "" ? "" : `&planStatus=${this.planStatus}`}`;
       this.$http.get(url, {}, (res) => {

+ 0 - 1
src/views/manage/channelInfo/orderSettlement.vue

@@ -207,7 +207,6 @@ export default {
     deleteStock(data) {
       this.currentSelectObj = data;
       console.log(this.currentSelectObj);
-      debugger;
 
       this.dialogVisible2 = true;
     },

+ 91 - 60
src/views/manage/channelManagement/channelManagement.vue

@@ -4,51 +4,39 @@
       <el-row>
         <el-col :span="24">
           <div class="search-head">
-            <el-input v-model="name" clearable placeholder="请输入姓名"></el-input
+            <el-input v-model="planName" clearable placeholder="请输入计划名称"></el-input
             >&nbsp;&nbsp;&nbsp;&nbsp;
 
-            <el-input
-              v-model="studentNumber"
-              clearable
-              placeholder="请输入学号"
-            ></el-input
-            >&nbsp;&nbsp;&nbsp;&nbsp;
+            <el-date-picker
+              :clearable="false"
+              v-model="planTime"
+              type="date"
+              format="yyyy-MM-dd"
+              placeholder="选择创建日期"
+            >
+            </el-date-picker>
             <el-cascader
               placeholder="请选择组织架构"
               v-model="group"
               :options="groupData"
               :props="{ checkStrictly: true }"
               clearable
-            ></el-cascader>
-            <!-- <el-select v-model="channel" placeholder="请选择所属组织架构">
+            ></el-cascader
+            >&nbsp;&nbsp;&nbsp;&nbsp;
+            <el-select v-model="planStatus" placeholder="请选择计划状态">
               <el-option
                 :label="item.name"
                 :value="item.id"
                 v-for="item in channelList"
                 :key="item.id"
-              ></el-option> 
-            </el-select> -->
-            &nbsp;&nbsp;&nbsp;&nbsp;
-            <!-- <span style="font-size: 16px;">性别:</span>&nbsp;&nbsp; -->
-            <div style="display: flex; flex-direction: row; align-items: center">
-              <span
-                style="
-                  font-size: 16px;
-                  margin-right: 10px;
-                  line-height: 20px;
-                  min-width: 40px;
-                "
-                >性别:</span
-              >
-              <el-radio v-model="sex" label="1">男</el-radio>
-              <el-radio v-model="sex" label="0">女</el-radio>
-            </div>
+              ></el-option>
+            </el-select>
+
             &nbsp;&nbsp;&nbsp;&nbsp;
             <el-button type="primary" round icon="el-icon-search" @click="searchTarget"
               >搜索</el-button
             >
             <el-button type="info" round @click="clearSearch">清空</el-button>
-           
           </div>
         </el-col>
       </el-row>
@@ -79,21 +67,27 @@
           </el-table-column>
           <el-table-column prop="planEndTime" label="结束时间" align="center" width="">
           </el-table-column>
+          <el-table-column prop="planOrgName" label="所属专业" align="center" width="">
+          </el-table-column>
           <!-- <el-table-column prop="userNo" label="测试人数" align="center" width="">
           </el-table-column> -->
           <el-table-column prop="createUserName" label="创建人" align="center" width="">
           </el-table-column>
-          <el-table-column prop="planStatus" label="状态" :formatter="forMaPlan" align="center" width="">
+          <el-table-column
+            prop="planStatus"
+            label="状态"
+            :formatter="forMaPlan"
+            align="center"
+            width=""
+          >
           </el-table-column>
-          <el-table-column label="操作" width="510px" align="center">
+          <el-table-column label="操作" width="auto" align="center">
             <template slot-scope="scope">
-              <div class="detail_button_out">
+              <div class="detail_button_out" v-if="scope.row.planStatus == '3'">
                 <div class="detail_button" @click="addUser(scope.row)">
                   <img src="../../../assets/img/table/search.png" />
                   <span> 查看报告 </span>
                 </div>
-    
-            
               </div>
               <!-- <el-popconfirm
                 v-if="scope.row.state != 0"
@@ -177,7 +171,11 @@ export default {
       // 搜索需要的性别
       sex: "",
 
+      planName: "",
+      planTime: "",
+      planStatus: "",
       group: "",
+
       ppData: [],
       groupData: [],
       options: [
@@ -215,8 +213,12 @@ export default {
         sex: "",
         orgName: "",
       },
-      channel: "",
-      channelList: [{ name: "渠道天成", id: "1" }],
+
+      channelList: [
+        { name: "未开始", id: "1" },
+        { name: "进行中", id: "2" },
+        { name: "已完成", id: "3" },
+      ],
     };
   },
   created() {},
@@ -231,32 +233,30 @@ export default {
     this.searchTarget();
   },
   methods: {
-    forMaPlan(val){
-      if(val.planStatus=='1'){
-        return '未开始'
-          //  
-      }else  if(val.planStatus=='2'){
-          //
-          return '进行中'
-      }else  if(val.planStatus=='3'){
-          //
-          return '已完成'
+    forMaPlan(val) {
+      if (val.planStatus == "1") {
+        return "未开始";
+        //
+      } else if (val.planStatus == "2") {
+        //
+        return "进行中";
+      } else if (val.planStatus == "3") {
+        //
+        return "已完成";
       }
     },
     //文件上传成功
     fileSuccess(res) {
-  
-
       if (res.code == 200) {
         this.searchTarget();
         this.$message({
-          message:res.msg,
+          message: res.msg,
           type: "success",
         });
-      }else{
+      } else {
         this.$message({
-          message:res.msg,
-          type: 'error',
+          message: res.msg,
+          type: "error",
         });
       }
       //查询列表
@@ -339,7 +339,8 @@ export default {
         item.children = arr.filter((e) => {
           return item.orgNo === e.parentOrgNo;
         });
-        return !item.parentOrgNo;
+        return this.userInfo.orgNo==item.orgNo
+        // return !item.parentOrgNo;
       });
       return data;
     },
@@ -388,16 +389,29 @@ export default {
       this.addRegisterUser(val);
     },
     clearSearch() {
-      this.name = "";
-      //搜索的用户编号
-      this.studentNumber = "";
-      //搜索的组织架构
-      // 搜索需要的性别
-      this.sex = "";
+      this.planName = "";
+      this.planTime = "";
       this.group = "";
+      this.planStatus = "";
       this.searchTarget();
     },
-
+    
+    formatterTime(val) {
+      let date = new Date(val);
+      let year = date.getFullYear();
+      let month = date.getMonth() + 1;
+      month = this.formatterMon(month);
+      let day = date.getDate();
+      day = this.formatterMon(day);
+      return year + "-" + month + "-" + day;
+    },
+    formatterMon(val) {
+      if (val < 10) {
+        return "0" + val;
+      } else {
+        return val;
+      }
+    },
     addRegisterUser(val) {
       this.$refs.register.open(val);
     },
@@ -435,11 +449,28 @@ export default {
     },
     //根据现有情况进行搜索
     searchList() {
-      let url = `/plan/findListByPage?pageSize=${this.pageSize}&pageNum=${this.pageNum}`;
+ 
+      let time = "";
+      if (this.planTime != "") {
+        time = this.formatterTime(this.planTime);
+      }
+    
+      let gp = "";
+      if (this.group != "") {
+        gp = this.group[this.group.length - 1];
+      }
+      console.log(this.planStatus);
+      //格式化时间
+      console.log("this.planTime");
+      console.log(time);
+      console.log(this.planName);
+      console.log(gp);
+
+      let url = `/plan/findListByPage?pageSize=${this.pageSize}&pageNum=${this.pageNum}${gp==''?`&orgNo=${this.userInfo.orgNo}`:`&orgNo=${gp}`}${time==''?'':`&createDate=${time}`}${this.planStatus==''?'':`&planStatus=${this.planStatus}`}${this.planName==''?'':`&planName=${this.planName}`}`;
       this.$http.get(url, {}, (res) => {
         console.log(res);
         if (res && res.code == 200) {
-          console.log(res.data.content)
+          console.log(res.data.content);
           this.tableData = res.data.content;
           this.total = res.data.totalElements;
         } else {

+ 159 - 56
src/views/manage/channelManagement/contract.vue

@@ -17,15 +17,27 @@
       <el-row>
         <el-col :span="24">
           <div class="search-head">
-            <el-input v-model="name" clearable placeholder="请输入姓名"></el-input
-            >&nbsp;&nbsp;&nbsp;&nbsp;
-
             <el-input
+              v-show="isUser"
+              v-model="name"
+              clearable
+              placeholder="请输入姓名"
+            ></el-input>
+            <div v-show="isUser">&nbsp;&nbsp;&nbsp;&nbsp;</div>
+            <el-input
+              v-show="isUser"
               v-model="studentNumber"
               clearable
               placeholder="请输入学号"
-            ></el-input
-            >&nbsp;&nbsp;&nbsp;&nbsp;
+            ></el-input>
+            <div v-show="isUser">&nbsp;&nbsp;&nbsp;&nbsp;</div>
+            <el-input
+              v-show="!isUser"
+              v-model="planName"
+              clearable
+              placeholder="请输入计划名称"
+            ></el-input>
+            <div v-show="!isUser">&nbsp;&nbsp;&nbsp;&nbsp;</div>
             <el-cascader
               placeholder="请选择组织架构"
               v-model="group"
@@ -34,21 +46,6 @@
               clearable
             ></el-cascader>
             &nbsp;&nbsp;&nbsp;&nbsp;
-            <!-- <span style="font-size: 16px;">性别:</span>&nbsp;&nbsp; -->
-            <div style="display: flex; flex-direction: row; align-items: center">
-              <span
-                style="
-                  font-size: 16px;
-                  margin-right: 10px;
-                  line-height: 20px;
-                  min-width: 40px;
-                "
-                >性别:</span
-              >
-              <el-radio v-model="sex" label="1">男</el-radio>
-              <el-radio v-model="sex" label="0">女</el-radio>
-            </div>
-            &nbsp;&nbsp;&nbsp;&nbsp;
             <el-button type="primary" round icon="el-icon-search" @click="searchTarget"
               >搜索</el-button
             >
@@ -64,7 +61,84 @@
 
       <div class="table-content">
         <el-table
-          
+          v-show="isUser"
+          :data="tableData"
+          :row-style="{ height: '0px' }"
+          :cell-style="{ padding: '5px' }"
+          :header-cell-style="{ background: '#F8F8F8', color: '#606266' }"
+        >
+          <el-table-column
+            v-if="isUser"
+            show-overflow-tooltip
+            prop="userName"
+            label="姓名"
+            align="center"
+            width=""
+          >
+          </el-table-column>
+          <el-table-column
+            v-if="isUser"
+            prop="userNo"
+            label="学号"
+            align="center"
+            width=""
+          >
+          </el-table-column>
+          <el-table-column
+            v-if="isUser"
+            prop="totalScore"
+            label="总分"
+            align="center"
+            width=""
+          >
+          </el-table-column>
+          <el-table-column
+            v-if="isUser"
+            prop="gender"
+            label="性别"
+            align="center"
+            width=""
+            :formatter="genderFun"
+          >
+          </el-table-column>
+          <el-table-column
+            v-if="isUser"
+            prop="orgName"
+            label="所属组织架构"
+            align="center"
+            width=""
+          >
+          </el-table-column>
+          <el-table-column label="操作" width="400" align="center">
+            <template slot-scope="scope">
+              <div style="display: flex; align-items: center">
+                <div class="detail_button_out" v-if="isUser">
+                  <div class="detail_button" @click="addUser(scope.row)">
+                    <img src="../../../assets/img/table/search.png" />
+                    <span> 个人报告列表 </span>
+                  </div>
+                </div>
+                <div class="detail_button_out" v-if="!isUser">
+                  <div class="detail_button" @click="planReport(scope.row)">
+                    <img src="../../../assets/img/table/search.png" />
+                    <span> 专业报告对比 </span>
+                  </div>
+                </div>
+                <div class="detail_button_out" v-if="!isUser">
+                  <div class="detail_button" @click="planUser(scope.row)">
+                    <img src="../../../assets/img/table/search.png" />
+                    <span> 个人报告列表 </span>
+                  </div>
+                </div>
+              </div>
+            </template>
+          </el-table-column>
+        </el-table>
+      </div>
+
+      <div class="table-content">
+        <el-table
+          v-show="!isUser"
           :data="tableData"
           :row-style="{ height: '0px' }"
           :cell-style="{ padding: '5px' }"
@@ -72,7 +146,7 @@
         >
           <!-- <el-table-column prop="name" label="姓名" align="center" width=""  show-overflow-tooltip>
           </el-table-column> -->
-          <el-table-column
+          <!-- <el-table-column
            v-if="isUser"
             show-overflow-tooltip
             prop="userName"
@@ -102,9 +176,9 @@
             width=""
          
           >
-          </el-table-column>
+          </el-table-column> -->
           <el-table-column
-           v-if="!isUser"
+            v-if="!isUser"
             show-overflow-tooltip
             prop="planName"
             label="计划名称"
@@ -112,13 +186,32 @@
             width=""
           >
           </el-table-column>
-          <el-table-column  v-if="!isUser" prop="createDate" label="创建时间" align="center" width="">
+          <el-table-column
+            v-if="!isUser"
+            prop="createDate"
+            label="创建时间"
+            align="center"
+            width=""
+          >
           </el-table-column>
-          <el-table-column  v-if="!isUser" prop="planEndTime" label="结束时间" align="center" width="">
+          <el-table-column
+            v-if="!isUser"
+            prop="planEndTime"
+            label="结束时间"
+            align="center"
+            width=""
+          >
           </el-table-column>
-          <el-table-column  v-if="!isUser" prop="createUserName" label="创建人" align="center" width="">
+          <el-table-column
+            v-if="!isUser"
+            prop="createUserName"
+            label="创建人"
+            align="center"
+            width=""
+          >
           </el-table-column>
-          <el-table-column  v-if="!isUser"
+          <el-table-column
+            v-if="!isUser"
             prop="planStatus"
             label="状态"
             :formatter="forMaPlan"
@@ -126,24 +219,26 @@
             width=""
           >
           </el-table-column>
-          <el-table-column label="操作" width="510px" align="center">
+          <el-table-column label="操作" width="400" align="center">
             <template slot-scope="scope">
-              <div class="detail_button_out" v-if="isUser">
-                <div class="detail_button" @click="addUser(scope.row)">
-                  <img src="../../../assets/img/table/search.png" />
-                  <span> 个人报告列表 </span>
+              <div style="display: flex; align-items: center">
+                <div class="detail_button_out" v-if="isUser">
+                  <div class="detail_button" @click="addUser(scope.row)">
+                    <img src="../../../assets/img/table/search.png" />
+                    <span> 个人报告列表 </span>
+                  </div>
                 </div>
-              </div>
-              <div class="detail_button_out" v-if="!isUser">
-                <div class="detail_button" @click="addUser(scope.row)">
-                  <img src="../../../assets/img/table/search.png" />
-                  <span> 专业报告对比 </span>
+                <div class="detail_button_out" v-if="!isUser &&scope.row.planStatus=='3'">
+                  <div class="detail_button" @click="planReport(scope.row)">
+                    <img src="../../../assets/img/table/search.png" />
+                    <span> 专业报告对比 </span>
+                  </div>
                 </div>
-              </div>
-              <div class="detail_button_out" v-if="!isUser">
-                <div class="detail_button" @click="planUser(scope.row)">
-                  <img src="../../../assets/img/table/search.png" />
-                  <span> 个人报告列表 </span>
+                <div class="detail_button_out" v-if="!isUser">
+                  <div class="detail_button" @click="planUser(scope.row)">
+                    <img src="../../../assets/img/table/search.png" />
+                    <span> 个人报告列表 </span>
+                  </div>
                 </div>
               </div>
             </template>
@@ -168,6 +263,7 @@
     </div>
     <CompareUser ref="register" @search="searchTarget" />
     <ComparePlanUser ref="planUser" @search="searchTarget" />
+    <ComparePlanProfession ref="planProfession" @search="searchTarget" />
   </div>
 </template>
 
@@ -175,6 +271,7 @@
 import { oSessionStorage } from "../../../utils/utils";
 import compareUser from "../../../components/CompareUser.vue";
 import comparePlanUser from "../../../components/ComparePlanUser.vue";
+import comparePlanProfession from "../../../components/ComparePlanProfession.vue";
 import { basePath } from "../../../utils/http";
 import userImgActive from "../../../assets/report/lv.png";
 import userImgDefault from "../../../assets/report/white.png";
@@ -182,7 +279,8 @@ export default {
   name: "userManage",
   components: {
     CompareUser: compareUser,
-    ComparePlanUser:comparePlanUser
+    ComparePlanUser: comparePlanUser,
+    ComparePlanProfession: comparePlanProfession,
   },
   data() {
     return {
@@ -205,6 +303,7 @@ export default {
       //重置密码弹出框
       resetVisible: false,
       //根据名称搜索
+      planName: "",
       name: "",
       //搜索的用户编号
       studentNumber: "",
@@ -270,14 +369,16 @@ export default {
       this.isUser = val;
 
       if (val) {
-       
         this.userImg = userImgActive;
         this.planImg = userImgDefault;
       } else {
         this.planImg = userImgActive;
         this.userImg = userImgDefault;
       }
-      this.searchTarget()
+      this.searchTarget();
+    },
+    planReport(val) {
+      this.$refs.planProfession.open(val);
     },
     forMaPlan(val) {
       if (val.planStatus == "1") {
@@ -385,7 +486,8 @@ export default {
         item.children = arr.filter((e) => {
           return item.orgNo === e.parentOrgNo;
         });
-        return !item.parentOrgNo;
+        return this.userInfo.orgNo == item.orgNo
+        // return !item.parentOrgNo;
       });
       return data;
     },
@@ -430,8 +532,8 @@ export default {
       this.view.orgName = row.orgName;
       this.centerDialogVisible = true;
     },
-    planUser(val){
-      this.$refs.planUser.open(val)
+    planUser(val) {
+      this.$refs.planUser.open(val);
     },
     addUser(val) {
       this.addRegisterUser(val);
@@ -442,7 +544,7 @@ export default {
       this.studentNumber = "";
       //搜索的组织架构
       // 搜索需要的性别
-      this.sex = "";
+      this.planName = "";
       this.group = "";
       this.searchTarget();
     },
@@ -464,13 +566,13 @@ export default {
       if (this.isUser) {
         url = `/user/findUserListByPage?pageSize=${this.pageSize}&pageNum=${
           this.pageNum
-        }${this.sex == "" ? "" : `&gender=${this.sex}`}${
-          this.group.length == 0 ? "" : `&orgNo=${this.group[this.group.length - 1]}`
-        }${this.name == "" ? "" : `&userName=${this.name}`}${
-          this.studentNumber == "" ? "" : `&userNo=${this.studentNumber}`
-        }`;
+        }${this.group.length == 0 ? `&orgNo=${this.userInfo.orgNo}` : `&orgNo=${this.group[this.group.length - 1]}`}${
+          this.name == "" ? "" : `&userName=${this.name}`
+        }${this.studentNumber == "" ? "" : `&userNo=${this.studentNumber}`}`;
       } else {
-        url = `/plan/findListByPage?pageSize=${this.pageSize}&pageNum=${this.pageNum}`;
+        url = `/plan/findListByPage?pageSize=${this.pageSize}&pageNum=${this.pageNum}${
+          this.planName == "" ? "" : `&planName=${this.planName}`
+        }${this.group.length == 0 ? `&orgNo=${this.userInfo.orgNo}` : `&orgNo=${this.group[this.group.length - 1]}`}`;
       }
       this.$http.get(url, {}, (res) => {
         console.log(res);
@@ -602,6 +704,7 @@ export default {
   flex: 3;
 }
 .detail_button_out {
+  flex: 1;
   display: flex;
   justify-content: space-around;
   .detail_button {

+ 0 - 1
src/views/manage/channelManagement/editHomePage.vue

@@ -436,7 +436,6 @@ export default {
       //  let url =``
       this.tableData = [];
       this.$http.get(`/pdf/find/${this.channelId}`, {}, (res) => {
-        debugger;
         // console.log(res,'用户测试记录')
         if (res && res.code == 200) {
           this.tableData.push(res.data);

+ 0 - 1
src/views/manage/channelManagement/staff.vue

@@ -358,7 +358,6 @@ export default {
           // isDelete: 0,
         },
         (res) => {
-          debugger;
           // console.log(res,'用户测试记录')
           if (res && res.code == 200) {
             this.tableData = res.data.data;

+ 172 - 42
src/views/manage/manageMain.vue

@@ -78,7 +78,6 @@
         <el-row class="admin-header-content">
           <el-col :span="12">
             <el-row>
-
               <el-col :span="10">
                 <div class="main_top_1">
                   <div class="blue">&nbsp;&nbsp;</div>
@@ -167,12 +166,12 @@
                 autocomplete="off"
               ></el-input>
             </el-form-item>
-            <div  class="dig_button">
-             
-             <el-button type="info" round @click="resetForm('ruleForm')">重置</el-button>
-             <el-button  type="success" round  @click="submitForm('ruleForm')">提交</el-button>
+            <div class="dig_button">
+              <el-button type="info" round @click="resetForm('ruleForm')">重置</el-button>
+              <el-button type="success" round @click="submitForm('ruleForm')"
+                >提交</el-button
+              >
             </div>
-          
           </el-form>
         </div>
       </el-dialog>
@@ -323,7 +322,7 @@ export default {
               showItem: true,
             },
           ],
-        }
+        },
       ],
       //面包屑页签
       crumbParent: "首页",
@@ -352,20 +351,150 @@ export default {
   created() {
     if (oSessionStorage.getItem("userInfo")) {
       this.userInfo = JSON.parse(oSessionStorage.getItem("userInfo"));
-      this.userType = this.userInfo.type;
+      this.userType = this.userInfo.roleType;
+      console.log(this.userInfo)
+      console.log(this.userType)
       //假如是代理用户则 //代理用户菜单不显示
-      if (this.userType == "0") {
-        for (let i = 0; i < this.menuList.length; i++) {
-          if (
-            this.menuList[i].id == "5" ||
-            this.menuList[i].id == "6" ||
-            this.menuList[i].id == "2" ||
-            this.menuList[i].id == "3" ||
-            this.menuList[i].id == "1"
-          ) {
-            this.menuList[i].showItem = false;
-          }
-        }
+      if (this.userType == "3") {
+        this.menuList = [
+          {
+            id: "0",
+            name: "用户管理",
+            icon: require("../../assets/menu/user.png"),
+            showItem: true,
+            path: "/manage/userManage",
+          },
+          {
+            id: "1",
+            name: "院管理员管理",
+            icon: require("../../assets/menu/yuan.png"),
+            showItem: true,
+            path: "/manage/channelInfo",
+          },
+          {
+            id: "2",
+            name: "组织架构",
+            icon: require("../../assets/menu/zu.png"),
+            showItem: true,
+            path: "/manage/orderSettlement",
+          },
+          {
+            id: "3",
+            name: "测试计划",
+            icon: require("../../assets/menu/plan.png"),
+            showItem: true,
+            path: "/manage/invite",
+          },
+          {
+            id: "4",
+            name: "报告分析",
+            icon: require("../../assets/menu/plan.png"),
+            showItem: true,
+            path: "/manage/recordListAll",
+            child: [
+              {
+                id: "41",
+                name: "用户报告",
+                parentName: "报告分析",
+                icon: "el-icon-user-solid",
+                path: "/manage/channelUserManage",
+                showItem: true,
+              },
+              {
+                id: "42",
+                name: "计划报告",
+                parentName: "报告分析",
+                icon: "el-icon-user-solid",
+                path: "/manage/channelManagement",
+                showItem: true,
+              },
+              {
+                id: "43",
+                name: "对比分析",
+                parentName: "报告分析",
+                icon: "el-icon-user-solid",
+                path: "/manage/contract",
+                showItem: true,
+              },
+            ],
+          },
+        ];
+        // for (let i = 0; i < this.menuList.length; i++) {
+        //   if (
+        //     this.menuList[i].id == "5" ||
+        //     this.menuList[i].id == "6" ||
+        //     this.menuList[i].id == "2" ||
+        //     this.menuList[i].id == "3" ||
+        //     this.menuList[i].id == "1"
+        //   ) {
+        //     this.menuList[i].showItem = false;
+        //   }
+        // }
+      } else if (this.userType == "2") {
+        //
+        this.menuList = [
+          {
+            id: "0",
+            name: "用户管理",
+            icon: require("../../assets/menu/user.png"),
+            showItem: true,
+            path: "/manage/userManage",
+          },
+          // {
+          //   id: "1",
+          //   name: "院管理员管理",
+          //   icon: require("../../assets/menu/yuan.png"),
+          //   showItem: true,
+          //   path: "/manage/channelInfo",
+          // },
+          // {
+          //   id: "2",
+          //   name: "组织架构",
+          //   icon: require("../../assets/menu/zu.png"),
+          //   showItem: true,
+          //   path: "/manage/orderSettlement",
+          // },
+          {
+            id: "3",
+            name: "测试计划",
+            icon: require("../../assets/menu/plan.png"),
+            showItem: true,
+            path: "/manage/invite",
+          },
+          {
+            id: "4",
+            name: "报告分析",
+            icon: require("../../assets/menu/plan.png"),
+            showItem: true,
+            path: "/manage/recordListAll",
+            child: [
+              {
+                id: "41",
+                name: "用户报告",
+                parentName: "报告分析",
+                icon: "el-icon-user-solid",
+                path: "/manage/channelUserManage",
+                showItem: true,
+              },
+              {
+                id: "42",
+                name: "计划报告",
+                parentName: "报告分析",
+                icon: "el-icon-user-solid",
+                path: "/manage/channelManagement",
+                showItem: true,
+              },
+              {
+                id: "43",
+                name: "对比分析",
+                parentName: "报告分析",
+                icon: "el-icon-user-solid",
+                path: "/manage/contract",
+                showItem: true,
+              },
+            ],
+          },
+        ];
       }
     }
   },
@@ -448,10 +577,12 @@ export default {
     /*lxh-修改密码*/
     submitForm(formName) {
       this.$refs[formName].validate((valid) => {
-        console.log(this.userInfo)
+        console.log(this.userInfo);
         if (valid) {
           this.$http.get(
-            `/system/updatePassword?userNo=${ this.userInfo.userNo}&password=${md5(this.ruleForm.pass)}&oldPassword=${md5(this.ruleForm.oldpass)}`,
+            `/system/updatePassword?userNo=${this.userInfo.userNo}&password=${md5(
+              this.ruleForm.pass
+            )}&oldPassword=${md5(this.ruleForm.oldpass)}`,
             // {
             //   userNo: this.userInfo.userNo,
             //   password: md5(this.ruleForm.pass),
@@ -570,8 +701,6 @@ export default {
 </style>
 
 <style lang="less" scoped>
-
-
 .el-menu-vertical-demo:not(.el-menu--collapse) {
   width: 200px;
   min-height: 400px;
@@ -765,6 +894,7 @@ export default {
   flex-direction: row;
   justify-content: flex-end;
   .user_out {
+    min-width: 150px;
     position: relative;
     display: flex;
     align-items: center;
@@ -876,36 +1006,36 @@ export default {
   background: transparent !important;
 }
 .demo-ruleForm /deep/ .el-form-item {
-    margin-right: 10px;
-    vertical-align: top;
-    display: flex !important;
-    flex-direction: column;
+  margin-right: 10px;
+  vertical-align: top;
+  display: flex !important;
+  flex-direction: column;
 }
 .demo-ruleForm /deep/.el-form-item__label {
-    text-align: left;
-    vertical-align: middle;
-    float: left;
-    font-size: 14px;
-    color: #606266;
-    line-height: 40px;
-    padding: 0 12px 0 0;
-    -webkit-box-sizing: border-box;
-    box-sizing: border-box;
+  text-align: left;
+  vertical-align: middle;
+  float: left;
+  font-size: 14px;
+  color: #606266;
+  line-height: 40px;
+  padding: 0 12px 0 0;
+  -webkit-box-sizing: border-box;
+  box-sizing: border-box;
 }
 
-.demo-ruleForm /deep/.el-input{
+.demo-ruleForm /deep/.el-input {
   width: 100% !important;
 }
 
-.demo-ruleForm /deep/.el-input__inner{
+.demo-ruleForm /deep/.el-input__inner {
   width: 100% !important;
-  background-color: #F7F7F7;
+  background-color: #f7f7f7;
   border: 0px;
 }
 
-.dig_button{
+.dig_button {
   display: flex;
-  width:100%;
+  width: 100%;
   justify-content: space-around;
 }
 

+ 0 - 2
src/views/manage/orderManage/orderInvite.vue

@@ -274,7 +274,6 @@ export default {
   methods: {
     //渠道发生变化
     changeChannel() {
-      debugger;
       this.getUserInfo();
       this.searchTarget();
     },
@@ -304,7 +303,6 @@ export default {
       this.$http.get(`/staff/find/${this.channel}`, {}, (res) => {
         //  this.$toast.success({message:'成功'});
         if (res && res.code == 200) {
-          debugger;
           //将值赋值给list
           this.userList = res.data;
         } else {

+ 0 - 1
src/views/manage/orderManage/userOrder.vue

@@ -377,7 +377,6 @@ export default {
       this.$http.get(`/staff/find/${this.channel}`, {}, (res) => {
         //  this.$toast.success({message:'成功'});
         if (res && res.code == 200) {
-          debugger;
           //将值赋值给list
           this.userList = res.data;
         } else {

+ 7 - 4
src/views/manage/userManage.vue

@@ -343,7 +343,8 @@ export default {
   created() {},
   mounted() {
     this.userInfo = JSON.parse(oSessionStorage.getItem("userInfo"));
-
+    console.log("this.userInfo")
+    console.log(this.userInfo)
     this.getChannel();
     if (!this.userInfo) {
       //如果用户信息不存在跳转登陆页
@@ -448,7 +449,9 @@ export default {
         item.children = arr.filter((e) => {
           return item.orgNo === e.parentOrgNo;
         });
-        return !item.parentOrgNo;
+        // return !item.parentOrgNo;
+        return item.orgNo== this.userInfo.orgNo
+        
       });
       return data;
     },
@@ -537,17 +540,17 @@ export default {
         }
       });
     },
-
     handleCurrentChange(val) {
       this.pageNum = val;
       this.searchList();
     },
     //根据现有情况进行搜索
     searchList() {
+
       let url = `/user/findUserListByPage?pageSize=${this.pageSize}&pageNum=${
         this.pageNum
       }${this.sex == "" ? "" : `&gender=${this.sex}`}${
-        this.group.length == 0 ? "" : `&orgNo=${this.group[this.group.length - 1]}`
+        this.group.length == 0 ? `&orgNo=${this.userInfo.orgNo}` : `&orgNo=${this.group[this.group.length - 1]}`
       }${this.name == "" ? "" : `&userName=${this.name}`}${
         this.studentNumber == "" ? "" : `&userNo=${this.studentNumber}`
       }`;