hxl13994548489 2 жил өмнө
parent
commit
93fcd032a5

+ 18 - 0
src/http/moudules/dept.js

@@ -376,4 +376,22 @@ export const queryTreeList = (data) => {
         method: 'post',
         data
     })
+}
+
+
+//查询机构下的后线人员
+export const getLeadListDeptId = (deptId) => {
+    return axios({
+        url: '/dept/getLeadListDeptId?deptId='+deptId,
+        method: 'get'
+    })
+}
+
+//设置负责人id
+export const saveLeadId = (data) => {
+    return axios({
+        url: '/dept/saveLeadId',
+        method: 'post',
+        data
+    })
 }

+ 103 - 0
src/views/Sys/Deptall.vue

@@ -135,6 +135,8 @@
           </el-table-column>
           <el-table-column prop="address" label="机构地址" align="center">
           </el-table-column>
+          <el-table-column prop="leadername" label="负责人" align="center">
+          </el-table-column>
           <el-table-column
             label="操作"
             fixed="right"
@@ -158,6 +160,12 @@
                 :label="'删除'"
                 @click.native.stop="deleteMechanism(scope.row)"
               ></KtButton>
+              <KtButton
+                :size="'medium'"
+                :type="'text'"
+                :label="'设置机构负责人'"
+                @click.native.stop="setLeadUserId(scope.row)"
+              ></KtButton>
             </template>
           </el-table-column>
         </el-table>
@@ -570,6 +578,50 @@
         }}</el-button>
       </span>
     </el-dialog>
+     <!-- 设置部门负责人 -->
+    <el-dialog
+      title="设置部门负责人"
+      width="500px"
+      :visible.sync="deptDialogLeadVisible"
+      :close-on-click-modal="false"
+      v-dialogDrag
+      @close="closeLeadDialog"
+    >
+    <el-form
+        :model="leadDataForm"
+        :rules="leadDataRule"
+        ref="leadDataForm"
+        label-width="100px"
+        size="small"
+        style="text-align: left"
+      >
+      <el-row>
+        <el-col :span="8">
+        <el-form-item label="机构负责人" prop="address">
+          <el-select
+            style="width: 200px;"
+            filterable
+            v-model="leadDataForm.leadId"
+            placeholder="请选择"
+          >
+            <el-option
+              v-for="item in userList"
+              :key="item.id"
+              :label="item.name"
+              :value="item.id"
+            ></el-option>
+          </el-select>
+        </el-form-item>
+       </el-col>
+      </el-row>
+    </el-form>
+      <span slot="footer" class="dialog-footer">
+        <el-button size="small" @click="closeLeadDialog">取消
+        </el-button>
+        <el-button size="small" type="primary" @click="leadSubmitForm()">确定
+        </el-button>
+      </span>
+    </el-dialog>
   </div>
 </template>
 <script>
@@ -609,6 +661,12 @@ export default {
   },
   data() {
     return {
+      deptDialogLeadVisible:false,
+      leadDataForm:{
+        leadId:"",
+        deptId:""
+      },
+      userList: [],
       loading: false,
       searchForm: {
         classname: "",
@@ -683,6 +741,15 @@ export default {
         managementSource: 1, //来源
         orderNum: 0,
       },
+      leadDataRule:{
+        leadId: [
+          {
+            required: true,
+            message: "请选择机构负责人",
+            trigger: "blur",
+          },
+        ],
+      },
       //表单验证
       dataRule: {
         name: [
@@ -814,6 +881,42 @@ export default {
     };
   },
   methods: {
+    //关闭部门弹框
+    closeLeadDialog() {
+      this.leadDataForm={
+        leadId:"",
+        deptId:""
+      },
+      this.deptDialogLeadVisible = false;
+    },
+    //提交
+    leadSubmitForm(){
+      this.$api.dept.saveLeadId(this.leadDataForm).then((res) => {
+        if (res.code == 200) {
+              this.findTreeData();
+              this.closeLeadDialog();
+              this.$message({
+                type: "success",
+                message: "设置成功!",
+              });
+            } else {
+              this.$message({
+                type: "error",
+                message: "设置失败!",
+              });
+            }
+      });
+    },
+    // 设置机构负责人
+    setLeadUserId(data) {
+      console.log(data.id)
+      this.leadDataForm.deptId =data.id;
+      //查询该机构下的后线人员
+      this.$api.dept.getLeadListDeptId(data.id).then((res) => {
+        this.userList = res.data;
+        this.deptDialogLeadVisible = true;
+      });
+    },
     //点击每一行的事件
     rowClick(row, treeNode) {
       //点每行展开折叠