Browse Source

Merge remote-tracking branch 'origin/master'

ZaiZai 2 years ago
parent
commit
bace926fc9

+ 14 - 0
src/api/modules/attendance/business-trip.js

@@ -0,0 +1,14 @@
+import {httpApi} from "../../request/httpApi";
+
+export default {
+    //获取分页
+    async getPage(form, msg = true) {
+        return httpApi({
+            url: '/api/blade-control/projectCostBudgetStats/page',
+            method: 'get',
+            params: form
+        }, msg);
+    },
+   
+}
+

+ 32 - 0
src/api/modules/project/project-contract.js

@@ -41,4 +41,36 @@ export default {
             params: form
         }, msg);
     },
+      //新增合同
+    async addContractInfo(form, msg = true) {
+        return httpApi({
+            url: '/api/blade-control/contractInfo/addContractInfo',
+            method: 'post',
+            data: form
+        }, msg);
+    },
+    //修改合同
+    async updateContractInfo(form, msg = true) {
+        return httpApi({
+            url: '/api/blade-control/contractInfo/updateContractInfo',
+            method: 'post',
+            data: form
+        }, msg);
+    },
+    //回款更新
+    async getReturnList(form, msg = true) {
+        return httpApi({
+            url: '/api/blade-control/contractInfo/getList',
+            method: 'get',
+            params: form
+        }, msg);
+    },
+    //修改合同回款信息
+    async saveOrUpdateBatchReturned(form, msg = true) {
+        return httpApi({
+            url: '/api/blade-control/contractReturnedInfo/saveOrUpdateBatchReturned',
+            method: 'post',
+            data: form
+        }, msg);
+    },
 }

+ 12 - 0
src/api/modules/system/parameter.js

@@ -35,3 +35,15 @@ export const getDictInfo = (code, msg = false) => httpApi({
         code
     }
 }, msg);
+//参数配置审批流程列表
+export const getApproveList = (form, msg = false) => httpApi({
+    url: '/api/blade-control/approve/data/dict/list',
+    method: 'get',
+    params: form
+}, msg);
+//参数配置流程提交
+export const submitApproveList = (form, msg = false) => httpApi({
+    url: '/api/blade-control/approve/data/dict/submit',
+    method: 'post',
+    data: form
+}, msg);

+ 19 - 8
src/views/attendance/business-trip/index.vue

@@ -31,7 +31,7 @@
                     <span>新增出差申请</span>
          </el-button>
     </template>
-    <HcTable :column="tableColumn" :datas="tableData" >
+    <HcTable :column="tableColumn" :datas="tableData" :loading="tableLoading">
       <template #action="{row, index}">
          <el-button hc-btn type="primary" size="small">撤销</el-button>
        </template>
@@ -56,13 +56,16 @@
 </template>
 
 <script setup>
-import {ref, watch} from  'vue'
+import {ref, watch,onMounted} from  'vue'
 import dayjs from "dayjs"
 import 'dayjs/locale/zh-cn'
 import {useRouter} from 'vue-router'
 import {getTokenHeader} from "~src/api/request/header";
+import businessApi from '~api/attendance/business-trip.js';
 const router = useRouter()
