Browse Source

货代11.07

caojunjie 1 year ago
parent
commit
84e2e37a66

+ 85 - 0
src/api/approvalH/processConfig.js

@@ -0,0 +1,85 @@
+import request from '@/router/axios';
+
+export function getList(params) {
+  return request({
+    url: '/api/blade-los/auditpaths/list',
+    method: 'get',
+    params: params,
+  })
+}
+// 新增编辑
+export function modify(data) {
+  return request({
+    url: '/api/blade-los/auditpaths/modify',
+    method: 'post',
+    data: data,
+  })
+}
+// 列表删除
+export function removeList(data) {
+  return request({
+    url: '/api/blade-los/auditpaths/remove',
+    method: 'post',
+    params: {
+      ids:data
+    },
+  })
+}
+// 查看详情
+export function detailData(params) {
+  return request({
+    url: '/api/blade-los/auditpaths/detail',
+    method: 'get',
+    params: params,
+  })
+}
+//业务审批配置列表
+export function getBusinList(params) {
+  return request({
+    url: '/api/blade-los/auditpathsacts/list',
+    method: 'get',
+    params: params,
+  })
+}
+
+export function businModify(data) {
+  return request({
+    url: '/api/blade-los/auditpathsacts/modify',
+    method: 'post',
+    data: data,
+  })
+}
+
+export function getUserList(params) {
+  return request({
+    url: '/api/blade-user/list',
+    method: 'get',
+    params:{params}
+  })
+}
+
+//审批获得审批人
+export function getUserApprovalList(params) {
+  return request({
+    url: '/api/blade-user/userList',
+    method: 'get',
+  })
+}
+
+// 更改审批人
+export function changeApprove(url, data) {
+  return request({
+    url: url,
+    method: 'post',
+    data: data
+  })
+}
+
+export function userList(params) {
+  return request({
+    url: '/api/blade-user/audit-user-list',
+    method: 'get',
+    params
+  })
+}
+

+ 49 - 0
src/api/approveDataH/main.js

@@ -0,0 +1,49 @@
+import request from '@/router/axios';
+
+export function getList(current, size, params) {
+  return request({
+    url: '/api/blade-los/auditproecess/list',
+    method: 'get',
+    params: {
+      ...params,
+      current,
+      size
+    },
+  })
+}
+
+export function approvePass(data) {
+  return request({
+    url: '/api/blade-los/auditproecess/operationFinanceProcess',
+    method: 'post',
+    data: data,
+  })
+}
+
+export function batchOperation(id,operate,auditMsg) {
+  return request({
+    url: '/api/blade-los/auditproecess/batchOperation',
+    method: 'post',
+    params: {
+      ids:id,
+      operate:operate,
+      auditMsg:auditMsg
+    },
+  })
+}
+// 内贸销售请核
+export function orderCheckProcess(data) {
+  return request({
+    url: '/api/blade-los/auditproecess/orderCheckProcess',
+    method: 'post',
+    data: data,
+  })
+}
+
+export function financingExcess(data) {
+  return request({
+      url: '/api/trade-purchase/woodHarvestingCloud/financingExcess',
+      method: 'post',
+      data: data
+  })
+}

+ 61 - 0
src/views/approval/businessApprovalH/config/mainList.json

@@ -0,0 +1,61 @@
+{
+  "searchShow": true,
+  "searchMenuSpan": 16,
+  "border": true,
+  "index": true,
+  "viewBtn": false,
+  "editBtn": false,
+  "delBtn": false,
+  "addBtn": false,
+  "align": "center",
+  "height": "auto",
+  "menuWidth": 180,
+  "showSummary": true,
+  "searchIcon": true,
+  "searchIndex": 2,
+  "searchLabelWidth": 120,
+  "searchSpan": 8,
+  "searchMenuPosition": "right",
+  "column": [
+    {
+      "label": "活动名",
+      "prop": "actName",
+      "search": true,
+      "index": 1,
+      "width": 400,
+      "overHidden": true
+    },
+    {
+      "label": "审核条件",
+      "prop": "reviewConditions",
+      "type":"select",
+      "index": 2,
+      "width": 350,
+      "dicData": [
+        {
+          "label": "正常审批",
+          "value":"O"
+        },
+        {
+          "label": "非正常审批",
+          "value": "I"
+        }
+      ],
+      "overHidden": true
+    },
+    {
+      "label": "审核路径",
+      "prop": "pathId",
+      "type": "select",
+      "index": 3,
+      "slot": true,
+      "dicUrl": "/api/blade-check/auditpaths/list",
+      "props": {
+        "label": "pathName",
+        "value": "id"
+      },
+      "width": 700,
+      "overHidden": true
+    }
+  ]
+}

+ 152 - 0
src/views/approval/businessApprovalH/index.vue

@@ -0,0 +1,152 @@
+<template>
+  <basic-container>
+    <avue-crud :option="option"
+               :data="dataList"
+               ref="crud"
+               v-model="form"
+               :page.sync="page"
+               :search.sync="search"
+               :table-loading="loading"
+               @search-change="searchChange"
+               @search-reset="searchReset"
+               @selection-change="selectionChange"
+               @current-change="currentChange"
+               @size-change="sizeChange"
+               @row-update="rowUpdate"
+               @refresh-change="refreshChange"
+               @on-load="onLoad">
+      <template slot-scope="scope" slot="menu">
+        <el-button
+          type="text"
+          size="small"
+          @click.stop="rowCell(scope.row,scope.index)"
+        >{{ scope.row.$cellEdit ? '保存' : '修改' }}
+        </el-button>
+      </template>
+      <template slot="pathId" slot-scope="{row,index}">
+        <el-select v-if="row.$cellEdit"
+                    v-model="row.pathId"
+                    size="small"
+                     placeholder="请选择"
+                     clearable
+                     filterable>
+          <el-option v-for="(item,index) in pathIdDic"
+                     :key="index"
+                     :label="item.pathName"
+                     :value="item.id"
+          ></el-option>
+        </el-select>
+        <span v-else>{{ row.pathName }}</span>
+      </template>
+    </avue-crud>
+  </basic-container>
+</template>
+
+<script>
+  import option from "./config/mainList.json";
+  import { getList,getBusinList,businModify } from "@/api/approvalH/processConfig";
+
+  export default {
+    data() {
+      return {
+        loading : false,
+        form: {},
+        search:{},
+        show:true,
+        detailData:{},
+        option: option,
+        parentId:0,
+        dataList: [],
+        pathIdDic:[],
+        page: {
+          pageSize: 10,
+          pagerCount: 5,
+          total: 0,
+        },
+        query:{},
+      }
+    },
+    created() {
+      getList().then(res =>{
+        this.pathIdDic  = res.data.data.records
+      })
+    },
+    mounted() {
+
+    },
+
+    methods: {
+      //新单打开
+      addReceipt(row){
+
+      },
+      //编辑打开
+      editOpen(row, status){
+
+      },
+      rowDel(row, index, done) {
+
+      },
+      rowUpdate(row, index, done) {
+        done(row);
+      },
+      rowCell(row, index) {
+        if(row.$cellEdit){
+          let data = []
+          data.push(row)
+          businModify(data).then(res =>{
+            if(res.data.success){
+              this.$message.success("保存成功!")
+              this.onLoad(this.page, this.search);
+            }
+          })
+        }
+        this.$refs.crud.rowCell(row, index)
+      },
+      //点击搜索按钮触发
+      searchChange(params, done) {
+        this.query = params;
+        this.page.currentPage = 1;
+        this.onLoad(this.page, params);
+        done()
+      },
+      searchReset() {
+        console.log('1')
+      },
+      selectionChange() {
+        console.log('1')
+      },
+      currentChange() {
+        console.log('1')
+      },
+      sizeChange() {
+        console.log('1')
+      },
+      refreshChange() {
+        this.onLoad(this.page, this.search);
+      },
+      onLoad(page, params = {}) {
+        this.loading = true;
+        params = {
+          ...params,
+          current: page.currentPage,
+          size: page.pageSize,
+        }
+        getBusinList(params).then(res=>{
+          this.dataList = res.data.data.records
+          this.page.total = res.data.data.total
+        }).finally(()=>{
+          this.loading = false;
+        })
+      },
+      goBack() {
+        this.detailData=this.$options.data().detailData
+        this.show = true;
+      }
+    }
+  }
+</script>
+
+<style scoped>
+
+</style>

