Selaa lähdekoodia

规章制度,思想政治

ltao 3 vuotta sitten
vanhempi
commit
516b188e2e

+ 15 - 5
src/assets/styles/global.css

@@ -908,11 +908,7 @@ body #app .sidebar-container .theme-dark .nest-menu .el-submenu>.el-submenu__tit
 
 /* 主页左侧导航栏 */
 .nest-menu li {
-  padding-left: -2px !important;
-}
-
-.el-submenu__title {
-  padding-left: 0px !important;
+  padding-left: 25px !important;
 }
 
 /* input下拉背景、字体颜色------input加类名 */
@@ -1194,4 +1190,18 @@ input:-moz-placeholder {
 
 #fileinfopdf .el-dialog__title {
   color: black !important;
+}
+/*定义滚动条宽高及背景,宽高分别对应横竖滚动条的尺寸*/
+#fileinfopdf .el-dialog__body::-webkit-scrollbar {
+  width: 14px;
+  /* height: 2px !important; */
+  background: white;
+}
+
+/*定义滑块,内阴影及圆角*/
+#fileinfopdf .el-dialog__body::-webkit-scrollbar-thumb {
+  /* border-radius: 20px; */
+  /* height: 1px;
+  width: 3px; */
+  background: #c1c1c1;
 }

+ 90 - 60
src/views/regulations/fileinfo/index.vue

@@ -9,7 +9,7 @@
         @selection-change="handleSelectionChange"
         :header-cell-style="{ background: '#003C69', color: 'white' }"
       >
-        <el-table-column label="序号" type="index" width="100">
+        <el-table-column label="序号" type="index" width="80">
         </el-table-column>
         <el-table-column
           label="文件"
@@ -30,7 +30,7 @@
                 <img
                   v-else-if="
                     scope.row.parentDirId == '.doc' ||
-                      scope.row.parentDirId == '.docx'
+                    scope.row.parentDirId == '.docx'
                   "
                   src="../../../images/doc.png"
                   alt=""
@@ -116,7 +116,7 @@
           label="操作"
           align="center"
           class-name="small-padding fixed-width"
-          label-width="150px"
+          label-width="180px"
         >
           <template slot-scope="scope">
             <el-button
@@ -130,11 +130,7 @@
                 <a target="_blank">阅读</a>
               </span>
             </el-button>
-            <el-button
-              size="reads"
-              type="text"
-              @click="handleupLoad(scope.row)"
-            >
+            <el-button size="read" type="text" @click="handleupLoad(scope.row)">
               <span class="chakan1">
                 <a :href="downurl + scope.row.parentDirName" download>下载</a>
               </span>
@@ -308,7 +304,6 @@
             </td>
           </tr>
         </table>
-
         <!-- <el-table
           v-loading="loading"
           :data="list"
@@ -512,8 +507,10 @@
       >
         <template>
           <!-- <div style="margin-bottom:20px"> -->
-          <div style="display:flex">
+          <div style="display: flex">
             <el-button
+              :class="gopage==true?'bg':''"
+              class="gopage"
               :theme="'default'"
               type="submit"
               :title="'上一页'"
@@ -521,11 +518,13 @@
             >
               上一页</el-button
             >
-            <div style="margin-left:10px;margin-right:10px">
+            <div style="width: 50px; height: 28px; background: #f4f4f4;text-align:center;line-height:28px">
               {{ pageNum }}/{{ pageTotalNum }}
             </div>
             <el-button
+             :class="gopage==false?'bg':''"
               :theme="'default'"
+              class="downpage"
               type="submit"
               :title="'下一页'"
               @click.native="nextPage"
@@ -567,7 +566,6 @@
 <script>
 import axios from "axios";
 import PDF from "vue-pdf";