-
+onMounted(()=>{
+  getTableData()
+})
 
 const tableColumn = [
     {key: 'name', name: '出差事由'},
@@ -74,7 +77,7 @@ const tableColumn = [
     {key: 'key8', name: '审批状态'},
     {key: 'key9', name: '创建人'},
     {key: 'key10', name: '创建时间'},
-    {key: 'action', name: '操作',widths:100},
+    {key: 'action', name: '操作'  }
 
 
 ]
@@ -97,11 +100,19 @@ const pageChange = ({current, size}) => {
     searchForm.value.size = size
     getTableData()
 }
-
-const getTableData = () => {
-
+const tableLoading=ref(false)
+const getTableData = async() => {
+    tableLoading.value = true
+    const {error, code, data} = await businessApi.getPage(searchForm.value)
+    tableLoading.value = false
+    if (!error && code === 200) {
+        tableData.value = getArrValue(data)
+        searchForm.value.total = data['total'] || 0
+    } else {
+        tableData.value = []
+        searchForm.value.total = 0
+    }
 }
-
 //搜索
 const searchClick = () => {
     searchForm.value.current = 1;

+ 33 - 42
src/views/project/contract/components/base.vue

@@ -20,19 +20,19 @@
                   
                         <el-form-item label="合同类型:" prop="contractType">
                                     <el-select v-model="formBaseModel.contractType" block clearable placeholder="合同类型:">
-                                        <el-option v-for="item in contractType" :label="item.dictName" :value="item.dictValue"/>
+                                        <el-option v-for="item in contractTypeval" :label="item.dictName" :value="item.dictValue"/>
                                     </el-select>
                         </el-form-item>
                         <el-form-item label="所属项目:" prop="projectId" block clearable placeholder="所属项目:">
                             <el-select block v-model="formBaseModel.projectId">
-                                <el-option v-for="item in projectList" :label="item.name" :value="item.id"/>
+                                <el-option v-for="item in projectListval" :label="item.name" :value="item.id"/>
                             </el-select>
                         </el-form-item>
                         <el-form-item label="签订时间:" prop="contractSignTime">
-                            <el-date-picker class="block" v-model="formBaseModel.contractSignTime" format="YYYY-MM-DD" type="date" value-format="YYYY-MM-DD"/>
+                            <el-date-picker class="block" v-model="formBaseModel.contractSignTime" format="YYYY-MM-DD" type="date" value-format="YYYY-MM-DD"  />
                         </el-form-item>
                         <el-form-item label="合同起止日期:" >
-                            <HcDatePicker :dates="betweenTime" clearable :disabled="isDisabled" @change="betweenTimeUpdate"/>
+                            <HcDatePicker :dates="betweenTime" clearable  @change="betweenTimeUpdate"/>
                         </el-form-item>
                         <el-form-item label="对方单位回款联系人名称:">
                             <el-input v-model="formBaseModel.returnedUserName"/>
@@ -107,8 +107,7 @@
 <script setup>
 import {ref, watch,onActivated} from "vue";
 import {useRouter,useRoute} from 'vue-router'
-import contractApi from '~api/project/project-contract.js';
-import {getArrValue} from "js-fast-way"
+
 
 const router = useRouter()
 const useRoutes = useRoute()
@@ -126,46 +125,54 @@ const props = defineProps({
     saveLoaing:{
         type: Boolean,
         default: false
-    }
+    },
+    contractType:{
+        type:Array,
+        default:()=>([])
+    },
+    projectList:{
+        type:Array,
+        default:()=>([])
+    },
+ 
 })
 
 const infoData = ref(props.datas)
 const isDisabled = ref(props.disabled)
 const saveLoaingVal=ref(props.saveLoaing)
 const formBaseModel = ref(props.datas)
+//获取合同类型
+const contractTypeval=ref(props.contractType)
+
+//所属项目projectList
+const projectListval=ref(props.projectList)
 
 //深度监听
 watch(() => [
     props.datas,
     formBaseModel
 ], ([datas,val]) => {
+    console.log(val,'val');
     emit('update:datas', val)
     infoData.value = datas
     formBaseModel.value=datas
-    betweenTime.value[0]=datas['startTime']
-    betweenTime.value[1]=datas['endTime']
+    betweenTime.value[0]=val.value['startTime']
+    betweenTime.value[1]=val.value['endTime']
 }, {deep: true})
 
 //监听
 watch(() => [
     props.disabled,
     props.saveLoaing,
-], ([disabled,saveLoaing]) => {
+    props.contractType,
+    props.projectList
+], ([disabled,saveLoaing,contractType,projectList]) => {
     isDisabled.value = disabled
     saveLoaingVal.value=saveLoaing
+    contractTypeval.value=contractType
+    projectListval.value=projectList
 })
-onActivated(()=>{
-    dataType.value = useRoutes?.query?.type ?? ''
-    getContractType()
-    if( dataType.value=='add'){
-        getProjectList(1)
-    }else{
-        getProjectList(2)
-    }
-   
-    
 
-})
 //基础表单
 const formBaseRef = ref(null)
 
@@ -176,9 +183,11 @@ const formBaseRules = {
 }
 
 //日期时间被选择
-const betweenTime = ref([])
+const betweenTime = ref([ infoData.value['startTime'],infoData.value['endTime']])
 const betweenTimeUpdate = ({arr, query}) => {
     betweenTime.value = arr
+    formBaseModel.value.startTime=arr[0]
+    formBaseModel.value.endTime=arr[1]
 }
 
 
@@ -201,26 +210,8 @@ const saveClick = () => {
  
 
 }
-//获取合同类型
-const contractType=ref([])
-const getContractType=async()=>{
-    const {error, code, data} = await contractApi.getContractTypeDict()
-    if (!error && code === 200) {
-        contractType.value=getArrValue(data)
-    } else {
-        contractType.value=[]
-    }
-}
-//所属项目projectList
-const projectList=ref([])
-const getProjectList=async(type)=>{
-    const {error, code, data} = await contractApi.getNoConnectionProject({type})
-    if (!error && code === 200) {
-        projectList.value=getArrValue(data)
-    } else {
-        projectList.value=[]
-    }
-}
+
+
 </script>
 
 <style scoped lang="scss">

+ 21 - 4
src/views/project/contract/components/milestone.vue

@@ -1,5 +1,14 @@
 <template>
     <HcCard actionUi="text-center">
+        <template #extra>
+            <div v-if="infoData.length===0">
+                <el-button size="small" type="primary" :disabled="isDisabled" @click="addRow">
+                    <HcIcon name="add"/>
+                    <span>新增</span>
+                </el-button>
+            </div>
+          
+        </template>
         <HcTable :column="tableColumn" :datas="infoData">
             <template #returnedCondition="{row,index}">
                 <span v-if="isDisabled">{{row.returnedCondition}}</span>
@@ -28,11 +37,11 @@
                  </el-select>
             </template>
             <template #action="{row,index}">
-                <el-button size="small" type="primary" :disabled="isDisabled">
+                <el-button size="small" type="primary" :disabled="isDisabled"  @click="addRow">
                     <HcIcon name="add"/>
                     <span>新增</span>
                 </el-button>
-                <el-button size="small" type="danger" :disabled="isDisabled">
+                <el-button size="small" type="danger" :disabled="isDisabled"  @click="delRow(index)">
                     <HcIcon name="delete-bin"/>
                     <span>删除</span>
                 </el-button>
@@ -58,11 +67,12 @@ import {useRouter} from 'vue-router'
 
 const router = useRouter()
 const emit= defineEmits(['saveClick',"update:datas"])
+
 //参数
 const props = defineProps({
     datas: {
         type: Array,
-        default: () => ([{}])
+        default: () => ([])
     },
     disabled: {
         type: Boolean,
@@ -83,6 +93,7 @@ watch(() => [
     props.datas,
     infoData
 ], ([datas,infoData]) => {
+   console.log(datas,'datas');
     infoData.value = datas
     emit('update:datas', infoData)
 
@@ -119,7 +130,13 @@ const goBackClick = () => {
 //催款执行人reminderUserList
 const reminderUserList=ref([])
 
-
+const addRow=()=>{
+    infoData.value.push({})
+}
+const delRow=(index)=>{
+    infoData.value.splice(index, 1)
+ 
+}
 
 //提交保存
 const saveClick = () => {

+ 62 - 3
src/views/project/contract/form.vue

@@ -1,7 +1,7 @@
 <template>
     <HcTabsSimple :cur="tabsKey" :datas="tabsData" @tabClick="tabsClick">
         <template #tab-base>
-            <baseTabCard :datas="infoData" :disabled="dataType === 'view'" v-if="tabsKey === 'base'" @saveClick="saveClick" :saveLoaing="saveLoaing"/>
+            <baseTabCard :datas="infoData" :disabled="dataType === 'view'" v-if="tabsKey === 'base'" @saveClick="saveClick" :saveLoaing="saveLoaing" :contractType="contractType" :projectList="projectList"/>
         </template>
         <template #tab-file>
             <fileTabCard :datas="infoDataFile" :disabled="dataType === 'view'" v-if="tabsKey === 'file'" @saveClick="saveClick"  :saveLoaing="saveLoaing"/>
@@ -37,14 +37,19 @@ onActivated(() => {
     dataId.value = useRoutes?.query?.id ?? ''
     dataType.value = useRoutes?.query?.type ?? ''
     setTabsData()
+    getContractType()
     if(dataType.value!=='add'){
         getContractInfoById()
         getListByContractId()
+        getProjectList(2)
     }else if(dataType.value=='add'){
         infoData.value={}
         infoDataFile.value={}
         milestoneData.value=[{}]
+        getProjectList(1)
     }
+
+ 
 })
 const infoDataFile=ref({pdfUrl:''})
 //获取详情
@@ -52,7 +57,7 @@ const getContractInfoById=async()=>{
     const {error, code, data} = await contractApi.getContractInfoById({id: dataId.value})
     if (!error && code === 200) {
         infoData.value=getObjValue(data)
-        infoDataFile.value.pdfUrl=infoData.contractAccessory
+        infoDataFile.value.pdfUrl=infoData.value.contractAccessory
 
     } else {
         infoData.value={}
@@ -87,13 +92,16 @@ const tabsData = ref([
 ])
 const tabsClick = (key) => {
     tabsKey.value = key
+    if(tabsKey.value=='base'){
+        console.log(infoData.value,'基础信息');
+    }
 
 }
 
 
 const isNoDropShadow = ref(false)
 //合同里程碑
-const milestoneData=ref([{}])
+const milestoneData=ref([])
 const getListByContractId=async()=>{
     const {error, code, data} = await contractApi.getListByContractId({contractId: dataId.value})
     if (!error && code === 200) {
@@ -112,7 +120,58 @@ const saveClick=(info,type)=>{
   console.log(infoData.value,'indo11111');
   console.log(infoDataFile.value,'infoDataFile');
   console.log(milestoneData.value,'milestoneData');
+  let saveobj={...infoData.value}
+  saveobj.contractAccessory=infoDataFile.value.pdfUrl
+  saveobj.list=milestoneData.value
+
+    if (dataId.value.length>0) {
+        saveobj.id=dataId.value
+        updateContractInfo(saveobj)
+    }else{
+        addContractInfo(saveobj)
+    }
 
 }
+//新增合同
+const addContractInfo=async(obj)=>{
+    console.log(obj,'新增');
+    saveLoaing.value=true;
+    const {error, code, data,msg} = await contractApi.addContractInfo( obj)
+    saveLoaing.value=false;
+    if (!error && code === 200) {
+        window.$message.success(msg)
+    } 
 
+}
+//修改合同
+const updateContractInfo=async(obj)=>{
+    console.log(obj,'编辑');
+    saveLoaing.value=true;
+    const {error, code, data,msg} = await contractApi.updateContractInfo( obj)
+    saveLoaing.value=false;
+    if (!error && code === 200) {
+       window.$message.success(msg)
+    } 
+
+}
+//获取合同类型
+const contractType=ref([])
+const getContractType=async()=>{
+    const {error, code, data} = await contractApi.getContractTypeDict()
+    if (!error && code === 200) {
+        contractType.value=getArrValue(data)
+    } else {
+        contractType.value=[]
+    }
+}
+//所属项目projectList
+const projectList=ref([])
+const getProjectList=async(type)=>{
+    const {error, code, data} = await contractApi.getNoConnectionProject({type})
+    if (!error && code === 200) {
+        projectList.value=getArrValue(data)
+    } else {
+        projectList.value=[]
+    }
+}
 </script>

+ 4 - 1
src/views/project/contract/index.vue

@@ -58,12 +58,15 @@
 </template>
 
 <script setup>
-import {ref,onMounted} from "vue";
+import {ref,onMounted,onActivated} from "vue";
 import {useRouter} from 'vue-router'
 import contractApi from '~api/project/project-contract.js';
 import {getArrValue} from "js-fast-way"
 
 const router = useRouter()
+onActivated(()=>{
+    getTableData()
+})
 onMounted(()=>{
     getTableData()
   

+ 70 - 22
src/views/project/contract/update.vue

@@ -2,8 +2,8 @@
     <HcCard actionUi="text-center">
         <template #header>
             <div class="w-48">
-                <el-select block clearable placeholder="请选择合同名称" size="large">
-                    <el-option v-for="item in projectName" :label="item.name" :value="item.key"/>
+                <el-select block clearable placeholder="请选择合同名称" size="large" v-model="contractId" @change="contarctIdChange">
+                    <el-option v-for="item in contractList" :label="item.name" :value="item.id"/>
                 </el-select>
             </div>
         </template>
@@ -13,22 +13,22 @@
                       :row-style="tableRowStyle"
                       style="width: 100%; height: 100%"
             >
-                <el-table-column prop="key1" label="回款条件" align="center"/>
-                <el-table-column prop="key2" label="应收款时间" align="center"/>
-                <el-table-column prop="key3" label="应收回款金额" align="center"/>
-                <el-table-column prop="key4" label="实际回款时间" align="center">
+                <el-table-column prop="returnedCondition" label="回款条件" align="center"/>
+                <el-table-column prop="shouldReturnedTime" label="应收款时间" align="center"/>
+                <el-table-column prop="shouldReturnedMoney" label="应收回款金额" align="center"/>
+                <el-table-column prop="practicalReturnedTime" label="实际回款时间" align="center">
                     <template #default="{ row }">
-                        <span v-if="row.key4">{{row.key4}}</span>
-                        <el-date-picker class="block" v-model="row.key4" format="YYYY-MM-DD" type="date" value-format="YYYY-MM-DD" v-else/>
+                        <span v-if="row.practicalReturnedTime">{{row.practicalReturnedTime}}</span>
+                        <el-date-picker class="block" v-model="row.practicalReturnedTime" format="YYYY-MM-DD" type="date" value-format="YYYY-MM-DD" v-else/>
                     </template>
                 </el-table-column>
-                <el-table-column prop="key5" label="实际回款金额" align="center">
+                <el-table-column prop="practicalReturnedMoney" label="实际回款金额" align="center">
                     <template #default="{ row }">
-                        <span v-if="row.key5">{{row.key5}}</span>
-                        <el-input v-model="row.key5" v-else/>
+                        <span v-if="row.practicalReturnedMoney">{{row.practicalReturnedMoney}}</span>
+                        <el-input v-model="row.practicalReturnedMoney" v-else/>
                     </template>
                 </el-table-column>
-                <el-table-column prop="key6" label="催款执行人" align="center"/>
+                <el-table-column prop="reminderUser" label="催款执行人" align="center"/>
             </el-table>
         </div>
         <template #action>
@@ -36,7 +36,7 @@
                 <HcIcon name="arrow-go-back"/>
                 <span>取消并返回</span>
             </el-button>
-            <el-button size="large" type="primary" hc-btn @click="saveClick">
+            <el-button size="large" type="primary" hc-btn @click="saveClick" :loading="saveLoaing">
                 <HcIcon name="check-double"/>
                 <span>提交保存</span>
             </el-button>
@@ -47,6 +47,8 @@
 <script setup>
 import {onActivated, ref} from "vue";
 import {useRouter, useRoute} from 'vue-router'
+import contractApi from '~api/project/project-contract.js';
+import {getArrValue} from "js-fast-way"
 
 //初始变量
 const router = useRouter()
@@ -57,21 +59,51 @@ const dataId = ref(useRoutes?.query?.id ?? '')
 onActivated(() => {
     dataId.value = useRoutes?.query?.id ?? ''
     console.log(useRoutes.query)
+    getContractList()
+    contractId.value=''
 })
 
 //项目名称
-const projectName = ref([
+const contractList = ref([
     {name: '陈油路', key: '陈油路'},
     {name: '奉建路', key: '奉建路'}
 ])
-
+const contractId=ref('')
+const projectId=ref('')
+const getContractList = async() => {
+    const {error, code, data} = await contractApi.getReturnList()
+    if (!error && code === 200) {
+        contractList.value = getArrValue(data)
+        
+    } else {
+        contractList.value = []
+     
+    }
+}
+const contarctIdChange=(val)=>{
+    getTableData(val)
+    contractList.value.forEach((ele)=>{
+        if(ele.id===contractId.value){
+            projectId.value=ele.projectId
+        }
+    })
+}
 //表格数据
-const tableData = ref([
-    {id: 1, key1: 'xxxx', key2: '222', key3: '333', key4: '', key5: '', key6: '666'},
-    {id: 2, key1: '', key2: '', key3: '', key4: '22', key5: '33', key6: ''},
-    {id: 3, key1: '', key2: '', key3: '', key4: '22', key5: '33', key6: ''},
-])
+const tableData = ref([])
+const tableLoading=ref(false)
 
+const getTableData = async(id) => {
+    tableLoading.value = true
+    const {error, code, data} = await contractApi.getListByContractId({contractId:id})
+    tableLoading.value = false
+    if (!error && code === 200) {
+        tableData.value = getArrValue(data)
+        
+    } else {
+        tableData.value = []
+     
+    }
+}
 //自定义表头样式
 const tableHeaderCellStyle = () => {
     return {backgroundColor: '#93D2F3', color: '#101010'}
@@ -79,7 +111,7 @@ const tableHeaderCellStyle = () => {
 
 //自定义行的样式
 const tableRowStyle = ({ row }) => {
-    if (row.key4 === '' || row.key5 === '') {
+    if (row.practicalReturnedTime === '' || row.shouldReturnedMoney === '') {
         return {backgroundColor: '#BD3124', color: '#fff'}
     }
 }
@@ -88,10 +120,26 @@ const tableRowStyle = ({ row }) => {
 const goBackClick = () => {
     router.back()
 }
+const saveLoaing=ref(false)
+//新增
+const saveOrUpdateBatchReturned=async(obj)=>{
+    saveLoaing.value=true;
+    const {error, code, data,msg} = await contractApi.saveOrUpdateBatchReturned( obj)
+    saveLoaing.value=false;
+    if (!error && code === 200) {
+        window.$message.success(msg)
+    } 
+
+}
 
 //提交保存
 const saveClick = () => {
-
+    console.log(tableData.value,'tableData');
+    saveOrUpdateBatchReturned({
+        list:tableData.value,
+        contractId:contractId.value,
+        projectId:projectId.value
+    })
 }
 </script>
 

+ 67 - 15
src/views/system/components/tab-approve.vue

@@ -63,7 +63,7 @@
 
 <script setup>
 import {onMounted, ref, watch} from "vue";
-import {submitDictionary,removeDictionary,getParentList,getChildList} from '~api/system/parameter.js';
+import {submitDictionary,removeDictionary,getParentList,getApproveList,submitApproveList} from '~api/system/parameter.js';
 import {getArrValue} from "js-fast-way"
 
 const props = defineProps({
@@ -108,6 +108,7 @@ const getParentListData=async()=>{
         if( menuOptions.value.length>0){
             menuKey.value= menuOptions.value[0]?.id
             menuItem.value.id =   menuOptions.value[0]?.id
+            getApproveListData()
            
         }
     } 
@@ -127,7 +128,37 @@ const menuChange = (item) => {
     console.log(item)
     menuKey.value = item?.id
     menuItem.value=item
-    // getChildListData()
+    getApproveListData()
+  
+}
+const getApproveListData=async()=>{
+    const { error, code, data,msg } = await getApproveList({
+       id:menuKey.value
+    })
+    if (!error && code === 200) {
+      tableData.value=data?.审批岗位||[]
+      tableData1.value=data?.抄送信息||[]
+      if(tableData.value.length>0){
+        tableData.value.forEach((ele)=>{
+        checkList.value.push(ele.roleName)
+        })
+      }else{
+        checkList.value=[]
+      }
+    if(tableData1.value.length>0){
+        tableData1.value.forEach((ele)=>{
+        checkList1.value.push(ele.roleName)
+      })
+    }else{
+        checkList1.value=[]
+    }
+        
+    } 
+    else {
+        tableData.value=[]
+        tableData1.value=[]
+    }
+
 }
 const menusProps = ref({
     key: 'id',
@@ -212,7 +243,7 @@ const saveparentClick=async()=>{
     }
 }
 const tableColumn = [
-    {key: 'dictName', name: '审批岗位',align:'center'},
+    {key: 'roleName', name: '审批岗位',align:'center'},
   
 ]
 const tableData = ref([
@@ -224,22 +255,34 @@ const tableData1 = ref([
 const handleCheckedApproveChange=(val)=>{
     console.log(val,'val');
     let  tabarr=[]
-    val.forEach((ele)=>{
-        tabarr.push({dictName:ele,type:6,parentId: menuKey.value})
+    checkData.value.forEach((item)=>{
+        val.forEach((ele)=>{
+            if(item.dictName===ele){
+                tabarr.push({roleName:ele,roleId: item.id})
+            }
+          
+        })
     })
+   
     tableData.value=tabarr
 } 
 const handleCheckedApproveChange1=(val)=>{
     let  tabarr=[]
-    val.forEach((ele)=>{
-        tabarr.push({dictName:ele,type:7,parentId: menuKey.value})
+    checkData.value.forEach((item)=>{
+        val.forEach((ele)=>{
+            if(item.dictName===ele){
+                tabarr.push({roleName:ele,roleId: item.id})
+            }
+          
+        })
     })
     tableData1.value=tabarr
 } 
 const tableColumn1 = [
-    {key: 'dictName', name: '抄送信息',align:'center'},
+    {key: 'roleName', name: '抄送信息',align:'center'},
   
 ]
+const checkData = ref([])
 const getcheckData=async()=>{
     const { error, code, data,msg } = await getParentList({
         code:'dept_info',
@@ -255,14 +298,7 @@ const getcheckData=async()=>{
         window.$message?.warning(msg)
     }
 }
-const checkData = ref([
-    {name: '部门经理', },
-    {name: '财务', },
-    {name: '人事',},
-    {name: '出纳',},
-    {name: '审批', },
 
-])
 
 // 行拖拽
 const rowDropTap = (rows) => {
@@ -274,10 +310,26 @@ const rowSortTap = (rows) => {
     tableData.value = rows
 }
 const saveApprovelaoding=ref(false)
+const subObj=ref({})
 //保存流程
 const saveApprove=()=>{
     console.log(tableData.value ,'审批岗位');
     console.log(tableData1.value,'抄送信息');
+    subObj.value.approveRoleList=tableData.value
+    subObj.value.ccRoleList=tableData.value
+    subObj.value.dictId=menuKey.value
+    console.log( subObj.value,' subObj.value');
+    submitApprove()
+
+
+}
+const submitApprove=async()=>{
+    saveApprovelaoding.value=true;
+    const {error, code, data,msg} = await submitApproveList( subObj.value)
+    saveApprovelaoding.value=false;
+    if (!error && code === 200) {
+        window.$message.success(msg)
+    } 
 
 }
 </script>