+ 108 - 0
src/views/approval/processConfigH/config/detail.json

@@ -0,0 +1,108 @@
+{
+  "lazy": true,
+  "tip": false,
+  "simplePage": true,
+  "searchShow": false,
+  "addBtn":false,
+  "editBtn":false,
+  "delBtn": false,
+  "addRowBtn":false,
+  "cellBtn":false,
+  "cancelBtn":false,
+  "refreshBtn": false,
+  "searchMenuSpan": 6,
+  "dialogWidth": "60%",
+  "tree": true,
+  "border": true,
+  "index": true,
+  "indexLabel": "级别",
+  "selection": true,
+  "menuWidth": 100,
+  "dialogClickModal": false,
+  "sortable": true,
+  "column":[
+    {
+      "label": "路径名称",
+      "prop": "levelName",
+      "search": false,
+      "index": 1,
+      "overHidden": true,
+      "slot": true,
+      "searchSpan": 8
+    },
+    {
+      "label": "是否指定审批人",
+      "prop": "iffixAuditUser",
+      "search": false,
+      "index": 1,
+      "overHidden": true,
+      "slot": true,
+      "searchSpan": 8
+    },
+    {
+      "label": "指定规则",
+      "prop": "userMold",
+      "search": false,
+      "index": 1,
+      "overHidden": true,
+      "slot": true,
+      "searchSpan": 8
+    },
+    {
+      "label": "角色/部门",
+      "prop": "auditMoldId",
+      "multiple": true,
+      "index": 1,
+      "overHidden": true,
+      "searchSpan": 8
+    },
+    {
+      "label": "审核人",
+      "prop": "auditUserId",
+      "search": false,
+      "index": 1,
+      "overHidden": true,
+      "slot": true,
+      "searchSpan": 8
+    },
+    {
+      "label": "机构",
+      "prop": "salesCompanyId",
+      "search": false,
+      "index": 1,
+      "overHidden": true,
+      "slot": true,
+      "searchSpan": 8,
+      "props": {
+        "label": "fullName",
+        "value": "id"
+      },
+      "dicUrl": "/api/blade-system/dept/top-list",
+      "rules": [
+        {
+          "required": true,
+          "message": " ",
+          "trigger": "blur"
+        }
+      ]
+    },
+    {
+      "label": "是否最后一级",
+      "prop": "iffinalItem",
+      "search": false,
+      "index": 1,
+      "overHidden": true,
+      "slot": true,
+      "searchSpan": 8
+    },
+    {
+      "label": "备注",
+      "prop": "remarks",
+      "search": false,
+      "index": 1,
+      "overHidden": true,
+      "slot": true,
+      "searchSpan": 8
+    }
+  ]
+}

+ 62 - 0
src/views/approval/processConfigH/config/mainList.json

@@ -0,0 +1,62 @@
+{
+  "searchShow": true,
+  "searchMenuSpan": 24,
+  "border": true,
+  "index": true,
+  "viewBtn": false,
+  "editBtn": false,
+  "delBtn": false,
+  "height": "auto",
+  "addBtn": false,
+  "align": "center",
+  "menuWidth": 180,
+  "showSummary": true,
+  "searchIcon": true,
+  "searchIndex": 2,
+  "searchLabelWidth": 120,
+  "searchSpan": 8,
+  "searchMenuPosition": "right",
+
+  "column": [
+    {
+      "label": "审核路径名",
+      "prop": "pathName",
+      "search": true,
+      "index": 1,
+      "overHidden": true,
+      "searchSpan": 8
+    },
+    {
+      "label": "维护人",
+      "prop": "opUserName",
+      "search": false,
+      "index": 2,
+      "overHidden": true,
+      "searchSpan": 8
+    },
+    {
+      "label": "维护时间",
+      "prop": "opDate",
+      "search": false,
+      "index": 3,
+      "overHidden": true,
+      "searchSpan": 8
+    },
+    {
+      "label": "状态",
+      "prop": "status",
+      "search": false,
+      "index": 4,
+      "overHidden": true,
+      "searchSpan": 8
+    },
+    {
+      "label": "备注",
+      "prop": "remarks",
+      "search": false,
+      "index": 5,
+      "overHidden": true,
+      "searchSpan": 8
+    }
+  ]
+}

+ 492 - 0
src/views/approval/processConfigH/index.vue

