Browse Source

Merge branch 'dev' of http://www.baoxianzhanggui.com:8090/sxzgd/vue-insagent-pc into dev

@dongkboy 2 years ago
parent
commit
12410863a0

+ 2 - 2
config/dev.env.js

@@ -5,8 +5,8 @@ const prodEnv = require('./prod.env')
 module.exports = merge(prodEnv, {
   NODE_ENV: '"development"',
   ENV_CONFIG:'"dev"',
-  // BASE_URL: '"https://test.baoxianzhanggui.com/web-api"',//测试服务器
-  BASE_URL:'"https://sxzgkj.baoxianzhanggui.com/web-api"'//正式服务器
+  BASE_URL: '"https://test.baoxianzhanggui.com/web-api"',//测试服务器
+  // BASE_URL:'"https://sxzgkj.baoxianzhanggui.com/web-api"'//正式服务器
   // BASE_URL: '"http://192.168.0.115:8080/"' //凯森
   // BASE_URL: '"http:///192.168.0.253:8082/"',//田智
   // BASE_URL: '"http:///192.168.0.253:8082/"',//田智

+ 83 - 1
src/http/axios.js

@@ -51,7 +51,6 @@ export default function $axios(options) {
       },
 
       error => {
-        console.log(error,11111111111)
         // 请求错误时
         // 1. 判断请求超时
         if (error.code === 'ECONNABORTED' && error.message.indexOf('timeout') !== -1) {
@@ -92,6 +91,89 @@ export default function $axios(options) {
           router.push('/login')
         }
         
+        // switch (response.data.code) {
+        //   case 400:
+        //     Message({
+        //       message: '请求错误',
+        //       type: 'error',
+        //       duration: 2000
+        //     })
+        //     break
+        //   case 401:
+        //     Message({
+        //       message: '登录信息已过期,请重新登录!!!',
+        //       type: 'error',
+        //       duration: 2000
+        //     })
+        //     Cookies.remove('token')
+        //     Cookies.remove('user')
+        //     router.push('/login')
+        //     break
+        //   case 403:
+        //     Message({
+        //       message: '拒绝访问',
+        //       type: 'error',
+        //       duration: 2000
+        //     })
+        //     break
+        //   case 404:
+        //     Message({
+        //       message: '请求地址出错',
+        //       type: 'error',
+        //       duration: 2000
+        //     })
+        //     break
+        //   case 408:
+        //     Message({
+        //       message: '请求超时',
+        //       type: 'error',
+        //       duration: 2000
+        //     })
+        //     break
+        //   case 500:
+        //     Message({
+        //       message: response.data.msg,
+        //       type: 'error',
+        //       duration: 2000
+        //     })
+        //     break
+        //   case 501:
+        //     Message({
+        //       message: '服务未实现',
+        //       type: 'error',
+        //       duration: 2000
+        //     })
+        //     break
+        //   case 502:
+        //     Message({
+        //       message: '网关错误',
+        //       type: 'error',
+        //       duration: 2000
+        //     })
+        //     break
+        //   case 503:
+        //     Message({
+        //       message: '服务不可用',
+        //       type: 'error',
+        //       duration: 2000
+        //     })
+        //     break
+        //   case 504:
+        //     Message({
+        //       message: '网关超时',
+        //       type: 'error',
+        //       duration: 2000
+        //     })
+        //     break
+        //   case 505:
+        //     Message({
+        //       message: 'HTTP版本不受支持',
+        //       type: 'error',
+        //       duration: 2000
+        //     })
+        //     break
+        //   default:
+        // }
         // 根据返回的code值来做不同的处理
         switch (data.rc) {
           case 1:

+ 1 - 1
src/http/moudules/expense.js

@@ -137,7 +137,7 @@ export const getAccountExcelById = (id) => {
 //新增费用申请数据
 export const insert = (data) => {
     return axios({
-        url: '/accountExcel/invert',
+        url: '/accountExcel/insert',
         method: "post",
         data
     })

+ 214 - 174
src/views/AgreementManage/CarInsurance/SourceManagement.vue

@@ -1,227 +1,267 @@
 <template>
-    <div class="container" style="width: 99%; margin-top: 0px">
-        <templateTable  :searchData.sync="queryFrom" :tableConfig="tableConfig" :data="pageResult" @getList="findPage" :pagination="pageData">
-        </templateTable>
-    <el-dialog
-      title="税源管理"
-      :visible.sync="dialogVisible"
-      width="50%"
+  <div class="container" style="width: 99%; margin-top: 0px">
+    <templateTable
+      :searchData.sync="queryFrom"
+      :tableConfig="tableConfig"
+      :data="pageResult"
+      @getList="findPage"
+      :pagination="pageData"
     >
-    <el-tabs v-model="activeName"   >
+    </templateTable>
+    <el-dialog title="税源管理" :visible.sync="dialogVisible" width="50%">
+      <el-tabs v-model="activeName">
         <el-tab-pane label="协议选择" name="1">
-          <el-table
-          :data="tableData"
-          style="width: 100%">
-          <el-table-column
-            prop="license"
-            label="车牌"
-            width="100"
-          >
-      </el-table-column>
-        <el-table-column
-            label="协议选择"
-            align="center"
-            >
-            <template slot-scope="scope">
-              <el-select v-model="scope.row.agreementId" placeholder="请选择">
-                <el-option
-                  v-for="item in options"
-                  :key="item.id"
-                  :label="item.agreementName"
-                  :value="item.id">
-                </el-option>
-              </el-select>
-            </template>
-          </el-table-column>
-          <el-table-column
-            label="是否启动"
-            >
-            <template slot-scope="scope">
-              <el-switch  
-              v-model="scope.row.isTaxSource"
-              active-value="1"
-              inactive-value="0"
-              @change="isTaxSourceFun(scope.row.isTaxSource,scope.$index)"
-              >
-            </el-switch>
-            </template>
-          </el-table-column>
-          </el-table>   
+          <el-table :data="tableData" style="width: 100%">
+            <el-table-column prop="license" label="车牌" width="100">
+            </el-table-column>
+            <el-table-column label="协议选择" align="center">
+              <template slot-scope="scope">
+                <el-select v-model="scope.row.agreementId" placeholder="请选择">
+                  <el-option
+                    v-for="item in options"
+                    :key="item.id"
+                    :label="item.agreementName"
+                    :value="item.id"
+                  >
+                  </el-option>
+                </el-select>
+              </template>
+            </el-table-column>
+            <el-table-column label="是否启动">
+              <template slot-scope="scope">
+                <el-switch
+                  v-model="scope.row.isTaxSource"
+                  active-value="1"
+                  inactive-value="0"
+                  @change="isTaxSourceFun(scope.row.isTaxSource, scope.$index)"
+                >
+                </el-switch>
+              </template>
+            </el-table-column>
+            <el-table-column label="">
+              <template slot-scope="scope">
+                <el-checkbox-group
+                  v-if="scope.row.isTaxSource * 1"
+                  v-model="scope.row.insuranceRepertoire"
+                >
+                  <el-checkbox
+                    v-for="item in insuranceRepertoire"
+                    :key="item.dictValue"
+                    :checked="item.status == 1"
+                    :label="item.dictValue"
+                    :value="item"
+                    >{{ item.dictTag }}</el-checkbox
+                  >
+                </el-checkbox-group>
+              </template>
+            </el-table-column>
+          </el-table>
         </el-tab-pane>
         <el-tab-pane label="排除部门" name="2">
-          <el-tree default-expand-all ref="tree" show-checkbox :data="treeData" node-key="id" :props="defaultProps" ></el-tree>
+          <el-tree
+            default-expand-all
+            ref="tree"
+            show-checkbox
+            :data="treeData"
+            node-key="id"
+            :props="defaultProps"
+          ></el-tree>
         </el-tab-pane>
         <el-tab-pane label="排除车牌" name="3">
           <el-checkbox-group v-model="checkList">
-            <el-checkbox v-for="val in tableData" :key="val.id" :label="val.license"></el-checkbox>
+            <el-checkbox
+              v-for="val in tableData"
+              :key="val.id"
+              :label="val.license"
+            ></el-checkbox>
           </el-checkbox-group>
         </el-tab-pane>
-    </el-tabs>
-    <span slot="footer" class="dialog-footer">
-      <el-button @click="dialogVisible = false">取 消</el-button>
-      <el-button type="primary" @click="submitDialog()">确 定</el-button>
-    </span>
+      </el-tabs>
+      <span slot="footer" class="dialog-footer">
+        <el-button @click="dialogVisible = false">取 消</el-button>
+        <el-button type="primary" @click="submitDialog()">确 定</el-button>
+      </span>
     </el-dialog>
-    </div>
+  </div>
 </template>
 <script>
-import templateTable from '@/components/TemplateTable/index.vue'
+import templateTable from "@/components/TemplateTable/index.vue";
 
 export default {
-    name: "sourceManagement",
+  name: "sourceManagement",
   components: { templateTable },
   data() {
     return {
-        dialogVisible:false,
-        activeName:'1',
-        defaultProps: {
-          children: 'children',
-          label: 'name'
-        },
-        checkList:[],
-        treeData:[],
-    pageResult: [], //表格数据
-    queryFrom: {}, //查询信息
-    tableConfig: {
+      dialogVisible: false,
+      activeName: "1",
+      defaultProps: {
+        children: "children",
+        label: "name",
+      },
+      checkList: [],
+      insuranceRepertoireList: [],
+      treeData: [],
+      pageResult: [], //表格数据
+      queryFrom: {}, //查询信息
+      tableConfig: {
         columns: [
           // 数据列
-          { prop: "name", label: "保险公司名称", type: 'text' },
+          { prop: "name", label: "保险公司名称", type: "text" },
           {
             prop: "id",
-            label: "id", type: 'text',
+            label: "id",
+            type: "text",
           },
         ],
         loading: true,
         isPaginationShow: true,
         isShowIndex: true,
-        operationWidth: '30',
+        operationWidth: "30",
         optBtns: [
           {
-            type: 'primary',
-            label: '税源管理',
-            type: 'text',
-            click: (row, index) => { return this.addSource(row) },
+            type: "primary",
+            label: "税源管理",
+            type: "text",
+            click: (row, index) => {
+              return this.addSource(row);
+            },
           },
-        ]
+        ],
       },
       pageData: {
         pageNum: 1,
         pageSize: 10,
-        totalSize: 0
+        totalSize: 0,
       },
-      tableData:[],
-      options:[],
-      rowData:{}
-    }
-},
-created() {
-  this.$api.dept.findTree().then((res) => {
-      if(res.code==200){
-          this.treeData=res.data
-      }   
-    })
-    
-    this.findPage()
+      tableData: [],
+      options: [],
+      rowData: {},
+      insuranceRepertoire: [], //产品代码列表
+    };
   },
-methods:{
+  created() {
+    this.$api.dept.findTree().then((res) => {
+      if (res.code == 200) {
+        this.treeData = res.data;
+      }
+    });
+    //获取产品代码列表
+    this.$api.insCompany.dicType("productsType").then((rescode) => {
+      if (rescode.code == 200) {
+        this.insuranceRepertoire = rescode.data.ddList;
+      }
+    });
+    this.findPage();
+  },
+  methods: {
+    //获取列表
     findPage() {
       this.tableConfig.loading = true;
-      this.$api.dept.insureCompany({ ...this.pageData })
-        .then((res) => {
-          this.tableConfig.loading = false;
-          this.pageResult = res.data.content;
-          this.pageData.pageNum = res.data.pageNum;
-          this.pageData.pageSize = res.data.pageSize;
-          this.pageData.totalSize = res.data.totalSize;
-
-        })
+      this.$api.dept.insureCompany({ ...this.pageData }).then((res) => {
+        this.tableConfig.loading = false;
+        this.pageResult = res.data.content;
+        this.pageData.pageNum = res.data.pageNum;
+        this.pageData.pageSize = res.data.pageSize;
+        this.pageData.totalSize = res.data.totalSize;
+      });
     },
-    licenseFun(){
+    //税源管理返回没值的话赋值方法
+    licenseFun() {
       this.$api.dept.license().then((res) => {
-      if(res.code==200){
-        res.data.forEach((ele,index) => {
-          ele.agreementId=''
-          ele.isTaxSource='0'
-        });
-          this.tableData=res.data
-      }   
-    })
-    },
-    addSource(row){
-        this.dialogVisible=true
-        this.rowData={
-          insCompanyId:row.id,
-          insCompanyName:row.name
+        if (res.code == 200) {
+          res.data.forEach((ele, index) => {
+            ele.agreementId = "";
+            ele.isTaxSource = "0";
+          });
+          this.tableData = res.data;
         }
-        this.$api.dept.getTaxSource(row.id)
-        .then((res) => {
-          if(res.code==200){
-            if(res.data.agreementTaxList.length>0){
-              this.tableData=res.data.agreementTaxList
-            }
-            else{
-              this.licenseFun()
-            }
-            if(res.data.agreementTaxExcludeDeptList.length>0){
-              this.$refs.tree.setCheckedKeys(res.data.agreementTaxExcludeDeptList)
-            }
-            else{
-              this.$refs.tree.setCheckedKeys([])
-            }
-            if(res.data.agreementTaxExcludeLicenseList.length>0){
-              this.checkList=res.data.agreementTaxExcludeLicenseList
-            }
-            else{
-              this.checkList=[]
-            }
+      });
+    },
+    //提交
+    addSource(row) {
+      this.dialogVisible = true;
+      this.rowData = {
+        insCompanyId: row.id,
+        insCompanyName: row.name,
+      };
+      this.$api.dept.getTaxSource(row.id).then((res) => {
+        if (res.code == 200) {
+          if (res.data.agreementTaxList.length > 0) {
+            res.data.agreementTaxList.forEach((ele, index) => {
+              if (ele.insuranceRepertoire == null) {
+                ele.insuranceRepertoire = [];
+              } else {
+                ele.insuranceRepertoire = ele.insuranceRepertoire.split(",");
+              }
+              console.log(ele.insuranceRepertoire);
+            });
+            this.tableData = res.data.agreementTaxList;
+          } else {
+            this.licenseFun();
           }
-        })
-        this.$api.dept.agreement(row.id)
-        .then((res) => {
-          if(res.code==200){
-            this.options=res.data
+          if (res.data.agreementTaxExcludeDeptList.length > 0) {
+            this.$refs.tree.setCheckedKeys(
+              res.data.agreementTaxExcludeDeptList
+            );
+          } else {
+            this.$refs.tree.setCheckedKeys([]);
           }
-        })
-    },
-    isTaxSourceFun(data,index){
-      if(data==1){
-        this.tableData.forEach((val,ind)=>{
-        val.isTaxSource='0'
-        if(index==ind){
-            this.tableData[index].isTaxSource='1'
-            this.$set( this.tableData,index,this.tableData[index])
+          if (res.data.agreementTaxExcludeLicenseList.length > 0) {
+            this.checkList = res.data.agreementTaxExcludeLicenseList;
+          } else {
+            this.checkList = [];
+          }
+        }
+      });
+      this.$api.dept.agreement(row.id).then((res) => {
+        if (res.code == 200) {
+          this.options = res.data;
         }
-      
-      })
+      });
+    },
+    isTaxSourceFun(data, index) {
+      if (data == 1) {
+        this.tableData.forEach((val, ind) => {
+          val.isTaxSource = "0";
+          if (index == ind) {
+            this.tableData[index].isTaxSource = "1";
+            this.$set(this.tableData, index, this.tableData[index]);
+          }
+        });
       }
     },
-    submitDialog(){
-      let agreementTaxList=[]
-      let agreementTaxExcludeDeptList=this.$refs.tree.getCheckedKeys()
-      let agreementTaxExcludeLicenseList=this.checkList
-      this.tableData.forEach(val=>{
+    submitDialog() {
+      let agreementTaxList = [];
+      let agreementTaxExcludeDeptList = this.$refs.tree.getCheckedKeys();
+      let agreementTaxExcludeLicenseList = this.checkList;
+      this.tableData.forEach((val) => {
         agreementTaxList.push({
-          agreementId:val.agreementId,
-          license:val.license,
-          isTaxSource:val.isTaxSource,
+          agreementId: val.agreementId,
+          license: val.license,
+          isTaxSource: val.isTaxSource,
+          insuranceRepertoire:val.insuranceRepertoire.join(","),
+        });
+      });
+      this.$api.dept
+        .saveTaxSource({
+          ...this.rowData,
+          agreementTaxList,
+          agreementTaxExcludeDeptList,
+          agreementTaxExcludeLicenseList,
         })
-      })
-      this.$api.dept.saveTaxSource({...this.rowData,agreementTaxList,agreementTaxExcludeDeptList,agreementTaxExcludeLicenseList})
         .then((res) => {
-          if(res.code==200){
-            this.dialogVisible=false
+          if (res.code == 200) {
+            this.dialogVisible = false;
             this.$message({
-                message: res.msg,
-                type: 'success'
-              });
-            this.findPage()
-          }
-          else{
-            this.$message.error(res.msg)
+              message: res.msg,
+              type: "success",
+            });
+            this.findPage();
+          } else {
+            this.$message.error(res.msg);
           }
-        })
+        });
     },
-}
-
-}
+  },
+};
 </script>

+ 1 - 1
src/views/Core/PersonalPanel.vue

@@ -51,7 +51,7 @@
         <li class="fa fa-eraser" ></li>
         清除缓存
       </div>
-      <div class="other-operation-item" @click="recruiting" v-if="user.roleId!=='20'">
+      <div class="other-operation-item" @click="recruiting" v-if="user.isHasAddUser!==0">
         <li class="fa fa-user"></li>
         闪电增员
       </div>

+ 51 - 31
src/views/FinancialManagement/ExpenseManagement/ExpenseApplyFor.vue

@@ -5,10 +5,10 @@
       <el-form
         v-model="queryFrom"
         size="small"
-        label-width="95px"
+        label-width="120px"
         class="query-form"
       >
-        <el-form-item label="转账状态" label-width="95px" prop="transferFlag">
+        <el-form-item label="转账状态" prop="transferFlag">
           <el-select
             v-model="queryFrom.transferFlag"
             placeholder="请选择转账状态"
@@ -18,7 +18,7 @@
             <el-option label="未转账" value="1"></el-option>
           </el-select>
         </el-form-item>
-        <el-form-item label="申请人" label-width="95px" prop="applicant">
+        <el-form-item label="申请人" prop="applicant">
           <el-input
             v-model="queryFrom.applicant"
             placeholder="请输入申请人"
@@ -26,7 +26,7 @@
             clearable
           ></el-input>
         </el-form-item>
-        <el-form-item label="申请部门" label-width="95px" prop="applySector">
+        <el-form-item label="申请部门" prop="applySector">
           <el-input
             v-model="queryFrom.applySector"
             placeholder="请输入申请部门"
@@ -34,7 +34,7 @@
             clearable
           ></el-input>
         </el-form-item>
-        <el-form-item label="申请日期" label-width="95px" prop="applyTime">
+        <el-form-item label="申请日期" prop="applyTime">
           <el-date-picker
             v-model="queryFrom.applyTime"
             type="daterange"
@@ -44,12 +44,22 @@
             value-format="yyyy-MM-dd"
           >
           </el-date-picker>
-          <!-- <el-date-picker
-            v-model="queryFrom.applyTime"
-            type="date"
-            placeholder="选择日期"
-          >
-          </el-date-picker> -->
+        </el-form-item>
+        <el-form-item label="单位" prop="company">
+          <el-input
+            v-model="queryFrom.company"
+            placeholder="请输入单位"
+            class="widths"
+            clearable
+          ></el-input>
+        </el-form-item>
+        <el-form-item label="收款单位信息" prop="collectionMessage">
+          <el-input
+            v-model="queryFrom.collectionMessage"
+            placeholder="请输入收款单位信息"
+            class="widths"
+            clearable
+          ></el-input>
         </el-form-item>
         <el-form-item>
           <el-button type="primary" size="small" @click="queryStaffInfo"
@@ -294,13 +304,11 @@
           </el-row>
           <el-row style="margin-bottom: 20px">
             <el-col :span="12" style="text-align: center"
-              ><h3>支出方资金归属(%)</h3>
-              <span>(请输入资金归属百分比)</span></el-col
-            >
+              ><h3 style="margin-left: 120px">支出方资金归属</h3>
+            </el-col>
             <el-col :span="12" style="text-align: center"
-              ><h3>收入方资金归属(%)</h3>
-              <span>(请输入资金归属百分比)</span></el-col
-            >
+              ><h3 style="margin-left: 120px">收入方资金归属</h3>
+            </el-col>
           </el-row>
           <el-row class="profit_box">
             <el-col :span="12">
@@ -313,8 +321,8 @@
                 <el-input-number
                   v-model="item.profit"
                   :min="0"
-                  placeholder="请输入利润(%)"
-                  :max="100"
+                  placeholder="请输入利润"
+                  :max="999999999999999"
                   label=""
                 ></el-input-number>
               </el-form-item>
@@ -329,8 +337,8 @@
                 <el-input-number
                   v-model="item.profit"
                   :min="0"
-                  placeholder="请输入利润(%)"
-                  :max="100"
+                  placeholder="请输入利润"
+                  :max="999999999999999"
                   label=""
                 ></el-input-number>
               </el-form-item>
@@ -780,8 +788,8 @@ export default {
     },
     //搜索列表功能
     queryStaffInfo() {
-      this.pageRequest.pageNo = 1
-      this.pageRequest.pageSize = 20
+      this.pageRequest.pageNo = 1;
+      this.pageRequest.pageSize = 20;
       this.findPage();
     },
     //查询列表
@@ -790,10 +798,12 @@ export default {
         this.pageRequest.pageNo = data.pageRequest.pageNum;
         this.pageRequest.pageSize = data.pageRequest.pageSize;
       }
-      let obj = JSON.parse(JSON.stringify({ ...this.queryFrom, ...this.pageRequest }))
-      if (obj.applyTime!=null&&obj.applyTime.length>0) {
+      let obj = JSON.parse(
+        JSON.stringify({ ...this.queryFrom, ...this.pageRequest })
+      );
+      if (obj.applyTime != null && obj.applyTime.length > 0) {
         obj.applyTimeStart = obj.applyTime[0];
-        obj.applyTimeEnd= obj.applyTime[1];
+        obj.applyTimeEnd = obj.applyTime[1];
       }
       delete obj.applyTime;
       this.$api.expense
@@ -936,8 +946,9 @@ export default {
                   it.bankCardNum +
                   "   " +
                   it.bank;
-                it.nameValue =
-                  item.accountName + "   " + it.bankCardNum + "   " + it.bank;
+                it.nameValue = it.name;
+                // it.nameValue =
+                //   item.accountName + "   " + it.bankCardNum + "   " + it.bank;
               });
               arr.push(...item.invAccountCardList);
               //获取全部内部用户
@@ -976,7 +987,7 @@ export default {
     resetForm() {
       this.expenseDialog = false;
     },
-    //导出事件
+    //提交事件
     submitForm() {
       let params = JSON.parse(JSON.stringify(this.tableForm));
       this.$refs.tableForm.validate((valid) => {
@@ -1002,11 +1013,19 @@ export default {
           params.entProfit = {};
           params.outProfit = {};
           this.affiliationData.forEach((item) => {
-            params.entProfit[item.profitEng] = item.profit;
+            params.entProfit[item.profitEng] =
+              item.profit == null ? 0 : item.profit;
           });
           this.affiliationData2.forEach((item) => {
-            params.outProfit[item.profitEng] = item.profit*-1;
+            params.outProfit[item.profitEng] =
+              item.profit == 0 || item.profit == null ? 0 : item.profit * -1;
           });
+          // this.affiliationData.forEach((item) => {
+          //   params.entProfit[item.profitEng] = item.profit;
+          // });
+          // this.affiliationData2.forEach((item) => {
+          //   params.outProfit[item.profitEng] = item.profit==0?item.profit:item.profit*-1;
+          // });
           //转化资金归属
           if (this.expendDataId) {
             //修改
@@ -1081,6 +1100,7 @@ export default {
   display: flex;
   align-items: center;
   margin-top: 14px;
+  flex-wrap: wrap;
 }
 .td-title,
 .demo-tableForm >>> .el-form-item__label {

+ 16 - 15
src/views/FinancialManagement/ExpenseManagement/ExpenseManagement.vue

@@ -182,7 +182,7 @@
       @current-change="refreshPageRequest"
       :current-page="pageRequest.pageNo"
       :page-size="pageRequest.pageSize"
-      :page-sizes="[10, 20, 50, 100, 200, 300, 400, 500]"
+      :page-sizes="[ 20, 50, 100, 200, 300, 400, 500]"
       :total="pageRequest.totalSize"
       style="float: left; margin-left: 20px; margin-top: 20px"
     >
@@ -355,12 +355,12 @@
         </el-row>
         <el-row>
           <el-col :span="12" style="text-align: center"
-            ><h3>支出方资金归属(%)</h3>
-            <span>(请输入资金归属百分比)</span></el-col
+            ><h3 style="margin-left: 120px;">支出方资金归属</h3>
+           </el-col
           >
           <el-col :span="12" style="text-align: center"
-            ><h3>收入方资金归属(%)</h3>
-            <span>(请输入资金归属百分比)</span></el-col
+            ><h3 style="margin-left: 120px;">收入方资金归属</h3>
+           </el-col
           >
         </el-row>
         <el-row class="profit_box">
@@ -374,8 +374,8 @@
               <el-input-number
                 v-model="item.profit"
                 :min="0"
-                placeholder="请输入利润(%)"
-                :max="100"
+                placeholder="请输入利润"
+                :max="99999999999999"
                 label=""
               ></el-input-number>
             </el-form-item>
@@ -390,8 +390,8 @@
               <el-input-number
                 v-model="item.profit"
                 :min="0"
-                placeholder="请输入利润(%)"
-                :max="100"
+                placeholder="请输入利润"
+                :max="99999999999999"
                 label=""
               ></el-input-number>
             </el-form-item>
@@ -756,7 +756,7 @@ export default {
       expendPageResult: {
         //支出表格参数
         pageNo: 1,
-        pageSize: 10,
+        pageSize: 20,
       },
       expendDialogVisible: false, //支出弹出框状态
       outCardNum: "", //点击支出按钮当条数据支出id
@@ -910,8 +910,9 @@ export default {
                   it.bankCardNum +
                   "   " +
                   it.bank;
-                it.nameValue =
-                  item.accountName + "   " + it.bankCardNum + "   " + it.bank;
+                it.nameValue = it.name
+                // it.nameValue =
+                //   item.accountName + "   " + it.bankCardNum + "   " + it.bank;
               });
               arr.push(...item.invAccountCardList);
             }
@@ -946,10 +947,10 @@ export default {
       obj.entProfit = {};
       obj.outProfit = {};
       this.affiliationData.forEach((item) => {
-        obj.entProfit[item.profitEng] = item.profit;
+        obj.entProfit[item.profitEng] = item.profit==null?0:item.profit;
       });
       this.affiliationData2.forEach((item) => {
-        obj.outProfit[item.profitEng] = item.profit*-1;
+        obj.outProfit[item.profitEng] = item.profit==0||item.profit==null?0:item.profit*-1;
       });
       //转化资金归属
       this.$refs.inComeFormData.validate((valid) => {
@@ -1222,7 +1223,7 @@ export default {
       this.type = 1; //账户类型
       this.formDataId = row.accountId;
       this.$api.expense
-        .getAccount({ accountId: this.formDataId, pageNo: 1, pageSize: 10 })
+        .getAccount({ accountId: this.formDataId, pageNo: 1, pageSize: 20 })
         .then((res) => {
           if (res.code == 200) {
             this.accountFormData = JSON.parse(

+ 271 - 105
src/views/FinancialManagement/ExpenseManagement/PaymentManagement.vue

@@ -3,13 +3,8 @@
   <div class="container" style="width: 99%; margin-top: 0px">
     <!-- 顶部查询 -->
     <el-row class="top">
-      <el-form
-        v-model="pageRequest"
-        size="small"
-        label-width="95px"
-        class="form"
-      >
-        <el-form-item label="发票类型" label-width="80px" prop="invoiceType">
+      <el-form v-model="pageRequest" size="small" class="form" label-width="100px">
+        <el-form-item label="发票类型"  prop="invoiceType">
           <el-select
             v-model="pageRequest.invoiceType"
             placeholder="请选择发票类型"
@@ -23,7 +18,7 @@
             ></el-option>
           </el-select>
         </el-form-item>
-        <el-form-item label="开票员" label-width="80px" prop="biller">
+        <el-form-item label="开票员" prop="biller">
           <el-input
             v-model="pageRequest.biller"
             placeholder="请输入开票员"
@@ -31,7 +26,7 @@
             clearable
           ></el-input>
         </el-form-item>
-        <el-form-item label="开票方" label-width="80px" prop="invoiceBy">
+        <el-form-item label="开票方" prop="invoiceBy">
           <el-input
             v-model="pageRequest.invoiceBy"
             placeholder="请输入开票方"
@@ -39,7 +34,7 @@
             clearable
           ></el-input>
         </el-form-item>
-        <el-form-item label="对方单位名称" label-width="110px" prop="otherUnit">
+        <el-form-item label="对方单位名称" prop="otherUnit">
           <el-input
             v-model="pageRequest.otherUnit"
             placeholder="请输入对方单位名称"
@@ -47,7 +42,7 @@
             clearable
           ></el-input>
         </el-form-item>
-        <el-form-item label="开票日期" label-width="95px" prop="invoiceTime">
+        <el-form-item label="开票日期" prop="invoiceTime">
           <el-date-picker
             v-model="pageRequest.invoiceTime"
             type="daterange"
@@ -57,35 +52,44 @@
             value-format="yyyy-MM-dd"
           >
           </el-date-picker>
-          <!-- <el-date-picker
-            v-model="pageRequest.invoiceTime"
+        </el-form-item>
+        <el-form-item label="进账日期" prop="applyTime">
+          <el-date-picker
+            v-model="pageRequest.applyTime"
+            type="daterange"
+            range-separator="至"
+            start-placeholder="开始日期"
+            end-placeholder="结束日期"
             value-format="yyyy-MM-dd"
-            type="date"
-            placeholder="选择开票日期"
-          ></el-date-picker> -->
+          >
+          </el-date-picker>
         </el-form-item>
         <el-form-item
-          ><el-button type="primary" size="small" @click="queryStaffInfo"
+          ><el-button
+            type="primary"
+            style="margin-left: 20px"
+            size="small"
+            @click="queryStaffInfo"
             >查询</el-button
           >
         </el-form-item>
+        <el-button
+          class="operation"
+          type="primary"
+          plain
+          size="medium"
+          @click="addPayment"
+          >开票新增</el-button
+        >
+        <el-button
+          class="operation"
+          type="primary"
+          plain
+          size="medium"
+          @click="expentData"
+          >导出</el-button
+        >
       </el-form>
-      <el-button
-        class="operation"
-        type="primary"
-        plain
-        size="medium"
-        @click="addPayment"
-        >开票新增</el-button
-      >
-      <el-button
-        class="operation"
-        type="primary"
-        plain
-        size="medium"
-        @click="expentData"
-        >导出</el-button
-      >
       <!-- 合计 -->
       <div style="margin-top: 20px">
         <el-descriptions title="" size="mini" border>
@@ -127,9 +131,13 @@
       editButtonName="进账"
       button3Name="撤销"
       button2Name="编辑"
+      button4Name="记录"
       button3Icon="fa fa-trash"
+      button4Icon="el-icon-s-order"
+      button4Background="#67C23A"
       button3Background="#f56c6c"
       button2Background="#E6A23C"
+      @handleButton4="handleTableDetail"
       @handleButton3="handleTableDelete"
       @handleButton2="handleDetail($event, 1)"
       @handleEdit="handleDetail($event, 2)"
@@ -365,52 +373,16 @@
                       checkStrictly: false,
                     }"
                   ></el-cascader>
-                  <!-- <el-select
-                    v-model="formData.fundUse"
-                    placeholder=""
-                  >
-                    <el-option
-                      v-for="item in fundFlowData"
-                      :key="item.value"
-                      :label="item.category"
-                      :value="item.category"
-                    >
-                    </el-option>
-                  </el-select> -->
                 </el-form-item>
               </el-col>
             </el-row>
-            <!-- <el-row>
-              <el-col :span="12">
-                <el-form-item label="资金用途分项" prop="fundFen">
-                  <el-cascader
-                    v-model="formData.fundFen"
-                    :show-all-levels="false"
-                    :clearable="true"
-                    :checkStrictly="true"
-                    :emitPath="false"
-                    placeholder=""
-                    :options="fundFlowData"
-                    filterable
-                    :props="{
-                      children: 'child',
-                      label: 'category',
-                      value: 'category',
-                      checkStrictly: false,
-                    }"
-                  ></el-cascader>
-                </el-form-item>
-              </el-col>
-            </el-row> -->
             <el-row>
               <el-col :span="12" style="text-align: center"
-                ><h3>收入方资金归属(%)</h3>
-                <span>(请输入资金归属百分比)</span></el-col
-              >
+                ><h3 style="margin-left: 120px">收入方资金归属</h3>
+              </el-col>
               <el-col :span="12" style="text-align: center"
-                ><h3>支出方资金归属(%)</h3>
-                <span>(请输入资金归属百分比)</span></el-col
-              >
+                ><h3 style="margin-left: 120px">支出方资金归属</h3>
+              </el-col>
             </el-row>
             <el-row class="profit_box">
               <el-col :span="12">
@@ -423,8 +395,8 @@
                   <el-input-number
                     v-model="item.profit"
                     :min="0"
-                    placeholder="请输入利润(%)"
-                    :max="100"
+                    placeholder="请输入利润"
+                    :max="9999999999999"
                     label=""
                   ></el-input-number>
                 </el-form-item>
@@ -439,8 +411,8 @@
                   <el-input-number
                     v-model="item.profit"
                     :min="0"
-                    placeholder="请输入利润(%)"
-                    :max="100"
+                    placeholder="请输入利润"
+                    :max="9999999999999"
                     label=""
                   ></el-input-number>
                 </el-form-item>
@@ -456,6 +428,32 @@
         }}</el-button>
       </div>
     </el-dialog>
+    <!-- 记录弹框 -->
+    <el-dialog
+      class="dialog expendDialog"
+      title="进账记录"
+      :close-on-click-modal="false"
+      :before-close="expendResetForm"
+      :visible.sync="expendDialogVisible"
+      width="70%"
+    >
+      <!-- 记录表格 -->
+      <kt-common-table
+        :operationWidth="130"
+        class="ktTable expendTable"
+        ref="expendTable"
+        :data="expendPageResult"
+        :columns="expendColumns"
+        :showBatchDelete="false"
+        :showOperation="true"
+        button3Name="撤销"
+        button3Icon="fa fa-trash"
+        button3Background="#f56c6c"
+        @handleButton3="handleTableRepeal"
+        @findPage="getRecordData"
+        :isshowpagination="true"
+      ></kt-common-table>
+    </el-dialog>
   </div>
 </template>
         <script>
@@ -495,7 +493,7 @@ export default {
       title: "开票新增",
       loading: true,
       detailDialog: false,
-      operationWidth: 220, //操作列宽度
+      operationWidth: 180, //操作列宽度
       queryFrom: {
         //查询条件
       },
@@ -507,6 +505,7 @@ export default {
         pageNo: 1,
         pageSize: 20,
         invoiceTime: "", //开票日期
+        applyTime: "", //进账日期
         invoiceBy: "", //开票方
         biller: "", //开票员
         invoiceType: "", //开票类型
@@ -514,12 +513,12 @@ export default {
       columns: [
         { prop: "invoiceId", label: "发票号码", type: "text", minWidth: 160 },
         { prop: "invoiceNum", label: "发票数", type: "text", minWidth: 60 },
-        { prop: "invoiceBy", label: "开票方", type: "text", minWidth: 180 },
+        { prop: "invoiceBy", label: "开票方", type: "text", minWidth: 360 },
         {
           prop: "otherUnit",
           label: "对方单位名称",
           type: "text",
-          minWidth: 180,
+          minWidth: 360,
         },
         {
           prop: "invoiceTypeName",
@@ -534,12 +533,6 @@ export default {
           minWidth: 100,
         },
         { prop: "invoiceTime", label: "开票日期", type: "text", minWidth: 100 },
-        {
-          prop: "payoutTime",
-          label: "进账日期",
-          type: "text",
-          minWidth: 100,
-        },
         { prop: "biller", label: "开票员", type: "text", minWidth: 70 },
         {
           prop: "invoiceSubjects",
@@ -587,7 +580,7 @@ export default {
       detailData: [],
       detailParams: {
         pageNo: 1,
-        pageSize: 10,
+        pageSize: 20,
         teamOrUserFlag: "2",
       },
       modelText: "提 交",
@@ -605,8 +598,8 @@ export default {
         invoiceType: "", //发票类型
         otherUnit: "", //对方单位
         payoutMoney: 0, //进账金额
-        payoutTime: "", //进账日期
         rate: 0, //税率
+        payoutTime: "", //进账日期
         payMethod: [], //支付方式
         fundUse: "", //资金用途
       },
@@ -637,12 +630,6 @@ export default {
           { required: true, message: "进账金额不能为空", trigger: "blur" },
         ],
         rate: [{ required: true, message: "税率不能为空", trigger: "blur" }],
-        payMethod: [
-          { required: true, message: "请选择支付方式", trigger: "change" },
-        ],
-        fundUse: [
-          { required: true, message: "请选择资金用途", trigger: "change" },
-        ],
         payoutTime: [
           {
             required: true,
@@ -650,6 +637,12 @@ export default {
             trigger: "change",
           },
         ],
+        payMethod: [
+          { required: true, message: "请选择支付方式", trigger: "change" },
+        ],
+        fundUse: [
+          { required: true, message: "请选择资金用途", trigger: "change" },
+        ],
         invoiceTime: [
           {
             required: true,
@@ -663,9 +656,65 @@ export default {
       formDataId: "", //编辑数据id
       profitObj: {},
       typeStatus: "", //1是编辑 2是进账
+      /**
+       * 记录模块
+       */
+      expendColumns: [
+        //记录表格数据列
+        {
+          prop: "revenueOutlayName",
+          label: "转账类型",
+          minWidth: 80,
+          sortable: false,
+        },
+        {
+          prop: "company",
+          label: "支出单位",
+          minWidth: 350,
+          sortable: false,
+        },
+        {
+          prop: "payMethod",
+          label: "支付方式",
+          minWidth: 100,
+          sortable: false,
+        },
+        {
+          prop: "createTime",
+          label: "支付时间",
+          minWidth: 100,
+          sortable: false,
+        },
+        { prop: "applyAmount", label: "金额", minWidth: 100, sortable: false },
+        {
+          prop: "fundUse",
+          label: "资金用途",
+          minWidth: 150,
+          sortable: false,
+        },
+        {
+          prop: "fundFen",
+          label: "资金用途分项",
+          minWidth: 150,
+          sortable: false,
+        },
+      ],
+      expendDialogVisible: false, //记录弹框显示状态
+      expendPageResult: {
+        //记录表格参数
+        pageNo: 1,
+        pageSize: 20,
+      },
+      invoiceId: "", //记录id
+      num: 1,
     };
   },
   watch: {
+    expendDialogVisible(n) {
+      if (!n) {
+        this.invoiceId = "";
+      }
+    },
     detailDialog(n) {
       if (!n) {
         this.formData = {
@@ -680,8 +729,8 @@ export default {
           invoiceType: "", //发票类型
           otherUnit: "", //对方单位
           payoutMoney: 0, //进账金额
-          payoutTime: "", //进账日期
           rate: 0, //税率
+          payoutTime: "", //进账日期
           payMethod: [], //支付方式
         };
         //支出收入资金归属值清空
@@ -700,6 +749,78 @@ export default {
     },
   },
   methods: {
+    /**
+     * 撤销转账记录
+     */
+     handleTableRepeal(index) {
+      let row = index.row;
+      console.log(row);
+      this.$confirm("确认撤销该  “"+row.revenueOutlayName+"”  记录吗?", "提示", {
+        type: "warning",
+      })
+        .then(() => {
+          this.$api.expense
+            .accountOperateDelete(row.accountOperateId)
+            .then((res) => {
+              if (res.code == 200) {
+                this.$message.success("撤销成功");
+                this.getRecordData();
+              } else {
+                this.$message.error(res.msg);
+              }
+            });
+        })
+        .catch(() => {});
+    },
+    //记录弹框取消重置
+    expendResetForm() {
+      this.expendDialogVisible = false;
+    },
+    //获取记录列表
+    getRecordData(data) {
+      if (data && data.pageRequest) {
+        this.expendPageResult.pageNo = data.pageRequest.pageNum;
+        this.expendPageResult.pageSize = data.pageRequest.pageSize;
+      }
+      let obj = {
+        pageNo: this.expendPageResult.pageNo,
+        pageSize: this.expendPageResult.pageSize,
+        invoiceId: this.invoiceId,
+      };
+      this.$api.expense
+        .getAccountOperate(obj)
+        .then((res) => {
+          res.data.records.forEach((item) => {
+            if (
+              item.revenueOutlay != null &&
+              item.revenueOutlay != undefined &&
+              item.revenueOutlay != ""
+            ) {
+              item.revenueOutlayName =
+                item.revenueOutlay == 0 ? "收入" : "支出";
+            }
+          });
+          this.expendPageResult = {
+            content: res.data.records,
+            pageNo: res.data.current,
+            pageSize: res.data.size,
+            totalPages: res.data.pages,
+            totalSize: res.data.total,
+          };
+        })
+        .then(data != null ? data.callback : "");
+    },
+    //点击记录方法
+    handleTableDetail(e) {
+      let row = e.row;
+      this.expendDialogVisible = true;
+      this.invoiceId = row.invoiceId;
+      if (this.num > 1) {
+        //第一次渲染页面表格组件会自动调用列表方法,所以给个值判断是否是第一次渲染页面只让执行一次
+        this.getRecordData();
+      }
+      this.num++;
+    },
     //转换
     businessZh(data, label, value) {
       let obj = data.find((item) => item[value] == label);
@@ -728,6 +849,16 @@ export default {
       let params = {
         ...JSON.parse(JSON.stringify(this.pageRequest)),
       };
+      if (params.invoiceTime != null && params.invoiceTime.length > 0) {
+        params.invoiceTimeStart = params.invoiceTime[0];
+        params.invoiceTimeEnd = params.invoiceTime[1];
+      }
+      if (params.applyTime != null && params.applyTime.length > 0) {
+        params.applyTimeStart = params.applyTime[0];
+        params.applyTimeEnd = params.applyTime[1];
+      }
+      delete params.applyTime;
+      delete params.invoiceTime;
       delete params.pageNo;
       delete params.pageSize;
       this.$api.expense.invAccountExcel(params).then((res) => {
@@ -820,8 +951,9 @@ export default {
                   it.bankCardNum +
                   "   " +
                   it.bank;
-                it.nameValue =
-                  it.accountName + "   " + it.bankCardNum + "   " + it.bank;
+                it.nameValue = it.name;
+                // it.nameValue =
+                //   it.accountName + "   " + it.bankCardNum + "   " + it.bank;
                 arr.push(it);
               });
             }
@@ -860,11 +992,19 @@ export default {
             params.entProfit = {};
             params.outProfit = {};
             this.affiliationData.forEach((item) => {
-              params.entProfit[item.profitEng] = item.profit;
+              params.entProfit[item.profitEng] =
+                item.profit == null ? 0 : item.profit;
             });
             this.affiliationData2.forEach((item) => {
-              params.outProfit[item.profitEng] = item.profit * -1;
+              params.outProfit[item.profitEng] =
+                item.profit == 0 || item.profit == null ? 0 : item.profit * -1;
             });
+            // this.affiliationData.forEach((item) => {
+            //   params.entProfit[item.profitEng] = item.profit;
+            // });
+            // this.affiliationData2.forEach((item) => {
+            //   params.outProfit[item.profitEng] = item.profit * -1;
+            // });
             //转化资金归属
             let obj = {
               invoiceId: this.formDataId, //id
@@ -954,12 +1094,16 @@ export default {
     resetForm() {
       this.detailDialog = false;
       this.detailParams.pageNo = 1;
-      this.detailParams.pageSize = 10;
+      this.detailParams.pageSize = 20;
     },
     //编辑按钮
     handleDetail(index, type) {
       this.typeStatus = type;
       let row = index.row;
+      if (row.invoiceMoney < 0) {
+        this.$message.error("对冲票据,无法进账");
+        return;
+      }
       this.formDataId = row.invoiceId;
       this.title = type == 1 ? "开票编辑" : "开票进账";
       this.getDetailData(row.invoiceId);
@@ -999,11 +1143,16 @@ export default {
         this.pageRequest.pageSize = data.pageRequest.pageSize;
       }
       let params = JSON.parse(JSON.stringify(this.pageRequest));
-      if (params.invoiceTime!=null&&params.invoiceTime.length>0) {
+      if (params.invoiceTime != null && params.invoiceTime.length > 0) {
         params.invoiceTimeStart = params.invoiceTime[0];
-        params.invoiceTimeEnd= params.invoiceTime[1];
+        params.invoiceTimeEnd = params.invoiceTime[1];
+      }
+      if (params.applyTime != null && params.applyTime.length > 0) {
+        params.applyTimeStart = params.applyTime[0];
+        params.applyTimeEnd = params.applyTime[1];
       }
       delete params.invoiceTime;
+      delete params.applyTime;
       this.$api.expense
         .getInvAccountIncoice(params)
         .then((res) => {
@@ -1062,10 +1211,10 @@ export default {
 }
 .form {
   display: flex;
-  margin-top: 14px;
   align-items: center;
-  margin-left: -12px;
-  margin-bottom: 20px;
+  margin-top: 14px;
+  flex-wrap: wrap;
+  height: 100px;
 }
 .el-pagination {
   font-weight: normal;
@@ -1152,5 +1301,22 @@ export default {
 .profit_box .el-form-item {
   margin-bottom: 15px !important;
 }
+.expendDialog >>> .el-dialog__body {
+  overflow-y: auto;
+  height: 500px;
+}
+.expendDialog >>> .cell .el-button {
+  width: auto;
+}
+.expendTable >>> .bottomFixed {
+  position: static;
+  margin-top: 20px;
+}
+.expendTable >>> .el-table {
+  height: 400px !important;
+}
+.ktTable >>> .el-button span {
+  margin-left: 0 !important;
+}
 </style>
         

+ 15 - 9
src/views/FinancialManagement/ExpenseManagement/TransferRecord.vue

@@ -83,14 +83,16 @@ export default {
     return {
       operationWidth: 100, //操作列宽度
       pageResult: {}, //表格参数
-      pageRequest: {  // 列表查询条件
+      pageRequest: {
+        // 列表查询条件
         pageNo: 1,
         pageSize: 10,
         company: "",
         fundUse: "",
         revenueOutlay: "",
       },
-      columns: [  // 数据列
+      columns: [
+        // 数据列
         {
           prop: "revenueOutlayName",
           label: "转账类型",
@@ -98,9 +100,9 @@ export default {
           sortable: false,
         },
         {
-          prop: "company",
-          label: "支出单位",
-          minWidth: 350,
+          prop: "createTime",
+          label: "创建时间",
+          minWidth: 100,
           sortable: false,
         },
         { prop: "fundFlow", label: "资金流向", minWidth: 350, sortable: false },
@@ -131,12 +133,16 @@ export default {
     /**
      * 撤销转账记录
      */
-     handleTableDelete(index) {
+    handleTableDelete(index) {
       let row = index.row;
       console.log(row);
-      this.$confirm("确认撤销该  “"+row.revenueOutlayName+"”  记录吗?", "提示", {
-        type: "warning",
-      })
+      this.$confirm(
+        "确认撤销该  “" + row.revenueOutlayName + "”  记录吗?",
+        "提示",
+        {
+          type: "warning",
+        }
+      )
         .then(() => {
           this.$api.expense
             .accountOperateDelete(row.accountOperateId)

+ 0 - 735
src/views/FinancialManagement/InvoiceAmount.vue

@@ -1,735 +0,0 @@
-<template>
-  <!--布局容器-->
-  <div class="container" style="width: 99%; margin-top: 0px">
-    <!-- 顶部查询 -->
-    <el-row class="top">
-      <el-form v-model="queryFrom" size="small" label-width="95px" class="form">
-        <el-form-item label="选择日期">
-          <el-date-picker
-            v-model="queryFrom.value1"
-            size="small"
-            type="daterange"
-            range-separator="至"
-            start-placeholder="起开票日期"
-            end-placeholder="止开票日期"
-            value-format="yyyy-MM-dd"
-          >
-          </el-date-picker>
-        </el-form-item>
-        <el-form-item label="营业性质" label-width="95px" prop="qualityId">
-          <el-select
-            v-model="queryFrom.qualityId"
-            placeholder="请选择营业性质"
-            clearable
-          >
-            <el-option
-              v-for="item in natureBusinessList"
-              :key="item.value"
-              :label="item.label"
-              :value="item.value"
-            ></el-option>
-          </el-select>
-        </el-form-item>
-
-        <el-form-item label="企业名称" label-width="95px" prop="invCompanyName">
-          <el-select
-            v-model="queryFrom.enterpriseId"
-            placeholder="请选择企业"
-            clearable
-            @change="changeEnterprise"
-          >
-            <el-option
-              v-for="item in enterpriseNameList"
-              :key="item.id"
-              :label="item.enterpriseName"
-              :value="item.id"
-            ></el-option>
-          </el-select>
-        </el-form-item>
-        <el-form-item>
-          <el-button type="primary" size="small" @click="queryStaffInfo"
-            >查询</el-button
-          >
-        </el-form-item>
-      </el-form>
-    </el-row>
-    <!-- 新增 -->
-    <el-button
-      class="operation"
-      type="primary"
-      plain
-      size="medium"
-      @click="addAmount"
-      >新增</el-button
-    >
-
-    <!-- 表格 -->
-    <kt-common-table
-      :operationWidth="operationWidth"
-      class="ktTable"
-      permsEdit="sys:agent:view"
-      ref="dataTable"
-      :data="pageResult"
-      :columns="columns"
-      :showBatchDelete="true"
-      :showOperation="true"
-      editButtonName="修改"
-      :button1Name="button1Name"
-      @handleButton1="handleTableDelete"
-      @findPage="findPage"
-      @handleEdit="handleTableEdit"
-      :isshowpagination="true"
-    ></kt-common-table>
-
-    <!-- 新增弹出框 -->
-    <el-dialog
-      class="dialog"
-      title="新增"
-      :close-on-click-modal="false"
-      :before-close="handleClose"
-      :visible.sync="dialogFormVisible"
-      width=" 770px"
-    >
-      <el-form
-        :model="addform"
-        :rules="rules"
-        ref="addform"
-        label-width="120px"
-        size="small"
-        class="frame"
-      >
-        <el-row>
-          <el-col :span="12">
-            <el-form-item
-              label="营业性质"
-              :label-width="formLabelWidth"
-              prop="qualityId"
-            >
-              <el-select
-                v-model="addform.qualityId"
-                placeholder="请选择营业性质"
-                @change="changeDept"
-              >
-                <el-option
-                  v-for="item in natureBusinessList"
-                  :key="item.value"
-                  :label="item.label"
-                  :value="item.value"
-                ></el-option>
-              </el-select>
-            </el-form-item>
-          </el-col>
-          <el-col :span="12">
-            <el-form-item
-              label="所属地"
-              :label-width="formLabelWidth"
-              prop="areaName"
-            >
-              <el-input
-                v-model="addform.areaName"
-                autocomplete="off"
-              ></el-input>
-            </el-form-item>
-          </el-col>
-        </el-row>
-        <el-row>
-          <el-col :span="12">
-            <el-form-item
-              label="企业名称"
-              :label-width="formLabelWidth"
-              prop="enterpriseName"
-            >
-              <el-input
-                v-model="addform.enterpriseName"
-                autocomplete="off"
-              ></el-input>
-            </el-form-item>
-          </el-col>
-          <el-col :span="12">
-            <el-form-item
-              label="法人"
-              :label-width="formLabelWidth"
-              prop="legalPerson"
-            >
-              <el-input
-                v-model="addform.legalPerson"
-                autocomplete="off"
-              ></el-input>
-            </el-form-item>
-          </el-col>
-        </el-row>
-        <el-row>
-          <el-col :span="12">
-            <el-form-item
-              label="税率(%)"
-              :label-width="formLabelWidth"
-              prop="taxRate"
-            >
-              <el-input-number
-                v-model="addform.taxRate"
-                @change="handleChange"
-                :min="0"
-                :max="10"
-                label="描述文字"
-              ></el-input-number>
-            </el-form-item>
-          </el-col>
-          <el-col :span="12"
-            ><el-form-item label="成立日期" prop="foundDate"
-              ><el-date-picker
-                v-model="addform.foundDate"
-                type="date"
-                placeholder="选择日期"
-                value-format="yyyy-MM-dd"
-              >
-              </el-date-picker>
-            </el-form-item>
-          </el-col>
-        </el-row>
-        <el-row>
-          <el-col :span="12">
-            <el-form-item
-              label="管理员"
-              :label-width="formLabelWidth"
-              prop="管理员"
-            >
-              <el-input v-model="addform.admin" autocomplete="off"></el-input>
-            </el-form-item>
-          </el-col>
-          <el-col :span="12">
-            <el-form-item
-              label="报税限额度(年)"
-              :label-width="formLabelWidth"
-              prop="taxLimit"
-            >
-              <el-input v-model="addform.taxLimit"></el-input>
-            </el-form-item>
-          </el-col>
-        </el-row>
-      </el-form>
-
-      <div slot="footer" class="dialog-footer">
-        <el-button @click="resetForm('addform')" size="small">取 消</el-button>
-        <el-button type="primary" @click="submitForm('addform')" size="small"
-          >确 定</el-button
-        >
-      </div>
-    </el-dialog>
-    <!-- 修改弹出框 -->
-    <el-dialog
-      class="dialog"
-      title="编辑信息"
-      :close-on-click-modal="false"
-      :visible.sync="dialogForm"
-      width=" 770px"
-    >
-      <el-form
-        :model="editform"
-        :rules="rules"
-        ref="editform"
-        label-width="120px"
-        size="small"
-        class="frame"
-      >
-        <el-row>
-          <el-col :span="12">
-            <el-form-item
-              label="营业性质"
-              :label-width="formLabelWidth"
-              prop="qualityId"
-            >
-              <el-select
-                v-model="editform.qualityId"
-                placeholder="请选择营业性质"
-                @change="changeDept1"
-              >
-                <el-option
-                  v-for="item in natureBusinessList"
-                  :key="item.value"
-                  :label="item.label"
-                  :value="item.value"
-                ></el-option>
-              </el-select>
-            </el-form-item>
-          </el-col>
-          <el-col :span="12">
-            <el-form-item
-              label="所属地"
-              :label-width="formLabelWidth"
-              prop="areaName"
-            >
-              <el-input
-                v-model="editform.areaName"
-                autocomplete="off"
-              ></el-input>
-            </el-form-item>
-          </el-col>
-        </el-row>
-        <el-row>
-          <el-col :span="12">
-            <el-form-item
-              label="企业名称"
-              :label-width="formLabelWidth"
-              prop="enterpriseName"
-            >
-              <el-input
-                v-model="editform.enterpriseName"
-                autocomplete="off"
-              ></el-input>
-            </el-form-item>
-          </el-col>
-          <el-col :span="12">
-            <el-form-item
-              label="法人"
-              :label-width="formLabelWidth"
-              prop="legalPerson"
-            >
-              <el-input
-                v-model="editform.legalPerson"
-                autocomplete="off"
-              ></el-input>
-            </el-form-item>
-          </el-col>
-        </el-row>
-        <el-row>
-          <el-col :span="12">
-            <el-form-item
-              label="税率(%)"
-              :label-width="formLabelWidth"
-              prop="taxRate"
-            >
-              <el-input-number
-                v-model="editform.taxRate"
-                @change="handleChange"
-                :min="0"
-                :max="10"
-                label="描述文字"
-              ></el-input-number>
-            </el-form-item>
-          </el-col>
-          <el-col :span="12"
-            ><el-form-item label="成立日期" prop="foundDate"
-              ><el-date-picker
-                v-model="editform.foundDate"
-                type="date"
-                placeholder="选择日期"
-                value-format="yyyy-MM-dd"
-              >
-              </el-date-picker>
-            </el-form-item>
-          </el-col>
-        </el-row>
-        <el-row>
-          <el-col :span="12">
-            <el-form-item
-              label="管理员"
-              :label-width="formLabelWidth"
-              prop="管理员"
-            >
-              <el-input v-model="editform.admin" autocomplete="off"></el-input>
-            </el-form-item>
-          </el-col>
-          <el-col :span="12">
-            <el-form-item
-              label="报税限额度(年)"
-              :label-width="formLabelWidth"
-              prop="taxLimit"
-            >
-              <el-input v-model="editform.taxLimit"></el-input>
-            </el-form-item>
-          </el-col>
-        </el-row>
-      </el-form>
-
-      <div slot="footer" class="dialog-footer">
-        <el-button @click="reset('editform')" size="small">取 消</el-button>
-        <el-button type="primary" @click="determine" size="small"
-          >确 定</el-button
-        >
-      </div>
-    </el-dialog>
-  </div>
-</template>
-<script>
-import KtCommonTable from "@/views/Core/KtCommonTable.vue"; //表格组件
-import KtButton from "@/views/Core/KtButton"; // 按钮权限组件
-import CommonUtil from "@/utils/comutil.js";
-
-export default {
-  name: "InvoiceInformation",
-  components: { KtCommonTable, KtButton },
-  created() {
-    this.business(); //营业性质
-    this.findEnterpriseNameList(); //获取企业下拉框数据
-  },
-  mounted() {},
-  data() {
-    return {
-      operationWidth: 300, //操作列宽度
-      queryFrom: {
-        value1: "",
-        qualityId: "",
-        enterpriseName: "",
-        enterpriseId: "",
-      },
-
-      button1Name: "删除",
-      pageResult: {},
-      pageRequest: {
-        //查询的默认条件
-        startInvoiceDate: "",
-        endInvoiceDate: "",
-        enterpriseId: "", //企业id
-        pageNum: 1,
-        pageSize: 10,
-        qualityId: "", //营业性质
-      },
-      columns: [
-        // 数据列
-        {
-          prop: "qualityName",
-          label: "营业性质",
-          minWidth: 80,
-          sortable: false,
-        },
-
-        { prop: "areaName", label: "所属地", minWidth: 150, sortable: false },
-        {
-          prop: "enterpriseName",
-          label: "企业名称",
-          minWidth: 160,
-          sortable: false,
-        },
-        {
-          prop: "legalPerson",
-          label: "法人",
-          minWidth: 80,
-          sortable: false,
-        },
-        {
-          prop: "taxRate",
-          label: "税率",
-          minWidth: 70,
-          sortable: false,
-        },
-        {
-          prop: "foundDate",
-          label: "成立日期",
-          minWidth: 140,
-          sortable: false,
-        },
-        {
-          prop: "taxLimit",
-          label: "总开票额",
-          minWidth: 80,
-          sortable: false,
-        },
-        {
-          prop: "invoicedMoney",
-          label: "已开票额",
-          minWidth: 80,
-          sortable: false,
-        },
-        {
-          prop: "notInvoicedMoney",
-          label: "未开票额",
-          minWidth: 80,
-          sortable: false,
-        },
-      ],
-      //查询信息
-      checked: false, //选项
-      dialogFormVisible: false, //新增弹出框
-      dialogForm: false, //编辑弹出框
-      formLabelWidth: "120px",
-      num: 1, //发票数
-      addform: {
-        qualityName: "", //营业性质
-        areaName: "", //所属地
-        enterpriseName: "", //企业名称
-        legalPerson: "", //法人
-        taxRate: 0, //税率
-        foundDate: "", //成立日期
-        taxLimit: "", //报税限额度(年)
-        admin: "", //管理员
-        qualityId: "", //营业性质ID
-        enterpriseId: "", //企业名称ID
-      },
-      editform: {
-        qualityName: "", //营业性质
-        areaName: "", //所属地
-        enterpriseName: "", //企业名称
-        legalPerson: "", //法人
-        taxRate: 0, //税率
-        foundDate: "", //成立日期
-        taxLimit: "", //报税限额度(年)
-        admin: "", //管理员
-        qualityId: "", //营业性质ID
-        enterpriseId: "", //企业名称ID
-      },
-      //下拉框数据字典
-      natureBusinessList: [], //营业性质
-      rules: {
-        legalPerson: [
-          { required: true, message: "请输入法人名称", trigger: "blur" },
-          { min: 2, max: 5, message: "长度在 2 到 6 个字符", trigger: "blur" },
-        ],
-        qualityId: [
-          { required: true, message: "请选择营业性质", trigger: "change" },
-        ],
-        areaName: [
-          { required: true, message: "请输入所属地", trigger: "blur" },
-        ],
-        enterpriseName: [
-          { required: true, message: "请输入企业名称", trigger: "blur" },
-        ],
-        foundDate: [
-          {
-            required: true,
-            message: "请选择成立日期",
-            trigger: "change",
-          },
-        ],
-      },
-      id: "",
-      enterpriseNameList: [], //下拉框企业名称集合
-    };
-  },
-  methods: {
-    //获取企业下拉框数据
-    findEnterpriseNameList() {
-      let params = {
-        pageNum: 1,
-        pageSize: 10,
-        startInvoiceDate: "",
-        endInvoiceDate: "",
-        enterpriseId: "", //企业id
-        qualityId: "", //营业性质
-      };
-      this.$api.dict.companyFindPage(params).then((res) => {
-        console.log(res);
-        // this.pageResult = res.data;
-        this.enterpriseNameList = res.data.content;
-      });
-    },
-    findPage(data) {
-      if (data && data.pageRequest) {
-        this.pageRequest.pageNum = data.pageRequest.pageNum;
-        this.pageRequest.pageSize = data.pageRequest.pageSize;
-      }
-      this.$api.dict
-        .companyFindPage(this.pageRequest)
-        .then((res) => {
-          this.pageResult = res.data;
-          // this.enterpriseNameList = res.data.content;
-        })
-        .then(data != null ? data.callback : "");
-    },
-    //营业性质下拉框
-    changeDept(value) {
-      this.natureBusinessList.forEach((item) => {
-        if (item.value == value) {
-          this.addform.qualityId = item.value;
-          this.addform.qualityName = item.label;
-        }
-      });
-    },
-    changeDept1(value) {
-      this.natureBusinessList.forEach((item) => {
-        if (item.value == value) {
-          this.editform.qualityName = item.label;
-        }
-      });
-    },
-    changeEnterprise(value) {},
-    //formatter---营业性质
-    natureBusinessFormatter(row) {
-      let nature_business = row.nature_business;
-      return CommonUtil.getDataName({
-        dataList: this.natureBusinessList,
-        value: "value",
-        label: "label",
-        data: nature_business,
-      });
-    },
-
-    //营业性质数据字典
-    business() {
-      let typeName = "nature_business";
-      this.$api.dict.findByLableName(typeName).then((res) => {
-        this.natureBusinessList = res.data;
-      });
-    },
-    // 查询
-    queryStaffInfo() {
-      if (
-        this.queryFrom.value1 == undefined ||
-        this.queryFrom.value1 == null ||
-        this.queryFrom.value1 == ""
-      ) {
-        (this.pageRequest.startInvoiceDate = ""),
-          (this.pageRequest.endInvoiceDate = "");
-      } else {
-        this.pageRequest.startInvoiceDate = this.queryFrom.value1[0];
-        this.pageRequest.endInvoiceDate = this.queryFrom.value1[1];
-      }
-      this.pageRequest.enterpriseId = this.queryFrom.enterpriseId; //企业名称id
-      this.pageRequest.qualityId = this.queryFrom.qualityId; //营业性质id
-      this.pageRequest.pageNum = 1;
-      this.findPage();
-    },
-    addAmount() {
-      this.dialogFormVisible = true;
-    },
-    handleClose() {
-      this.dialogFormVisible = false;
-      this.$refs.addform.resetFields();
-    },
-    handleTableDelete(index) {
-      // console.log("删除", index);
-      this.$message({ message: "暂不支持删除操作", type: "warning" });
-    },
-    //发票数
-    handleChange() {},
-    //新增取消重置
-    resetForm(addform) {
-      this.dialogFormVisible = false;
-      this.$refs[addform].resetFields();
-    },
-    //修改取消重置
-    reset(editform) {
-      this.dialogForm = false;
-      this.$refs[editform].resetFields();
-    },
-    //修改
-    handleTableEdit(index) {
-      console.log(index);
-      this.id = index.row.id;
-      let data = index.row;
-      this.editform = { ...data };
-      this.dialogForm = true;
-    },
-    //修改提交
-    determine() {
-      this.$refs["editform"].validate((valid) => {
-        if (valid) {
-          let params = {
-            admin: this.editform.admin,
-            areaName: this.editform.areaName,
-            enterpriseName: this.editform.enterpriseName,
-            foundDate: this.editform.foundDate,
-            legalPerson: this.editform.legalPerson,
-            qualityId: this.editform.qualityId,
-            qualityName: this.editform.qualityName,
-            taxLimit: this.editform.taxLimit,
-            taxRate: String(this.editform.taxRate),
-            id: this.id,
-          };
-          console.log(params);
-          this.$api.dict.companySave(params).then((res) => {
-            if (res.code == "200") {
-              this.$message({ message: "修改成功!", type: "success" });
-              this.dialogFormVisible = false;
-            } else {
-              this.$message({
-                message: `修改失败, ${res.msg}`,
-                type: "error",
-              });
-            }
-            this.findPage();
-            this.dialogForm = false;
-          });
-        } else {
-          return false;
-        }
-      });
-    },
-    //提交
-    submitForm(addform) {
-      let params = {
-        admin: this.addform.admin,
-        areaName: this.addform.areaName,
-        enterpriseName: this.addform.enterpriseName,
-        foundDate: this.addform.foundDate,
-        legalPerson: this.addform.legalPerson,
-        qualityId: this.addform.qualityId,
-        qualityName: this.addform.qualityName,
-        taxLimit: this.addform.taxLimit,
-        taxRate: String(this.addform.taxRate),
-      };
-      console.log(params);
-      this.$refs[addform].validate((valid) => {
-        if (valid) {
-          this.$api.dict.companySave(params).then((res) => {
-            if (res.code == 200) {
-              this.$message({
-                message: "添加成功",
-                type: "success",
-              });
-            } else {
-              this.$message({
-                message: `添加失败, ${res.msg}`,
-                type: "error",
-              });
-            }
-            this.dialogFormVisible = false;
-            this.findPage();
-          });
-        } else {
-          return false;
-        }
-      });
-    },
-  },
-};
-</script>
-
-<style scoped>
-.operation {
-  margin-left: 14px !important;
-  margin-top: 15px !important ;
-}
-.form {
-  display: flex;
-  margin-top: 14px;
-  align-items: center;
-  margin-left: -12px;
-  margin-bottom: 20px;
-}
-.el-pagination {
-  font-weight: normal;
-}
-.el-card__body {
-  padding: 12px !important;
-}
-.footer .footerdiv {
-  display: flex;
-  align-items: center;
-}
-.container .el-form-item {
-  margin-bottom: -14px !important;
-}
-.form .el-form-item__label {
-  font-size: 15px !important;
-  font-weight: 600 !important;
-}
-
-.ktTable {
-  margin-top: 20px;
-}
-.el-row {
-  margin-top: 18px;
-}
-.top {
-  margin-top: 0px;
-}
-.el-date-editor--daterange.el-input__inner {
-  width: 300px;
-}
-.frame .el-form-item .el-input {
-  width: 220px;
-}
-.frame .el-form-item .el-select {
-  width: 220px;
-}
-</style>

+ 0 - 842
src/views/FinancialManagement/InvoiceInformation.vue

@@ -1,842 +0,0 @@
-<template>
-  <!--布局容器-->
-  <div class="container" style="width: 99%; margin-top: 0px">
-    <templateTable :formList="formList" :searchData.sync="queryFrom" :tableConfig="tableConfig" :btnGroup="btnGroup"
-      :data="pageResult" @getList="findPage" @handleSearchList="handleSearchList" :pagination="pageData">
-    </templateTable>
-    <!-- 新增弹出框 -->
-    <el-dialog :title="dialogTitle" class="dialog" :close-on-click-modal="false" :before-close="handleClose"
-      :visible.sync="dialogFormVisible" width="900px">
-      <el-form class="frame" :model="dataform" label-width="120px" size="small" :rules="rules" :disabled="isDisabled"
-        ref="dataform">
-        <el-row>
-          <el-col :span="12">
-            <el-form-item label="开票日期" prop="invoiceDate"><el-date-picker v-model="dataform.invoiceDate" type="date"
-                placeholder="选择日期" value-format="yyyy-MM-dd">
-              </el-date-picker>
-            </el-form-item>
-          </el-col>
-          <el-col :span="12">
-            <el-form-item label="开票员" prop="invoiceClerk">
-              <el-input v-model="dataform.invoiceClerk" autocomplete="off"></el-input>
-            </el-form-item>
-          </el-col>
-        </el-row>
-        <el-row type="flex" justify="center">
-          <el-col :span="12">
-            <el-form-item label="开票方" prop="invCompanyId">
-              <el-select v-model="dataform.invCompanyId" placeholder="请选择开票方" @change="invCompanyChange">
-                <el-option v-for="item in invCompanyNameList" :key="item.id" :label="item.enterpriseName"
-                  :value="item.id"></el-option>
-              </el-select>
-            </el-form-item>
-          </el-col>
-          <el-col :span="12">
-            <el-form-item label="开票科目" prop="subjectsId">
-              <el-select v-model="dataform.subjectsId" placeholder="请选择开票科目" @change="changeDept">
-                <el-option v-for="item in subjectstList" :key="item.value" :label="item.label"
-                  :value="item.value"></el-option>
-              </el-select> </el-form-item></el-col>
-        </el-row>
-        <el-row>
-          <el-col :span="12">
-            <el-form-item label="对方单位名称" prop="peerCompanyName">
-              <el-input v-model="dataform.peerCompanyName" autocomplete="off"></el-input>
-            </el-form-item>
-          </el-col>
-          <el-col :span="12">
-            <el-form-item label="发票类型" prop="invoiceType">
-              <el-select v-model="dataform.invoiceType" placeholder="请选择发票类型" @change="invoiceChange">
-                <el-option v-for="item in incoiceList" :key="item.value" :label="item.label"
-                  :value="item.value"></el-option>
-              </el-select>
-            </el-form-item>
-          </el-col>
-        </el-row>
-        <el-row>
-          <el-col :span="12">
-            <el-form-item label="开票金额" prop="invoiceAmount">
-              <el-input v-model.trim="dataform.invoiceAmount" autocomplete="off"></el-input>
-            </el-form-item>
-          </el-col>
-          <el-col :span="12">
-            <el-form-item label="发票号码" prop="invoiceNum">
-              <el-input v-model="dataform.invoiceNum" autocomplete="off"></el-input> </el-form-item></el-col>
-        </el-row>
-        <el-row>
-          <el-col :span="12">
-            <el-form-item label="不含税收入" prop="taxExclusivePrice">
-              <el-input disabled v-model="dataform.taxExclusivePrice"></el-input>
-            </el-form-item>
-          </el-col>
-          <el-col :span="12">
-            <el-form-item label="发票数" prop="invoiceQuantity">
-              <el-input v-model.trim="dataform.invoiceQuantity"></el-input>
-            </el-form-item>
-          </el-col>
-        </el-row>
-        <el-row>
-          <el-col :span="12">
-            <el-form-item label="税额" prop="taxAmounts">
-              <el-input v-model="dataform.taxAmounts" disabled></el-input>
-            </el-form-item>
-          </el-col>
-          <el-col :span="12">
-            <el-form-item label="税率(%)" prop="taxRate">
-              <el-input v-model="dataform.taxRate"></el-input>
-            </el-form-item>
-          </el-col>
-        </el-row>
-
-        <!-- <el-form-item label="备注" prop="remark">
-          <el-input type="textarea" v-model="dataform.remark"></el-input>
-        </el-form-item> -->
-      </el-form>
-      <el-divider v-if="isDisabled"></el-divider>
-      <el-form v-if="isDisabled" class="frame" :model="dataCollection" label-width="120px" size="small"
-        :rules="rulesCollection" :disabled="isWholeDisabled" ref="dataCollection">
-        <el-row>
-          <el-col :span="12">
-            <el-form-item label="未进账金额" prop="notIncomeMoney"> <el-input disabled v-model="notIncomeMoney"></el-input>
-            </el-form-item>
-          </el-col>
-          <el-col :span="12">
-            <el-form-item label="未出账金额" prop="notOutMoney">
-              <el-input disabled v-model="notOutMoney"></el-input>
-            </el-form-item>
-          </el-col>
-        </el-row>
-        <el-row>
-          <el-col :span="12">
-            <el-form-item label="利润合计" prop="totalProfit"> <el-input disabled v-model="dataCollection.totalProfit"></el-input>
-            </el-form-item>
-          </el-col>
-          <el-col :span="12">
-            <el-form-item label="已提利润" prop="profitApplied">
-              <el-input v-model="dataCollection.profitApplied"></el-input>
-            </el-form-item>
-          </el-col>
-        </el-row>
-        <el-row>
-          <el-col :span="12">
-            <el-form-item label="利润点(%)" prop="profitPoint"> <el-input
-                v-model.trim="dataCollection.profitPoint"></el-input>
-            </el-form-item>
-          </el-col>
-          <el-col :span="12">
-            <el-form-item label="手续费" prop="procedureFee">
-              <el-input v-model.trim="dataCollection.procedureFee"></el-input>
-            </el-form-item>
-          </el-col>
-        </el-row>
-
-        <el-button style="margin-left:30px" type="success" size="small" @click="addIncome()">添加进账</el-button>
-        <el-row v-for="(val, index) in dataCollection.incomeList" :key="index">
-          <el-col :span="10">
-            <el-form-item :label="'进账金额' + (index + 1)" :prop="'incomeList.' + index + '.incomeMoney'"
-              :rules="rulesCollection.incomeMoney"> <el-input v-model="val.incomeMoney"
-                @change="incomeMoneyFun(val.incomeMoney, index)" @input='provingChange($event, "incomeMoney")'></el-input>
-            </el-form-item>
-          </el-col>
-
-          <el-col :span="10">
-            <el-form-item :label="'进账日期' + (index + 1)" :prop="'incomeList.' + index + '.incomeDate'">
-              <el-date-picker type="date" size="small" v-model="val.incomeDate" placeholder="选择日期"
-                @input='provingChange($event, "incomeDate")' value-format="yyyy-MM-dd"></el-date-picker>
-            </el-form-item>
-          </el-col>
-          <el-col :span="4">
-            <el-button type="primary" size="small" @click="deleteIncome(index)">删除</el-button>
-          </el-col>
-          <el-col :span="10" style="margin-top:10px">
-            <el-form-item :label="'出账金额' + (index + 1)" :prop="'incomeList.' + index + '.outIncomeMoney'"> <el-input
-                v-model="val.outIncomeMoney" disabled @input='provingChange($event, "outIncomeMoney")'></el-input>
-            </el-form-item>
-          </el-col>
-          <el-col :span="10" style="margin-top:10px">
-            <el-form-item :label="'出账日期' + (index + 1)" :prop="'incomeList.' + index + '.outIncomeDate'">
-              <el-date-picker type="date" size="small" v-model="val.outIncomeDate" placeholder="选择日期"
-                @input='provingChange($event, "outIncomeDate")' value-format="yyyy-MM-dd"></el-date-picker>
-            </el-form-item>
-          </el-col>
-        </el-row>
-        <el-row>
-          <el-col :span="21">
-            <el-form-item label="备注" prop="remark"> <el-input type="textarea" v-model="dataCollection.remark"></el-input>
-            </el-form-item>
-          </el-col>
-        </el-row>
-
-      </el-form>
-      <div slot="footer" class="dialog-footer">
-        <el-button @click="resetForm('dataform')" size="small">取 消</el-button>
-        <el-button v-if="dialogTitle!=='查看发票信息'" type="primary" @click="submitForm()" size="small">确 定</el-button>
-      </div>
-    </el-dialog>
-  </div>
-</template>
-
-
-<script>
-import { limitNumber } from "../../utils/validate.js";
-import templateTable from '@/components/TemplateTable/index.vue'
-
-export default {
-  name: "InvoiceInformation",
-  components: { templateTable },
-  created() {
-    //获取所有下拉框数据
-    this.subjectsFn(); //开票科目
-    this.incoiceType(); //发票类型
-    this.EnterpriseName(); //开票方
-    this.findPage()
-
-  },
-  computed: {
-    notIncomeMoney: {
-      get: function () {
-        let a
-        if (this.dataCollection.incomeList[0].incomeMoney) {
-          a = 0
-          this.dataCollection.incomeList.forEach(val => {
-            a += Number(val.incomeMoney)
-          })
-          a = Number(this.dataform.invoiceAmount) - a
-        }
-        else {
-          a = this.dataform.invoiceAmount
-        }
-        return a
-      },
-      set: function (value) {
-        this.dataform.invoiceAmount = value
-      },
-    },
-    notOutMoney: {
-      get: function () {
-        let a
-        if (this.dataCollection.incomeList[0].outIncomeMoney) {
-          a = 0
-          this.dataCollection.incomeList.forEach(val => {
-            a += Number(val.outIncomeMoney)
-          })
-          a = Number(this.dataform.invoiceAmount) - a
-        }
-        else {
-          a = this.dataform.invoiceAmount
-        }
-        return a
-      },
-      set: function (value) {
-        this.dataform.invoiceAmount = value
-      },
-    },
-  },
-  watch: {
-    // 开票金额
-    'dataform.invoiceAmount'(newVal, oldVal) {
-      if (newVal && limitNumber(newVal)) {
-        if (this.dataform.taxRate) {
-          this.dataform.taxExclusivePrice = (Number(newVal) / (1 + Number(this.dataform.taxRate))).toFixed(2)
-          this.dataform.taxAmounts = (Number(newVal) / (1 + Number(this.dataform.taxRate)) * Number(this.dataform.taxRate)).toFixed(2)
-        }
-      }
-    },
-    // 税率
-    'dataform.taxRate'(newVal, oldVal) {
-      if (newVal && limitNumber(newVal)) {
-        if (this.dataform.invoiceAmount) {
-          this.dataform.taxExclusivePrice = (Number(this.dataform.invoiceAmount) / (1 + Number(newVal))).toFixed(2)
-          this.dataform.taxAmounts = (Number(this.dataform.invoiceAmount) / (1 + Number(newVal)) * Number(newVal)).toFixed(2)
-        }
-      }
-    },
-    // 利润点
-    'dataCollection.profitPoint'(newVal) {
-      if (newVal && limitNumber(newVal)) {
-        let valData = Number(newVal)
-        this.dataCollection.incomeList.forEach((val, index) => {
-          if (val.incomeMoney) {
-            this.dataCollection.incomeList[index].outIncomeMoney = ((1 - valData) * Number(val.incomeMoney)).toFixed(2)
-          }
-        })
-
-        if (this.dataCollection.procedureFee) {
-          this.dataCollection.totalProfit = (Number(this.dataform.invoiceAmount) * valData - Number(this.dataCollection.procedureFee)).toFixed(2)
-        }
-      }
-
-    },
-    // 手续费
-    'dataCollection.procedureFee'(newVal) {
-      if (newVal && limitNumber(newVal)) {
-        if (this.dataCollection.profitPoint) {
-          this.dataCollection.totalProfit = (Number(this.dataform.invoiceAmount) * Number(this.dataCollection.profitPoint) - Number(newVal)).toFixed(2)
-        }
-      }
-    },
-  },
-  data() {
-    const validateSz = (rule, value, callback) => {
-      if (!value && rule.field == "invoiceAmount") {
-        callback(new Error("请填写开票金额"));
-      }
-      if (!value && rule.field == "invoiceQuantity") {
-        callback(new Error("请填写发票数"));
-      }
-      if (value && !limitNumber(value)) {
-        callback(new Error("请输入整数或者保留两位小数!"));
-      }
-      callback()
-    };
-    const valiaDigit = (rule, value, callback) => {
-      if (value && !limitNumber(value)) {
-        callback(new Error("请输入整数或者保留两位小数!"));
-      }
-    }
-    return {
-      formList: [
-        {
-          label: "开票员",
-          prop: "invoiceClerk",
-          type: 'input'
-        },
-        {
-          label: "开票方",
-          prop: "invCompanyName",
-          type: 'input'
-        },
-        {
-          label: "对方单位名称",
-          prop: "peerCompanyName",
-          type: 'input'
-        },
-        {
-          label: "开票日期",
-          prop: "invoiceDate",
-          type: 'date'
-        },
-        {
-          label: "开票科目",
-          prop: "subjects",
-          type: "select",
-          options: this.subjectstList
-        },
-        {
-          label: "发票类型",
-          prop: "status",
-          type: "select",
-          options: JSON.parse(localStorage.getItem('user_statusoptions'))
-        },
-      ],
-      btnGroup: [{
-        name: '新增(外部合同开票)',
-        click: () => { return this.add() },
-      }, {
-        name: '新增(手续费开票)',
-        click: () => { return this.addTwo() },
-      },],
-      tableConfig: {
-        columns: [
-          // 数据列
-          { prop: "invoiceClerk", label: "开票员", type: 'text' },
-          {
-            prop: "subjects",
-            label: "开票科目", type: 'text',
-          },
-          { prop: "invCompanyName", label: "开票方", type: 'text', },
-
-          { prop: "peerCompanyName", label: "对方单位名称", type: 'text', },
-          { prop: "invoiceNum", label: "发票号码", type: 'text', },
-          {
-            prop: "invoiceDate",
-            label: "开票日期",
-            type: 'text',
-          },
-          {
-            prop: "taxExclusivePrice",
-            label: "不含税金额",
-            type: 'text',
-          },
-        ],
-        loading: true,
-        isPaginationShow: true,
-        isShowIndex: true,
-        operationWidth: '120',
-        optBtns: [
-          {
-            type: 'primary',
-            label: '添加回款',
-            type: 'text',
-            click: (row, index) => { return this.addCollection(row) },
-          },
-          {
-            type: 'primary',
-            label: '修改',
-            type: 'text',
-            click: (row, index) => { return this.handleTableEdit(row) },
-          },
-          {
-            type: 'primary',
-            label: '查看',
-            type: 'text',
-            click: (row, index) => { return this.handleTableDetail(row) },
-          },
-          {
-            type: 'primary',
-            label: '删除',
-            type: 'text',
-            click: (row, index) => { return this.handleTableDelete(row) },
-          }
-        ]
-      },
-      pageData: {
-        pageNum: 1,
-        pageSize: 10,
-        totalSize: 0
-      },
-      nvoicingCategory: '1',
-      isDisabled: false,
-      isWholeDisabled: false,
-      dialogTitle: '新增发票信息',
-      incomeList: [{
-        incomeDate: '',
-        incomeMoney: '',
-        outIncomeDate: '',
-        outIncomeMoney: ''
-      }],
-      pageResult: [], //表格数据
-      //顶部查询信息
-      queryFrom: {}, //查询信息
-      dialogFormVisible: false, //新增弹出框
-      dialogForm: false, //修改弹出框
-      form: {},
-      dataCollection: {
-        incomeList: [{
-          incomeDate: '',
-          incomeMoney: '',
-          outIncomeDate: '',
-          outIncomeMoney: ''
-        }],
-      },
-      //新增弹出框信息
-      dataform: {},
-      formLabelWidth: "120px",
-      subjectstList: [], //选择的开票科目
-      incoiceList: [], //选择的发票类型
-      approvalList: [], //字典状态数组
-      invCompanyNameList: [], //选择的开票方数组
-      rulesCollection: {
-        procedureFee: { required: false, trigger: "blur", validator: valiaDigit },
-        profitPoint: { required: false, trigger: "blur", validator: valiaDigit },
-        incomeMoney: { required: false, trigger: "change", validator: valiaDigit },
-      },
-      //表单验证
-      rules: {
-        invoiceClerk: [
-          { required: true, message: "请输入开票员", trigger: "blur" },
-        ],
-        // taxExclusivePrice: [
-        //   { required: true, message: "请输入不含金额税", trigger: "blur" },
-        // ],
-        invoiceNum: [
-          { required: true, message: "请输入开票号码", trigger: "blur" },
-        ],
-        subjectsId: [
-          { required: true, message: "请选择开票科目", trigger: "change" },
-        ],
-        invoiceType: [
-          { required: true, message: "请选择开票类型", trigger: "change" },
-        ],
-        invCompanyId: [
-          { required: true, message: "请选择开票方", trigger: "change" },
-        ],
-        peerCompanyName: [
-          { required: true, message: "请输入对方单位名称", trigger: "blur" },
-        ],
-        invoiceAmount: [{ required: true, trigger: "blur", validator: validateSz }],
-        invoiceDate: [
-          {
-            required: true,
-            message: "请选择开票日期",
-            trigger: "change",
-          },
-        ],
-        invoiceQuantity: [{ required: true, trigger: "blur", validator: validateSz }],
-        taxRate: [
-          { required: true, message: "请输入", trigger: "blur" },
-        ],
-      },
-      subjectsId: "", //科目ID
-      invCompanyId: "", //开票方ID
-      checkList: [], //选中的选项集合
-      id: "", //每一项选中的id信息
-    };
-  },
-  methods: {
-    handleSearchList(data) {
-      this.findPage(data)
-    },
-    // 输入进账金额触发方法
-    incomeMoneyFun(val, index) {
-      if (val && limitNumber(val) && this.dataCollection.profitPoint) {
-        this.dataCollection.incomeList[index].outIncomeMoney = ((1 - Number(this.dataCollection.profitPoint)) * Number(this.dataCollection.incomeList[index].incomeMoney)).toFixed(2)
-      }
-    },
-    //字典---
-    subjectsFn() {
-      let typeName = "subjects";
-      this.$api.dict.findByLableName(typeName).then((res) => {
-        this.subjectstList = res.data;
-      });
-    },
-    incoiceType() {
-      let typeName = "invoice_type";
-      this.$api.dict.findByLableName(typeName).then((res) => {
-        this.incoiceList = res.data;
-      });
-    },
-    //--数据字典 end --
-    // handleSearchList(data) {
-    //   this.findPage(data)
-    // },
-    findPage(data) {
-      this.tableConfig.loading = true;
-      this.$api.dict
-        .queryPage({ ...this.pageData, ...data })
-        .then((res) => {
-          this.tableConfig.loading = false;
-          this.pageResult = res.data.content;
-          this.pageData.pageNum = res.data.pageNum;
-          this.pageData.pageSize = res.data.pageSize;
-          this.pageData.totalSize = res.data.totalSize;
-
-        })
-    },
-    statusChange(e) {
-      //状态选择事件
-      // this.pageRequest.approvalStatus = e;
-      // this.findPage();
-    },
-    //开票公司下拉框
-    EnterpriseName() {
-      this.$api.dict.companyFindList().then((res) => {
-        this.invCompanyNameList = res.data;
-        if (this.invCompanyNameList.length > 0) {
-          this.invCompanyNameList = this.invCompanyNameList.filter(
-            (item) =>
-              item.enterpriseName != "" &&
-              item.enterpriseName != null &&
-              item.enterpriseName != undefined
-          );
-          this.dataform.invCompanyName = this.invCompanyNameList[0].id;
-        } else {
-          this.dataform.invCompanyName = "";
-        }
-      });
-    },
-    // 添加进账
-    addIncome() {
-      this.dataCollection.incomeList.push({
-        incomeDate: '',
-        incomeMoney: '',
-        outIncomeDate: '',
-        outIncomeMoney: ''
-      })
-
-    },
-    deleteIncome(index) {
-      this.$confirm('是否删除该数据?', '提示', {
-        confirmButtonText: '确定',
-        cancelButtonText: '取消',
-        type: 'warning'
-      }).then(() => {
-        if (this.dataCollection.incomeList.length > 1) {
-          this.dataCollection.incomeList.splice(index, 1)
-          this.$message({
-            type: 'success',
-            message: '删除成功!'
-          });
-        }
-        else {
-          this.$message.warning('至少添加一条数据!')
-        }
-      })
-
-    },
-    //新增外部合同开票
-    add() {
-      if(this.$refs.dataform){
-        this.$refs.dataform.resetFields();
-      }
-      this.nvoicingCategory = '1'
-      this.dialogTitle = '新增发票信息'
-      this.dataform = {}
-      this.dialogFormVisible = true;
-      this.isDisabled = false
-    },
-    //新增手续费开票
-    addTwo() {
-      if(this.$refs.dataform){
-        this.$refs.dataform.resetFields();
-      }
-      this.nvoicingCategory = '2'
-      this.dialogTitle = '新增发票信息'
-      this.dataform = {
-        invoiceDate:'',
-        invCompanyId:'',
-        subjectsId:'',
-        invoiceType:''
-      }
-      this.dialogFormVisible = true;
-      this.isDisabled = false
-
-    },
-    handleClose() {
-      this.dialogFormVisible = false;
-    },
-
-    //取消
-    resetForm() {
-      this.dialogFormVisible = false;
-    },
-    provingChange(e, name) {
-      // this.$forceUpdate();  
-      this.$delete(this.dataCollection, name)
-      this.$set(this.dataCollection, name, e);
-    },
-    getInterface(jiekou) {
-      if (this.dialogTitle == '新增发票信息' ||this.dialogTitle == '修改发票信息') {
-        this.$refs["dataform"].validate((valid) => {
-          if (valid) {
-            Number(this.dataform.taxExclusivePrice)
-            Number(this.dataform.taxAmounts)
-            jiekou({ invoiceInfo: this.dataform }).then((res) => {
-              if (res.code == "200") {
-                this.$message({ message: "添加成功!", type: "success" });
-                this.dialogFormVisible = false;
-              } else {
-                this.$message({
-                  message: `添加失败,请重新添加, ${res.msg}`,
-                  type: "error",
-                });
-              }
-              this.findPage();
-            });
-          } else {
-            return false;
-          }
-        });
-      }
-      if (this.dialogTitle == "回款信息") {
-        let invoiceInfo = { ...this.dataform, ...this.dataCollection }
-        this.$api.dict.invoiceInfoSave({ invoiceInfo, invoiceInfoInOutList: this.dataCollection.incomeList }).then((res) => {
-          if (res.code == "200") {
-            this.$message({ message: "添加成功!", type: "success" });
-            this.dialogFormVisible = false;
-          } else {
-            this.$message({
-              message: `添加失败,请重新添加, ${res.msg}`,
-              type: "error",
-            });
-          }
-          this.findPage();
-        });
-      }
-    },
-    //新增提交
-    submitForm() {
-      this.dataCollection.notOutMoney = this.notOutMoney
-      this.dataCollection.notIncomeMoney = this.notIncomeMoney
-      this.dataCollection.incomeList.forEach(val => val.id = this.dataform.id)
-      if (this.nvoicingCategory == '1') {
-        this.getInterface(this.$api.dict.saveTypeOne)
-      }
-      else {
-        this.getInterface(this.$api.dict.saveTypeTwo)
-      }
-    },
-    //选择开票科目传参文字
-    changeDept(value) {
-      this.subjectstList.forEach((item) => {
-        if (item.value == value) {
-          this.subjectsId = item.value;
-          this.dataform.subjects = item.label;
-          this.form.subjects = item.label;
-        }
-      });
-    },
-    //发票类型
-    invoiceChange(value) {
-      this.incoiceList.forEach((item) => {
-        if (item.value == value) {
-          this.dataform.invoiceType = item.label;
-        }
-      });
-    },
-    invoiceChange1(value) {
-      this.incoiceList.forEach((item) => {
-        if (item.value == value) {
-          this.form.invoiceType = item.label;
-        }
-      });
-    },
-    //弹出框-开票方
-    invCompanyChange(value) {
-      this.invCompanyNameList.forEach((item) => {
-        if (item.id == value) {
-          this.invCompanyId = item.id;
-          this.dataform.invCompanyName = item.enterpriseName;
-          this.form.invCompanyName = item.enterpriseName;
-        }
-      });
-    },
-
-    //修改
-    handleTableEdit(row) {
-      if(this.$refs.dataform){
-        this.$refs.dataform.resetFields();
-      }
-      this.dialogTitle = '修改发票信息'
-      this.isDisabled = false
-      this.isWholeDisabled = false
-      this.dataform = { ...row };
-      this.dialogFormVisible = true;
-    },
-    // 查看
-    handleTableDetail(row) {
-      this.dialogTitle = '查看发票信息'
-      this.$api.dict.invDetails(row.id).then(res => {
-        if (res.code == 200) {
-          if (res.data.invoiceInfoInOutList.length == 0) {
-            res.data.invoiceInfoInOutList = [{
-              incomeDate: '',
-              incomeMoney: '',
-              outIncomeDate: '',
-              outIncomeMoney: ''
-            }]
-          }
-          this.dataform = res.data.invoiceInfo
-          this.dataCollection = res.data.invoiceInfo
-          this.dataCollection.incomeList = res.data.invoiceInfoInOutList
-          this.isDisabled = true
-          this.isWholeDisabled = true
-          this.dialogFormVisible = true;
-        }
-        else {
-          this.$message.error(res.msg);
-        }
-      })
-    },
-    //删除
-    handleTableDelete(row) {
-
-    },
-    // 添加回款
-    addCollection(row) {
-      this.$api.dict.invDetails(row.id).then(res => {
-        if (res.code == 200) {
-          if (Object.keys(res.data.invoiceInfoInOutList).length === 0) {
-            this.dataCollection = {
-              ...res.data.invoiceInfo, incomeList: [{
-                incomeDate: '',
-                incomeMoney: '',
-                outIncomeDate: '',
-                outIncomeMoney: ''
-              }]
-            }
-          }
-          else {
-            res.data.invoiceInfoInOutList.forEach(val => val.incomeMoney = val.incomeMoney + '')
-            this.dataCollection = { ...res.data.invoiceInfo, incomeList: res.data.invoiceInfoInOutList }
-          }
-          this.dataform = res.data.invoiceInfo
-          this.isDisabled = true
-          this.isWholeDisabled = false
-          this.dialogFormVisible = true;
-          this.dialogTitle = '回款信息'
-        }
-        else {
-          this.$message.error(res.msg);
-        }
-      })
-
-    }
-
-  },
-};
-</script>
-
-<style scoped>
-.el-input--suffix .el-input__inner {
-  padding-right: 60px !important;
-}
-
-.operation {
-  margin-left: 14px !important;
-  margin-top: 15px !important;
-}
-
-.dialog-footer {
-  margin-top: -20px !important;
-}
-
-.dialog .el-dialog__body {
-  padding: 30px 20px 5px !important;
-}
-
-.form {
-  display: flex;
-  margin-left: -12px !important;
-}
-
-.el-pagination {
-  font-weight: normal !important;
-}
-
-.footer {
-  z-index: 500;
-  position: fixed;
-  margin: 10px 0;
-  position: fixed;
-  bottom: -9px;
-  left: 210px;
-  right: 25px;
-  line-height: var(--footer-height);
-  color: #fff;
-}
-
-.el-card__body {
-  padding: 12px !important;
-}
-
-.footer .footerdiv {
-  display: flex !important;
-  align-items: center !important;
-}
-
-.frame .el-form-item {
-  margin-bottom: 7px !important;
-}
-
-.form .el-form-item__label {
-  font-size: 15px !important;
-  font-weight: 600 !important;
-}
-
-.el-row {
-  margin-top: 10px !important;
-}
-
-.el-textarea {
-  margin-top: 10px !important;
-}
-
-.frame .el-form-item .el-input {
-  width: 220px !important;
-}
-
-.frame .el-form-item .el-select {
-  width: 220px !important;
-}
-</style>

+ 24 - 9
src/views/Letter/Letter.vue

@@ -1520,7 +1520,6 @@
                   :data="TPInsuranceData"
                   border
                   v-if="insuranceTP"
-                  @row-click="TPDrivingChange"
                   ref="RsTable"
                   highlight-current-row
                   :header-cell-style="{ background: '#F2F7FC', fontWeight: '700', color: '#ee7000' }"
@@ -5345,7 +5344,6 @@ else{
     },
     huanongInsuranceChange(index){
       this.HNInsuranceData=(this.huanongInsuranceData).find(val=>val.planCode==index).planSubInfo[0].riskInfo
-
       this.huanongaccidentalDrivingVo= Object.assign(
         this.accidentFormHN,
         this.huanongInsuranceData.find(val=>val.planCode==index)
@@ -5353,8 +5351,8 @@ else{
     },
     taipingInsuranceChange(index){
       this.TPInsuranceData=[(this.taipingInsuranceData).find(val=>val.rationType==index)]
-      if(this.TPInsuranceData.length){
-        this.TPDrivingChange(this.TPInsuranceData[0])
+      if(this.TPInsuranceData && this.TPInsuranceData.length){
+          this.taipingaccidentalDrivingVo=this.TPInsuranceData[0];
       }
     },
     zijinInsuranceChange(index){
@@ -5652,6 +5650,9 @@ else{
               })
               this.ziJinInsuranceData = data;
             }
+            else{
+              this.$message.error(res.msg)
+            }
           });
           break;
           case '中国人寿':
@@ -5691,10 +5692,7 @@ else{
       })
     },
 
-    //太平驾意险选择
-      TPDrivingChange(row){
-      this.taipingaccidentalDrivingVo=row;
-    },
+   
     //恒邦驾意险选择
     HBDrivingChange(row){
       this.hengbangaccidentalDrivingVo=row;
@@ -5822,6 +5820,9 @@ else{
               })
               this.ziJinInsuranceData = data;
             }
+            else{
+              this.$message.error(res.msg)
+            }
           });
           break;
         case '安盛天平':
@@ -5836,6 +5837,9 @@ else{
               })
               this[name+"InsuranceData"] = data;
             }
+            else{
+              this.$message.error(res.msg)
+            }
           });
           break;
         case '中国人寿':
@@ -5852,6 +5856,9 @@ else{
               })
               this[name+"InsuranceData"] = data;
             }
+            else{
+              this.$message.error(res.msg)
+            }
           });
           break;
         case '中煤财险':
@@ -5861,6 +5868,9 @@ else{
               let data = res.data;
               this[name+"InsuranceData"] = data;
             }
+            else{
+              this.$message.error(res.msg)
+            }
           });
           break;
         case '大家财险':
@@ -5868,6 +5878,9 @@ else{
             if (res.code == 200) {
               this.dajiaInsuranceData = res.data;
             }
+            else{
+              this.$message.error(res.msg)
+            }
           });
           break;
         default:
@@ -5879,6 +5892,7 @@ else{
 
     },
     clearAccidentForm() {
+      this.accidentForm={}
       this.accidentForm.fen=1
       this.accidentForm.premium=0
     },
@@ -6263,7 +6277,7 @@ else{
       this.$api.letter.generateOrder(param).then(res => {
         if (res.code == "200") {
               //上传图片
-            const mergedArray = [...this.imageList1, ...this.imageList2, ...this.imageList3, ...this.imageList4];
+            const mergedArray = [...this.imageList1, ...this.imageList2, ...this.imageList3, ...this.imageList4,...this.imageList5];
             if (mergedArray.length > 0) {
               let imageparam = {
                 imageList: mergedArray,
@@ -6693,6 +6707,7 @@ else{
         let data = this.accidentDataList.find(
           val => val.code == this.accidentForm.accidentType
         );
+
         accidentalDrivingVo = {
           rideRiskCode: data.code ? data.code : "",
           rideRiskName: data.name ? data.name : "",

+ 40 - 5
src/views/Letter/Orderlist.vue

@@ -685,7 +685,7 @@
             orderInfo.carinfo.purchasePrice
           }}</el-descriptions-item>
           <el-descriptions-item label="使用性质">
-            {{ orderInfo.carinfo.carnature == "8A" ? "家庭自用" : "" }}
+            {{orderInfo.carinfo.carnature  }}
           </el-descriptions-item>
           <el-descriptions-item label="注册日期">{{
             orderInfo.carinfo.registerDate
@@ -1537,9 +1537,11 @@ export default {
       querystatusLoaing: false,
       quotationhistorydialogVisible: false, //报价历史显示状态
       HistoryList: [], //报价历史数据
+      natureOfVehicleUseoptions:[],
     };
   },
   created() {
+    this.getDicType("natureOfVehicleUse");//车辆使用性质
     this.$api.letter.gainTopList().then((res) => {
       this.companyList = res.data;
     });
@@ -1572,6 +1574,7 @@ export default {
         return item.dictValue === ele;
       }).dictTag;
     },
+  
   },
   unmounted() {
     window.removeEventListener("resize", this.getDimensions);
@@ -1627,6 +1630,14 @@ export default {
         this.HistoryList = res.data;
       });
     },
+    getDicType(type) {
+      this.$api.insCompany.dicType(type).then(res => {
+        if (res.code == 200) {
+            this[type + 'options'] = res.data.ddList;
+        }
+      })
+
+    },
     capType(val) {
       if (val == "0") {
         return "success";
@@ -1848,7 +1859,14 @@ export default {
                 });
                 this.findPage();
               } else {
-                this.$message({ message: res.msg, type: "error" });
+                this.$message({
+                            showClose: true,
+                            dangerouslyUseHTMLString: true,
+                            message:  (res.msg).replace(/\n/g,"<br><br>"),
+                            type: "error",
+                            duration: 7000
+                          });
+                // this.$message({ message: res.msg, type: "error" });
               }
             }
           );
@@ -1863,7 +1881,13 @@ export default {
             });
             this.findPage();
           } else {
-            this.$message({ message: res.msg, type: "error" });
+            this.$message({
+              showClose: true,
+              dangerouslyUseHTMLString: true,
+              message:  (res.msg).replace(/\n/g,"<br><br>"),
+              type: "error",
+              duration: 7000
+            });
           }
         });
       }
@@ -1878,7 +1902,13 @@ export default {
           });
           this.findPage();
         } else {
-          this.$message({ message: res.msg, type: "error" });
+          this.$message({
+              showClose: true,
+              dangerouslyUseHTMLString: true,
+              message:  (res.msg).replace(/\n/g,"<br><br>"),
+              type: "error",
+              duration: 7000
+            });
         }
       });
     },
@@ -2077,6 +2107,11 @@ export default {
         }
       });
     },
+    natureOfVehicleUseCap(ele) {
+      return this.natureOfVehicleUseoptions.find((item) => {
+        return item.dictValue === ele;
+      }).dictTag;
+    },
     //应用详情
     OrderDetails(dy, item) {
       this.carImageList = [];
@@ -2089,7 +2124,6 @@ export default {
       this.pic2Control = false;
       this.pic3Control = false;
       this.pic4Control = false;
-
       this.pic5Control = false;
 
       for (let i = 0; i < this.global.insureList.length; i++) {
@@ -2103,6 +2137,7 @@ export default {
         if (res.code == 200) {
           this.licenseNo = res.data.licenseno; //车牌号
           this.inscompany = res.data.inscompany; //保险公司
+          res.data.carinfo.carnature= this.natureOfVehicleUseCap(res.data.carinfo.carnature)
           if (res.data.accidentInfo) {
             res.data.accidentInfo.constructor === Object
               ? [res.data.accidentInfo]

+ 4 - 2
src/views/PeopleManage/Agent/AgentExamine.vue

@@ -483,8 +483,10 @@
 import tree from "@/components/ztree.vue"; // 机构树组件
 import KtCommonTable from "@/views/Core/KtCommonTable.vue"; //表格组件
 import peopleImage from "@/components/PeopleImage/index.vue"; //影像组件
-import mixin from '../mixin' 
-
+import mixa from '../mixin' 
+const mixin = new mixa({
+  treeTypeNum:2 //树分类过滤参数
+})
 export default {
   components: {
     tree,

+ 9 - 3
src/views/PeopleManage/Agent/AgentManage.vue

@@ -79,7 +79,7 @@
                     :options="ztreeNodes"
                     v-model="formData.deptId"
                     clearable
-                    :disabled="dialogTitle == '编辑代理人'"
+                    disabled
                     :show-all-levels="false"
                     :props="{
                       value: 'id',
@@ -439,8 +439,10 @@ import tree from "@/components/ztree.vue"; // 机构树组件
 import templateTable from "../../../components/TemplateTable/index.vue";
 import peopleImage from "@/components/PeopleImage/index.vue";
 import { validateSfz } from "../../../utils/validate.js";
-import mixin from '../mixin' 
-
+import mixa from '../mixin' 
+const mixin = new mixa({
+  treeTypeNum:2 //树分类过滤参数
+})
 export default {
   components: {
     KtButton,
@@ -787,6 +789,10 @@ export default {
         this.$message.info("请选择所属公司或部门");
         return;
       }
+      if(this.currentTreeNode.comlevel!=null||this.currentTreeNode.managementSource!=2){ //团队代理人managementSource为2  渠道为1  后线为空
+        this.$message.info("请选择第六级机构");
+        return;
+      }
       this.dialogPassword = true;
       this.formData = {
         roleId: "20",

+ 9 - 2
src/views/PeopleManage/Player/PlayerManage.vue

@@ -73,7 +73,7 @@
                     :options="ztreeNodes"
                     v-model="formData.deptId"
                     clearable
-                    :disabled="dialogTitle == '编辑渠道信息'"
+                    disabled
                     :show-all-levels="false"
                     :props="{
                       value: 'id',
@@ -198,7 +198,10 @@ import KtButton from "@/views/Core/KtButton"; // 按钮权限组件
 import tree from "@/components/ztree.vue"; // 机构树组件
 import templateTable from "../../../components/TemplateTable/index.vue";
 import peopleImage from "@/components/PeopleImage/index.vue";
-import mixin from '../mixin' 
+import mixa from '../mixin' 
+const mixin = new mixa({
+  treeTypeNum:1
+})
 export default {
   components: {
     KtButton,
@@ -428,6 +431,10 @@ export default {
         this.$message.info("请选择所属公司或部门");
         return;
       }
+      if(this.currentTreeNode.comlevel!=null||this.currentTreeNode.managementSource!=1){ //团队代理人managementSource为2  渠道为1  后线为空
+        this.$message.info("请选择第六级机构");
+        return;
+      }
       let statusArr = this.user_statusoptions.filter(
         (item) => item.label == "正常"
       );

+ 11 - 3
src/views/PeopleManage/Player/PlayerManageteam.vue

@@ -73,7 +73,7 @@
                     :options="ztreeNodes"
                     v-model="formData.deptId"
                     clearable
-                    :disabled="dialogTitle == '编辑渠道信息'"
+                    disabled
                     :show-all-levels="false"
                     :props="{
                       value: 'id',
@@ -398,7 +398,10 @@ import KtButton from "@/views/Core/KtButton"; // 按钮权限组件
 import tree from "@/components/ztree.vue"; // 机构树组件
 import templateTable from "../../../components/TemplateTable/index.vue";
 import peopleImage from "@/components/PeopleImage/index.vue";
-import mixin from '../mixin' 
+import mixa from '../mixin' 
+const mixin = new mixa({
+  treeTypeNum:1 //树分类过滤参数
+})
 export default {
   components: {
     KtButton,
@@ -549,7 +552,8 @@ export default {
     onZTreeClick: function (evt, treeId, treeNode) {
         // 点击事件
         this.currentTreeNode = evt;
-        this.pageData.deptId = this.currentTreeNode.id;
+        // this.pageData.deptId = this.currentTreeNode.id;
+        this.deptId = this.currentTreeNode.id
         this.pageData.pageNum =1;
         this.findPage();
         this.formData.deptId = [];
@@ -651,6 +655,10 @@ export default {
         this.$message.info("请选择所属公司或部门");
         return;
       }
+      if(this.currentTreeNode.comlevel!=null||this.currentTreeNode.managementSource!=1){ //团队代理人managementSource为2  渠道为1  后线为空
+        this.$message.info("请选择第六级机构");
+        return;
+      }
       let statusArr = this.user_statusoptions.filter(
         (item) => item.label == "正常"
       );

+ 5 - 101
src/views/PeopleManage/Staff/StaffExamine.vue

@@ -318,7 +318,10 @@
 import tree from "@/components/ztree.vue"; // 机构树组件
 import KtCommonTable from "@/views/Core/KtCommonTable.vue"; //表格组件
 import peopleImage from '@/components/PeopleImage/index.vue' //影像组件
-
+import mixa from '../mixin' 
+const mixin = new mixa({
+  treeTypeNum:null
+})
 
 export default {
   components: {
@@ -326,68 +329,11 @@ export default {
     KtCommonTable,
     peopleImage
   },
+  mixins: [mixin], 
   data() {
     return {
       activeName: '1',
       //56个民族
-      nationalList: [
-        "汉族",
-        "壮族",
-        "满族",
-        "回族",
-        "苗族",
-        "维吾尔族",
-        "土家族",
-        "彝族",
-        "蒙古族",
-        "藏族",
-        "布依族",
-        "侗族",
-        "瑶族",
-        "朝鲜族",
-        "白族",
-        "哈尼族",
-        "哈萨克族",
-        "黎族",
-        "傣族",
-        "畲族",
-        "傈僳族",
-        "仡佬族",
-        "东乡族",
-        "高山族",
-        "拉祜族",
-        "水族",
-        "佤族",
-        "纳西族",
-        "羌族",
-        "土族",
-        "仫佬族",
-        "锡伯族",
-        "柯尔克孜族",
-        "达斡尔族",
-        "景颇族",
-        "毛南族",
-        "撒拉族",
-        "布朗族",
-        "塔吉克族",
-        "阿昌族",
-        "普米族",
-        "鄂温克族",
-        "怒族",
-        "京族",
-        "基诺族",
-        "德昂族",
-        "保安族",
-        "俄罗斯族",
-        "裕固族",
-        "乌兹别克族",
-        "门巴族",
-        "鄂伦春族",
-        "独龙族",
-        "塔塔尔族",
-        "赫哲族",
-        "珞巴族",
-      ],
       //影像资料
       dataForm: {
         SFZ_01: "",
@@ -413,27 +359,6 @@ export default {
       filterObject: {},
       peopleid: "",
       peopledeptid: "",
-      /**Split 开始 */
-      leftSplitWidth: 20,
-      rightSplitWidth: 80,
-      ztreeObj: null,
-      ztreeSetting: {
-        check: {
-          enable: false,
-        },
-        data: {
-          simpleData: {
-            enable: true,
-            pIdKey: "parentId",
-          },
-        },
-        view: {
-          showIcon: false,
-        },
-      },
-      ztreeNodes: [],
-      currentTreeNode: null,
-      //----ztreeLeft end---------
       recommenderList: [],
       teamleadername: "",
       teamleaderid: "",
@@ -478,29 +403,13 @@ export default {
       dialogVisible: false, // 新增编辑界面是否显示
       departmentList: [], // 选中公司的所有部门的集合
       deptInfo: {}, //选中机构的基本信息
-      sexoptions: JSON.parse(localStorage.getItem('sexOptions')),
-      user_statusoptions: JSON.parse(localStorage.getItem('user_statusoptions')),
-      roles: JSON.parse(localStorage.getItem('find_all')),
       option: [], //机构列表
-      postOption:[]
     };
   },
   created() {
-    // this.$api.role.findAll().then((res) => {
-    //   this.roles = res.data
-    // })
-    this.$api.role.postViewAll().then((res) => {
-      res.data.forEach(ele=>{
-        ele.postId=ele.postId+''
-      })
-      this.postOption = res.data
-    })
-    this.findLeftTreeData(); // 获取机构树的数据
 
   },
   mounted() {
-    //用像素初始化左边的split的宽度
-    this.changeTreeWidth(240); // 初始化树的宽度
   },
   methods: {
     // 下一步
@@ -525,11 +434,6 @@ export default {
       );
       this.rightSplitWidth = 100 - this.leftSplitWidth;
     },
-    findLeftTreeData: function () {
-      this.$api.dept.findDeptTree().then((res) => {
-        this.ztreeNodes = res.data;
-      });
-    },
     onZTreeClick: function (evt, treeId, treeNode) {
       // 点击事件
       this.currentTreeNode = evt;

+ 29 - 120
src/views/PeopleManage/Staff/StaffManage.vue

@@ -127,7 +127,7 @@
               <el-col :span="8">
                 <el-form-item label="机构名称" prop="deptId">
                   <el-cascader style="width:200px" :options="ztreeNodes" v-model="formData.deptId" clearable
-                  :disabled="dialogTitle == '编辑后线人员'"
+                    disabled
                     :show-all-levels="false" :props="{
                       value: 'id',
                       label: 'name',
@@ -368,7 +368,10 @@ import tree from "@/components/ztree.vue"; // 机构树组件
 import KtCommonTable from "@/views/Core/KtCommonTable.vue"; //表格组件
 import { validateSfz } from "../../../utils/validate.js";
 import peopleImage from '@/components/PeopleImage/index.vue' //影像组件
-
+import mixa from '../mixin' 
+const mixin = new mixa({
+  treeTypeNum:null
+})
 export default {
   components: {
     KtButton,
@@ -376,69 +379,12 @@ export default {
     KtCommonTable,
     peopleImage
   },
+  mixins: [mixin], 
   data() {
     return {
       activeName: '1',
       isShow:true,
       //56个民族
-      nationalList: [
-        "汉族",
-        "壮族",
-        "满族",
-        "回族",
-        "苗族",
-        "维吾尔族",
-        "土家族",
-        "彝族",
-        "蒙古族",
-        "藏族",
-        "布依族",
-        "侗族",
-        "瑶族",
-        "朝鲜族",
-        "白族",
-        "哈尼族",
-        "哈萨克族",
-        "黎族",
-        "傣族",
-        "畲族",
-        "傈僳族",
-        "仡佬族",
-        "东乡族",
-        "高山族",
-        "拉祜族",
-        "水族",
-        "佤族",
-        "纳西族",
-        "羌族",
-        "土族",
-        "仫佬族",
-        "锡伯族",
-        "柯尔克孜族",
-        "达斡尔族",
-        "景颇族",
-        "毛南族",
-        "撒拉族",
-        "布朗族",
-        "塔吉克族",
-        "阿昌族",
-        "普米族",
-        "鄂温克族",
-        "怒族",
-        "京族",
-        "基诺族",
-        "德昂族",
-        "保安族",
-        "俄罗斯族",
-        "裕固族",
-        "乌兹别克族",
-        "门巴族",
-        "鄂伦春族",
-        "独龙族",
-        "塔塔尔族",
-        "赫哲族",
-        "珞巴族",
-      ],
       pageData:{
         pageNum: 1,
         pageSize: 20,
@@ -485,27 +431,6 @@ export default {
       filterObject: {},
       peopleid: "",
       peopledeptid: "",
-      /**Split 开始 */
-      leftSplitWidth: 20,
-      rightSplitWidth: 80,
-      ztreeObj: null,
-      ztreeSetting: {
-        check: {
-          enable: false,
-        },
-        data: {
-          simpleData: {
-            enable: true,
-            pIdKey: "parentId",
-          },
-        },
-        view: {
-          showIcon: false,
-        },
-      },
-      ztreeNodes: [],
-      currentTreeNode: null,
-      //----ztreeLeft end---------
       recommenderList: [],
       teamleadername: "",
       teamleaderid: "",
@@ -551,9 +476,6 @@ export default {
       dialogVisible: false, // 新增编辑界面是否显示
       departmentList: [], // 选中公司的所有部门的集合
       deptInfo: {}, //选中机构的基本信息
-      sexoptions: JSON.parse(localStorage.getItem('sexOptions')) ,
-      user_statusoptions: JSON.parse(localStorage.getItem('user_statusoptions')) ,
-      roles: [],
       option: [], //机构列表
       //影像资料
       dataForm: {
@@ -567,25 +489,16 @@ export default {
       //影像上传列表
       imagesIdList:[],
       dialogPassword:false, //密码是否显示明文
-      postOption:[]
     };
   },
   created() {
-    this.$api.role.postViewAll().then((res) => {
-      res.data.forEach(ele=>{
-        ele.postId=ele.postId+''
-      })
-      this.postOption = res.data
-    })
     //获取所有下拉框数据(字典)
     // this.getDictItems("sex");
     // this.getDictItems("user_status");
-    this.findLeftTreeData(); // 获取机构树的数据
     this.getFindRoleByUserId();
   },
   mounted() {
     //用像素初始化左边的split的宽度
-    this.changeTreeWidth(240); // 初始化树的宽度
   },
   watch: {
     containsSubDeptChecked() {
@@ -643,18 +556,6 @@ export default {
       // return row.sex+'1'
 // console.log(val,1)
     },
-    changeTreeWidth(widthVal) {
-      // 初始化树的宽度
-      this.leftSplitWidth = Math.ceil(
-        (widthVal / this.$refs.elMain.$el.clientWidth) * 100
-      );
-      this.rightSplitWidth = 100 - this.leftSplitWidth;
-    },
-    findLeftTreeData(){
-      this.$api.dept.findDeptTree().then((res) => {
-        this.ztreeNodes = res.data;
-      });
-    },
     onZTreeClick: function (evt, treeId, treeNode) {
       // 点击事件
       this.currentTreeNode = evt;
@@ -709,12 +610,17 @@ export default {
         name:this.pageData.name,
         userId:this.pageData.userId,
         status:this.pageData.status,
+        agentFlag:0,
         roleId:'22',
       }
+      // .findUserList({
+      //     ...this.pageData,
+      //     dto: { ...data, roleId: "20", deptId: this.deptId,agentFlag: "2", },
+      //   })
       this.$api.user
-        .findPage({dto,pageNum:this.pageData.pageNum,pageSize:this.pageData.pageSize})
+        .findUserList({dto,pageNum:this.pageData.pageNum,pageSize:this.pageData.pageSize})
         .then((res) => {
-          res.data.content.forEach(val=>{
+          res.data.records.forEach(val=>{
             if(val.sex&& val.sex!==''&& val.sex!==null){
               val.sex=this.sexoptions.find(ele=>ele.value==val.sex).label
             }
@@ -723,7 +629,13 @@ export default {
             }
             val.roleId=val.roleName
           })
-          this.pageResult = res.data;
+          this.pageResult = {
+            content: res.data.records,
+            pageNum: res.data.current,
+            pageSize: res.data.size,
+            totalPages: res.data.pages,
+            totalSize: res.data.total,
+          };
         })
        
     },
@@ -781,18 +693,6 @@ export default {
       else {
         this.$message.error(res.msg);
       }
-      // this.$api.dept.findDeptTree().then((res) => {
-      //   this.option = res.data;
-      // });
-      // this.$api.user.getUserDatail(params.row.userId).then((result) => {
-      //   if(result.code==200){
-      //       result.data.status+=''
-      //     this.formData=result.data
-      //     this.formData.password=''
-      //   }
-      // })
-      // this.dialogTitle = "编辑后线人员";
-      // this.dialogVisible = true;
     },
     // 删除单个人员
     handleTableDeleteFlag(data) {
@@ -812,10 +712,19 @@ export default {
     },
     //添加人员
     handleAddButton() {
+      // console.log(this.currentTreeNode.managementSource)
+      // if (this.currentTreeNode == null) {
+      //   this.$message.info("请选择所属公司或部门");
+      //   return;
+      // }
       if (this.currentTreeNode == null) {
         this.$message.info("请选择所属公司或部门");
         return;
       }
+      if(this.currentTreeNode.comlevel!=null||this.currentTreeNode.managementSource!=null){ //团队代理人managementSource为2  渠道为1  后线为空
+        this.$message.info("请选择第六级机构");
+        return;
+      }
       this.formData = {
         roleId: '22',
         status: '',

+ 4 - 2
src/views/PeopleManage/TeamLeader/TeamLeaderExamine.vue

@@ -342,8 +342,10 @@
 <script>
 import tree from "@/components/ztree.vue"; // 机构树组件
 import KtCommonTable from "@/views/Core/KtCommonTable.vue"; //表格组件
-import mixin from '../mixin' 
-
+import mixa from '../mixin' 
+const mixin = new mixa({
+  treeTypeNum:2 //树分类过滤参数
+})
 export default {
   components: {
     tree,

+ 10 - 3
src/views/PeopleManage/TeamLeader/TeamLeaderManage.vue

@@ -145,7 +145,7 @@
                     :options="ztreeNodes"
                     v-model="formData.deptId"
                     clearable
-                    :disabled="dialogTitle == '编辑团队长'"
+                    disabled
                     :show-all-levels="false"
                     :props="{
                       value: 'id',
@@ -453,8 +453,10 @@ import KtButton from "@/views/Core/KtButton"; // 按钮权限组件
 import tree from "@/components/ztree.vue"; // 机构树组件
 import KtCommonTable from "@/views/Core/KtCommonTable.vue"; //表格组件
 import { validateSfz } from "../../../utils/validate.js";
-import mixin from '../mixin' 
-
+import mixa from '../mixin' 
+const mixin = new mixa({
+  treeTypeNum:2 //树分类过滤参数
+})
 export default {
   components: {
     KtButton,
@@ -746,6 +748,11 @@ export default {
         this.$message.info("请选择所属公司或部门");
         return;
       }
+      if(this.currentTreeNode.comlevel!=null||this.currentTreeNode.managementSource!=2){ //团队代理人managementSource为2  渠道为1  后线为空
+        this.$message.info("请选择第六级机构");
+        return;
+      }
+      
       // let deptId=''
       // if(this.formData.deptId){
       //    deptId = this.formData.deptId.at(-1);

+ 167 - 161
src/views/PeopleManage/mixin.js

@@ -1,147 +1,151 @@
-export default { // 导出混入对象
+export default (params) => { // 导出混入对象
+  const { //树分类过滤参数
+    treeTypeNum=2
+  } = params;
+  return {
     data() {
       return {
         nationalList: [
-            "汉族",
-            "壮族",
-            "满族",
-            "回族",
-            "苗族",
-            "维吾尔族",
-            "土家族",
-            "彝族",
-            "蒙古族",
-            "藏族",
-            "布依族",
-            "侗族",
-            "瑶族",
-            "朝鲜族",
-            "白族",
-            "哈尼族",
-            "哈萨克族",
-            "黎族",
-            "傣族",
-            "畲族",
-            "傈僳族",
-            "仡佬族",
-            "东乡族",
-            "高山族",
-            "拉祜族",
-            "水族",
-            "佤族",
-            "纳西族",
-            "羌族",
-            "土族",
-            "仫佬族",
-            "锡伯族",
-            "柯尔克孜族",
-            "达斡尔族",
-            "景颇族",
-            "毛南族",
-            "撒拉族",
-            "布朗族",
-            "塔吉克族",
-            "阿昌族",
-            "普米族",
-            "鄂温克族",
-            "怒族",
-            "京族",
-            "基诺族",
-            "德昂族",
-            "保安族",
-            "俄罗斯族",
-            "裕固族",
-            "乌兹别克族",
-            "门巴族",
-            "鄂伦春族",
-            "独龙族",
-            "塔塔尔族",
-            "赫哲族",
-            "珞巴族",
-          ],
+          "汉族",
+          "壮族",
+          "满族",
+          "回族",
+          "苗族",
+          "维吾尔族",
+          "土家族",
+          "彝族",
+          "蒙古族",
+          "藏族",
+          "布依族",
+          "侗族",
+          "瑶族",
+          "朝鲜族",
+          "白族",
+          "哈尼族",
+          "哈萨克族",
+          "黎族",
+          "傣族",
+          "畲族",
+          "傈僳族",
+          "仡佬族",
+          "东乡族",
+          "高山族",
+          "拉祜族",
+          "水族",
+          "佤族",
+          "纳西族",
+          "羌族",
+          "土族",
+          "仫佬族",
+          "锡伯族",
+          "柯尔克孜族",
+          "达斡尔族",
+          "景颇族",
+          "毛南族",
+          "撒拉族",
+          "布朗族",
+          "塔吉克族",
+          "阿昌族",
+          "普米族",
+          "鄂温克族",
+          "怒族",
+          "京族",
+          "基诺族",
+          "德昂族",
+          "保安族",
+          "俄罗斯族",
+          "裕固族",
+          "乌兹别克族",
+          "门巴族",
+          "鄂伦春族",
+          "独龙族",
+          "塔塔尔族",
+          "赫哲族",
+          "珞巴族",
+        ],
         sexoptions: JSON.parse(localStorage.getItem("sexOptions")),
-        postOption:[],
-        bloodOption:[
-            {
-                label:'A型',
-                value:'A型'
-            }, {
-                label:'B型',
-                value:'B型'
-            }, {
-                label:'O型',
-                value:'O型'
-            }, {
-                label:'AB型',
-                value:'AB型'
-            }, 
+        postOption: [],
+        bloodOption: [
+          {
+            label: 'A型',
+            value: 'A型'
+          }, {
+            label: 'B型',
+            value: 'B型'
+          }, {
+            label: 'O型',
+            value: 'O型'
+          }, {
+            label: 'AB型',
+            value: 'AB型'
+          },
+        ],
+        educationOption: [
+          {
+            label: '小学',
+            value: '小学'
+          }, {
+            label: '初中',
+            value: '初中'
+          }, {
+            label: '高中',
+            value: '高中'
+          }, {
+            label: '专科',
+            value: '专科'
+          }, {
+            label: '本科',
+            value: '本科'
+          }, {
+            label: '硕士',
+            value: '硕士'
+          }, {
+            label: '博士',
+            value: '博士'
+          },
         ],
-        educationOption:[
+        healthOption: [
           {
-              label:'小学',
-              value:'小学'
-          }, {
-              label:'初中',
-              value:'初中'
-          }, {
-              label:'高中',
-              value:'高中'
-          }, {
-              label:'专科',
-              value:'专科'
-          },  {
-            label:'本科',
-            value:'本科'
-          }, {
-              label:'硕士',
-              value:'硕士'
-          }, {
-            label:'博士',
-            value:'博士'
-        }, 
-      ],
-      healthOption:[
-        {
-            label:'健康',
-            value:'健康'
-        }, {
-            label:'亚健康',
-            value:'亚健康'
-        }, {
-            label:'疾病',
-            value:'疾病'
-        }, 
-      ],
-      politicsStatusOption:[
-        {
-            label:'群众',
-            value:'群众'
-        }, {
-            label:'共青团员',
-            value:'共青团员'
-        }, {
-            label:'中共党员',
-            value:'中共党员'
-        }, 
-      ],
-      maritalStatusOption:[
-        {
-            label:'未婚',
-            value:'未婚'
-        }, {
-            label:'已婚',
-            value:'已婚'
-        }, {
-            label:'离异',
-            value:'离异'
-        }, {
-          label:'再婚',
-          value:'再婚'
-        }, 
-      ],
+            label: '健康',
+            value: '健康'
+          }, {
+            label: '亚健康',
+            value: '亚健康'
+          }, {
+            label: '疾病',
+            value: '疾病'
+          },
+        ],
+        politicsStatusOption: [
+          {
+            label: '群众',
+            value: '群众'
+          }, {
+            label: '共青团员',
+            value: '共青团员'
+          }, {
+            label: '中共党员',
+            value: '中共党员'
+          },
+        ],
+        maritalStatusOption: [
+          {
+            label: '未婚',
+            value: '未婚'
+          }, {
+            label: '已婚',
+            value: '已婚'
+          }, {
+            label: '离异',
+            value: '离异'
+          }, {
+            label: '再婚',
+            value: '再婚'
+          },
+        ],
         user_statusoptions: JSON.parse(
-            localStorage.getItem("user_statusoptions")
-          ),
+          localStorage.getItem("user_statusoptions")
+        ),
         roles: JSON.parse(localStorage.getItem("find_all")),
         /**Split 开始 */
         ztreeNodes: [],
@@ -164,24 +168,24 @@ export default { // 导出混入对象
         },
         currentTreeNode: null,
         //----ztreeLeft end---------
-        }
-      },
-      created() {
-        this.$api.role.postViewAll().then((res) => {
-          res.data.forEach(ele=>{
-            ele.postId=ele.postId+''
-          })
-          this.postOption = res.data
+      }
+    },
+    created() {
+      this.$api.role.postViewAll().then((res) => {
+        res.data.forEach(ele => {
+          ele.postId = ele.postId + ''
         })
-    this.findLeftTreeData(); // 获取机构树的数据
+        this.postOption = res.data
+      })
+      this.findLeftTreeData(); // 获取机构树的数据
 
-      },
-      mounted() {
-        //用像素初始化左边的split的宽度
-        this.changeTreeWidth(240); // 初始化树的宽度
-      },
-   methods:{
-    changeTreeWidth(widthVal) {
+    },
+    mounted() {
+      //用像素初始化左边的split的宽度
+      this.changeTreeWidth(240); // 初始化树的宽度
+    },
+    methods: {
+      changeTreeWidth(widthVal) {
         // 初始化树的宽度
         this.leftSplitWidth = Math.ceil(
           (widthVal / this.$refs.elMain.$el.clientWidth) * 100
@@ -189,18 +193,19 @@ export default { // 导出混入对象
         this.rightSplitWidth = 100 - this.leftSplitWidth;
       },
       findLeftTreeData: function () {
-        this.$api.dept.findDeptTree().then((res) => {
-          this.treeDataRecursion(res.data, 2);
+        this.$api.dept.findTree().then((res) => {
+          // console.log(treeTypeNum);
+          this.treeDataRecursion(res.data, treeTypeNum);
           this.ztreeNodes = res.data;
         });
       },
-       //树过滤五级机构递归
-       treeDataRecursion(data, num, one) {
+      //树过滤五级机构递归
+      treeDataRecursion(data, num, one) {
         data = data || this.ztreeNodes;
         one = one || 0;
         one++;
         for (let i = 0; i < data.length; i++) {
-          if (data[i].comlevel == 5 && data[i].managementSource != num) {
+          if (data[i].comlevel == 5 && (data[i].managementSource != num)) {
             data.splice(i, 1);
             i = i - 1;
           } else {
@@ -208,6 +213,7 @@ export default { // 导出混入对象
           }
         }
       },
-     
-   }
-  }
+
+    }
+  }
+}

+ 462 - 314
src/views/Sys/Inscommanytemplate.vue

@@ -1,342 +1,490 @@
 <template>
-    <div class="page">
-        <el-row>
-            <el-col :span="6" style="padding: 20px;">
-                <el-button type="danger" size="small" @click="add()">新增</el-button>
-            </el-col>
-        </el-row>
-        <el-table size="small" :data="pageResult" height="690" border style="width: 100%" v-loading="loading"
-            highlight-current-row stripe
-            :header-cell-style="{ background: '#F2F7FC', fontWeight: '700', color: '#606266' }">
-            <el-table-column prop="id" label="ID" width="200" align="center"></el-table-column>
-            <el-table-column prop="insCompanyId" label="保险公司ID" width="100" align="center"></el-table-column>
-            <el-table-column prop="insCompanyName" label="保险公司简称" width="100" align="center"></el-table-column>
-            <el-table-column prop="fields" label="配置参数" align="center" :formatter="configureformatter"></el-table-column>
-            <el-table-column label="操作" align="center" width="200" fixed="right">
-                <template slot-scope="scope">
-                    <el-button size="mini" type="text" @click="CloseEdit(scope.$index, scope.row)">编辑</el-button>
-                    <el-button size="mini" type="text" style="color: #f78989;"
-                        @click="empowerBtn(scope.$index, scope.row)">删除</el-button>
-                </template>
-            </el-table-column>
-        </el-table>
+  <div class="page">
+    <el-form
+      :inline="true"
+      :model="formInline"
+      class="demo-form-inline"
+      size="small"
+      label-width="130px"
+      style="text-align: center"
+    >
+      <el-row style="padding: 20px">
+        <el-col :span="6">
+          <el-form-item label="请求类型:">
+            <el-select class="widths1" clearable v-model="formInline.apiType">
+              <el-option label="API" :value="1"></el-option>
+              <el-option label="python" :value="2"></el-option>
+            </el-select>
+          </el-form-item>
+        </el-col>
+        <el-col :span="6">
+          <el-form-item label="保险公司:">
+            <el-select
+              class="widths1"
+              filterable
+              v-model="formInline.insCompanyId"
+              @change="companyChange"
+              clearable
+            >
+              <el-option
+                v-for="(item, index) in companyselect"
+                :key="index.id"
+                :label="item.namesimple"
+                :value="item.id"
+              ></el-option>
+            </el-select>
+          </el-form-item>
+        </el-col>
+        <el-col :span="6">
+          <el-button type="primary" size="small" @click="querySearch"
+            >查询</el-button
+          >
+          <el-button type="danger" size="small" @click="add()">新增</el-button>
+        </el-col>
+      </el-row>
+    </el-form>
 
-        <!-- 分页功能 -->
-        <div class="block">
-            <el-pagination @size-change="applyhandleSizeChange" @current-change="applyhandleCurrentChange"
-                :current-page="pageNum" :page-size="pageSize" :page-sizes="[10, 20, 50, 100]"
-                layout="total, sizes, prev, pager, next, jumper" :total="totalSize"></el-pagination>
-        </div>
-        <el-dialog :title="dilogtitle" :visible.sync="dialogVisible" width="1000px">
-            <el-form class="demo-ruleForm wrap-scrollbar scroll-style" :model="attributionform" ref="attributionform"
-                label-width="130px" size="small">
-                <el-row>
-                    <el-col :span="12">
-                        <el-form-item label="请求类型:">
-                            <el-select class="widths1" v-model="attributionform.apiType" @change="apiChange">
-                                <el-option label="API" :value="1"></el-option>
-                                <el-option label="python" :value="2"></el-option>
-                            </el-select>
-                        </el-form-item>
-                    </el-col>
-                    <el-col :span="12">
-                        <el-form-item label="保险公司:">
-                            <el-select class="widths1" filterable  v-model="attributionform.insCompanyId" @change="companyChange">
-                                <el-option v-for="(item, index) in companyselect" :key="index.id" :label="item.namesimple"
-                                    :value="item.id"></el-option>
-                            </el-select>
-                        </el-form-item>
-                    </el-col>
-                    <div v-if="attributionform.apiType==2">
-                        <el-col :span="24">
-                            <div>
-                                <h4>URL配置</h4>
-                            </div>
-                        </el-col>
-                        <el-col :span="12" v-for="(apiitem, apiindex) in attributionform.api" :key="apiindex">
-                            <el-form-item :label="apiitem.apiName + ':'">
-                                <el-input v-model="apiitem.url"  placeholder="请输入指定链接"  ></el-input>
-                            </el-form-item>
-                        </el-col>
-                    </div>
-                    <el-col :span="24">
-                        <div>
-                            <h4>配置参数</h4>
-                        </div>
-                    </el-col>
-                    <el-col v-for="(configureitem, configureindex) in attributionform.fields" :key="configureindex">
-                        <el-col :span="10">
-                            <el-form-item label="字段名:">
-                                <el-input v-model="configureitem.field" class="widths1" placeholder="请输入字段名"></el-input>
-                            </el-form-item>
-                            <el-form-item label="标签:">
-                                <el-input v-model="configureitem.label" class="widths1" placeholder="标签名"></el-input>
-                            </el-form-item>
-                        </el-col>
-                        <el-col :span="10">
-                            <el-form-item label="表单类型:">
-                                <el-radio-group v-model="configureitem.type">
-                                    <el-radio label="text"></el-radio>
-                                    <el-radio label="select"></el-radio>
-                                </el-radio-group>
-
-                            </el-form-item>
-                            <el-form-item label="是否可修改:">
-                                <el-switch v-model="configureitem.isEdit"
-                                    @change="(event) => isEditchange(event, configureindex)" class="widths1"></el-switch>
-                            </el-form-item>
-                        </el-col>
-                        <el-col :span="4" >
-                            <el-button @click.prevent="removeDomain(configureitem)" size="small">删除</el-button>
-                        </el-col>
-                    </el-col>
-                </el-row>
-            </el-form>
-            <span slot="footer" class="dialog-footer">
-                <el-button size="small" @click="configuration" >新增配置</el-button>
-                <el-button size="small" @click="dialogVisible = false">取 消</el-button>
-                <el-button size="small" type="primary" @click="submitForm('attributionform')">提 交</el-button>
-            </span>
-        </el-dialog>
+    <el-table
+      size="small"
+      :data="pageResult"
+      height="690"
+      border
+      style="width: 100%"
+      v-loading="loading"
+      highlight-current-row
+      stripe
+      :header-cell-style="{
+        background: '#F2F7FC',
+        fontWeight: '700',
+        color: '#606266',
+      }"
+    >
+      <el-table-column
+        prop="id"
+        label="ID"
+        width="200"
+        align="center"
+      ></el-table-column>
+      <el-table-column
+        prop="insCompanyId"
+        label="保险公司ID"
+        width="100"
+        align="center"
+      ></el-table-column>
+      <el-table-column
+        prop="insCompanyName"
+        label="保险公司简称"
+        width="100"
+        align="center"
+      ></el-table-column>
+      <el-table-column
+        prop="fields"
+        label="配置参数"
+        align="center"
+        :formatter="configureformatter"
+      ></el-table-column>
+      <el-table-column label="操作" align="center" width="200" fixed="right">
+        <template slot-scope="scope">
+          <el-button
+            size="mini"
+            type="text"
+            @click="CloseEdit(scope.$index, scope.row)"
+            >编辑</el-button
+          >
+          <el-button
+            size="mini"
+            type="text"
+            style="color: #f78989"
+            @click="empowerBtn(scope.$index, scope.row)"
+            >删除</el-button
+          >
+        </template>
+      </el-table-column>
+    </el-table>
 
+    <!-- 分页功能 -->
+    <div class="block">
+      <el-pagination
+        @size-change="applyhandleSizeChange"
+        @current-change="applyhandleCurrentChange"
+        :current-page="pageNum"
+        :page-size="pageSize"
+        :page-sizes="[10, 20, 50, 100]"
+        layout="total, sizes, prev, pager, next, jumper"
+        :total="totalSize"
+      ></el-pagination>
     </div>
+    <el-dialog :title="dilogtitle" :visible.sync="dialogVisible" width="1000px">
+      <el-form
+        class="demo-ruleForm wrap-scrollbar scroll-style"
+        :model="attributionform"
+        ref="attributionform"
+        label-width="130px"
+        size="small"
+      >
+        <el-row>
+          <el-col :span="12">
+            <el-form-item label="请求类型:">
+              <el-select
+                class="widths1"
+                v-model="attributionform.apiType"
+                @change="apiChange"
+              >
+                <el-option label="API" :value="1"></el-option>
+                <el-option label="python" :value="2"></el-option>
+              </el-select>
+            </el-form-item>
+          </el-col>
+          <el-col :span="12">
+            <el-form-item label="保险公司:">
+              <el-select
+                class="widths1"
+                filterable
+                v-model="attributionform.insCompanyId"
+                @change="companyChange"
+              >
+                <el-option
+                  v-for="(item, index) in companyselect"
+                  :key="index.id"
+                  :label="item.namesimple"
+                  :value="item.id"
+                ></el-option>
+              </el-select>
+            </el-form-item>
+          </el-col>
+          <div v-if="attributionform.apiType == 2">
+            <el-col :span="24">
+              <div>
+                <h4>URL配置</h4>
+              </div>
+            </el-col>
+            <el-col
+              :span="12"
+              v-for="(apiitem, apiindex) in attributionform.api"
+              :key="apiindex"
+            >
+              <el-form-item :label="apiitem.apiName + ':'">
+                <el-input
+                  v-model="apiitem.url"
+                  placeholder="请输入指定链接"
+                ></el-input>
+              </el-form-item>
+            </el-col>
+          </div>
+          <el-col :span="24">
+            <div>
+              <h4>配置参数</h4>
+            </div>
+          </el-col>
+          <el-col
+            v-for="(configureitem, configureindex) in attributionform.fields"
+            :key="configureindex"
+          >
+            <el-col :span="10">
+              <el-form-item label="字段名:">
+                <el-input
+                  v-model="configureitem.field"
+                  class="widths1"
+                  placeholder="请输入字段名"
+                ></el-input>
+              </el-form-item>
+              <el-form-item label="标签:">
+                <el-input
+                  v-model="configureitem.label"
+                  class="widths1"
+                  placeholder="标签名"
+                ></el-input>
+              </el-form-item>
+            </el-col>
+            <el-col :span="10">
+              <el-form-item label="表单类型:">
+                <el-radio-group v-model="configureitem.type">
+                  <el-radio label="text"></el-radio>
+                  <el-radio label="select"></el-radio>
+                </el-radio-group>
+              </el-form-item>
+              <el-form-item label="是否可修改:">
+                <el-switch
+                  v-model="configureitem.isEdit"
+                  @change="(event) => isEditchange(event, configureindex)"
+                  class="widths1"
+                ></el-switch>
+              </el-form-item>
+            </el-col>
+            <el-col :span="4">
+              <el-button
+                @click.prevent="removeDomain(configureitem)"
+                size="small"
+                >删除</el-button
+              >
+            </el-col>
+          </el-col>
+        </el-row>
+      </el-form>
+      <span slot="footer" class="dialog-footer">
+        <el-button size="small" @click="configuration">新增配置</el-button>
+        <el-button size="small" @click="dialogVisible = false">取 消</el-button>
+        <el-button
+          size="small"
+          type="primary"
+          @click="submitForm('attributionform')"
+          >提 交</el-button
+        >
+      </span>
+    </el-dialog>
+  </div>
 </template>
 <script>
 export default {
-    data() {
-        return {
-            dilogtitle:"新增",
-            filterText: "",
-            treedata: [], //树形数据
-            loading: false, //加载效果
-            dialogVisible: false, //新增弹框
-            pageNum: 1, //页数
-            pageSize: 20, //条数
-            totalSize: null, //总数
-            pageResult: [], //表格数据
+  data() {
+    return {
+      dilogtitle: "新增",
+      filterText: "",
+      treedata: [], //树形数据
+      loading: false, //加载效果
+      dialogVisible: false, //新增弹框
+      pageNum: 1, //页数
+      pageSize: 20, //条数
+      totalSize: null, //总数
+      pageResult: [], //表格数据
+      formInline: {
+        insCompanyId: "", //保险公司
+        apiType: "", //请求类型
+      }, //查询条件
 
-            attributionform: {
-                fields: [
-                    {
-                        field: "",
-                        isEdit: false,
-                        label: "",
-                        type: "",
-                        value: "",
-                    },
-                ],
-                apiType: "", //接口类型
-                insCompanyId: "", //保险公司id
-            },
-            attributionform1:{},
-            pythonApi: [
-                {
-                    apiName: "归属配置",
-                    apiType: 1,
-                    url: "",
-                },
-                {
-                    apiName: "报价",
-                    apiType: 2,
-                    url: "",
-                }, {
-                    apiName: "影像上传",
-                    apiType: 3,
-                    url: "",
-                }, {
-                    apiName: "核保",
-                    apiType: 4,
-                    url: "",
-                }, {
-                    apiName: "缴费查询",
-                    apiType: 5,
-                    url: "",
-                }, {
-                    apiName: "保单下载",
-                    apiType: 6,
-                    url: "",
-                }, {
-                    apiName: "非车险查询",
-                    apiType: 7,
-                    url: "",
-                }, {
-                    apiName: "人工核保状态刷新",
-                    apiType: 8,
-                    url: "",
-                }
-            ],
-            pageRequest: {
-                pageNum: 1,
-                pageSize: 20,
-                columnFilters: {
-                    parentId: {
-                        name: "parentId",
-                        value: "0",
-                    },
-                },
-            },
-            companyselect: [],
-            configurelist: [],
-            id: "",
-        };
-    },
-    created() {
-        this.$api.insCompany.gainTopList("1").then((res) => {
-            this.companyselect = res.data;
-        });
-        this.findpage();
-    },
-    watch: {
-        filterText(val) {
-            this.$refs.tree.filter(val);
+      attributionform: {
+        fields: [
+          {
+            field: "",
+            isEdit: false,
+            label: "",
+            type: "",
+            value: "",
+          },
+        ],
+        apiType: "", //接口类型
+        insCompanyId: "", //保险公司id
+      },
+      attributionform1: {},
+      pythonApi: [
+        {
+          apiName: "归属配置",
+          apiType: 1,
+          url: "",
         },
-    },
-
-    methods: {
-        add() {
-            let params = {
-                fields: [
-                    {
-                        field: "",
-                        isEdit: false,
-                        label: "",
-                        type: "",
-                        value: "",
-                    },
-                ],
-                insCompanyId: "", //保险公司id
-            };
-            this.id = "";
-            this.attributionform = params;
-            this.show = true;
-            this.dialogVisible = true;
+        {
+          apiName: "报价",
+          apiType: 2,
+          url: "",
         },
-        //表格参数自定义内容
-        configureformatter(row) {
-            let data = JSON.stringify(row.fields);
-            return data;
+        {
+          apiName: "影像上传",
+          apiType: 3,
+          url: "",
         },
-        findpage() {
-            let params={
-                pageNum:this.pageNum,
-                pageSize:this.pageSize,
-                insCompanyId:"",
-            }
-            this.$api.insCompany
-                .pagebelong(params)
-                .then((res) => {
-                    if (res.code == "200") {
-                        this.pageResult = res.data.content
-                        this.totalSize = res.data.totalSize
-                    }
-                });
+        {
+          apiName: "核保",
+          apiType: 4,
+          url: "",
         },
-        //删除事件
-        removeDomain(item) {
-            var index = this.attributionform.fields.indexOf(item);
-            if (index !== -1) {
-                this.attributionform.fields.splice(index, 1);
-            }
+        {
+          apiName: "缴费查询",
+          apiType: 5,
+          url: "",
         },
-        //新增配置按钮
-        configuration() {
-            this.attributionform.fields.push({
-                field: "",
-                isEdit: false,
-                label: "",
-                type: "",
-                value: "",
-            });
+        {
+          apiName: "保单下载",
+          apiType: 6,
+          url: "",
         },
-        //修改开关事件
-        isEditchange(val, id) {
-            this.attributionform.fields[id].isEdit = val;
+        {
+          apiName: "非车险查询",
+          apiType: 7,
+          url: "",
         },
-        //选择保险公司获取归属模板
-        companyChange(e) { },
-        apiChange(e){
-            e==2? this.attributionform['api']=this.pythonApi:"";
+        {
+          apiName: "人工核保状态刷新",
+          apiType: 8,
+          url: "",
         },
-        //提交表单
-        submitForm(formName) {
-            this.$refs[formName].validate((valid) => {
-                if (valid) {
-                    if (this.id) {
-                        this.$api.insCompany
-                            .updatebelong(this.id, this.attributionform)
-                            .then((res) => {
-                                if (res.code == "200") {
-                                    this.$message({ message: "修改成功", type: "success" });
-                                    this.findpage();
-                                    this.dialogVisible = false;
-                                } else {
-                                    this.$message({ message: res.msg, type: "warning" });
-                                }
-                            });
-                    } else {
-                        this.$api.insCompany
-                            .addbelong(this.attributionform)
-                            .then((res) => {
-                                if (res.code == "200") {
-                                    this.$message({ message: "新增成功", type: "success" });
-                                    this.findpage();
-                                    this.dialogVisible = false;
-                                } else {
-                                    this.$message({ message: res.msg, type: "success" });
-                                }
-                            });
-                    }
-                }
-            });
+      ],
+      pageRequest: {
+        pageNum: 1,
+        pageSize: 20,
+        columnFilters: {
+          parentId: {
+            name: "parentId",
+            value: "0",
+          },
         },
-        //删除操作
-        empowerBtn(index, row) {
-            this.$api.insCompany.deletebelong(row.id).then((res) => {
+      },
+      companyselect: [],
+      configurelist: [],
+      id: "",
+    };
+  },
+  created() {
+    this.$api.insCompany.gainTopList("1").then((res) => {
+      this.companyselect = res.data;
+    });
+    this.findpage();
+  },
+  watch: {
+    filterText(val) {
+      this.$refs.tree.filter(val);
+    },
+  },
+
+  methods: {
+    //查询
+    querySearch() {
+      this.pageNum = 1;
+      this.pageSize = 20;
+      this.findpage();
+    },
+    add() {
+      let params = {
+        fields: [
+          {
+            field: "",
+            isEdit: false,
+            label: "",
+            type: "",
+            value: "",
+          },
+        ],
+        insCompanyId: "", //保险公司id
+      };
+      this.id = "";
+      this.attributionform = params;
+      this.show = true;
+      this.dialogVisible = true;
+    },
+    //表格参数自定义内容
+    configureformatter(row) {
+      let data = JSON.stringify(row.fields);
+      return data;
+    },
+    findpage() {
+      let params = {
+        pageNum: this.pageNum,
+        pageSize: this.pageSize,
+        insCompanyId: this.formInline.insCompanyId,
+        apiType: this.formInline.apiType,
+      };
+      this.$api.insCompany.pagebelong(params).then((res) => {
+        if (res.code == "200") {
+          this.pageResult = res.data.content;
+          this.totalSize = res.data.totalSize;
+        }
+      });
+    },
+    //删除事件
+    removeDomain(item) {
+      var index = this.attributionform.fields.indexOf(item);
+      if (index !== -1) {
+        this.attributionform.fields.splice(index, 1);
+      }
+    },
+    //新增配置按钮
+    configuration() {
+      this.attributionform.fields.push({
+        field: "",
+        isEdit: false,
+        label: "",
+        type: "",
+        value: "",
+      });
+    },
+    //修改开关事件
+    isEditchange(val, id) {
+      this.attributionform.fields[id].isEdit = val;
+    },
+    //选择保险公司获取归属模板
+    companyChange(e) {},
+    apiChange(e) {
+      e == 2 ? (this.attributionform["api"] = this.pythonApi) : "";
+    },
+    //提交表单
+    submitForm(formName) {
+      this.$refs[formName].validate((valid) => {
+        if (valid) {
+          if (this.id) {
+            this.$api.insCompany
+              .updatebelong(this.id, this.attributionform)
+              .then((res) => {
                 if (res.code == "200") {
-                    this.findpage();
-                    this.$message({ message: res.msg, type: "success" });
+                  this.$message({ message: "修改成功", type: "success" });
+                  this.findpage();
+                  this.dialogVisible = false;
+                } else {
+                  this.$message({ message: res.msg, type: "warning" });
                 }
+              });
+          } else {
+            this.$api.insCompany.addbelong(this.attributionform).then((res) => {
+              if (res.code == "200") {
+                this.$message({ message: "新增成功", type: "success" });
+                this.findpage();
+                this.dialogVisible = false;
+              } else {
+                this.$message({ message: res.msg, type: "success" });
+              }
             });
-        },
-        //编辑操作
-        CloseEdit(index, row) {
-            this.dilogtitle="编辑"
-            this.id=row.id;
-           this.$api.insCompany.querybelong(row.id).then(res=>{
-            this.attributionform=res.data;
-            if(res.data.api!=null){
-                let api = JSON.parse(JSON.stringify(this.pythonApi));
-                api.forEach(item=>{
-                    let obj = res.data.api.find(it=>(item.apiName==it.apiName&&item.apiType==it.apiType))
-                    if(obj){
-                        item.url = obj.url
-                    }
-                })
-                this.attributionform['api']= api;
+          }
+        }
+      });
+    },
+    //删除操作
+    empowerBtn(index, row) {
+      this.$api.insCompany.deletebelong(row.id).then((res) => {
+        if (res.code == "200") {
+          this.findpage();
+          this.$message({ message: res.msg, type: "success" });
+        }
+      });
+    },
+    //编辑操作
+    CloseEdit(index, row) {
+      this.dilogtitle = "编辑";
+      this.id = row.id;
+      this.$api.insCompany.querybelong(row.id).then((res) => {
+        this.attributionform = res.data;
+        if (res.data.api != null) {
+          let api = JSON.parse(JSON.stringify(this.pythonApi));
+          api.forEach((item) => {
+            let obj = res.data.api.find(
+              (it) => item.apiName == it.apiName && item.apiType == it.apiType
+            );
+            if (obj) {
+              item.url = obj.url;
             }
-            this.dialogVisible=true;
-           })
-        },
-        // 设置每页条数
-        applyhandleSizeChange(val) {
-            this.pageSize = val;
-            this.pageNum = 1;
-            this.pageRequest.pageNum = 1;
-            this.pageRequest.pageSize = val;
-            this.findpage();
-        },
-        // 当前页
-        // 当前页 当前页
-        applyhandleCurrentChange(val) {
-            this.pageNum = val;
-            this.pageRequest.pageNum = val;
-            this.findpage();
-        },
+          });
+          this.attributionform["api"] = api;
+        }
+        this.dialogVisible = true;
+      });
+    },
+    // 设置每页条数
+    applyhandleSizeChange(val) {
+      this.pageSize = val;
+      this.pageNum = 1;
+      this.pageRequest.pageNum = 1;
+      this.pageRequest.pageSize = val;
+      this.findpage();
+    },
+    // 当前页
+    // 当前页 当前页
+    applyhandleCurrentChange(val) {
+      this.pageNum = val;
+      this.pageRequest.pageNum = val;
+      this.findpage();
     },
+  },
 };
 </script>
 <style scoped >
 .widths1 {
-    width: 250px;
+  width: 250px;
 }
 </style>

+ 1 - 1
src/views/Sys/User.vue

@@ -263,7 +263,7 @@
       //--left tree start-------
       findLeftTreeData: function() {
         // 获取数据
-        this.$api.dept.findLeftDeptTree(this.peopledeptid).then(res => {
+        this.$api.dept.findTree().then(res => {
           this.ztreeNodes = res.data;
         });
       },