|
@@ -91,20 +91,16 @@
|
|
|
</el-form-item>
|
|
|
<el-form-item label="同行人" prop="fellowTravelerUserIds">
|
|
|
<el-select
|
|
|
- v-model="formModel.fellowTravelerUserIds"
|
|
|
+ v-model="fellowTravelerUserIds"
|
|
|
block clearable
|
|
|
placeholder="请选择"
|
|
|
style="width: 100%"
|
|
|
+ multiple
|
|
|
>
|
|
|
- <el-option
|
|
|
- v-for="item in partneroptions"
|
|
|
- :key="item.key"
|
|
|
- :label="item.name"
|
|
|
- :value="item.key"
|
|
|
- />
|
|
|
+ <el-option v-for="item in partneroptions" :label="item.name" :value="item.id" />
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
- <el-form-item label="所属项目" prop="projectId" placeholder="请选择同行人">
|
|
|
+ <el-form-item label="所属项目" prop="projectId" >
|
|
|
<el-select v-model="formModel.projectId" block clearable placeholder="请选择">
|
|
|
<el-option v-for="item in projectType" :label="item.projectName" :value="item.projectId"/>
|
|
|
</el-select>
|
|
@@ -169,10 +165,12 @@
|
|
|
<script setup>
|
|
|
import {ref, onActivated,watch} from "vue";
|
|
|
import {useRoute, useRouter} from 'vue-router'
|
|
|
-import {getProjectList, getDictInfo} from "~api/other";
|
|
|
+import {getProjectList, getDictInfo,getuserList} from "~api/other";
|
|
|
import {arrIndex, deepClone, formValidate, getArrValue} from "js-fast-way";
|
|
|
import businessApi from '~api/attendance/business-trip.js';
|
|
|
import {getDiffDay} from "~uti/tools";
|
|
|
+import {useAppStore} from "~src/store";
|
|
|
+const useAppState = useAppStore();
|
|
|
|
|
|
const router = useRouter()
|
|
|
const useRoutes = useRoute()
|
|
@@ -188,6 +186,7 @@ onActivated(() => {
|
|
|
getTrafficType()
|
|
|
getProjectData()
|
|
|
getDetailsData()
|
|
|
+ getUserDict()
|
|
|
})
|
|
|
const getDetailsData = async () => {
|
|
|
if (dataType.value === 'view') {
|
|
@@ -210,6 +209,7 @@ const getDetailsData = async () => {
|
|
|
newDetails1.id = res?.id
|
|
|
|
|
|
newDetails.details = [newDetails1]
|
|
|
+ fellowTravelerUserIds.value=res.fellowTravelerUserIds.split(',')
|
|
|
} else {
|
|
|
newDetails = detailsObj
|
|
|
newDetails.details = [detailsObj1]
|
|
@@ -243,6 +243,7 @@ const getDetailsData = async () => {
|
|
|
|
|
|
})
|
|
|
newDetails.journeyList = newDetailsArr
|
|
|
+ fellowTravelerUserIds.value=res[0].fellowTravelerUserIds.split(',')
|
|
|
console.log(formModel.value,'formModel.value');
|
|
|
formModel.value = newDetails
|
|
|
} else {
|
|
@@ -378,11 +379,19 @@ const getProjectData = async () => {
|
|
|
}
|
|
|
}
|
|
|
//同行人
|
|
|
-const partneroptions = ref([
|
|
|
- {name: '小黄', key: '1'},
|
|
|
- {name: '香兰', key: '2'},
|
|
|
- {name: '小黑', key: '3'},
|
|
|
-])
|
|
|
+
|
|
|
+const partneroptions=ref([])
|
|
|
+
|
|
|
+const getUserDict=async()=>{
|
|
|
+ const {error, code, data} = await getuserList({tenantId:useAppState.tenantId})
|
|
|
+ if (!error && code === 200) {
|
|
|
+ partneroptions.value = getArrValue(data)
|
|
|
+
|
|
|
+ } else {
|
|
|
+ partneroptions.value = []
|
|
|
+
|
|
|
+ }
|
|
|
+}
|
|
|
//合同类型
|
|
|
const contractType = ref([
|
|
|
{name: '咨询服务+软件', key: '1'},
|
|
@@ -515,7 +524,7 @@ const detailsObj = {
|
|
|
submitStatus: null, // 审提交状态 1=暂存 2=提交审批
|
|
|
journeyList: [detailsObj1],
|
|
|
}
|
|
|
-
|
|
|
+const fellowTravelerUserIds=ref([])
|
|
|
//处理表单数据
|
|
|
const getFormData = (submitStatus = 1) => {
|
|
|
const res = deepClone(formModel.value)
|
|
@@ -559,6 +568,8 @@ const saveClick=async()=>{
|
|
|
saveLoading.value = false
|
|
|
return
|
|
|
}else{
|
|
|
+ form.fellowTravelerUserIds=fellowTravelerUserIds.value.join(',')
|
|
|
+ console.log(form,'form');
|
|
|
const {error, code, msg} = await businessApi.submit(form)
|
|
|
//判断状态
|
|
|
tempLoading.value = false
|
|
@@ -576,7 +587,13 @@ const tempLoading = ref(false)
|
|
|
const tempDraftData = async () => {
|
|
|
tempLoading.value = true
|
|
|
const form = getFormData(1)
|
|
|
+ form.forEach((ele)=>{
|
|
|
+ ele.fellowTravelerUserIds=fellowTravelerUserIds.value.join(',')
|
|
|
+ })
|
|
|
+ console.log(form,'form');
|
|
|
const {error, code, msg} = await businessApi.submit(form)
|
|
|
+
|
|
|
+
|
|
|
//判断状态
|
|
|
tempLoading.value = false
|
|
|
if (!error && code === 200) {
|