@@ -0,0 +1,492 @@
+<template>
+  <div>
+    <basic-container>
+      <avue-crud
+        ref="crud"
+        :option="option"
+        :data="dataList"
+        v-model="form"
+        :page.sync="page"
+        :search.sync="search"
+        :table-loading="loading"
+        @on-load="onLoad"
+        @search-change="searchChange"
+        @current-change="currentChange"
+        @size-change="sizeChange"
+        @refresh-change="refreshChange"
+        @saveColumn="saveColumn"
+      >
+        <template slot-scope="scope" slot="status">
+          <span v-if="scope.row.status == 'N'">新建</span>
+          <span v-if="scope.row.status == 'A'">有效</span>
+          <span v-if="scope.row.status == 'S'">停用</span>
+          <span v-if="scope.row.status == 'Z'">暂存</span>
+        </template>
+        <template slot="menuLeft">
+          <el-button
+            type="primary"
+            icon="el-icon-plus"
+            size="small"
+            @click.stop="addHandle"
+          >创建单据</el-button>
+        </template>
+        <template slot-scope="scope" slot="menu">
+          <el-button
+            type="text"
+            icon="el-icon-edit"
+            size="small"
+            @click.stop="editOpen(scope.row)"
+          >编辑
+          </el-button>
+          <el-button
+            type="text"
+            icon="el-icon-delete"
+            size="small"
+            @click.stop="rowDel(scope.row, scope.index)"
+          >删除
+          </el-button>
+        </template>
+      </avue-crud>
+    </basic-container>
+    <el-dialog
+      append-to-body
+      :visible.sync="visible"
+      width="80%"
+      :close-on-click-modal="false"
+      :destroy-on-close="true"
+      :close-on-press-escape="false"
+      v-dialog-drag
+      :title="title"
+    >
+      <el-form :inline="true" :model="dataForm" :rules="dataRule" ref="dataForm">
+        <el-form-item label="审核路径名称" prop="pathName">
+          <el-input v-model="dataForm.pathName" placeholder="审核路径名称"></el-input>
+        </el-form-item>
+        <el-form-item label="状态" prop="status">
+          <el-select v-model="dataForm.status" placeholder="状态" style="width: 100%">
+            <el-option
+              v-for="item in optionsStatue"
+              :key="item.id"
+              :label="item.name"
+              :value="item.id">
+            </el-option>
+          </el-select>
+        </el-form-item>
+        <el-form-item label="维护人" prop="opUserName">
+          <el-input v-model="dataForm.opUserName" disabled placeholder="维护人"></el-input>
+        </el-form-item>
+        <el-form-item label="维护时间" prop="opDate">
+          <el-input v-model="dataForm.opDate" disabled placeholder="维护时间"></el-input>
+        </el-form-item>
+        <el-form-item label="类型名称" prop="businessType">
+          <el-input v-model="dataForm.businessType" placeholder="类型名称"></el-input>
+        </el-form-item>
+        <el-form-item label="备注" class="full" prop="remarks">
+          <el-input v-model="dataForm.remarks" placeholder="备注"></el-input>
+        </el-form-item>
+      </el-form>
+      <avue-crud
+        ref="dialogCrud"
+        :option="detailOption"
+        :data="detailData"
+      >
+        <template slot="levelName" slot-scope="{row,index}">
+          <el-input
+            v-model="row.levelName"
+            clearable
+            placeholder="请输入"
+          ></el-input>
+        </template>
+        <template slot="remarks" slot-scope="{row,index}">
+          <el-input
+            v-model="row.remarks"
+            clearable
+            placeholder="请输入"
+          ></el-input>
+        </template>
+        <template slot="iffixAuditUser" slot-scope="{row,index}">
+          <el-select
+            v-model="row.iffixAuditUser"
+          >
+            <el-option
+              label="是"
+              value="T"
+            ></el-option>
+            <el-option
+              label="否"
+              value="F"
+            ></el-option>
+          </el-select>
+        </template>
+        <template slot="iffinalItem" slot-scope="{row,index}">
+          <el-select
+            v-model="row.iffinalItem"
+          >
+            <el-option
+              label="是"
+              value="T"
+            ></el-option>
+            <el-option
+              label="否"
+              value="F"
+            ></el-option>
+          </el-select>
+        </template>
+        <template slot="userMold" slot-scope="{ row, index }">
+          <el-select
+            v-model="row.userMold"
+            filterable
+            placeholder="请选择规则"
+            @change="userMoldChange(row)"
+          >
+            <el-option
+              v-for="(item, index) in ruleData"
+              :key="index"
+              :value="item.value"
+              :label="item.label"
+            ></el-option>
+          </el-select>
+        </template>
+        <template slot="auditMoldId" slot-scope="{ row, index }">
+          <el-cascader
+            v-model="row.auditMoldId"
+            :disabled="!row.userMold || row.userMold == 3"
+            :options="row.userMold == 1? roleData: row.userMold == 2? deptData: []"
+            :props="props"
+            collapse-tags
+            clearable
+            filterable
+            @change="auditChange(row)"
+          ></el-cascader>
+        </template>
+        <template slot="auditUserId" slot-scope="{row,index}">
+          <el-select
+            v-model="row.auditUserId"
+            filterable
+            collapse-tags
+            multiple
+            placeholder="审核人"
+          >
+            <el-option v-for="(item,index) in row.userList"
+                       :key="index"
+                       :label="item.realName"
+                       :value="item.id"
+            ></el-option>
+          </el-select>
+        </template>
+        <template slot="salesCompanyId" slot-scope="{row,index}">
+          <el-select
+            v-model="row.salesCompanyId"
+            filterable
+            collapse-tags
+            placeholder="机构"
+          >
+            <el-option v-for="(item,index) in institutionList"
+                       :key="index"
+                       :label="item.deptName"
+                       :value="item.id"
+            ></el-option>
+          </el-select>
+        </template>
+        <template slot="menuLeft">
+          <el-button
+            type="primary"
+            icon="el-icon-plus"
+            size="small"
+            @click.stop="addDetail"
+          >新增</el-button>
+        </template>
+        <template slot-scope="{row,index}" slot="menu">
+          <el-button
+            type="text"
+            icon="el-icon-delete"
+            size="small"
+            @click="rowDetailDelete(detailData, index)"
+          >移除</el-button>
+        </template>
+      </avue-crud>
+      <span slot="footer" class="dialog-footer">
+        <el-button @click="closeDia">取消</el-button>
+        <el-button type="primary" @click="dataFormSubmit()">确定</el-button>
+      </span>
+    </el-dialog>
+  </div>
+</template>
+
+<script>
+import option from "./config/mainList.json";
+import detailOption from "./config/detail.json";
+import { getList,
+  modify,
+  removeList,
+  detailData ,userList,
+  getUserApprovalList} from "@/api/approvalH/processConfig";
+import _ from "lodash";
+import {getDeptTree} from "@/api/system/dept";
+import {getRoleTree} from "@/api/system/role";
+
+import {topList} from "@/api/tirePartsMall/salesManagement/saleOrder";
+
+export default {
+  name: "index",
+  data() {
+    return {
+      institutionList: [],
+      option: {},
+      dataList: [],
+      form: {},
+      page: {
+        pageSize: 10,
+        currentPage: 1,
+        total: 0,
+        pageSizes: [10, 50, 100, 200, 300, 400, 500]
+      },
+      detailData: [],
+      auditUserIdDic:[],
+      loading: false,
+      search: {},
+      visible: false,
+      title: '',
+      detailOption: {},
+      optionsStatue: [
+        {
+          id: 'A',
+          name: '有效'
+        },
+        {
+          id: 'S',
+          name: '停用'
+        },
+      ],
+      dataForm: {
+        status: 'A',
+      },
+      dataRule: {},
+      tenantId: null, // 租户
+      // dicData: [],
+      props: {
+        multiple: true,
+        value: 'id',
+        label: 'title',
+        emitPath: false,
+      },
+      roleData: [],
+      deptData: [],
+      ruleData: [
+        {value: 1, label: '角色'},
+        {value: 2, label: '部门'},
+        {value: 3, label: '用户'},
+      ], //指定规则
+    }
+  },
+  created() {
+    this.option = option
+    this.detailOption = detailOption
+
+    getUserApprovalList().then(res =>{
+      this.auditUserIdDic = res.data.data
+    })
+
+    this.tenantId = this.$store.getters.userInfo.tenant_id;
+    getRoleTree(this.tenantId).then(res => {
+      this.roleData = res.data.data;
+    });
+    getDeptTree(this.tenantId).then(res => {
+      this.deptData = res.data.data;
+    });
+
+    let i = 0;
+    this.option.column.forEach(item => {
+      if (item.search) i++
+    })
+    if (i % 3 !== 0){
+      const num = 3 - Number(i % 3)
+      this.option.searchMenuSpan = num * 8;
+      this.option.searchMenuPosition = "right";
+    }
+  },
+  methods: {
+    onLoad(page, params) {
+      params = {
+        ...params,
+        current: page.currentPage,
+        size: page.pageSize,
+      }
+      this.loading = true
+      getList(params).then(res => {
+        this.dataList = res.data.data.records ? res.data.data.records : [];
+      }).finally(() => {
+        this.loading = false
+      })
+    },
+    addHandle() {
+      this.title = '新增';
+      this.visible = !this.visible
+      this.dataForm = {}
+      this.detailData = []
+    },
+    // 编辑
+    editOpen(row) {
+      topList().then(res => {
+        this.institutionList = res.data.data
+      })
+      detailData({id: row.id}).then(res => {
+        this.dataForm = res.data.data
+        this.detailData = res.data.data.pjAuditPathsLevels
+        this.detailData.map(e => {
+          let params = {};
+          if (e.auditMoldId && e.auditMoldId.length > 0) {
+            if (e.userMold === 1) {
+              this.$set(params, 'roleId', e.auditMoldId)
+            } else if (e.userMold === 2) {
+              this.$set(params, 'deptId', e.auditMoldId)
+            }
+            userList(params).then(response => {
+              this.$set(e, 'userList', response.data.data);
+            })
+          } else {
+            this.$set(e, 'userList', this.auditUserIdDic);
+          }
+
+          if (e.auditMoldId) {
+            e.auditMoldId = e.auditMoldId.split(',')
+          }
+          if (e.auditUserId) {
+            e.auditUserId = e.auditUserId.split(',')
+          }
+        })
+      })
+      this.title = '修改';
+      this.visible = !this.visible
+    },
+    rowDel(row, index) {
+      this.$confirm("确定将选择数据删除?", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning"
+      }).then(() => {
+        removeList(row.id).then(res =>{
+          if(res.data.success){
+            this.$message({
+              type: "success",
+              message: "操作成功!"
+            });
+            this.page.currentPage = 1;
+            this.onLoad(this.page);
+          }
+        })
+      })
+    },
+    //点击搜索按钮触发
+    searchChange(params, done) {
+      this.page.currentPage = 1;
+      this.onLoad(this.page, params);
+      done();
+    },
+    currentChange(val) {
+      this.page.currentPage = val;
+    },
+    sizeChange(val) {
+      this.page.currentPage = 1;
+      this.page.pageSize = val;
+    },
+    refreshChange() {
+      this.onLoad(this.page, this.search);
+    },
+    async saveColumn() {
+      // const inSave = await this.saveColumnData(
+      //   this.getColumnName(50),
+      //   this.option
+      // );
+      if (inSave) {
+        this.$message.success("保存成功");
+        //关闭窗口
+        this.$refs.crud.$refs.dialogColumn.columnBox = false;
+      }
+    },
+    addDetail() {
+      if(this.detailData === undefined) {
+        this.detailData = []
+      }
+      this.detailData.push({
+        // userList: this.auditUserIdDic,
+        // levelName: null,
+        // auditUserId: [],
+        // iffixAuditUser: 'T',
+        // iffinalItem: 'T',
+        // remarks: null,
+        // $cellEdit: true
+      })
+    },
+    rowDetailDelete(row, index) {
+      row.splice(index, 1)
+    },
+    closeDia() {
+      this.visible = false
+    },
+    dataFormSubmit() {
+      if (this.detailData.length === 0) {
+        this.$message.error('请维护审批级次')
+        return false
+      }
+      for (let x in this.detailData) {
+        if (this.detailData[x].iffixAuditUser === 'S') {
+          if (this.detailData[x].auditUserId === null || this.detailData[x].auditUserId === '' || this.dataList[x].auditUserId.length === 0) {
+            this.$message.error('请维护第' + (Number(x) + 1) + '级的审核人')
+            return false
+          }
+        }
+      }
+      let params ={
+        ...this.dataForm,
+        pjAuditPathsLevels: JSON.parse(JSON.stringify(this.detailData))
+      }
+      for (let item of params.pjAuditPathsLevels){
+        item.levelId = _.add(item.$index,1)
+        delete item.id
+        if (item.auditMoldId) {
+          item.auditMoldId = item.auditMoldId.join(',');
+        }
+        if (item.auditUserId) {
+          item.auditUserId = item.auditUserId.join(',');
+        }
+      }
+      modify(params).then(res =>{
+        if(res.data.success){
+          this.$message.success("操作成功!")
+          this.visible = false
+          this.refreshChange()
+        }
+      })
+    },
+    auditChange(row) {
+      let params = {};
+      row.auditUserId = null;
+      if (row.auditMoldId && row.auditMoldId.length > 0) {
+        const data = row.auditMoldId.join(',');
+        if (row.userMold === 1) {
+          this.$set(params, 'roleId', data)
+        } else if (row.userMold === 2) {
+          this.$set(params, 'deptId', data)
+        }
+        userList(params).then(res => {
+          this.$set(row, 'userList', res.data.data);
+          // 选完角色部门默认全部带上
+          this.$set(row, 'auditUserId', res.data.data.map(item => item = item.id));
+        })
+      } else {
+        this.$set(row, 'userList', [])
+      }
+    },
+    userMoldChange(row) {
+      row.auditUserId = null;
+      row.auditMoldId = null;
+      this.$set(row, 'userList', row.userMold == 3? this.auditUserIdDic: []);
+    },
+  },
+}
+</script>
+
+<style scoped>
+
+</style>