-import Cookies from "js-cookie";
 const docx = require("docx-preview");
 window.JSZip = require("jszip");
 import {
@@ -584,7 +582,7 @@ import {
   // 导出文件列表接口
   exportFileinfo,
   // 获取排行接口
-  rankList
+  rankList,
 } from "@/api/regulations/fileinfo";
 import {
   // 查询目录列表接口
@@ -592,7 +590,7 @@ import {
   // 添加目录列表接口
   addDirectoryinfo,
   // 删除目录列表接口
-  delDirectoryinfo
+  delDirectoryinfo,
 } from "@/api/regulations/directoryinfo";
 export default {
   name: "Fileinfo",
@@ -601,16 +599,16 @@ export default {
       list: [
         {
           id: 1,
-          file: "文件"
+          file: "文件",
         },
         {
           id: 2,
-          file: "文件"
+          file: "文件",
         },
         {
           id: 3,
-          file: "文件"
-        }
+          file: "文件",
+        },
       ],
       // 分页器1
       total: 0,
@@ -630,7 +628,7 @@ export default {
         directoryName: null,
         parentDirId: null,
         parentDirName: null,
-        fileSize: null
+        fileSize: null,
       },
       queryParams1: {
         pageNum: 1,
@@ -646,7 +644,7 @@ export default {
         directoryName: null,
         parentDirId: null,
         parentDirName: null,
-        fileSize: null
+        fileSize: null,
       },
       // 上传文件
       open: false,
@@ -704,15 +702,12 @@ export default {
       pageRotate: 0,
       // 加载进度
       loadedRatio: 0,
-      curPageNum: 0
+      curPageNum: 0,
+      gopage:true
     };
   },
 
   created() {
-    if (Cookies.get("shuaxin") != "true") {
-      window.location.reload();
-    }
-    Cookies.set("shuaxin", "true");
     this.getList();
     // 获取目录接口
     this.ListDirectoryinfo();
@@ -727,7 +722,7 @@ export default {
     $(".sidebar-logo-container").removeClass("collapse");
   },
   components: {
-    PDF
+    PDF,
   },
   methods: {
     /**
@@ -739,12 +734,14 @@ export default {
     },
     // 上一页函数,
     prePage() {
+      this.gopage=true
       var page = this.pageNum;
       page = page > 1 ? page - 1 : this.pageTotalNum;
       this.pageNum = page;
     },
     // 下一页函数
     nextPage() {
+       this.gopage=false
       var page = this.pageNum;
       page = page < this.pageTotalNum ? page + 1 : 1;
       this.pageNum = page;
@@ -779,7 +776,7 @@ export default {
       this.open33 = false;
     },
     RankList() {
-      rankList().then(res => {
+      rankList().then((res) => {
         this.Ranking = res.data;
       });
     },
@@ -789,8 +786,8 @@ export default {
       this.queryParams.pageNum = val;
       listFileinfo({
         pageNum: this.queryParams.pageNum,
-        pageSize: this.queryParams.pageSize
-      }).then(res => {
+        pageSize: this.queryParams.pageSize,
+      }).then((res) => {
         this.fileinfoList = res.rows;
         // this.fileinfoList.map(item=>{
         //   item.parentDirName='http://localhost:8089'+item.parentDirName;
@@ -816,11 +813,11 @@ export default {
         parentId: this.parentId,
         pageNum: this.queryParams1.pageNum,
         pageSize: this.queryParams1.pageSize,
-        common: this.queryParams1.common
-      }).then(res => {
+        common: this.queryParams1.common,
+      }).then((res) => {
         this.directory = res.rows;
         // console.log(this.directory)
-        this.directory.map(item => {
+        this.directory.map((item) => {
           if (item.subclassification != 0) {
             // this.queryParams1.pageNum=1
             this.addbtn = true;
@@ -837,7 +834,7 @@ export default {
       console.log(row);
       this.$modal
         .confirm("是否确认删除该文件")
-        .then(function() {
+        .then(function () {
           return delFileinfo(row.id);
         })
         .then(() => {
@@ -858,7 +855,7 @@ export default {
       this.loading = true;
       this.queryParams.common = "1";
       this.queryParams1.common = "1";
-      listDirectoryinfo(this.queryParams1).then(res => {
+      listDirectoryinfo(this.queryParams1).then((res) => {
         this.directory = res.rows;
         console.log(this.directory);
         this.total1 = res.total;
@@ -883,8 +880,8 @@ export default {
       listFileinfo({
         directoryId: this.form.directoryId,
         pageNum: this.queryParams.pageNum,
-        pageSize: this.queryParams.pageSize
-      }).then(res => {
+        pageSize: this.queryParams.pageSize,
+      }).then((res) => {
         this.fileinfoList = res.rows;
         // this.fileinfoList.map(item=>{
         //   item.parentDirName='http://localhost:8089'+item.parentDirName;
@@ -902,9 +899,9 @@ export default {
       listDirectoryinfo({
         parentId: this.parentId,
         pageNum: this.queryParams1.pageNum,
-        pageSize: this.queryParams1.pageSize
-      }).then(res => {
-        res.rows.forEach(item => {
+        pageSize: this.queryParams1.pageSize,
+      }).then((res) => {
+        res.rows.forEach((item) => {
           if (item.subclassification == 0) {
             this.directory = res.rows;
             this.total1 = res.total;
@@ -931,14 +928,14 @@ export default {
       this.subclassification = [];
       this.parentId = id;
       // 获取到父目录id了
-      listDirectoryinfo({ parentId: this.parentId }).then(res => {
+      listDirectoryinfo({ parentId: this.parentId }).then((res) => {
         this.subclassification = res.rows;
       });
     },
     /** 查询规章制度文件记录列表 */
     getList() {
       this.loading = true;
-      listFileinfo(this.queryParams).then(response => {
+      listFileinfo(this.queryParams).then((response) => {
         this.fileinfoList = response.rows;
         // this.fileinfoList.map(item=>{
         //   item.parentDirName='http://localhost:8089'+item.parentDirName;
@@ -969,7 +966,7 @@ export default {
         directoryName: null,
         parentDirId: null,
         parentDirName: null,
-        fileSize: null
+        fileSize: null,
       };
       this.resetForm("form");
     },
@@ -985,7 +982,7 @@ export default {
     },
     // 多选框选中数据
     handleSelectionChange(selection) {
-      this.ids = selection.map(item => item.id);
+      this.ids = selection.map((item) => item.id);
       this.single = selection.length !== 1;
       this.multiple = !selection.length;
     },
@@ -999,7 +996,7 @@ export default {
     handleUpdate(row) {
       this.reset();
       const id = row.id || this.ids;
-      getFileinfo(id).then(response => {
+      getFileinfo(id).then((response) => {
         this.form = response.data;
         this.open = true;
         this.title = "修改规章制度文件记录";
@@ -1008,7 +1005,7 @@ export default {
     /** 上传文件提交按钮 */
     submitForm() {
       console.log(this.form);
-      this.$refs["form"].validate(valid => {
+      this.$refs["form"].validate((valid) => {
         if (valid) {
           console.log(this.form.file[0]);
           // 文件名
@@ -1026,7 +1023,7 @@ export default {
           //输出结果
           console.log(this.form);
           // 上传文件接口
-          addFileinfo(this.form).then(response => {
+          addFileinfo(this.form).then((response) => {
             this.ListDirectoryinfo();
             this.$modal.msgSuccess("上传成功");
             this.open = false;
@@ -1039,9 +1036,9 @@ export default {
     submitForm1() {
       // 新建分类接口
       // addDirectoryinfo
-      this.$refs["form1"].validate(valid => {
+      this.$refs["form1"].validate((valid) => {
         if (valid) {
-          addDirectoryinfo(this.form1).then(response => {
+          addDirectoryinfo(this.form1).then((response) => {
             this.$modal.msgSuccess("新增成功");
             this.ListDirectoryinfo();
             this.open1 = false;
@@ -1053,10 +1050,10 @@ export default {
     },
     // 添加子分类
     submitForm2() {
-      this.$refs["form2"].validate(valid => {
+      this.$refs["form2"].validate((valid) => {
         console.log(this.form2);
         if (valid) {
-          addDirectoryinfo(this.form2).then(response => {
+          addDirectoryinfo(this.form2).then((response) => {
             this.$modal.msgSuccess("上传子分类成功");
             this.open2 = false;
             this.form2 = {};
@@ -1073,7 +1070,7 @@ export default {
       // console.log(ids);
       this.$modal
         .confirm("是否确认删除该文件?")
-        .then(function() {
+        .then(function () {
           return delDirectoryinfo(ids);
         })
         .then(() => {
@@ -1083,9 +1080,9 @@ export default {
           listDirectoryinfo({
             parentId: this.parentId,
             pageNum: this.queryParams1.pageNum,
-            pageSize: this.queryParams1.pageSize
+            pageSize: this.queryParams1.pageSize,
             //  common: this.queryParams1.common,
-          }).then(res => {
+          }).then((res) => {
             console.log(res);
             this.directory = res.rows;
             this.total1 = res.total;
@@ -1118,7 +1115,7 @@ export default {
           this.exportLoading = true;
           return exportFileinfo(queryParams);
         })
-        .then(response => {
+        .then((response) => {
           this.$download.name(response.msg);
           this.exportLoading = false;
         })
@@ -1161,7 +1158,7 @@ export default {
         axios({
           method: "get",
           responseType: "blob", // 设置响应文件格式
-          url: process.env.VUE_APP_BASE_API + row.parentDirName
+          url: process.env.VUE_APP_BASE_API + row.parentDirName,
         }).then(({ data }) => {
           // console.log(11)
           console.log(data);
@@ -1174,17 +1171,17 @@ export default {
         this.pdfurl = process.env.VUE_APP_BASE_API + row.parentDirName;
       }
       row.common = "1";
-      updateFileinfo(row).then(res => {
+      updateFileinfo(row).then((res) => {
         this.getList();
-        rankList().then(res => {
+        rankList().then((res) => {
           this.Ranking = res.data;
         });
       });
       // window.open("www.baidu.com","_self");
     },
     // 下载按钮操作
-    handleupLoad() {}
-  }
+    handleupLoad() {},
+  },
 };
 </script>
 
@@ -1643,8 +1640,41 @@ body,
 ::v-deep .el-dialog__footer .dialog-footer .el-button--btn {
   padding-top: 00px !important;
 }
-.userAgree {
+/* .userAgree{
   height: 600px;
   overflow: auto;
+} */
+/*定义滚动条宽高及背景,宽高分别对应横竖滚动条的尺寸*/
+.el-dialog__body::-webkit-scrollbar {
+  width: 14px;
+  /* height: 2px !important; */
+  background: #3d83b8;
+}
+
+/*定义滑块,内阴影及圆角*/
+.el-dialog__body::-webkit-scrollbar-thumb {
+  /* border-radius: 20px; */
+  /* height: 1px;
+  width: 3px; */
+  background: rgba(144, 206, 252, 1);
+}
+/* 上一页样式 */
+.gopage {
+  width: 60px;
+  height: 28px;
+  background: #f4f4f4;
+  color:#60627d;
+  border-radius: 14px 0px 0px 14px;
+}
+/* 下一页样式 */
+.downpage {
+  width: 60px;
+  height: 28px;
+  background: #f4f4f4;
+  border-radius: 0px 14px 14px 0px;
+}
+.bg{
+  background: #1D96FF;
+  color: white;
 }
 </style>

+ 85 - 17
src/views/thought/getready/index.vue

@@ -176,7 +176,7 @@
           :disabled="single"
           @click="handleUpdate"
           v-hasPermi="['thought:getready:edit']"
-          >修改</el-button
+          >查看</el-button
         >
       </el-col>
       <el-col :span="1.5">
@@ -216,7 +216,7 @@
     >
       <el-table-column type="selection" width="55" align="center" />
       <el-table-column label="序号" type="index" width="50" align="center" />
-      <el-table-column label="参加人" align="center" prop="talkPeople" />
+      <el-table-column label="参加人" align="center" prop="talkPeople" show-overflow-tooltip :formatter="unit2Format"/>
       <el-table-column
         label="开始时间"
         align="center"
@@ -340,10 +340,24 @@
             </el-date-picker>
           </el-form-item>
           <el-form-item label="组织人" prop="createName">
-            <el-input
+            <!-- <el-input
               v-model="form.createName"
               placeholder="请选择用户名称"
-            />
+            /> -->
+             <el-select
+             filterable
+              v-model="form.createName"
+              ref="createName"
+              placeholder="请选择组织人"
+            >
+              <el-option
+                v-for="item in executor"
+                :key="item.id"
+                :label="item.name"
+                :value="item.name"
+                @click.native="zuzhiPeople(item.id)"
+              />
+            </el-select>
           </el-form-item>
           <!-- <el-form-item label="创建人id" prop="createId">
           <el-input v-model="form.createId" placeholder="请输入创建人id" />
@@ -359,8 +373,9 @@
             <!-- <el-input v-model="form.recorder" placeholder="请输入记录人" /> -->
              <el-select
               v-model="form.recorder"
-              ref="peoplenames"
+              ref="recorder"
               placeholder="请选择记录人"
+              filterable
               
             >
               <el-option
@@ -368,6 +383,7 @@
                 :key="item.id"
                 :label="item.name"
                 :value="item.name"
+                 @click.native="jiluPeople(item.id)"
               />
             </el-select>
           </el-form-item>
@@ -379,12 +395,13 @@
               placeholder="请选择参加人"
               class="canjiaren"
               multiple
+              filterable
             >
               <el-option
                 v-for="item in executor"
                 :key="item.id"
                 :label="item.name"
-                :value="item.name"
+                :value="item.id"
                 @click.native="returnExecutor(item.id, item.name)"
               />
             </el-select>
@@ -431,7 +448,7 @@
           </el-form-item>
           <div class="jiben">附件</div>
            <el-form-item>
-          <FileUpload v-model="form.file" />
+          <FileUpload v-model="form.fileName" />
            </el-form-item>
         </el-form>
       </div>
@@ -463,6 +480,12 @@ import {
   exportBdgShuju,
   updateBdglShenPi
 } from "@/api/grassrootsregistration/bdgldiary";
+import {
+  deptUser,
+  allUser,
+  getDept,
+  getDeptList,
+} from "@/api/workingArrangements/workTask";
 import { getDept2, getAll,getWeiShu } from "@/api/grassrootsregistration/bdglmeeting";
 // 富文本样式
 import "quill/dist/quill.core.css";
@@ -555,6 +578,7 @@ export default {
       },
       // 搜索时间的保存
       timeDate: "",
+      rylist:[]
     };
   },
   components: {
@@ -565,10 +589,39 @@ export default {
     this.getSuoYou();
     // 获取外部部门树形
     this.treeselect();
+    allUser().then((res) => {
+      this.rylist = res.rows;
+      // console.log(this.rylist)
+    });
   },
   methods: {
+    // 获取执行人
+    unit2Format(row){
+      var deptName=""
+      this.recodeexecutor.map((item) => {
+        // console.log(row.talkPeople)
+          row.talkPeople.split(",").forEach((items, index) => {
+            // console.log(item.id,item.name)
+            if (item.id == items) {
+              deptName += item.name + "  ";
+            }
+          });
+        });
+        return deptName
+    },
     returnExecutor(id,name){
-      console.log(id,name)
+      // this.form.talkPeople=id
+      // console.log(id)
+      // console.log()
+      
+    },
+    zuzhiPeople(id){
+      // console.log(id)
+      this.form.createId=id
+    },
+    jiluPeople(id){
+      this.form.recorderId=id
+      // console.log(id)
     },
     // 获取部门数据
     getShuJu(data) {
@@ -609,7 +662,7 @@ export default {
         this.executor=response.rows
         // 记录人
         this.recodeexecutor=response.rows
-        console.log(this.executors);
+        // console.log(this.executors);
       });
     },
     // 转义视图不加标签
@@ -686,19 +739,33 @@ export default {
       const id = row.id || this.ids;
       getGetready(id).then((response) => {
         this.form = response.data;
+        this.form.talkPeople = this.form.talkPeople.split(",").map(Number);
         this.open = true;
         this.title = "修改教育准备会";
       });
     },
     /** 提交按钮 */
     submitForm() {
-      
-      this.form.filePath=this.form.file[0].url
-      this.form.fileName=this.form.file[0].name
+      if(this.form.fileName){
+      this.form.filePath=this.form.fileName[0].url
+      this.form.fileName=this.form.fileName[0].name
+      }
+     
       // console.log(this.form)
       this.form.talkPeople = this.form.talkPeople.join(",");
-      // this.form.peopleId = this.form.peopleName;
-      console.log(this.form)
+      this.form.talkPeopleId = this.form.talkPeople;
+      // let deptName=""
+      // this.recodeexecutor.map((item) => {
+      //   // console.log(row.talkPeople)
+      //     this.form.talkPeopleId.split(",").forEach((items, index) => {
+      //       console.log(item.id,item.name)
+      //       if (item.id == items) {
+      //         deptName += item.name + ",";
+      //       }
+      //     });
+      //   });
+      //   this.form.talkPeople=deptName.slice(0,-1)
+      //   console.log(this.form)
       this.$refs["form"].validate((valid) => {
         if (valid) {
           if (this.form.id != null) {
@@ -854,11 +921,11 @@ export default {
 
 ::v-deep .data .el-date-editor.el-input {
   width: 100%;
-  border: none;
+  border: none !important;
 }
 ::v-deep .data .el-input__inner {
   width: 100% !important;
-  border: none;
+  border: none !important;
 }
 ::v-deep .data .el-input--medium .el-input__icon {
   line-height: 36px;
@@ -867,7 +934,7 @@ export default {
   top: 2px;
 }
 ::v-deep .data .el-input__inner {
-  background-color: transparent;
+  background-color: transparent !important;
   color: #fff;
   text-align: center;
   margin-top: 2px;
@@ -1049,4 +1116,5 @@ export default {
 /* ::v-deep .el-select-dropdown__item {
   color: white;
 }  */
+
 </style>

+ 118 - 23
src/views/thought/parliament/index.vue

@@ -185,34 +185,35 @@
       <el-table-column type="selection" width="55" align="center" />
       <!-- <el-table-column label="主键id" align="center" prop="id" /> -->
       <el-table-column label="序号" type="index" width="50" align="center" />
-      <el-table-column label="单位名称" align="center" prop="unitName" />
+      <!-- <el-table-column label="单位名称" align="center" prop="unitName" /> -->
       <!-- <el-table-column label="单位id" align="center" prop="unitId" /> -->
-      <el-table-column label="开始时间" align="center" prop="startTime" width="180">
-        <template slot-scope="scope">
-          <span>{{ parseTime(scope.row.startTime, '{y}-{m}-{d}') }}</span>
-        </template>
-      </el-table-column>
-      <el-table-column label="结束时间" align="center" prop="endTime" width="180">
-        <template slot-scope="scope">
-          <span>{{ parseTime(scope.row.endTime, '{y}-{m}-{d}') }}</span>
-        </template>
-      </el-table-column>
-      <el-table-column label="创建人姓名" align="center" prop="createName" />
+      
+      <!-- <el-table-column label="创建人姓名" align="center" prop="createName" /> -->
       <!-- <el-table-column label="创建人id" align="center" prop="createId" /> -->
-      <el-table-column label="文件路径" align="center" prop="filePath" />
-      <el-table-column label="文件名称" align="center" prop="fileName" />
+      <!-- <el-table-column label="文件路径" align="center" prop="filePath" /> -->
+      <el-table-column label="文件名称" align="center" prop="fileName" show-overflow-tooltip/>
       <el-table-column label="会议内容" align="center" prop="talkContent" show-overflow-tooltip >
        <template slot-scope="scope">
           <span>{{ onEditor(scope.row.talkContent) }}</span>
         </template>
       </el-table-column>
-      <el-table-column label="记录人" align="center" prop="recorder" />
+      <el-table-column label="记录人" align="center" prop="recorder" show-overflow-tooltip/>
       <!-- <el-table-column label="记录人id" align="center" prop="recorderId" /> -->
-      <el-table-column label="参加人" align="center" prop="participants" />
+      <el-table-column label="参加人" align="center" prop="participants"  show-overflow-tooltip :formatter="unit2Format"/>
       <!-- <el-table-column label="参加人id" align="center" prop="participantsId" /> -->
       <el-table-column label="组织人" align="center" prop="organizer" />
       <!-- <el-table-column label="组织人id" align="center" prop="organizerId" /> -->
       <el-table-column label="议会主题" align="center" prop="talkTheme" show-overflow-tooltip/>
+      <el-table-column label="开始时间" align="center" prop="startTime" width="180">
+        <template slot-scope="scope">
+          <span>{{ parseTime(scope.row.startTime, '{y}-{m}-{d}') }}</span>
+        </template>
+      </el-table-column>
+      <el-table-column label="结束时间" align="center" prop="endTime" width="180">
+        <template slot-scope="scope">
+          <span>{{ parseTime(scope.row.endTime, '{y}-{m}-{d}') }}</span>
+        </template>
+      </el-table-column>
       <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
         <template slot-scope="scope">
           <el-button
@@ -307,10 +308,39 @@
           <el-input v-model="form.fileName" placeholder="请输入文件名称" />
         </el-form-item> -->
           <el-form-item label="组 织 人" prop="organizer">
-          <el-input v-model="form.organizer" placeholder="请输入组织人" />
+          <!-- <el-input v-model="form." placeholder="请输入组织人" /> -->
+             <el-select
+             filterable
+              v-model="form.organizer"
+              ref="createName"
+              placeholder="请选择组织人"
+            >
+              <el-option
+                v-for="item in executor"
+                :key="item.id"
+                :label="item.name"
+                :value="item.name"
+                @click.native="zuzhiPeople(item.id)"
+              />
+            </el-select>
         </el-form-item>
         <el-form-item label="记 录 人" prop="recorder">
-          <el-input v-model="form.recorder" placeholder="请输入记录人" />
+          <!-- <el-input v-model="form.recorder" placeholder="请输入记录人" /> -->
+            <el-select
+              v-model="form.recorder"
+              ref="recorder"
+              placeholder="请选择记录人"
+              filterable
+              
+            >
+              <el-option
+                v-for="item in recodeexecutor"
+                :key="item.id"
+                :label="item.name"
+                :value="item.name"
+                 @click.native="jiluPeople(item.id)"
+              />
+            </el-select>
         </el-form-item>
         <!-- <el-form-item label="记录人id" prop="recorderId">
           <el-input v-model="form.recorderId" placeholder="请输入记录人id" />
@@ -320,7 +350,7 @@
         </el-form-item> -->
         <el-form-item label="参 加 人" prop="participants" label-width="100px">
             <div>
-              <el-select
+              <!-- <el-select
                 multiple
                 v-model="form.participants"
                 placeholder="请选择参加人"
@@ -335,7 +365,24 @@
                   :value="item.userId"
                   @click.native="returnExecutor(item.deptId, item.nickName)"
                 />
-              </el-select>
+              </el-select> -->
+              <el-select
+              v-model="form.participants"
+              ref="participants"
+              placeholder="请选择参加人"
+              class="canjiaren"
+              multiple
+              filterable
+              
+            >
+              <el-option
+                v-for="item in executor"
+                :key="item.id"
+                :label="item.name"
+                :value="item.id"
+                @click.native="returnExecutor(item.id, item.name)"
+              />
+            </el-select>
             </div>
           </el-form-item>
         <!-- <el-form-item label="参加人id" prop="participantsId">
@@ -364,7 +411,7 @@
         </el-form-item>
        <div class="jiben">附件</div>
            <el-form-item>
-          <FileUpload v-model="form.file" />
+          <FileUpload v-model="form.fileName" />
            </el-form-item>
       </el-form>
       <div slot="footer" class="dialog-footer">
@@ -382,6 +429,7 @@ import Treeselect from "@riophae/vue-treeselect";
 import "@riophae/vue-treeselect/dist/vue-treeselect.css";
 // 单位
 import { getDept2, getAll } from "@/api/grassrootsregistration/bdglmeeting";
+// import { getDept2, getAll,getWeiShu } from "@/api/grassrootsregistration/bdglmeeting";
 export default {
   name: "Parliament",
   components:{
@@ -457,7 +505,11 @@ export default {
       users:[],
        // 获取单位列表
       userss:[],
-      unitName:""
+      unitName:"",
+      // 组织人
+      executor:[],
+      // 记录人
+      recodeexecutor:[]
     };
   },
   created() {
@@ -467,8 +519,42 @@ export default {
         this.userss = res.data;
         // console.log(this.userss);
       });
+    this.getSuoYou()
   },
   methods: {
+    // 获取执行人
+    unit2Format(row){
+      var deptName=""
+      this.recodeexecutor.map((item) => {
+        // console.log(row.talkPeople)
+          row.participants.split(",").forEach((items, index) => {
+            console.log(item.id,item.name)
+            if (item.id == items) {
+              deptName += item.name + "  ";
+            }
+          });
+        });
+        return deptName
+    },
+    zuzhiPeople(id){
+      // console.log(id)
+      this.form.organizerId=id
+    },
+    jiluPeople(id){
+      this.form.recorderId=id
+      // console.log(id)
+    },
+    // 获取所有人员
+    getSuoYou() {
+      getAll().then((response) => {
+        this.executors = response.rows;
+        // 添加的人员
+        this.executor=response.rows
+        // 记录人
+        this.recodeexecutor=response.rows
+        // console.log(this.executors);
+      });
+    },
     // 转义视图不加标签
     onEditor(str) {
       //可以在这里进行对应的操作 quill为富文本对象,html为富文本对象内内容由html标签组成,text为quill内容里面的所有文本内容
@@ -567,7 +653,7 @@ export default {
        getDept2().then((res) => {
         // console.log(res,2)
         this.users = res.data;
-        console.log(this.users);
+        // console.log(this.users);
       });
     },
     /** 修改按钮操作 */
@@ -576,12 +662,21 @@ export default {
       const id = row.id || this.ids
       getParliament(id).then(response => {
         this.form = response.data;
+         this.form.participants = this.form.participants.split(",").map(Number);
         this.open = true;
         this.title = "修改党委议教会";
       });
     },
     /** 提交按钮 */
     submitForm() {
+       if(this.form.fileName){
+      this.form.filePath=this.form.fileName[0].url
+      this.form.fileName=this.form.fileName[0].name
+      }
+     
+      // console.log(this.form)
+      this.form.participants = this.form.participants.join(",");
+      this.form.participantsId = this.form.participants;
       console.log(this.form)
       this.form.unitName=this.unitName
       this.$refs["form"].validate(valid => {

+ 702 - 235
src/views/thought/talk/index.vue

@@ -1,6 +1,37 @@
 <template>
   <div class="app-container">
-    <el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="68px">
+    <div class="box-lfet">
+      <div class="data">
+        <p>单位</p>
+        <div class="a1"></div>
+        <el-date-picker
+          v-model="tiem"
+          type="date"
+          :editable="false"
+          placeholder="选择日期"
+          value-format="yyyy-MM-dd"
+          @change="shiJian"
+        >
+        </el-date-picker>
+      </div>
+      <div class="dadui">
+        <img src="../../../images/星星.png" alt="" />
+        大队
+      </div>
+      <div class="tree">
+        <el-tree
+          class="userAgrees"
+          style="height: 700px; overflow: auto"
+          :data="deptOptions"
+          :props="defaultProps"
+          @node-click="handleNodeClick"
+          default-expand-all
+          highlight-current
+          :expand-on-click-node="false"
+        ></el-tree>
+      </div>
+    </div>
+    <!-- <el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="68px">
       <el-form-item  prop="talkPeople">
         <el-input
           v-model="queryParams.talkPeople"
@@ -18,8 +49,8 @@
           size="small"
           @keyup.enter.native="handleQuery"
         />
-      </el-form-item>
-      <!-- <el-form-item prop="unitId">
+      </el-form-item> -->
+    <!-- <el-form-item prop="unitId">
         <el-input
           v-model="queryParams.unitId"
           placeholder="请输入单位id"
@@ -28,7 +59,7 @@
           @keyup.enter.native="handleQuery"
         />
       </el-form-item> -->
-      <el-form-item  prop="talkObject">
+    <!-- <el-form-item  prop="talkObject">
         <el-input
           v-model="queryParams.talkObject"
           placeholder="请输入谈心对象"
@@ -36,8 +67,8 @@
           size="small"
           @keyup.enter.native="handleQuery"
         />
-      </el-form-item>
-      <!-- <el-form-item label="谈心对象id" prop="talkObjectId">
+      </el-form-item> -->
+    <!-- <el-form-item label="谈心对象id" prop="talkObjectId">
         <el-input
           v-model="queryParams.talkObjectId"
           placeholder="请输入谈心对象id"
@@ -46,7 +77,7 @@
           @keyup.enter.native="handleQuery"
         />
       </el-form-item> -->
-      <el-form-item  prop="startTime">
+    <!-- <el-form-item  prop="startTime">
         <el-date-picker clearable size="small"
           v-model="queryParams.startTime"
           type="date"
@@ -70,8 +101,8 @@
           size="small"
           @keyup.enter.native="handleQuery"
         />
-      </el-form-item>
-      <!-- <el-form-item label="创建人id" prop="createId">
+      </el-form-item> -->
+    <!-- <el-form-item label="创建人id" prop="createId">
         <el-input
           v-model="queryParams.createId"
           placeholder="请输入创建人id"
@@ -80,7 +111,7 @@
           @keyup.enter.native="handleQuery"
         />
       </el-form-item> -->
-      <el-form-item  prop="filePath">
+    <!-- <el-form-item  prop="filePath">
         <el-input
           v-model="queryParams.filePath"
           placeholder="请输入文件路径"
@@ -123,8 +154,8 @@
           size="small"
           @keyup.enter.native="handleQuery"
         />
-      </el-form-item>
-      <!-- <el-form-item label="记录人id" prop="recorderId">
+      </el-form-item> -->
+    <!-- <el-form-item label="记录人id" prop="recorderId">
         <el-input
           v-model="queryParams.recorderId"
           placeholder="请输入记录人id"
@@ -133,217 +164,331 @@
           @keyup.enter.native="handleQuery"
         />
       </el-form-item> -->
-      <el-form-item>
-        <!-- <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button> -->
-        <el-button icon="el-icon-refresh" size="btr" @click="resetQuery">重置</el-button>
+    <!-- <el-form-item> -->
+    <!-- <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button> -->
+    <!-- <el-button icon="el-icon-refresh" size="btr" @click="resetQuery">重置</el-button>
       </el-form-item>
-    </el-form>
-
-    <el-row :gutter="10" class="mb8">
-      <el-col :span="1.5">
-        <el-button
-          type="primary"
-          plain
-          icon="el-icon-plus"
-          size="mini"
-          @click="handleAdd"
-          v-hasPermi="['thought:talk:add']"
-        >新增</el-button>
-      </el-col>
-      <el-col :span="1.5">
-        <el-button
-          type="success"
-          plain
-          icon="el-icon-edit"
-          size="mini"
-          :disabled="single"
-          @click="handleUpdate"
-          v-hasPermi="['thought:talk:edit']"
-        >修改</el-button>
-      </el-col>
-      <el-col :span="1.5">
-        <el-button
-          type="danger"
-          plain
-          icon="el-icon-delete"
-          size="mini"
-          :disabled="multiple"
-          @click="handleDelete"
-          v-hasPermi="['thought:talk:remove']"
-        >删除</el-button>
-      </el-col>
-      <el-col :span="1.5">
-        <el-button
-          type="warning"
-          plain
-          icon="el-icon-download"
-          size="mini"
-          :loading="exportLoading"
-          @click="handleExport"
-          v-hasPermi="['thought:talk:export']"
-        >导出</el-button>
-      </el-col>
-      <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
-    </el-row>
-
-    <el-table v-loading="loading" :data="talkList" @selection-change="handleSelectionChange">
-      <el-table-column type="selection" width="55" align="center" />
-      <el-table-column label="主键id" align="center" prop="id" />
-      <el-table-column label="谈心人员" align="center" prop="talkPeople" />
-      <el-table-column label="单位名称" align="center" prop="unitName" />
-      <el-table-column label="单位id" align="center" prop="unitId" />
-      <el-table-column label="谈心对象" align="center" prop="talkObject" />
-      <el-table-column label="谈心对象id" align="center" prop="talkObjectId" />
-      <el-table-column label="开始时间" align="center" prop="startTime" width="180">
-        <template slot-scope="scope">
-          <span>{{ parseTime(scope.row.startTime, '{y}-{m}-{d}') }}</span>
-        </template>
-      </el-table-column>
-      <el-table-column label="结束时间" align="center" prop="endTime" width="180">
-        <template slot-scope="scope">
-          <span>{{ parseTime(scope.row.endTime, '{y}-{m}-{d}') }}</span>
-        </template>
-      </el-table-column>
-      <el-table-column label="创建人姓名" align="center" prop="createName" />
-      <el-table-column label="创建人id" align="center" prop="createId" />
-      <el-table-column label="文件路径" align="center" prop="filePath" />
-      <el-table-column label="文件名称" align="center" prop="fileName" />
-      <el-table-column label="谈话内容" align="center" prop="talkContent" />
-      <el-table-column label="谈话时间" align="center" prop="talkTime" width="180">
-        <template slot-scope="scope">
-          <span>{{ parseTime(scope.row.talkTime, '{y}-{m}-{d}') }}</span>
-        </template>
-      </el-table-column>
-      <el-table-column label="谈话地点" align="center" prop="talkAddress" />
-      <el-table-column label="记录人" align="center" prop="recorder" />
-      <el-table-column label="记录人id" align="center" prop="recorderId" />
-      <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
-        <template slot-scope="scope">
+    </el-form> -->
+    <div class="box-right">
+      <el-row :gutter="10" class="mb8">
+        <el-col :span="1.5">
           <el-button
-            size="btu"
-            type="text"
-           
-            @click="handleUpdate(scope.row)"
+            type="primary"
+            plain
+            icon="el-icon-plus"
+            size="mini"
+            @click="handleAdd"
+            v-hasPermi="['thought:talk:add']"
+            >新增</el-button
+          >
+        </el-col>
+        <el-col :span="1.5">
+          <el-button
+            type="success"
+            plain
+            icon="el-icon-edit"
+            size="mini"
+            :disabled="single"
+            @click="handleUpdate"
             v-hasPermi="['thought:talk:edit']"
-          >修改</el-button>
+            >修改</el-button
+          >
+        </el-col>
+        <el-col :span="1.5">
           <el-button
-            size="btd"
-            type="text"
-           
-            @click="handleDelete(scope.row)"
+            type="danger"
+            plain
+            icon="el-icon-delete"
+            size="mini"
+            :disabled="multiple"
+            @click="handleDelete"
             v-hasPermi="['thought:talk:remove']"
-          >删除</el-button>
-        </template>
-      </el-table-column>
-    </el-table>
-    
-    <pagination
-      v-show="total>0"
-      :total="total"
-      :page.sync="queryParams.pageNum"
-      :limit.sync="queryParams.pageSize"
-      @pagination="getList"
-    />
+            >删除</el-button
+          >
+        </el-col>
+        <el-col :span="1.5">
+          <el-button
+            type="warning"
+            plain
+            icon="el-icon-download"
+            size="mini"
+            :loading="exportLoading"
+            @click="handleExport"
+            v-hasPermi="['thought:talk:export']"
+            >导出</el-button
+          >
+        </el-col>
+        <right-toolbar
+          :showSearch.sync="showSearch"
+          @queryTable="getList"
+        ></right-toolbar>
+      </el-row>
+
+      <el-table
+        v-loading="loading"
+        :data="talkList"
+        @selection-change="handleSelectionChange"
+      >
+        <el-table-column type="selection" width="55" align="center" />
+         <el-table-column label="序号" type="index" width="50" align="center" />
+        <el-table-column label="谈心人名称" align="center" prop="talkPeople" />
+        <el-table-column label="谈心对象名称" align="center" prop="talkObject" />
+        <el-table-column label="谈心单位名称" align="center" prop="unitName" />
+        <!-- <el-table-column label="单位id" align="center" prop="unitId" /> -->
+<!--         
+        <el-table-column
+          label="谈心对象id"
+          align="center"
+          prop="talkObjectId"
+        /> -->
+        <el-table-column
+          label="开始时间"
+          align="center"
+          prop="startTime"
+          width="180"
+        >
+          <template slot-scope="scope">
+            <span>{{ parseTime(scope.row.startTime, "{y}-{m}-{d}") }}</span>
+          </template>
+        </el-table-column>
+        <el-table-column
+          label="结束时间"
+          align="center"
+          prop="endTime"
+          width="180"
+        >
+          <template slot-scope="scope">
+            <span>{{ parseTime(scope.row.endTime, "{y}-{m}-{d}") }}</span>
+          </template>
+        </el-table-column>
+        <el-table-column label="创建人姓名" align="center" prop="createName" />
+        <!-- <el-table-column label="创建人id" align="center" prop="createId" /> -->
+        <!-- <el-table-column label="文件路径" align="center" prop="filePath" /> -->
+        <el-table-column label="文件名称" align="center" prop="fileName" />
+        <el-table-column label="谈话内容" align="center" prop="talkContent" />
+        <!-- <el-table-column
+          label="谈话时间"
+          align="center"
+          prop="talkTime"
+          width="180"
+        >
+          <template slot-scope="scope">
+            <span>{{ parseTime(scope.row.talkTime, "{y}-{m}-{d}") }}</span>
+          </template>
+        </el-table-column> -->
+        <!-- <el-table-column label="谈话地点" align="center" prop="talkAddress" />
+        <el-table-column label="记录人" align="center" prop="recorder" />
+        <el-table-column label="记录人id" align="center" prop="recorderId" /> -->
+        <el-table-column
+          label="操作"
+          align="center"
+          class-name="small-padding fixed-width"
+          width="150px"
+        >
+          <template slot-scope="scope">
+            <el-button
+              size="btu"
+              type="text"
+              @click="handleUpdate(scope.row)"
+              v-hasPermi="['thought:talk:edit']"
+              >修改</el-button
+            >
+            <el-button
+              size="btd"
+              type="text"
+              @click="handleDelete(scope.row)"
+              v-hasPermi="['thought:talk:remove']"
+              >删除</el-button
+            >
+          </template>
+        </el-table-column>
+      </el-table>
 
-    <!-- 添加或修改谈心记录卡对话框 -->
-    <el-dialog :title="title"
-      :visible.sync="open"
-      width="1100px"
-      append-to-body
-      :close-on-click-modal="false">
-      <el-form ref="form" :model="form" :rules="rules" label-width="100px" :inline="true">
-        <el-form-item label="谈心人员" prop="talkPeople">
-          <el-input v-model="form.talkPeople" placeholder="请输入谈心人员" />
-        </el-form-item>
-        <el-form-item label="记录人" prop="recorder">
-          <el-input v-model="form.recorder" placeholder="请输入记录人" />
-        </el-form-item>
-        <el-form-item label="单位名称" prop="unitName">
-          <el-input v-model="form.unitName" placeholder="请输入单位名称" />
-        </el-form-item>
-        <!-- <el-form-item label="单位id" prop="unitId">
+      <pagination
+        v-show="total > 0"
+        :total="total"
+        :page.sync="queryParams.pageNum"
+        :limit.sync="queryParams.pageSize"
+        @pagination="getList"
+      />
+
+      <!-- 添加或修改谈心记录卡对话框 -->
+      <el-dialog
+        :title="title"
+        :visible.sync="open"
+        width="1120px"
+        append-to-body
+        :close-on-click-modal="false"
+      >
+        <el-form
+          ref="form"
+          :model="form"
+          :rules="rules"
+          label-width="110px"
+          :inline="true"
+        >
+          <el-form-item label="谈心人员" prop="talkPeople">
+            <!-- <el-input v-model="form.talkPeople" placeholder="请输入谈心人员" /> -->
+            <el-select
+              filterable
+              v-model="form.talkPeople"
+              ref="createName"
+              placeholder="请选择谈心人员"
+            >
+              <el-option
+                v-for="item in executors"
+                :key="item.id"
+                :label="item.name"
+                :value="item.name"
+                @click.native="zuzhiPeople(item.id)"
+              />
+            </el-select>
+          </el-form-item>
+          <el-form-item label="谈心对象单位" prop="unitName">
+            <!-- <el-input v-model="form.unitName" placeholder="请输入单位名称" /> -->
+            <treeselect
+              v-model="form.unitName"
+              :options="users"
+              placeholder="请选择单位"
+              class="threeselects"
+              @select="selectPeo"
+            />
+          </el-form-item>
+          <el-form-item label="谈心对象" prop="talkObject">
+            <!-- <el-input v-model="form.talkObject" placeholder="请输入谈心对象" /> -->
+             <el-select
+                filterable
+                v-model="form.talkObject"
+                placeholder="请选择谈心对象"
+                ref="peoplenames"
+              >
+                <el-option
+                  v-for="item in tanxinexecutor"
+                  :key="item.id"
+                  :label="item.name"
+                  :value="item.name"
+                  @click.native="peopleIds(item)"
+                />
+             </el-select>
+          </el-form-item>
+          <el-form-item label="谈心开始时间" prop="startTime">
+            <el-date-picker
+              clearable
+              size="small"
+              v-model="form.startTime"
+              type="date"
+              value-format="yyyy-MM-dd"
+              placeholder="选择开始时间"
+            >
+            </el-date-picker>
+          </el-form-item>
+          <el-form-item label="谈心结束时间" prop="endTime" label-width="125px">
+            <el-date-picker
+              clearable
+              size="small"
+              v-model="form.endTime"
+              type="date"
+              value-format="yyyy-MM-dd"
+              placeholder="选择结束时间"
+            >
+            </el-date-picker>
+          </el-form-item>
+          <!-- <el-form-item label="记录人" prop="recorder">
+            <el-input v-model="form.recorder" placeholder="请输入记录人" />
+          </el-form-item> -->
+
+          <!-- <el-form-item label="单位id" prop="unitId">
           <el-input v-model="form.unitId" placeholder="请输入单位id" />
         </el-form-item> -->
-        <el-form-item label="谈心对象" prop="talkObject">
-          <el-input v-model="form.talkObject" placeholder="请输入谈心对象" />
-        </el-form-item>
-        <!-- <el-form-item label="谈心对象id" prop="talkObjectId">
+
+          <!-- <el-form-item label="谈心对象id" prop="talkObjectId">
           <el-input v-model="form.talkObjectId" placeholder="请输入谈心对象id" />
         </el-form-item> -->
-        <el-form-item label="开始时间" prop="startTime">
-          <el-date-picker clearable size="small"
-            v-model="form.startTime"
-            type="date"
-            value-format="yyyy-MM-dd"
-            placeholder="选择开始时间">
-          </el-date-picker>
-        </el-form-item>
-        <el-form-item label="结束时间" prop="endTime" label-width="115px">
-          <el-date-picker clearable size="small"
-            v-model="form.endTime"
-            type="date"
-            value-format="yyyy-MM-dd"
-            placeholder="选择结束时间">
-          </el-date-picker>
-        </el-form-item>
-        <el-form-item label="创建人姓名" prop="createName">
-          <el-input v-model="form.createName" placeholder="请输入创建人姓名" />
-        </el-form-item>
-        <!-- <el-form-item label="创建人id" prop="createId">
+
+          <!-- <el-form-item label="创建人姓名" prop="createName">
+            <el-input
+              v-model="form.createName"
+              placeholder="请输入创建人姓名"
+            />
+          </el-form-item> -->
+          <!-- <el-form-item label="创建人id" prop="createId">
           <el-input v-model="form.createId" placeholder="请输入创建人id" />
         </el-form-item> -->
-        <el-form-item label="文件路径" prop="filePath">
-          <el-input v-model="form.filePath" placeholder="请输入文件路径" />
-        </el-form-item>
-        <el-form-item label="文件名称" prop="fileName">
-          <el-input v-model="form.fileName" placeholder="请输入文件名称" />
-        </el-form-item>
-        
-        <el-form-item label="谈话时间" prop="talkTime">
-          <el-date-picker clearable size="small"
-            v-model="form.talkTime"
-            type="date"
-            value-format="yyyy-MM-dd"
-            placeholder="选择谈话时间">
-          </el-date-picker>
-        </el-form-item>
-        <el-form-item label="谈话地点" prop="talkAddress" label-width="115px">
-          <el-input v-model="form.talkAddress" placeholder="请输入谈话地点" />
-        </el-form-item>
-        
-        <!-- <el-form-item label="记录人id" prop="recorderId">
+          <!-- <el-form-item label="文件路径" prop="filePath">
+            <el-input v-model="form.filePath" placeholder="请输入文件路径" />
+          </el-form-item>
+          <el-form-item label="文件名称" prop="fileName">
+            <el-input v-model="form.fileName" placeholder="请输入文件名称" />
+          </el-form-item>
+
+          <el-form-item label="谈话时间" prop="talkTime">
+            <el-date-picker
+              clearable
+              size="small"
+              v-model="form.talkTime"
+              type="date"
+              value-format="yyyy-MM-dd"
+              placeholder="选择谈话时间"
+            >
+            </el-date-picker>
+          </el-form-item> -->
+          <!-- <el-form-item label="谈话地点" prop="talkAddress" label-width="115px">
+            <el-input v-model="form.talkAddress" placeholder="请输入谈话地点" />
+          </el-form-item> -->
+
+          <!-- <el-form-item label="记录人id" prop="recorderId">
           <el-input v-model="form.recorderId" placeholder="请输入记录人id" />
         </el-form-item> -->
-        <div class="jiben">谈话内容</div>
-        <el-form-item >
-          <!-- <editor v-model="form.talkContent" :min-height="192"/> -->
-           <quill-editor
+          <div class="jiben">谈话内容</div>
+          <el-form-item>
+            <!-- <editor v-model="form.talkContent" :min-height="192"/> -->
+            <quill-editor
               class="quill-editor"
               ref="myTextEditor"
               v-model="form.talkContent"
               style="
                 height: 150px;
-                width: 1010px;
+                width: 1040px;
                 margin-left: 0px;
                 color: white;
                 margin-bottom: 60px;
               "
             ></quill-editor>
-        </el-form-item>
-      </el-form>
-      <div slot="footer" class="dialog-footer">
-        <el-button type="primary" @click="submitForm">确 定</el-button>
-        <el-button @click="cancel" size="btn">取 消</el-button>
-      </div>
-    </el-dialog>
+          </el-form-item>
+          <div class="jiben">附件</div>
+          <el-form-item>
+            <FileUpload v-model="form.fileName" />
+          </el-form-item>
+        </el-form>
+        <div slot="footer" class="dialog-footer">
+          <el-button type="primary" @click="submitForm">确 定</el-button>
+          <el-button @click="cancel" size="btn">取 消</el-button>
+        </div>
+      </el-dialog>
+    </div>
   </div>
 </template>
 
 <script>
-import { listTalk, getTalk, delTalk, addTalk, updateTalk, exportTalk } from "@/api/thought/talk";
-
+import {
+  listTalk,
+  getTalk,
+  delTalk,
+  addTalk,
+  updateTalk,
+  exportTalk,
+} from "@/api/thought/talk";
+import Treeselect from "@riophae/vue-treeselect";
+import "@riophae/vue-treeselect/dist/vue-treeselect.css";
+import {
+  getDept2,
+  getAll,
+  getWeiShu,
+} from "@/api/grassrootsregistration/bdglmeeting";
+import { deptUser } from "@/api/doormanManage/bdglVisit";
 export default {
   name: "Talk",
+  components: { Treeselect },
   data() {
     return {
       // 遮罩层
@@ -385,23 +530,142 @@ export default {
         talkTime: null,
         talkAddress: null,
         recorder: null,
-        recorderId: null
+        recorderId: null,
       },
       // 表单参数
       form: {},
       // 表单校验
       rules: {
-      }
+        talkPeople: [
+          { required: true, message: "谈心人员不能为空", trigger: "blur" },
+        ],
+        startTime: [
+          { required: true, message: "开始时间不能为空", trigger: "blur" },
+        ],
+        endTime: [
+          { required: true, message: "结束时间不能为空", trigger: "blur" },
+        ],
+        unitName: [
+          { required: true, message: "谈心对象单位不能为空", trigger: "blur" },
+        ],
+        talkObject: [
+          { required: true, message: "谈心对象不能为空", trigger: "blur" },
+        ],
+      },
+      // 左侧树形
+      deptOptions: "",
+      //左侧时间选择
+      pickerOptions: {
+        disabledDate(time) {
+          return time.getTime() > Date.now();
+        },
+      },
+      // 树形配置
+      defaultProps: {
+        children: "children",
+        label: "label",
+      },
+      // 搜索时间的保存
+      timeDate: "",
+      tiem: "",
+      executors: [],
+      recodeexecutor: [],
+      // 获取单位列表
+      users:[],
+      // 谈心对象列表
+      tanxinexecutor:[],
+      unitName:""
     };
   },
   created() {
     this.getList();
+    this.treeselect();
+    this.getSuoYou();
+    // 获取执行单位列表
+    getDept2().then((res) => {
+      // console.log(res,2)
+      this.users = res.data;
+      // console.log(this.users);
+    });
   },
   methods: {
+    peopleIds(item){
+      this.form.talkObjectId=item.id
+      console.log(item)
+    },
+    // 选中单位
+    selectPeo(val) {
+      console.log(val);
+      this.form.talkObject = "";
+      this.form.unitId = val.id;
+      this.unitName = val.label;
+      // this.form.phone = "";
+      this.getZhuChi(this.form.unitId);
+    },
+     // 获取执行人
+    getZhuChi(id) {
+      // console.log(id)
+      deptUser(id).then((res) => {
+        // 谈心对象
+        this.tanxinexecutor = res.data;
+        // this.executors = res.data;
+        // console.log(this.executor)
+        // this.form.unitName=this.executor
+      });
+    },
+    // 获取所有人员
+    getSuoYou() {
+      getAll().then((response) => {
+        this.executors = response.rows;
+        // 添加的人员
+        // this.executor = response.rows;
+        // 记录人
+        this.recodeexecutor = response.rows;
+        // console.log(this.executors);
+      });
+    },
+    zuzhiPeople(id) {
+      // console.log(id)
+      this.form.talkPeopleId = id;
+    },
+    jiluPeople(id) {
+      this.form.recorderId = id;
+      // console.log(id)
+    },
+    // 获取部门数据
+    getShuJu(data) {
+      exportBdgShuju(data).then((res) => {
+        this.DataTime = data;
+        this.registrationData = res;
+        this.cg = res.cg;
+        this.sb = res.sb;
+        // this.yishenpi = res.yiShenPi;
+        // this.weishenpi = res.weiShenPi;
+        this.tiems = res.time;
+      });
+    },
+    // 搜索时间触发
+    shiJian(data) {
+      this.queryParams.diaryTime = data;
+      this.timeDate = data;
+      this.getList();
+      this.getShuJu(data);
+    },
+    // 获取外面部门树形
+    treeselect() {
+      getWeiShu().then((res) => {
+        this.deptOptions = res.data;
+      });
+    },
+    //外面树形选择搜索
+    handleNodeClick(data) {
+      this.queryParams.unitId = data.id;
+      this.getList();
+    },
     /** 查询谈心记录卡列表 */
     getList() {
       this.loading = true;
-      listTalk(this.queryParams).then(response => {
+      listTalk(this.queryParams).then((response) => {
         this.talkList = response.rows;
         this.total = response.total;
         this.loading = false;
@@ -433,7 +697,7 @@ export default {
         talkTime: null,
         talkAddress: null,
         recorder: null,
-        recorderId: null
+        recorderId: null,
       };
       this.resetForm("form");
     },
@@ -449,9 +713,9 @@ export default {
     },
     // 多选框选中数据
     handleSelectionChange(selection) {
-      this.ids = selection.map(item => item.id)
-      this.single = selection.length!==1
-      this.multiple = !selection.length
+      this.ids = selection.map((item) => item.id);
+      this.single = selection.length !== 1;
+      this.multiple = !selection.length;
     },
     /** 新增按钮操作 */
     handleAdd() {
@@ -462,8 +726,8 @@ export default {
     /** 修改按钮操作 */
     handleUpdate(row) {
       this.reset();
-      const id = row.id || this.ids
-      getTalk(id).then(response => {
+      const id = row.id || this.ids;
+      getTalk(id).then((response) => {
         this.form = response.data;
         this.open = true;
         this.title = "修改谈心记录卡";
@@ -471,16 +735,22 @@ export default {
     },
     /** 提交按钮 */
     submitForm() {
-      this.$refs["form"].validate(valid => {
+      if(this.form.fileName){
+      this.form.filePath=this.form.fileName[0].url
+      this.form.fileName=this.form.fileName[0].name
+      }
+      this.form.unitName=this.unitName
+      console.log(this.form)
+      this.$refs["form"].validate((valid) => {
         if (valid) {
           if (this.form.id != null) {
-            updateTalk(this.form).then(response => {
+            updateTalk(this.form).then((response) => {
               this.$modal.msgSuccess("修改成功");
               this.open = false;
               this.getList();
             });
           } else {
-            addTalk(this.form).then(response => {
+            addTalk(this.form).then((response) => {
               this.$modal.msgSuccess("新增成功");
               this.open = false;
               this.getList();
@@ -492,28 +762,50 @@ export default {
     /** 删除按钮操作 */
     handleDelete(row) {
       const ids = row.id || this.ids;
-      this.$modal.confirm('是否确认删除谈心记录卡编号为"' + ids + '"的数据项?').then(function() {
-        return delTalk(ids);
-      }).then(() => {
-        this.getList();
-        this.$modal.msgSuccess("删除成功");
-      }).catch(() => {});
+      this.$modal
+        .confirm('是否确认删除谈心记录卡编号为"' + ids + '"的数据项?')
+        .then(function () {
+          return delTalk(ids);
+        })
+        .then(() => {
+          this.getList();
+          this.$modal.msgSuccess("删除成功");
+        })
+        .catch(() => {});
     },
     /** 导出按钮操作 */
     handleExport() {
       const queryParams = this.queryParams;
-      this.$modal.confirm('是否确认导出所有谈心记录卡数据项?').then(() => {
-        this.exportLoading = true;
-        return exportTalk(queryParams);
-      }).then(response => {
-        this.$download.name(response.msg);
-        this.exportLoading = false;
-      }).catch(() => {});
-    }
-  }
+      this.$modal
+        .confirm("是否确认导出所有谈心记录卡数据项?")
+        .then(() => {
+          this.exportLoading = true;
+          return exportTalk(queryParams);
+        })
+        .then((response) => {
+          this.$download.name(response.msg);
+          this.exportLoading = false;
+        })
+        .catch(() => {});
+    },
+  },
 };
 </script>
 <style scoped>
+/* 树形样式 */
+::v-deep .vue-treeselect__control {
+  background-color: #004d86;
+  width: 216px;
+  margin-right: 25px;
+  color: white;
+}
+.threeselects {
+  width: 216px;
+  margin-right: 22px;
+}
+::v-deep .vue-treeselect__single-value {
+  color: white;
+}
 ::v-deep .el-dialog {
   background-color: #004d86 !important;
 }
@@ -529,7 +821,7 @@ export default {
   border: 1px solid white !important;
 }
 /* 表格样式 */
-::v-deep .el-table .el-table__header-wrapper th{
+::v-deep .el-table .el-table__header-wrapper th {
   background-color: #004d86 !important;
   color: white;
 }
@@ -539,30 +831,30 @@ export default {
   /* border-bottom: 1px solid white; */
 }
 /* 标题下划线 */
-::v-deep .el-dialog__header{
+::v-deep .el-dialog__header {
   border-bottom: 1px solid white;
 }
 /* 日历样式 */
-::v-deep .el-date-editor .el-input__inner{
+::v-deep .el-date-editor .el-input__inner {
   height: 36px !important;
   line-height: 36px;
 }
-::v-deep .datesend .el-form-item__label{
+::v-deep .datesend .el-form-item__label {
   width: 115px !important;
 }
 /* 会议文本域样式 */
-::v-deep .el-form-item__content .el-textarea{
- width: 660px;
- /* height: 80px !important; */
+::v-deep .el-form-item__content .el-textarea {
+  width: 660px;
+  /* height: 80px !important; */
 }
-::v-deep .el-form-item__content .el-textarea .el-textarea__inner{
- /* width: 1000px; */
- height: 80px !important;
+::v-deep .el-form-item__content .el-textarea .el-textarea__inner {
+  /* width: 1000px; */
+  height: 80px !important;
 }
 ::v-deep .el-dialog__body {
-    padding-left: 45px !important;
-    padding-right: 0px !important;
-    padding-bottom: 0px !important;
+  padding-left: 40px !important;
+  padding-right: 0px !important;
+  padding-bottom: 0px !important;
 }
 /* 富文本内容 */
 /* ::v-deep .editor{
@@ -602,7 +894,7 @@ export default {
 ::v-deep .ql-toolbar.ql-snow .ql-formats {
   margin-right: 7px;
 }
-::v-deep .ql-toolbar{
+::v-deep .ql-toolbar {
   display: flex;
   justify-content: space-around;
 }
@@ -617,7 +909,182 @@ export default {
   text-overflow: ellipsis;
   white-space: nowrap;
 }
-::v-deep .el-input__suffix{
+::v-deep .el-input__suffix {
+  right: 22px;
+}
+::v-deep .data .el-date-editor.el-input {
+  width: 100%;
+  border: none !important;
+}
+::v-deep .data .el-input__inner {
+  width: 100% !important;
+  border: none !important;
+}
+::v-deep .data .el-input--medium .el-input__icon {
+  line-height: 36px;
+  position: absolute;
+  right: -223px;
+  top: 2px;
+}
+::v-deep .data .el-input__inner {
+  background-color: transparent !important;
+  color: #fff;
+  text-align: center;
+  margin-top: 2px;
+}
+::v-deep .data .el-input__suffix {
+  position: absolute;
+  right: 281px;
+}
+.app-container .box-lfet .data {
+  height: 40px;
+  background: #003156;
+  margin-bottom: 12px;
+  color: #fff;
+  display: flex;
+  font-size: 13px;
+  line-height: 25px;
+  position: relative;
+}
+
+.box-lfet .data p {
+  position: absolute;
+  top: -5px;
+  left: 15px;
+}
+.box-lfet .data .a1 {
+  width: 128px;
+  height: 26px;
+  background: rgba(23, 74, 112, 0.4);
+  border-radius: 13px;
+  position: absolute;
+  top: 7px;
+  left: 60px;
+}
+::v-deep .data .el-date-editor.el-input {
+  width: 100%;
+  border: none;
+}
+::v-deep .data .el-input__inner {
+  width: 100% !important;
+  border: none;
+}
+::v-deep .data .el-input--medium .el-input__icon {
+  line-height: 36px;
+  position: absolute;
+  right: -223px;
+  top: 2px;
+}
+::v-deep .data .el-input__inner {
+  background-color: transparent;
+  color: #fff;
+  text-align: center;
+  margin-top: 2px;
+}
+::v-deep .data .el-input__suffix {
+  position: absolute;
+  right: 281px;
+}
+/* 头部样式 */
+.box-lfet .dadui {
+  height: 40px;
+  background: #003156;
+  /* border-bottom: 1px solid #718A9D ; */
+  background-image: url(../../../images/矩形底部边框.png);
+  background-repeat: no-repeat;
+  background-position: 0px 39px;
+  font-size: 16px;
+  color: #1d96ff;
+}
+.box-lfet .dadui img {
+  margin: 10px 10px 0px 10px;
+}
+
+.box-lfet .data p {
+  position: absolute;
+  top: -5px;
+  left: 15px;
+}
+.box-lfet .data .a1 {
+  width: 128px;
+  height: 26px;
+  background: rgba(23, 74, 112, 0.4);
+  border-radius: 13px;
+  position: absolute;
+  top: 7px;
+  left: 60px;
+}
+/* 划过效果 */
+::v-deep .el-tree-node__content:hover {
+  /* color: #fff; */
+  background-color: #003156;
+  background-image: url("../../../assets/images/选中.png");
+  background-size: 100% 100%;
+  background-repeat: no-repeat;
+}
+.app-container {
+  display: flex;
+}
+/* 左侧树状盒子 */
+.app-container .box-lfet {
+  width: 15%;
+  min-height: 740px;
+  /* background: #003156; */
+  /* padding: 10px; */
+  margin-right: 10px;
+  /* border: 1px solid white; */
+}
+/* 右侧内容盒子 */
+.app-container .box-right {
+  flex: 1;
+}
+.app-container .box-lfet .data {
+  height: 40px;
+  background: #003156;
+  margin-bottom: 12px;
+  color: #fff;
+  display: flex;
+  font-size: 13px;
+  line-height: 25px;
+  position: relative;
+}
+.el-tree {
+  background: #003156;
+  color: #fff;
+  margin-right: 2px;
+  padding-top: 7px;
+}
+::v-deep .el-dialog {
+  background-color: #004d86 !important;
+}
+::v-deep .el-input__suffix {
   right: 22px;
 }
+::v-deep .el-tree-node__content {
+  height: 32px;
+}
+::v-deep
+  .el-tree--highlight-current
+  .el-tree-node.is-current
+  > .el-tree-node__content {
+  height: 32px;
+  color: #fff !important;
+  background-color: #003156;
+  background-image: url("../../../assets/images/选中.png");
+  background-size: 100% 100%;
+  background-repeat: no-repeat;
+}
+/* 计划附件 */
+::v-deep .el-upload__tip {
+  color: white;
+  position: absolute;
+  top: -5px;
+  width: 500px;
+  left: 90px;
+  color: white;
+}
+::v-deep .el-link.el-link--default {
+  color: white;
+  text-indent: 0.5em;
+}
 </style>

Tiedoston diff-näkymää rajattu, sillä se on liian suuri
+ 568 - 256
src/views/thought/weekjob/index.vue


Kaikkia tiedostoja ei voida näyttää, sillä liian monta tiedostoa muuttui tässä diffissä