Explorar o código

fix:系统设置新增年度成本利润管理菜单

刘恒 %!s(int64=2) %!d(string=hai) anos
pai
achega
bf48a8b546
Modificáronse 3 ficheiros con 787 adicións e 414 borrados
  1. 37 10
      src/http/moudules/sys.js
  2. 351 0
      src/views/Sys/Profit.vue
  3. 399 404
      src/views/Sys/SysManage/SysAllocation.vue

+ 37 - 10
src/http/moudules/sys.js

@@ -31,7 +31,7 @@ export const deleteSys = (data) => {
 *  系统分配管理
 */
 //系统分配列表
-export const getSysAllocationList=(data) => {
+export const getSysAllocationList = (data) => {
     return axios({
         url: '/sysUserLinkSys/queryPage',
         method: 'post',
@@ -39,7 +39,7 @@ export const getSysAllocationList=(data) => {
     })
 }
 //系统字典列表
-export const sysDictList=(data) => {
+export const sysDictList = (data) => {
     return axios({
         url: '/sysSys/sysList',
         method: 'post',
@@ -47,7 +47,7 @@ export const sysDictList=(data) => {
     })
 }
 //绑定关系系统人员
-export const bindSysUser=(data) => {
+export const bindSysUser = (data) => {
     return axios({
         url: '/sysUserLinkSys/addOrUpdate',
         method: 'post',
@@ -55,7 +55,7 @@ export const bindSysUser=(data) => {
     })
 }
 //解绑关系
-export const sysUserLinkSysDelete=(data) => {
+export const sysUserLinkSysDelete = (data) => {
     return axios({
         url: '/sysUserLinkSys/delete',
         method: 'post',
@@ -64,7 +64,7 @@ export const sysUserLinkSysDelete=(data) => {
 }
 
 // 获取费用配置
-export const getConfig=(data) => {
+export const getConfig = (data) => {
     return axios({
         url: '/fee/getConfig',
         method: 'get',
@@ -74,7 +74,7 @@ export const getConfig=(data) => {
 
 
 // 更新费用配置
-export const updateConfig=(data) => {
+export const updateConfig = (data) => {
     return axios({
         url: '/fee/updateConfig',
         method: 'post',
@@ -85,7 +85,7 @@ export const updateConfig=(data) => {
 
 // 二维码配置
 // 列表
-export const qrCodeList=(data) => {
+export const qrCodeList = (data) => {
     return axios({
         url: '/qrCode/getList',
         method: 'post',
@@ -93,7 +93,7 @@ export const qrCodeList=(data) => {
     })
 }
 // 新增
-export const qrCodeSave=(data) => {
+export const qrCodeSave = (data) => {
     return axios({
         url: '/qrCode/save',
         method: 'post',
@@ -101,7 +101,7 @@ export const qrCodeSave=(data) => {
     })
 }
 // 编辑
-export const qrCodeEdit=(data) => {
+export const qrCodeEdit = (data) => {
     return axios({
         url: '/qrCode/edit',
         method: 'post',
@@ -109,10 +109,37 @@ export const qrCodeEdit=(data) => {
     })
 }
 // 删除
-export const qrCodedelete=(params) => {
+export const qrCodedelete = (params) => {
     return axios({
         url: '/qrCode/delete',
         method: 'DELETE',
         params
     })
+}
+//获取成本利润表
+export const getLanorList = (data) => {
+
+    return axios({
+        url: '/insLaborCost/queryPage',
+        method: 'post',
+        data
+    })
+
+}
+//添加及编辑
+export const editorLanor = (data) => {
+
+    return axios({
+        url: '/insLaborCost/addOrUpdate',
+        method: 'post',
+        data
+    })
+}
+export const deleteLanor = (data) => {
+
+    return axios({
+        url: '/insLaborCost/delete',
+        method: 'post',
+        data
+    })
 }

+ 351 - 0
src/views/Sys/Profit.vue

@@ -0,0 +1,351 @@
+<template>
+  <div>
+    <el-form>
+      <el-row>
+        <el-col :span="4">
+          <el-form-item label="日期">
+            <el-date-picker
+              v-model="searchForm.yearAndMonth"
+              type="month"
+              placeholder="选择年月"
+              value-format="yyyy-MM"
+              clearable
+              @change="getList"
+            >
+            </el-date-picker>
+          </el-form-item>
+        </el-col>
+        <el-col :span="4">
+          <el-button type="primary" @click="add">添加</el-button>
+        </el-col>
+      </el-row>
+    </el-form>
+
+    <templateTable
+      :searchData.sync="formData"
+      :tableConfig="tableConfig"
+      :data="tabelList"
+      @getList="getList"
+      :pagination="pageData"
+    >
+    </templateTable>
+    <el-dialog
+      :title="dialogTitle"
+      :visible.sync="dialogVisible"
+      width="50%"
+      :before-close="handleClose"
+    >
+      <el-form
+        :model="formData"
+        :rules="formDataRules"
+        ref="formData"
+        label-width="100px"
+        class="demo-formData"
+        :inline="true"
+      >
+        <el-form-item label="日期" prop="yearAndMonth">
+          <el-date-picker
+            v-model="formData.yearAndMonth"
+            type="month"
+            placeholder="选择年月"
+            value-format="yyyy-MM"
+            clearable
+            :disabled="formData.id != null ? true : false"
+          >
+          </el-date-picker>
+        </el-form-item>
+        <el-form-item label="人员成本" prop="laborCost">
+          <el-input
+            v-model="formData.laborCost"
+            clearable
+            placeholder="请输入人员成本"
+            @input="
+              formData.laborCost = formData.laborCost.replace(
+                /[^\d*\.\d+$]/g,
+                ''
+              )
+            "
+          ></el-input>
+        </el-form-item>
+        <el-form-item label="固定成本" prop="fixedCost">
+          <el-input
+            v-model="formData.fixedCost"
+            clearable
+            placeholder="请输入固定成本"
+            @input="
+              formData.fixedCost = formData.fixedCost.replace(
+                /[^\d*\.\d+$]/g,
+                ''
+              )
+            "
+          ></el-input>
+        </el-form-item>
+
+        <el-form-item label="变动成本" prop="variableCost">
+          <el-input
+            v-model="formData.variableCost"
+            clearable
+            placeholder="请输入变动成本"
+            @input="
+              formData.variableCost = formData.variableCost.replace(
+                /[^\d*\.\d+$]/g,
+                ''
+              )
+            "
+          ></el-input>
+        </el-form-item>
+        <el-form-item label="净利润" prop="netProfit">
+          <el-input
+            v-model="formData.netProfit"
+            clearable
+            placeholder="请输入净利润成本"
+            @input="
+              formData.netProfit = formData.netProfit.replace(
+                /[^\d*\.\d+$]/g,
+                ''
+              )
+            "
+          ></el-input>
+        </el-form-item>
+
+        <el-form-item label="经营利润" prop="operatingProfit">
+          <el-input
+            v-model="formData.operatingProfit"
+            clearable
+            placeholder="请输入经营利润"
+            @input="
+              formData.operatingProfit = formData.operatingProfit.replace(
+                /[^\d*\.\d+$]/g,
+                ''
+              )
+            "
+          ></el-input>
+        </el-form-item>
+
+        <el-form-item label="税费" prop="taxation">
+          <el-input
+            v-model="formData.taxation"
+            clearable
+            placeholder="请输入税费"
+            @input="
+              formData.taxation = formData.taxation.replace(/[^\d*\.\d+$]/g, '')
+            "
+          ></el-input>
+        </el-form-item>
+      </el-form>
+      <span slot="footer" class="dialog-footer">
+        <el-button @click="cancel('formData')">取 消</el-button>
+        <el-button type="primary" @click="confirm('formData')">确 定</el-button>
+      </span>
+    </el-dialog>
+  </div>
+</template>
+
+<script>
+import templateTable from "@/components/TemplateTable/index.vue";
+export default {
+  components: {
+    // KtButton,
+    // tree,
+    templateTable,
+    // peopleImage,
+  },
+  data() {
+    return {
+      formData: {
+        yearAndMonth: "",
+        fixedCost: "",
+        laborCost: "",
+        netProfit: "",
+        operatingProfit: "",
+        taxation: "",
+        variableCost: "",
+      },
+      searchForm: {
+        yearAndMonth: "",
+      },
+      formDataRules: {
+        yearAndMonth: [
+          { required: true, message: "请选择日期", trigger: "change" },
+        ],
+        fixedCost: [
+          { required: true, message: "请输入固定成本", trigger: "blur" },
+        ],
+        laborCost: [
+          { required: true, message: "请输入人力成本", trigger: "blur" },
+        ],
+        netProfit: [
+          { required: true, message: "请输入净利润", trigger: "blur" },
+        ],
+        operatingProfit: [
+          { required: true, message: "请输入经营利润", trigger: "blur" },
+        ],
+        taxation: [{ required: true, message: "请输入税费", trigger: "blur" }],
+        variableCost: [
+          { required: true, message: "请输入变动成本", trigger: "blur" },
+        ],
+        // fixedCost: [
+        //   { required: true, message: "请输入固定成本", trigger: "blur" },
+        // ],
+      },
+
+      pageData: {
+        pageNum: 1,
+        pageSize: 10,
+        totalSize: 0,
+      },
+      dialogVisible: false,
+      dialogTitle: "",
+      tableConfig: {
+        columns: [
+          // 数据列
+          { prop: "laborCost", label: "人员成本", type: "text" },
+          { prop: "fixedCost", label: "固定成本", type: "text" },
+          { prop: "variableCost", label: "变动成本", type: "text" },
+          {
+            prop: "operatingProfit",
+            label: "经营利润",
+            type: "text",
+          },
+          { prop: "taxation", label: "税费", type: "text" },
+          { prop: "netProfit", label: "净利润", type: "text" },
+          { prop: "createDate", label: "创建时间", type: "text" },
+        ],
+        loading: true,
+        isPaginationShow: true,
+        isShowIndex: true,
+        operationWidth: "100",
+        optBtns: [
+          {
+            type: "primary",
+            label: "编辑",
+            // type: "button",
+            // perm: "agreement:taxSource:config",
+            click: (row, index) => {
+              return this.updateProfit(row);
+            },
+          },
+          {
+            type: "danger",
+            label: "删除",
+            // type: "button",
+            // perm: "agreement:taxSource:config",
+            click: (row, index) => {
+              return this.deleteProfit(row);
+            },
+          },
+        ],
+      },
+      tabelList: [],
+      originalForm: {},
+    };
+  },
+  created() {
+    this.getList();
+    this.originalForm = { ...this.formData };
+  },
+  mounted() {},
+  methods: {
+    inputChange(value, type) {
+      //   console.log(value, type);
+      if (type === "1") {
+        if (!this.reg.test(value)) {
+          this.formData.value = "";
+        }
+      }
+    },
+    updateProfit(row) {
+      //   console.log(row);
+      this.dialogTitle = "编辑";
+      this.formData.id = row.id;
+      this.formData.yearAndMonth = row.yearAndMonth;
+      this.formData.fixedCost = row.fixedCost;
+      this.formData.laborCost = row.laborCost;
+      this.formData.netProfit = row.netProfit;
+      this.formData.operatingProfit = row.operatingProfit;
+      this.formData.taxation = row.taxation;
+      this.formData.variableCost = row.variableCost;
+      this.dialogVisible = true;
+
+      //   this.formData = { ...row };
+    },
+    deleteProfit(row) {
+      this.$api.sys
+        .deleteLanor({ ids: [row.id] })
+        .then((res) => {
+          if (res.code == 200) {
+            this.$message.success(res.msg);
+
+            this.getList();
+          } else {
+            this.$message.error(res.msg);
+          }
+        })
+        .catch((err) => {
+          //
+        });
+    },
+    getList() {
+      this.tableConfig.loading = true;
+      this.$api.sys
+        .getLanorList({ ...this.searchForm, ...this.pageData })
+        .then((res) => {
+          if (res.code == 200) {
+            this.tableConfig.loading = false;
+
+            this.tabelList = res.data.content;
+            this.pageData.pageNum = res.data.pageNum;
+            this.pageData.pageSize = res.data.pageSize;
+            this.pageData.totalSize = res.data.totalSize;
+          } else {
+            this.$message.error(res.msg);
+          }
+        })
+        .catch((err) => {
+          this.$message.error(err.message);
+          this.tableConfig.loading = false;
+        });
+    },
+    add() {
+      this.dialogVisible = true;
+      this.dialogTitle = "添加";
+      this.formData = { ...this.originalForm };
+    },
+    handleClose() {
+      this.dialogVisible = false;
+    },
+    confirm(formName) {
+      // this.dialogVisible = false
+      this.$refs[formName].validate((valid) => {
+        if (valid) {
+          //   delete
+          this.$api.sys
+            .editorLanor({
+              ...this.formData,
+            })
+            .then((res) => {
+              // console.log(res,666)
+              if (res.code == 200) {
+                this.$message.success(res.msg);
+                this.dialogVisible = false;
+                this.getList();
+              } else {
+                this.$message.error(res.msg);
+              }
+            });
+        } else {
+          // console.log('error submit!!');
+          return false;
+        }
+      });
+    },
+    cancel(formName) {
+      this.$refs[formName].resetFields();
+      this.formData.yearAndMonth = "";
+      this.dialogVisible = false;
+    },
+  },
+};
+</script>
+<style lang='scss' scoped>
+</style>

+ 399 - 404
src/views/Sys/SysManage/SysAllocation.vue

@@ -1,323 +1,301 @@
 <template>
-    <div>
-        <el-row class="queryFrom">
-            <el-form
-              ref="queryFormRef"
-             
-              label-width="80px"
-              size="small"
-            >
-              <el-row>
-                <el-col :span="4">
-                  <el-form-item label="系统名称">
-                  
-                      <el-input placeholder="请输入系统名称"  clearable v-model="searchForm.systemName"></el-input>
-                    
-                  </el-form-item>
-                </el-col>
-                <el-col :span="4">
-                  <el-form-item label="系统编码">
-                    
-                      <el-input placeholder="请输入系统编码"  clearable v-model="searchForm.systemCode"></el-input>
-                    
-                  </el-form-item>
-                </el-col>
-                <el-col :span="4">
-                  <el-form-item label="姓名">
-                    
-                      <el-input placeholder="请输入姓名"  clearable v-model="searchForm.userName"></el-input>
-                    
-                  </el-form-item>
-                </el-col>
-                <el-col :span="4">
-                  <el-form-item label="工号">
-                    
-                      <el-input placeholder="请输入工号"  clearable v-model="searchForm.userId"></el-input>
-                    
-                  </el-form-item>
-                </el-col>
-                <!-- <el-col :span="4">
-                  <el-form-item label="系统状态">
-                    <el-select v-model="searchForm.systemCode" placeholder="请选择系统状态">
-                        <el-option
-                          
-                            :label="'开启'"
-                            :value="1">
-                        </el-option>
-                        <el-option
-                          
-                            :label="'关闭'"
-                            :value="0">
-                        </el-option>
-                    </el-select>
-                
-                    
-                  </el-form-item>
-                </el-col> -->
-                <el-col :span="4">
-                  <el-form-item label="">
-                    <el-button type="primary" @click="getList">查询</el-button >
-                    <el-button type="primary" @click="addSys">添加</el-button>
-                  </el-form-item>
-                </el-col>
-               
-                <el-col :span="4">
-                  <el-form-item label="">
-                   
-                  </el-form-item>
-                </el-col>
-              </el-row>
-            </el-form>
-          </el-row>
-        <templateTable :searchData.sync="formData" :tableConfig="tableConfig" :data="tabelList" @getList="getList"
-            :pagination="pageData">
-        </templateTable>
-        <el-dialog
-            :title="dialogTitle"
-            :visible.sync="dialogVisible"
-            width="70%"
-            :before-close="handleClose">
-            <el-form :model="formData" :rules="formDataRules" ref="formData" label-width="100px" class="demo-formData">
-                <el-form-item label="系统名称" prop="systemName">
-                    <el-select clearable v-model="formData.systemName">
-
-                        <el-option v-for="item in optionList" :key="item.id" :value="item.id" :label="item.systemName">
-
-                        </el-option>
-                    </el-select>
-                   
-                </el-form-item>
-                <el-form-item label="是否全部用户" prop="">
-                    <el-switch
-                        v-model="formData.flag"
-                      
-                        :active-value="1"
-                        :inactive-value="0"></el-switch>
-                   
-                </el-form-item>
-                
-                <el-row>
-                <el-col :span="7">
-                  <el-form-item label="工号">
-                    <el-input
-                      clearable
-                      :size="overSize"
-                      placeholder="工号"
-                      v-model="personnePageRequest.userId"
-                    ></el-input>
-                  </el-form-item>
-                </el-col>
-                <el-col :span="7">
-                  <el-form-item label="姓名">
-                    <el-input
-                      clearable
-                      :size="overSize"
-                      placeholder="姓名"
-                      v-model="personnePageRequest.name"
-                    ></el-input>
-                  </el-form-item>
-                </el-col>
-                <el-col :span="7">
-                  <el-form-item label="机构">
-                    <el-cascader
-                      v-model="personnePageRequest.deptId"
-                      :size="overSize"
-                      :show-all-levels="false"
-                      :options="deptList"
-                      :props="optionProps"
-                      clearable
-                      filterable
-                    ></el-cascader>
-                  </el-form-item>
-                </el-col>
-                <el-col :span="2">
-                  <el-form-item label label-width="10px">
-                    <el-button
-                      :size="overSize"
-                      type="primary"
-                      @click="personnelFindQuery()"
-                      >查询</el-button
-                    >
-                  </el-form-item>
-                </el-col>
-              </el-row>
-                <el-form-item label="用户信息" prop="">
-                    <el-table
-                    :data="personnePageReData"
-                    border
-                    ref="personneTable"
-                    width="100%"
-                    size="small"
-                    height="350"
-                    align="center"
-                    :header-cell-style="{
-                        background: '#F2F7FC',
-                        fontWeight: '900',
-                        color: '#606266',
-                    }"
-                    @selection-change="personneSelectionChange"
-                    :row-class-name="tableRowClassName"
-                    >
-                    <el-table-column type="selection" width="55"> </el-table-column>
-                    <el-table-column prop="userId" label="工号"> </el-table-column>
-                    <el-table-column prop="name" label="姓名"> </el-table-column>
-                    <el-table-column prop="deptName" label="机构名称">
-                    </el-table-column>
-                    
-               
-                    </el-table>
-                </el-form-item>
+  <div>
+    <el-form ref="queryFormRef" label-width="80px" size="small">
+      <el-row :gutter="24">
+        <el-col :span="4">
+          <el-form-item label="系统名称">
+            <el-input
+              placeholder="请输入系统名称"
+              clearable
+              v-model="searchForm.systemName"
+            ></el-input>
+          </el-form-item>
+        </el-col>
+        <el-col :span="4">
+          <el-form-item label="系统编码">
+            <el-input
+              placeholder="请输入系统编码"
+              clearable
+              v-model="searchForm.systemCode"
+            ></el-input>
+          </el-form-item>
+        </el-col>
+        <el-col :span="4">
+          <el-form-item label="姓名">
+            <el-input
+              placeholder="请输入姓名"
+              clearable
+              v-model="searchForm.userName"
+            ></el-input>
+          </el-form-item>
+        </el-col>
+        <el-col :span="4">
+          <el-form-item label="工号">
+            <el-input
+              placeholder="请输入工号"
+              clearable
+              v-model="searchForm.userId"
+            ></el-input>
+          </el-form-item>
+        </el-col>
+        <el-col :span="4" class="operation">
+          <el-button type="primary" @click="getList">查询</el-button>
+          <el-button type="primary" @click="addSys">添加</el-button>
+        </el-col>
+      </el-row>
+    </el-form>
 
-                <el-pagination
-                @size-change="handleSizeChange"
-                @current-change="refreshPageRequest"
-                :current-page="personnePageRequest.pageNum"
-                :page-sizes="[10, 20, 50, 100, 200, 300, 400, 500]"
-                :page-size="personnePageRequest.pageSize"
-                layout="total, sizes, prev, pager, next, jumper"
-                :total="personnePageRequest.total"
-                >
-                </el-pagination>
+    <templateTable
+      :searchData.sync="formData"
+      :tableConfig="tableConfig"
+      :data="tabelList"
+      @getList="getList"
+      :pagination="pageData"
+    >
+    </templateTable>
+    <el-dialog
+      :title="dialogTitle"
+      :visible.sync="dialogVisible"
+      width="70%"
+      :before-close="handleClose"
+    >
+      <el-form
+        :model="formData"
+        :rules="formDataRules"
+        ref="formData"
+        label-width="100px"
+        class="demo-formData"
+      >
+        <el-form-item label="系统名称" prop="systemName">
+          <el-select clearable v-model="formData.systemName">
+            <el-option
+              v-for="item in optionList"
+              :key="item.id"
+              :value="item.id"
+              :label="item.systemName"
+            >
+            </el-option>
+          </el-select>
+        </el-form-item>
+        <el-form-item label="是否全部用户" prop="">
+          <el-switch
+            v-model="formData.flag"
+            :active-value="1"
+            :inactive-value="0"
+          ></el-switch>
+        </el-form-item>
 
-             
-               
-                
-            </el-form>
-            <span slot="footer" class="dialog-footer">
-                <el-button @click="cancel('formData')">取 消</el-button>
-                <el-button type="primary" @click="confirm('formData')">确 定</el-button>
-            </span>
-        </el-dialog>
+        <el-row>
+          <el-col :span="7">
+            <el-form-item label="工号">
+              <el-input
+                clearable
+                :size="overSize"
+                placeholder="工号"
+                v-model="personnePageRequest.userId"
+              ></el-input>
+            </el-form-item>
+          </el-col>
+          <el-col :span="7">
+            <el-form-item label="姓名">
+              <el-input
+                clearable
+                :size="overSize"
+                placeholder="姓名"
+                v-model="personnePageRequest.name"
+              ></el-input>
+            </el-form-item>
+          </el-col>
+          <el-col :span="7">
+            <el-form-item label="机构">
+              <el-cascader
+                v-model="personnePageRequest.deptId"
+                :size="overSize"
+                :show-all-levels="false"
+                :options="deptList"
+                :props="optionProps"
+                clearable
+                filterable
+              ></el-cascader>
+            </el-form-item>
+          </el-col>
+          <el-col :span="2">
+            <el-form-item label label-width="10px">
+              <el-button
+                :size="overSize"
+                type="primary"
+                @click="personnelFindQuery()"
+                >查询</el-button
+              >
+            </el-form-item>
+          </el-col>
+        </el-row>
+        <el-form-item label="用户信息" prop="">
+          <el-table
+            :data="personnePageReData"
+            border
+            ref="personneTable"
+            width="100%"
+            size="small"
+            height="350"
+            align="center"
+            :header-cell-style="{
+              background: '#F2F7FC',
+              fontWeight: '900',
+              color: '#606266',
+            }"
+            @selection-change="personneSelectionChange"
+            :row-class-name="tableRowClassName"
+          >
+            <el-table-column type="selection" width="55"> </el-table-column>
+            <el-table-column prop="userId" label="工号"> </el-table-column>
+            <el-table-column prop="name" label="姓名"> </el-table-column>
+            <el-table-column prop="deptName" label="机构名称">
+            </el-table-column>
+          </el-table>
+        </el-form-item>
 
-    </div>
+        <el-pagination
+          @size-change="handleSizeChange"
+          @current-change="refreshPageRequest"
+          :current-page="personnePageRequest.pageNum"
+          :page-sizes="[10, 20, 50, 100, 200, 300, 400, 500]"
+          :page-size="personnePageRequest.pageSize"
+          layout="total, sizes, prev, pager, next, jumper"
+          :total="personnePageRequest.total"
+        >
+        </el-pagination>
+      </el-form>
+      <span slot="footer" class="dialog-footer">
+        <el-button @click="cancel('formData')">取 消</el-button>
+        <el-button type="primary" @click="confirm('formData')">确 定</el-button>
+      </span>
+    </el-dialog>
+  </div>
 </template>
 
 <script>
 import templateTable from "@/components/TemplateTable/index.vue";
 
 export default {
-    components: {
+  components: {
     // KtButton,
     // tree,
     templateTable,
     // peopleImage,
   },
-//   mixins: [mixin],
+  //   mixins: [mixin],
   data() {
     return {
-      
-        dialogVisible:false,
-        dialogTitle: "",
-        pageData: {
-            pageNum: 1,
-            pageSize: 10,
-            totalSize:0
-        },
-        inactiveValue:0,
-        activeValue:1,
-        formData: {
-            systemName:'',
-            userName:'',
-            userId:'',
-            systemCode:'',
-            flag:0
-        },
-        searchForm: {
-            systemName:'',
-            userName:'',
-            userId:'',
-            systemCode:'',
-        },
-        formDataRules: {
-            systemName: [
-                { required: true, message: '请输入系统名称', trigger: 'blur' },
-            ],
-            systemCode: [
-                { required: true, message: '请输入系统编码', trigger: 'blur' },
-            ],
-        },
+      dialogVisible: false,
+      dialogTitle: "",
+      pageData: {
+        pageNum: 1,
+        pageSize: 10,
+        totalSize: 0,
+      },
+      inactiveValue: 0,
+      activeValue: 1,
+      formData: {
+        systemName: "",
+        userName: "",
+        userId: "",
+        systemCode: "",
+        flag: 0,
+      },
+      searchForm: {
+        systemName: "",
+        userName: "",
+        userId: "",
+        systemCode: "",
+      },
+      formDataRules: {
+        systemName: [
+          { required: true, message: "请输入系统名称", trigger: "blur" },
+        ],
+        systemCode: [
+          { required: true, message: "请输入系统编码", trigger: "blur" },
+        ],
+      },
 
-        tableConfig: {
-            columns: [
-                // 数据列
-                { prop: "systemName", label: "系统名称", type: "text" },
-                { prop: "userName", label: "姓名", type: "text" },
-                { prop: "userId", label: "员工工号", type: "text" },
-                { prop: "systemCode", label: "系统编码", type: "text",
-                // type: "statMap",
-                    // options: [
-                    // {
-                    //     label: "否",
-                    //     value: "0",
-                    // },
-                    // {
-                    //     label: "是",
-                    //     value: "1",
-                    // },
-                    // ],
-                 },
-                { prop: "createTime", label: "创建时间", type: "text" },
+      tableConfig: {
+        columns: [
+          // 数据列
+          { prop: "systemName", label: "系统名称", type: "text" },
+          { prop: "userName", label: "姓名", type: "text" },
+          { prop: "userId", label: "员工工号", type: "text" },
+          {
+            prop: "systemCode",
+            label: "系统编码",
+            type: "text",
+            // type: "statMap",
+            // options: [
+            // {
+            //     label: "否",
+            //     value: "0",
+            // },
+            // {
+            //     label: "是",
+            //     value: "1",
+            // },
+            // ],
+          },
+          { prop: "createTime", label: "创建时间", type: "text" },
+        ],
+        loading: true,
+        isPaginationShow: true,
+        isShowIndex: true,
+        operationWidth: "100",
+        optBtns: [
+          {
+            type: "danger",
+            label: "删除",
+            // type: "button",
+            // perm: "agreement:taxSource:config",
+            click: (row, index) => {
+              return this.deleteSys(row);
+            },
+          },
+        ],
+      },
+      tabelList: [],
+      originalForm: null,
+      operationId: undefined,
+      optionList: [],
+      personnePageReData: [],
 
-            ],
-            loading: true,
-            isPaginationShow: true,
-            isShowIndex: true,
-            operationWidth: "100",
-            optBtns: [
-              
-                {
-                    type: "danger",
-                    label: "删除",
-                    // type: "button",
-                    // perm: "agreement:taxSource:config",
-                    click: (row, index) => {
-                        return this.deleteSys(row);
-                    },
-                },
-            ],
-        },
-        tabelList:[],
-        originalForm: null,
-        operationId:undefined,
-        optionList:[],
-        personnePageReData: [],
-       
-        personnePageRequest: {
-            //查询的默认条件
-            pageNum: 1,
-            pageSize: 10,
-            total: 0,
-            deptId: [],
-            name:"",
-            userId:''
-        },
-        deptList: [],
-        overSize: "small",
-        optionProps: {
-            checkStrictly: true,
-            value: "id",
-            label: "name",
-            children: "children",
-        },
-        multipleSelection: []
+      personnePageRequest: {
+        //查询的默认条件
+        pageNum: 1,
+        pageSize: 10,
+        total: 0,
+        deptId: [],
+        name: "",
+        userId: "",
+      },
+      deptList: [],
+      overSize: "small",
+      optionProps: {
+        checkStrictly: true,
+        value: "id",
+        label: "name",
+        children: "children",
+      },
+      multipleSelection: [],
     };
   },
   created() {
-    this.getList()
-    this.getSysDictList()
-    this.getAllCompany()
+    this.getList();
+    this.getSysDictList();
+    this.getAllCompany();
     // this.personnelFindPage()
 
-    this.originalForm={...this.formData}
-  },
-  mounted() {
-    
+    this.originalForm = { ...this.formData };
   },
-  watch: {
-   
-  },
-  methods:{
-     // 获取所有机构列表
+  mounted() {},
+  watch: {},
+  methods: {
+    // 获取所有机构列表
     getAllCompany() {
       this.$api.task.findAllTree().then((res) => {
         this.deptList = res.data;
@@ -354,12 +332,12 @@ export default {
       this.personnelFindPage();
     },
     personneSelectionChange(selection) {
-        // console.log(selection)
-        this.multipleSelection=selection
-    //   if (selection.length > 1) {
-    //     this.$refs.personneTable.clearSelection(); // 清空所有选择
-    //     this.$refs.personneTable.toggleRowSelection(selection.pop()); // 设置选择项
-    //   }
+      // console.log(selection)
+      this.multipleSelection = selection;
+      //   if (selection.length > 1) {
+      //     this.$refs.personneTable.clearSelection(); // 清空所有选择
+      //     this.$refs.personneTable.toggleRowSelection(selection.pop()); // 设置选择项
+      //   }
     },
     tableRowClassName(row) {
       if (row.row.flag) {
@@ -376,124 +354,141 @@ export default {
       this.personnePageRequest.pageNum = pageNum;
       this.personnelFindPage();
     },
-    addSys(){
-        this.dialogVisible = true
-        this.dialogTitle = "系统分配人员信息"
-        this.formData={...this.originalForm}
-        this.personnePageRequest={
-            //查询的默认条件
-            pageNum: 1,
-            pageSize: 10,
-            total: 0,
-            deptId: [],
-            name:"",
-            userId:''
-        }
-        this.personnelFindPage()
-        
+    addSys() {
+      this.dialogVisible = true;
+      this.dialogTitle = "系统分配人员信息";
+      this.formData = { ...this.originalForm };
+      this.personnePageRequest = {
+        //查询的默认条件
+        pageNum: 1,
+        pageSize: 10,
+        total: 0,
+        deptId: [],
+        name: "",
+        userId: "",
+      };
+      this.personnelFindPage();
     },
-    
-    getSysDictList(){
-        this.$api.sys.sysDictList().then((res) => {
-           
-            if(res.code===200){
-                this.optionList = res.data
-            }
-        })
+
+    getSysDictList() {
+      this.$api.sys.sysDictList().then((res) => {
+        if (res.code === 200) {
+          this.optionList = res.data;
+        }
+      });
     },
-    getList(){
-        this.tableConfig.loading = true
-        this.$api.sys.getSysAllocationList({...this.searchForm,...this.pageData,}).then((res) => {
-          
-            if(res.code == 200){
-                this.tableConfig.loading = false
+    getList() {
+      this.tableConfig.loading = true;
+      this.$api.sys
+        .getSysAllocationList({ ...this.searchForm, ...this.pageData })
+        .then((res) => {
+          if (res.code == 200) {
+            this.tableConfig.loading = false;
 
-                this.tabelList = res.data.content
-                this.pageData.pageNum = res.data.pageNum;
-                this.pageData.pageSize = res.data.pageSize;
-                this.pageData.totalSize = res.data.totalSize;
-            }else{
-                    this.$message.error(res.msg)
-                }
-        }).catch(err=>{
-            this.$message.error(err.message)
-            this.tableConfig.loading = false
+            this.tabelList = res.data.content;
+            this.pageData.pageNum = res.data.pageNum;
+            this.pageData.pageSize = res.data.pageSize;
+            this.pageData.totalSize = res.data.totalSize;
+          } else {
+            this.$message.error(res.msg);
+          }
         })
+        .catch((err) => {
+          this.$message.error(err.message);
+          this.tableConfig.loading = false;
+        });
     },
     handleClose(done) {
-        done();
+      done();
     },
-    confirm(formName){
-        // this.dialogVisible = false
-        this.$refs[formName].validate((valid) => {
-          if (valid) {
-           let arr=this.multipleSelection.map((v,i)=>{return v.userId})
+    confirm(formName) {
+      // this.dialogVisible = false
+      this.$refs[formName].validate((valid) => {
+        if (valid) {
+          let arr = this.multipleSelection.map((v, i) => {
+            return v.userId;
+          });
 
-        //    console.log(this.formData,arr)
-            if(this.formData.flag!=1){
-                if(this.multipleSelection.length==0){
-                    this.$message.error("请选择用户")
-                }else{
-                    this.$api.sys.bindSysUser({sysId:this.formData.systemName,flag:this.formData.flag,userIds:arr}).then((res) => {
-                    // console.log(res,666)
-                    if(res.code == 200){
-                        this.$message.success(res.msg)
-                        this.dialogVisible = false
-                        this.getList()
-                    }else{
-                        this.$message.error(res.msg)
-                    }
-                
-                })
-                }
-            }else{
-                this.$api.sys.bindSysUser({sysId:this.formData.systemName,flag:this.formData.flag}).then((res) => {
-                    // console.log(res,666)
-                    if(res.code == 200){
-                        this.$message.success(res.msg)
-                        this.dialogVisible = false
-                        this.getList()
-                    }else{
-                        this.$message.error(res.msg)
-                    }
-                
+          //    console.log(this.formData,arr)
+          if (this.formData.flag != 1) {
+            if (this.multipleSelection.length == 0) {
+              this.$message.error("请选择用户");
+            } else {
+              this.$api.sys
+                .bindSysUser({
+                  sysId: this.formData.systemName,
+                  flag: this.formData.flag,
+                  userIds: arr,
                 })
+                .then((res) => {
+                  // console.log(res,666)
+                  if (res.code == 200) {
+                    this.$message.success(res.msg);
+                    this.dialogVisible = false;
+                    this.getList();
+                  } else {
+                    this.$message.error(res.msg);
+                  }
+                });
             }
           } else {
-            // console.log('error submit!!');
-            return false;
+            this.$api.sys
+              .bindSysUser({
+                sysId: this.formData.systemName,
+                flag: this.formData.flag,
+              })
+              .then((res) => {
+                // console.log(res,666)
+                if (res.code == 200) {
+                  this.$message.success(res.msg);
+                  this.dialogVisible = false;
+                  this.getList();
+                } else {
+                  this.$message.error(res.msg);
+                }
+              });
           }
-        });
+        } else {
+          // console.log('error submit!!');
+          return false;
+        }
+      });
     },
-    cancel(formName){
-        this.$refs[formName].resetFields();
-        this.dialogVisible = false
+    cancel(formName) {
+      this.$refs[formName].resetFields();
+      this.dialogVisible = false;
     },
-    deleteSys(row){
-      
-        this.$confirm('确认删除该系统吗?', '提示', {
-            confirmButtonText: '提交',
-            cancelButtonText: '取消',
-            type: 'warning'
-        }).then(() => {
-            this.$api.sys.sysUserLinkSysDelete({ids:[row.id]}).then((res) => {
-                if(res.code == 200){
-                    this.$message.success(res.msg)
-                    this.getList()
-                }else{
-                    this.$message.error(res.msg)
-                }
-            })
-        }).catch(() => {
-
-        });
-        
-    }
+    deleteSys(row) {
+      this.$confirm("确认删除该系统吗?", "提示", {
+        confirmButtonText: "提交",
+        cancelButtonText: "取消",
+        type: "warning",
+      })
+        .then(() => {
+          this.$api.sys.sysUserLinkSysDelete({ ids: [row.id] }).then((res) => {
+            if (res.code == 200) {
+              this.$message.success(res.msg);
+              this.getList();
+            } else {
+              this.$message.error(res.msg);
+            }
+          });
+        })
+        .catch(() => {});
+    },
+  },
+};
+</script>
 
+<style scoped lang="scss">
+.operation {
+  // position: absolute;
+  position: relative;
+  // z-index: 999999;
+  > .el-button {
+    // position: absolute;
+    z-index: 99999999999999;
   }
+  right: 0;
 }
-</script>
-
-<style>
-
 </style>