+ 192 - 0
src/views/approveDataH/check.vue

@@ -0,0 +1,192 @@
+<template>
+  <div>
+    <avue-form class="trading-form" :option="option" ref="form" v-model="form">
+    </avue-form>
+    <div class="dialogButton">
+      <el-button size="small" :loading="buttonLoading" @click="$emit('choceCheckFun')">关闭</el-button>
+      <el-button type="warning" :loading="buttonLoading" size="small" @click="submit(2)">审批驳回</el-button>
+      <el-button type="primary" :loading="buttonLoading" size="small" @click="submit(1)">审批通过</el-button>
+    </div>
+  </div>
+</template>
+
+<script>
+  import { approvePass,batchOperation } from "@/api/approveDataL/main";
+  import {offset} from "@/api/basicData/salesOrder";
+
+  export default {
+    name: "check",
+    props: {
+      checkData: {
+        type: Object
+      },
+      choceCheckFun:{
+        type: Function
+      },
+      checkDetail:{
+        type: Boolean
+      },
+      idList:{
+        type: Array
+      }
+    },
+    data() {
+      return {
+        form: {},
+        list: [],
+        currencyDic: [],
+        buttonLoading:false,
+        corpId: "",
+        option: {
+          emptyBtn: false,
+          submitBtn: false,
+          labelWidth: 120,
+          menuSpan: 8,
+          column: [
+            {
+              label: '审批人',
+              prop: 'auditName',
+              span: 12,
+              disabled:true,
+              rules: [
+                {
+                  required: false,
+                  message: ' ',
+                  trigger: 'blur'
+                }
+              ]
+            },
+            {
+              label: '审批日期',
+              prop: 'auditOpTime',
+              type: "datetime",
+              span: 12,
+              disabled:true,
+              rules: [
+                {
+                  required: false,
+                  message: ' ',
+                  trigger: 'blur'
+                }
+              ]
+            },
+            {
+              label: '审批意见',
+              prop: 'auditMsg',
+              span: 24,
+              rules: [
+                {
+                  required: false,
+                  message: ' ',
+                  trigger: 'blur'
+                }
+              ]
+            }
+          ]
+        },
+      }
+    },
+    created() {
+      let date = new Date();
+      let strDate = date.getFullYear() + "-" + (date.getMonth() + 1) + "-" + date.getDate() + " " + date.getHours() + ":" + date.getMinutes() + ":" + date.getSeconds();
+      this.$set(this.form,"auditOpTime",strDate)
+      this.$set(this.form,"auditName",this.$store.getters.userInfo.user_name)
+    },
+    methods: {
+      submit(operate){
+        this.$confirm("是否确认此操作!", "提示", {
+          confirmButtonText: "确认",
+          cancelButtonText: "取消",
+          type: "warning",
+        }).then(() => {
+            console.log(operate)
+          this.checkData.operate = operate
+          if(this.idList.length !== 0){
+            //批量
+            this.buttonLoading = true
+            batchOperation(this.idList.join(","),operate,this.form.auditMsg).then(res=>{
+              if(res.data.success){
+                this.$message.success("操作成功!")
+                this.$emit("operationType")
+              }
+            }).finally(()=>{
+              this.buttonLoading = false
+            })
+          }else{
+            //单个
+            this.buttonLoading = true
+            this.checkData.auditName = this.form.auditName
+            this.checkData.auditMsg = this.form.auditMsg
+            this.checkData.auditOpTime = this.form.auditOpTime
+            if (this.checkData.checkType === "YPJ-XSJH" && operate === 1){
+              offset({id: this.checkData.billId}).then(res => {
+                if (res.data.data == '操作成功') {
+                  this.checkData = this.detailData.check;
+                  this.checkDialog = true;
+                } else {
+                  this.$confirm(res.data.data, {
+                    confirmButtonText: "确定",
+                    cancelButtonText: "取消",
+                    type: "warning"
+                  }).then(() => {
+                    approvePass(this.checkData).then(res=>{
+                      if(res.data.success){
+                        this.$message.success("操作成功!")
+                        this.$emit("choceCheckFun")
+                      }
+                      if(!this.checkDetail){
+                        //关闭付费申请页面
+                        let tag = this.$store.getters.tagList.filter(ele => ele.label === "付费申请")[0]
+                        this.$store.commit('DEL_TAG', tag)
+                        this.$store.commit("PQ_OUT_DETAIL");
+                        let tag1 = this.$store.getters.tagList.filter(ele => ele.label === "审批数据")[0]
+                        this.$store.commit('DEL_TAG', tag1)
+                        this.$router.push({
+                          path: "/approveData/index",
+                          query: {check:'refresh'},
+                        });
+                      }
+                    }).finally(()=>{
+                      this.buttonLoading = false
+                    })
+                  }).catch(()=>{
+                    this.buttonLoading = false
+                  })
+                }
+              }).catch(()=>{
+                this.buttonLoading = false
+              })
+            }else{
+              approvePass(this.checkData).then(res=>{
+                if(res.data.success){
+                  this.$message.success("操作成功!")
+                  this.$emit("choceCheckFun")
+                }
+                if(!this.checkDetail){
+                  //关闭付费申请页面
+                  let tag = this.$store.getters.tagList.filter(ele => ele.label === "付费申请")[0]
+                  this.$store.commit('DEL_TAG', tag)
+                  this.$store.commit("PQ_OUT_DETAIL");
+                  let tag1 = this.$store.getters.tagList.filter(ele => ele.label === "审批数据")[0]
+                  this.$store.commit('DEL_TAG', tag1)
+                  this.$router.push({
+                    path: "/approveData/index",
+                    query: {check:'refresh'},
+                  });
+                }
+              }).finally(()=>{
+                this.buttonLoading = false
+              })
+            }
+          }
+        })
+      }
+    }
+  }
+</script>
+
+<style  lang="scss" scoped>
+  .trading-form ::v-deep .el-form-item {
+    margin-bottom: 8px !important;
+  }
+</style>

+ 178 - 0
src/views/approveDataH/configuration/mainList.json

@@ -0,0 +1,178 @@
+{
+  "lazy": true,
+  "tip": false,
+  "simplePage": true,
+  "searchShow": true,
+  "searchMenuSpan": 24,
+  "dialogWidth": "60%",
+  "align": "center",
+  "height": "auto",
+  "searchSpan": 8,
+  "searchMenuPosition": "right",
+  "border": true,
+  "index": true,
+  "selection": true,
+  "viewBtn": false,
+  "editBtn": false,
+  "delBtn": false,
+  "menuWidth": 180,
+  "stripe": true,
+  "dialogClickModal": false,
+  "searchLabelWidth": 120,
+  "searchIcon": true,
+  "searchIndex": 2,
+  "addBtn": false,
+  "headerAlign": "center",
+  "column": [
+    {
+      "label": "业务类型",
+      "prop": "processType",
+      "searchFilterable": true,
+      "type": "select",
+      "hide": true,
+      "showColumn": false,
+      "props": {
+        "label": "dictValue",
+        "value": "dictKey"
+      },
+      "dicData": [],
+      "search": true,
+      "overHidden": true,
+      "index": 1
+    },
+    {
+      "label": "业务类型",
+      "prop": "checkType",
+      "search": false,
+      "overHidden": true,
+      "width": 100,
+      "index": 2
+    },
+    {
+      "label": "审核状态",
+      "prop": "auditStatus",
+      "type": "select",
+      "dicData": [],
+      "props": {
+        "label": "dictValue",
+        "value": "dictKey"
+      },
+      "search": true,
+      "searchValue": "S",
+      "overHidden": true,
+      "index": 3
+    },
+    {
+      "label": "往来单位",
+      "prop": "corpId",
+      "search": true,
+      "hide": true,
+      "showColumn": false,
+      "overHidden": true,
+      "width": 100,
+      "index": 4
+    },
+    {
+      "label": "往来单位",
+      "prop": "corpsName",
+      "overHidden": true,
+      "width": 100,
+      "index": 5
+    },
+    {
+      "label": "业务编号",
+      "prop": "billNo",
+      "search": true,
+      "overHidden": true,
+      "width": 100,
+      "index": 6
+    },
+    {
+      "label": "申请人",
+      "prop": "sendUserId",
+      "overHidden": true,
+      "search": true,
+      "index": 7,
+      "width": 100,
+      "type": "select",
+      "props": {
+        "label": "name",
+        "value": "id"
+      }
+    },
+    {
+      "label": "申请日期",
+      "prop": "sendTime",
+      "type": "date",
+      "format": "yyyy-MM-dd HH:mm:ss",
+      "valueFormat": "yyyy-MM-dd HH:mm:ss",
+      "unlinkPanels": true,
+      "searchRange": true,
+      "search": true,
+      "overHidden": true,
+      "index": 8,
+      "width": 150
+    },
+    {
+      "label": "业务日期",
+      "prop": "billTime",
+      "type": "date",
+      "format": "yyyy-MM-dd HH:mm:ss",
+      "valueFormat": "yyyy-MM-dd HH:mm:ss",
+      "unlinkPanels": true,
+      "searchRange": true,
+      "overHidden": true,
+      "index": 8,
+      "width": 150
+    },
+    {
+      "label": "业务日期",
+      "prop": "billTimeList",
+      "type": "date",
+      "format": "yyyy-MM-dd HH:mm:ss",
+      "valueFormat": "yyyy-MM-dd HH:mm:ss",
+      "hide" :true,
+      "unlinkPanels": true,
+      "searchRange": true,
+      "search": true,
+      "overHidden": true,
+      "index": 8,
+      "width": 150
+    },
+    {
+      "label": "数量",
+      "prop": "orderQuantity",
+      "overHidden": true,
+      "width": 100,
+      "index": 9
+    },
+    {
+      "label": "金额",
+      "prop": "amount",
+      "overHidden": true,
+      "width": 100,
+      "index": 10
+    },
+    {
+      "label": "应收金额",
+      "prop": "amountReceivable",
+      "overHidden": true,
+      "width": 100,
+      "index": 11
+    },
+    {
+      "label": "毛利",
+      "prop": "grossProfit",
+      "overHidden": true,
+      "width": 100,
+      "index": 11
+    },
+    {
+      "label": "订单备注",
+      "prop": "orderRemark",
+      "overHidden": true,
+      "width": 100,
+      "index": 12
+    }
+  ]
+}

+ 112 - 0
src/views/approveDataH/configuration/mainList2.json

@@ -0,0 +1,112 @@
+{
+  "lazy": true,
+  "tip": false,
+  "simplePage": true,
+  "searchShow": true,
+  "searchMenuSpan": 24,
+  "dialogWidth": "60%",
+  "align": "center",
+  "height": "auto",
+  "searchSpan": 8,
+  "searchMenuPosition": "right",
+  "border": true,
+  "index": true,
+  "selection": true,
+  "viewBtn": false,
+  "editBtn": false,
+  "delBtn": false,
+  "menuWidth": 180,
+  "stripe": true,
+  "dialogClickModal": false,
+  "searchLabelWidth": 120,
+  "searchIcon": true,
+  "searchIndex": 2,
+  "addBtn":false,
+  "headerAlign": "center",
+  "column": [
+    {
+      "label": "业务类型",
+      "prop": "processType",
+      "type": "select",
+      "hide": true,
+      "dicData": [
+        {
+          "label": "小学部工资审批",
+          "value": "小学部工资审批"
+        },
+        {
+          "label": "初中部工资审批",
+          "value": "初中部工资审批"
+        },
+        {
+          "label": "高中部工资审批",
+          "value": "高中部工资审批"
+        },
+        {
+          "label": "后勤部工资审批",
+          "value": "后勤部工资审批"
+        }
+      ],
+      "search": true,
+      "overHidden": true,
+      "width": 200,
+      "index": 1
+    },
+    {
+      "label": "业务类型",
+      "prop": "checkType",
+      "search": false,
+      "overHidden": true,
+      "width": 180,
+      "index": 2
+    },
+    {
+      "label": "审核状态",
+      "prop": "auditStatus",
+      "type": "select",
+      "dicUrl": "/api/blade-system/dict-biz/dictionary?code=auditStatus",
+      "props": {
+        "label": "dictValue",
+        "value": "dictKey"
+      },
+      "search": true,
+      "searchValue": "S",
+      "overHidden": true,
+      "width": 200,
+      "index": 3
+    },
+    {
+      "label": "申请人",
+      "prop": "sendName",
+      "overHidden": true,
+      "search": true,
+      "index": 7,
+      "width": 150
+    },
+    {
+      "label": "申请日期",
+      "prop": "sendTime",
+      "type": "date",
+      "format": "yyyy-MM-dd HH:mm:ss",
+      "valueFormat": "yyyy-MM-dd HH:mm:ss",
+      "unlinkPanels": true,
+      "searchRange": true,
+      "search": true,
+      "overHidden": true,
+      "index": 8,
+      "width":200
+    },{
+      "label": "业务日期",
+      "prop": "billTime",
+      "type": "date",
+      "format": "yyyy-MM-dd HH:mm:ss",
+      "valueFormat": "yyyy-MM-dd HH:mm:ss",
+      "unlinkPanels": true,
+      "searchRange": true,
+      "search": true,
+      "overHidden": true,
+      "index": 8,
+      "width": 150
+    }
+  ]
+}

+ 171 - 0
src/views/approveDataH/configuration/mainList3.json

@@ -0,0 +1,171 @@
+{
+  "lazy": true,
+  "tip": false,
+  "simplePage": true,
+  "searchShow": true,
+  "searchMenuSpan": 24,
+  "dialogWidth": "60%",
+  "align": "center",
+  "height": "auto",
+  "searchSpan": 8,
+  "searchMenuPosition": "right",
+  "border": true,
+  "index": true,
+  "selection": true,
+  "viewBtn": false,
+  "editBtn": false,
+  "delBtn": false,
+  "menuWidth": 180,
+  "stripe": true,
+  "dialogClickModal": false,
+  "searchLabelWidth": 120,
+  "searchIcon": true,
+  "searchIndex": 2,
+  "addBtn": false,
+  "headerAlign": "center",
+  "column": [
+    {
+      "label": "业务类型",
+      "prop": "processType",
+      "searchFilterable": true,
+      "type": "select",
+      "hide": true,
+      "showColumn": false,
+      "props": {
+        "label": "dictValue",
+        "value": "dictKey"
+      },
+      "dicData": [],
+      "search": true,
+      "overHidden": true,
+      "index": 1
+    },
+    {
+      "label": "业务类型",
+      "prop": "checkType",
+      "search": false,
+      "overHidden": true,
+      "width": 100,
+      "index": 2
+    },
+    {
+      "label": "审核状态",
+      "prop": "auditStatus",
+      "type": "select",
+      "dicData": [],
+      "props": {
+        "label": "dictValue",
+        "value": "dictKey"
+      },
+      "search": true,
+      "searchValue": "S",
+      "overHidden": true,
+      "index": 3
+    },
+    {
+      "label": "往来单位",
+      "prop": "corpId",
+      "search": true,
+      "hide": true,
+      "showColumn": false,
+      "overHidden": true,
+      "width": 100,
+      "index": 4
+    },
+    {
+      "label": "往来单位",
+      "prop": "corpsName",
+      "overHidden": true,
+      "width": 100,
+      "index": 5
+    },
+    {
+      "label": "业务编号",
+      "prop": "billNo",
+      "search": true,
+      "overHidden": true,
+      "width": 100,
+      "index": 6
+    },
+    {
+      "label": "申请人",
+      "prop": "sendUserId",
+      "overHidden": true,
+      "search": true,
+      "index": 7,
+      "width": 100,
+      "type": "select",
+      "props": {
+        "label": "name",
+        "value": "id"
+      }
+    },
+    {
+      "label": "申请日期",
+      "prop": "sendTime",
+      "type": "date",
+      "format": "yyyy-MM-dd HH:mm:ss",
+      "valueFormat": "yyyy-MM-dd HH:mm:ss",
+      "unlinkPanels": true,
+      "searchRange": true,
+      "search": true,
+      "overHidden": true,
+      "index": 8,
+      "width": 150
+    },{
+      "label": "业务日期",
+      "prop": "billTime",
+      "type": "date",
+      "format": "yyyy-MM-dd HH:mm:ss",
+      "valueFormat": "yyyy-MM-dd HH:mm:ss",
+      "unlinkPanels": true,
+      "searchRange": true,
+      "search": true,
+      "overHidden": true,
+      "index": 8,
+      "width": 150
+    },
+    {
+      "label": "数量",
+      "prop": "orderQuantity",
+      "overHidden": true,
+      "width": 100,
+      "index": 9
+    },
+    {
+      "label": "金额",
+      "prop": "amount",
+      "overHidden": true,
+      "width": 100,
+      "index": 10
+    },
+    {
+      "label": "应收金额",
+      "prop": "amountReceivable",
+      "overHidden": true,
+      "width": 100,
+      "index": 11
+    },
+    {
+      "label": "利润率",
+      "prop": "grossProfitRate",
+      "overHidden": true,
+      "width": 100,
+      "index": 12
+    },
+    {
+      "label": "利润",
+      "prop": "grossProfit",
+      "overHidden": true,
+      "width": 100,
+      "index": 13
+    },
+    {
+      "label": "订单备注",
+      "prop": "orderRemark",
+      "overHidden": true,
+      "width": 100,
+      "index": 14
+    }
+  ]
+}

+ 178 - 0
src/views/approveDataH/configuration/mainList4.json

@@ -0,0 +1,178 @@
+{
+  "lazy": true,
+  "tip": false,
+  "simplePage": true,
+  "searchShow": true,
+  "searchMenuSpan": 24,
+  "dialogWidth": "60%",
+  "align": "center",
+  "height": "auto",
+  "searchSpan": 8,
+  "searchMenuPosition": "right",
+  "border": true,
+  "index": true,
+  "selection": true,
+  "viewBtn": false,
+  "editBtn": false,
+  "delBtn": false,
+  "menuWidth": 180,
+  "stripe": true,
+  "dialogClickModal": false,
+  "searchLabelWidth": 120,
+  "searchIcon": true,
+  "searchIndex": 2,
+  "addBtn": false,
+  "headerAlign": "center",
+  "column": [
+    {
+      "label": "业务类型",
+      "prop": "processType",
+      "searchFilterable": true,
+      "type": "select",
+      "hide": true,
+      "showColumn": false,
+      "props": {
+        "label": "dictValue",
+        "value": "dictKey"
+      },
+      "dicData": [],
+      "search": true,
+      "overHidden": true,
+      "index": 1
+    },
+    {
+      "label": "业务类型",
+      "prop": "checkType",
+      "search": false,
+      "overHidden": true,
+      "width": 100,
+      "index": 2
+    },
+    {
+      "label": "审核状态",
+      "prop": "auditStatus",
+      "type": "select",
+      "dicData": [],
+      "props": {
+        "label": "dictValue",
+        "value": "dictKey"
+      },
+      "search": true,
+      "searchValue": "S",
+      "overHidden": true,
+      "index": 3
+    },
+    {
+      "label": "往来单位",
+      "prop": "corpId",
+      "search": true,
+      "hide": true,
+      "showColumn": false,
+      "overHidden": true,
+      "width": 100,
+      "index": 4
+    },
+    {
+      "label": "往来单位",
+      "prop": "corpsName",
+      "overHidden": true,
+      "width": 100,
+      "index": 5
+    },
+    {
+      "label": "业务编号",
+      "prop": "billNo",
+      "search": true,
+      "overHidden": true,
+      "width": 100,
+      "index": 6
+    },
+    {
+      "label": "申请人",
+      "prop": "sendUserId",
+      "overHidden": true,
+      "search": true,
+      "index": 7,
+      "width": 100,
+      "type": "select",
+      "props": {
+        "label": "name",
+        "value": "id"
+      }
+    },
+    {
+      "label": "申请日期",
+      "prop": "sendTime",
+      "type": "date",
+      "format": "yyyy-MM-dd HH:mm:ss",
+      "valueFormat": "yyyy-MM-dd HH:mm:ss",
+      "unlinkPanels": true,
+      "searchRange": true,
+      "search": true,
+      "overHidden": true,
+      "index": 8,
+      "width": 150
+    },{
+      "label": "业务日期",
+      "prop": "billTime",
+      "type": "date",
+      "format": "yyyy-MM-dd HH:mm:ss",
+      "valueFormat": "yyyy-MM-dd HH:mm:ss",
+      "unlinkPanels": true,
+      "searchRange": true,
+      "search": true,
+      "overHidden": true,
+      "index": 8,
+      "width": 150
+    },
+    {
+      "label": "数量",
+      "prop": "orderQuantity",
+      "overHidden": true,
+      "width": 100,
+      "index": 9
+    },
+    {
+      "label": "金额",
+      "prop": "amount",
+      "overHidden": true,
+      "width": 100,
+      "index": 10
+    },
+    {
+      "label": "提单号",
+      "prop": "morderNo",
+      "overHidden": true,
+      "width": 100,
+      "index": 11
+    },
+    {
+      "label": "箱号",
+      "prop": "caseNo",
+      "overHidden": true,
+      "width": 100,
+      "index": 11
+    },
+    {
+      "label": "应收金额",
+      "prop": "amountReceivable",
+      "overHidden": true,
+      "width": 100,
+      "index": 12
+    },
+    {
+      "label": "应付金额",
+      "prop": "payAmount",
+      "overHidden": true,
+      "width": 100,
+      "index": 13
+    },
+    {
+      "label": "订单备注",
+      "prop": "orderRemark",
+      "overHidden": true,
+      "width": 100,
+      "index": 14
+    }
+  ]
+}

+ 345 - 0
src/views/approveDataH/index.vue

@@ -0,0 +1,345 @@
+<template>
+  <basic-container>
+    <avue-crud :option="option" :data="dataList" ref="crud" v-model="form" :page.sync="page" :search.sync="search"
+      :table-loading="loading" :cell-style="cellStyle" @search-change="searchChange" @search-reset="searchReset"
+      @selection-change="selectionChange" @current-change="currentChange" @size-change="sizeChange"
+      @refresh-change="refreshChange" @on-load="onLoad">
+      <template slot="corpIdSearch">
+<!--        <select-component v-model="search.corpId" :configuration="configuration"></select-component>-->
+        <el-select v-model="search.corpId" clearable placeholder="请选择">
+          <el-option
+            v-for="item in corpsList"
+            :key="item.id"
+            :label="item.cname"
+            :value="item.id">
+          </el-option>
+        </el-select>
+      </template>
+      <template slot-scope="scope" slot="checkType">
+        <span v-if="scope.row.checkType == 'ffsq'">付费申请</span>
+        <span v-else-if="scope.row.checkType == 'xsqh'">销售请核</span>
+        <span v-else-if="scope.row.checkType == 'cgqh'">采购请核</span>
+        <span v-else-if="scope.row.checkType == 'xsgz'">小学部工资审批</span>
+        <span v-else-if="scope.row.checkType == 'czgz'">初中部工资审批</span>
+        <span v-else-if="scope.row.checkType == 'gzgz'">高中部工资审批</span>
+        <span v-else-if="scope.row.checkType == 'hqgz'">后勤工资审批</span>
+        <span v-else-if="scope.row.checkType == 'yrygz'">幼儿园工资审批</span>
+        <span v-else-if="scope.row.checkType == 'yryhqgz'">幼儿园后勤工资审批</span>
+        <span v-else-if="scope.row.checkType == 'ocg'">办公用品采购审批</span>
+        <span v-else-if="scope.row.checkType == 'oly'">办公用品领用审批</span>
+        <span v-else-if="scope.row.checkType == 'fybx'">费用报销审批</span>
+        <span v-else-if="scope.row.checkType == 'jjd'">交接单审批</span>
+        <span v-else-if="scope.row.checkType == 'xstpqh'">销售特批请核</span>
+        <span v-else-if="scope.row.checkType == 'dldd'">代理订单请核</span>
+        <span v-else-if="scope.row.checkType == 'xsjh'">销售机会请核</span>
+        <span v-else-if="scope.row.checkType == 'RK'">入库管理审核</span>
+        <span v-else-if="scope.row.checkType == 'CK'">出库管理审核</span>
+        <span v-else-if="scope.row.checkType == 'PD'">库内盘点审核</span>
+        <span v-else-if="scope.row.checkType == 'rzgl'">融资管理审核</span>
+        <span v-else-if="scope.row.checkType == 'BUY'">买箱审核</span>
+        <span v-else-if="scope.row.checkType == 'SELL'">卖箱审核</span>
+        <span v-else-if="scope.row.checkType == 'CKZY'">出口装运</span>
+        <span v-else-if="scope.row.checkType == 'JKFC'">进口返程</span>
+        <span v-else-if="scope.row.checkType == 'REPAIR'">修箱</span>
+        <span v-else-if="scope.row.checkType == 'WASH'">洗箱</span>
+        <span v-else-if="scope.row.checkType == 'BGJK'">报关进口</span>
+        <span v-else-if="scope.row.checkType == 'BGCK'">报关出口</span>
+        <span v-else-if="scope.row.checkType == 'YPJ-XS'">易配件销售</span>
+        <span v-else-if="scope.row.checkType == 'YPJ-CG'">易配件采购</span>
+        <span v-else-if="scope.row.checkType == 'YPJ-XSJH'">销售计划</span>
+        <span v-else-if="scope.row.checkType == 'ZR'">租入</span>
+        <span v-else-if="scope.row.checkType == 'ZC'">租出</span>
+        <span v-else-if="scope.row.checkType == 'HYCK-DJ'">海运出口</span>
+        <span v-else-if="scope.row.checkType == 'HYCK-FY'">海运出口费用</span>
+        <span v-else-if="scope.row.checkType == 'HYJK-DJ'">海运进口</span>
+        <span v-else-if="scope.row.checkType == 'HYJK-FY'">海运进口费用</span>
+        <span v-else-if="scope.row.checkType == 'XSTD'">销售退单请核</span>
+        <span v-else-if="scope.row.checkType == 'YPJ-XSTH'">销售退款退货</span>
+        <span v-else-if="scope.row.checkType == 'PJTK'">售后</span>
+        <span v-else-if="scope.row.checkType == 'PJCG'">采购</span>
+      </template>
+      <!-- <template slot="menuLeft">
+        <el-button size="small" type="success" :disabled="selectionList.length == 0" @click.stop="batchCheck">批量审批
+        </el-button>
+      </template> -->
+      <template slot-scope="scope" slot="menu">
+        <el-button type="text" size="small" :disabled="scope.row.operate" @click.stop="jumpPage(scope.row)">查看
+        </el-button>
+        <el-button type="text" size="small" :disabled="scope.row.auditStatus != 'S'" @click.stop="openCheck(scope.row)">
+          审批
+        </el-button>
+        <el-button type="text" size="small" @click.stop="openCheckSchedule(scope.row)">审批流程
+        </el-button>
+      </template>
+    </avue-crud>
+    <el-dialog append-to-body title="审批进度" class="el-dialogDeep" :visible.sync="checkScheduleDialog" width="40%"
+      :close-on-click-modal="false" :destroy-on-close="true" :close-on-press-escape="false" v-dialog-drag>
+      <check-schedule :checkId="checkId" :batchNo="batchNo" @choceScheduleFun="choceScheduleFun">
+      </check-schedule>
+    </el-dialog>
+    <el-dialog append-to-body title="审批" class="el-dialogDeep" :visible.sync="checkDialog" width="50%"
+      :close-on-click-modal="false" :destroy-on-close="true" :close-on-press-escape="false" v-dialog-drag>
+      <check :checkData="checkData" :checkDetail="true" :idList="idList" @operationType="operationType"
+        @choceCheckFun="choceCheckFun">
+      </check>
+    </el-dialog>
+  </basic-container>
+</template>
+
+<script>
+import option from "./configuration/mainList.json";
+import option2 from "./configuration/mainList2.json";
+import option3 from "./configuration/mainList3.json";
+import option4 from "./configuration/mainList4.json";
+import { getList, approvePass, financingExcess } from "@/api/approveDataH/main";
+import checkSchedule from "@/components/checkL/checkSchedule";
+import check from "./check";
+import { getUserInfo } from "@/api/system/user";
+import { gainUser } from "@/api/basicData/customerInquiry";
+import {corpsDescListAll} from "../../api/tirePartsMall/salesManagement/saleOrder";
+let previousRouterName = "";
+let checkRefresh = "";
+export default {
+  components: {
+    check,
+    checkSchedule
+  },
+  data() {
+    return {
+      corpsList: [],
+      loading: false,
+      form: {},
+      search: {},
+      show: true,
+      checkDialog: false,
+      checkId: "",
+      batchNo: "",
+      checkScheduleDialog: false,
+      detailData: {},
+      option: {},
+      parentId: 0,
+      checkData: {},
+      dataList: [],
+      idList: [],
+      selectionList: [],
+      page: {
+        pageSize: 10,
+        pagerCount: 5,
+        total: 0
+      },
+      query: {},
+      configuration: {
+        multipleChoices: false,
+        multiple: false,
+        disabled: false,
+        searchShow: true,
+        collapseTags: false,
+        clearable: true,
+        placeholder: "请点击右边按钮选择",
+        dicData: []
+      }
+    };
+  },
+  created() {
+    getUserInfo().then(res => {
+      if (res.data.data.billType == 1) {
+        this.option = option2;
+      } else {
+        if (this.$store.getters.userInfo.tenant_id === "681169") {
+          this.option = option3;
+        }else if (this.$store.getters.userInfo.tenant_id === "673511") {
+          this.option = option4;
+        }else if (this.$store.getters.userInfo.tenant_id === "064132") {
+          this.option = option4;
+        } else {
+          this.option = option;
+        }
+        console.log(this.option);
+      }
+      this.getWorkDicts("auditStatus").then(res => {
+        this.findObject(this.option.column, "auditStatus").dicData =
+          res.data.data;
+      });
+      gainUser().then(res => {
+        this.findObject(this.option.column, "sendUserId").dicData =
+          res.data.data;
+      });
+      this.getWorkDicts("tire_audit").then(res => {
+        this.findObject(this.option.column, "processType").dicData =
+          res.data.data;
+      });
+    });
+    // 供应商
+    // corpsDescListAll({corpType: "GYS"}).then(res => {
+    //   this.corpsList = res.data.data
+    // })
+  },
+  mounted() {
+    // option.height = window.innerHeight - 200 ;
+  },
+  activated() {
+    if (this.$route.query.check === "refresh") {
+      this.onLoad(this.page, this.search);
+    }
+  },
+  methods: {
+    batchCheck() {
+      for (let i = 0; i < this.selectionList.length; i++) {
+        if (this.selectionList[i].auditStatus != "S") {
+          return this.$message.error("审核状态必须都为待审核状态!");
+        } else {
+          this.idList.push(this.selectionList[i].id);
+        }
+      }
+      //打开cheack
+      this.checkDialog = true;
+    },
+    operationType() {
+      this.checkDialog = false;
+      this.refreshChange();
+      this.idList = [];
+    },
+    //跳转页面
+    jumpPage(row) {
+      console.log('row',row);
+      console.log(eval("(" + row.pageStatus + ")"))
+      if (row.url) {
+        if (eval("(" + row.pageStatus + ")")) {
+          this.$alert(
+            "" +
+            row.pageLabel +
+            "页面已存在,请关闭" +
+            row.pageLabel +
+            "页面再进行操作",
+            "温馨提示",
+            {
+              confirmButtonText: "确定",
+              type: "warning",
+              callback: action => { }
+            }
+          );
+        } else {
+          this.$router.$avueRouter.closeTag(row.url);
+          this.$router.push({
+            path: row.url,
+            query: { check: row }
+          });
+        }
+      }
+    },
+    //审批通过
+    pass(row, operate) {
+      row.operate = operate;
+      this.loading = true;
+      approvePass(row)
+        .then(res => {
+          this.$message.success("操作成功!");
+          this.refreshChange();
+        })
+        .finally(() => {
+          this.loading = false;
+        });
+    },
+    openCheck(row) {
+      if (row.checkType == 'CK') {
+        financingExcess({ id: row.corpId }).then(res => {
+          if (res.data.data == '操作成功') {
+            this.batch = false; //单条操作
+            this.checkDialog = true;
+            this.checkData = row;
+          } else {
+            this.$confirm(res.data.data, {
+              confirmButtonText: "确定",
+              cancelButtonText: "取消",
+              type: "warning"
+            }).then(() => {
+              this.batch = false; //单条操作
+              this.checkDialog = true;
+              this.checkData = row;
+            })
+          }
+        })
+      } else {
+        this.batch = false; //单条操作
+        this.checkDialog = true;
+        this.checkData = row;
+      }
+    },
+    choceCheckFun() {
+      this.checkDialog = false;
+      this.refreshChange();
+    },
+    openCheckSchedule(row) {
+      this.checkId = row.srcBillId;
+      this.batchNo = row.batchNo;
+      this.checkScheduleDialog = true;
+    },
+    //关闭审批流程页面
+    choceScheduleFun() {
+      this.checkScheduleDialog = false;
+    },
+    //新单打开
+    addReceipt(row) { },
+    //编辑打开
+    editOpen(row, status) {
+      this.detailData = {
+        id: row.id,
+        status: status
+      };
+      this.show = false;
+    },
+    //点击搜索按钮触发
+    searchChange(params, done) {
+      this.query = params;
+      this.page.currentPage = 1;
+      this.onLoad(this.page, params);
+      done();
+    },
+    searchReset() {
+      console.log("1");
+    },
+    selectionChange(list) {
+      this.idList = []
+      this.selectionList = list;
+    },
+    currentChange(val) {
+      this.page.currentPage = val;
+    },
+    sizeChange() {
+      console.log("1");
+    },
+    refreshChange(params) {
+      this.onLoad(this.page, params);
+    },
+    paramsAdjustment(params) {
+      params = Object.assign({}, this.search);
+      if (!params.auditStatus && params.auditStatus !== "") {
+        params.auditStatus = "S";
+      }
+      return params;
+    },
+    onLoad(page, params) {
+      this.loading = true;
+      params = this.paramsAdjustment(params);
+      if (params.sendTime) {
+        params.applybegintime = params.sendTime[0]
+        params.applyendtime = params.sendTime[1]
+        delete params.sendTime
+      }
+      getList(page.currentPage, page.pageSize, params).then(res => {
+        this.dataList = res.data.data.records;
+        this.page.total = res.data.data.total;
+      }).finally(() => {
+        this.loading = false;
+      });
+    },
+    cellStyle() {
+      return "padding:0;height:40px;";
+    }
+  }
+};
+</script>
+
+<style scoped>
+
+</style>

+ 1 - 1
src/views/iosBasicData/SeafreightExportF/bills/assembly/DistributionBox/containers.vue

@@ -24,7 +24,7 @@
                 <el-button type="danger" size="small" :disabled="detailData.seeDisabled" @click="wholeRevokefun">全部撤销</el-button>
                 <el-button type="warning" size="small" :disabled="detailData.seeDisabled" @click="cleanCntrNofun">清除箱号</el-button>
                 <el-button type="warning" size="small"
-                           :disabled="assemblyForm.billType != 'DD' && numberfalsefun()"
+                           :disabled="numberfalsefun() || assemblyForm.id"
                            @click="equalDistribution">平均分配</el-button>
             </div>
             <!--<div>-->

+ 0 - 1
src/views/iosBasicData/SeafreightExportF/bills/assembly/EntrustmentLnformation.vue

@@ -996,7 +996,6 @@ import Vue from "vue";
                             if (name == 'pol') {
                                 this.$set(this.assemblyForm,'issueAt',this.assemblyForm.polCnName)
                             }
-
                         }
                     }
                 }

+ 5 - 1
src/views/iosBasicData/SeafreightExportF/bills/assembly/feecenter.vue

@@ -326,7 +326,11 @@
                 <el-col :span="15">
                     <el-button type="danger" plain size="small"
                                :disabled="!selectionCList.length" @click="batchDelete('C')">批量删除</el-button>
-                    <el-button type="primary" plain size="small">应付账单</el-button>
+                    <el-button type="primary" plain size="small"
+                               :disabled="!selectionCList.length" @click="GenerateBillsfun('C')" >应付账单</el-button>
+                    <el-button type="danger" plain size="small"
+                               :disabled="!selectionCList.length" @click="RevokingBillsfun('C')">撤销账单
+                    </el-button>
                     <el-button type="success" plain size="small" :disabled="!this.assemblyForm.id" @click="templateClick('C')">应付模板</el-button>
                 </el-col>
             </el-row>

+ 6 - 4
src/views/iosBasicData/SeafreightExportF/bills/assembly/filescenter.vue

@@ -25,13 +25,14 @@
                    size="small"
                    icon="el-icon-plus"
                    plain
-                   :disabled="!assemblyForm.id"
+                   :disabled="!assemblyForm.id || detailData.seeDisabled"
                    @click="addBtnfun">新 增
         </el-button>
         <el-button type="danger"
                    size="small"
                    icon="el-icon-delete"
                    plain
+                   :disabled="detailData.seeDisabled || selectionList.length"
                    @click="handleDelete">删 除
         </el-button>
       </template>
@@ -43,9 +44,11 @@
                        @click="rowCell(row, index)">保 存
             </el-button>
             <el-button v-else size="small" icon="el-icon-edit" type="text"
+                       :disabled="detailData.seeDisabled"
                        @click="rowEdit(row, index)">修 改
             </el-button>
             <el-button size="small" icon="el-icon-delete" type="text"
+                       :disabled="detailData.seeDisabled"
                        @click="rowDel(row, index)">删 除
             </el-button>
         </template>
@@ -74,6 +77,7 @@
                 附件
             </el-button>
             <span v-else>{{ scope.row.url }}</span>
+
         </template>
         <template slot-scope="scope" slot="isImage">
             <el-select v-if="scope.row.edit" v-model="scope.row.isImage" size="small" placeholder="请选择">
@@ -135,7 +139,6 @@
   import {filescenterList, filescenterDetail, filescenterSubmit, filescenterRemove} from "@/api/iosBasicData/filescenter";
   import {mapGetters} from "vuex";
   import {requiredMessage} from "@/util/messageReminder";
-  import Vue from "vue";
 
   export default {
       props:{
@@ -300,7 +303,7 @@
         return ids.join(",");
       }
     },
-    methods: {
+      methods: {
           // 新增
         addBtnfun(){
             this.assemblyForm.filesList.push({
@@ -328,7 +331,6 @@
         },
         // 预览
         rowPreview(row,index){
-            console.log(row,315)
             this.imgUrl = row.url
             this.urlVisible = true
         },