This commit is contained in:
shengchanzhe 2023-08-07 22:36:05 +08:00
parent da96300363
commit 33857ccc3d
4 changed files with 88 additions and 96 deletions

View File

@ -237,6 +237,7 @@
<el-col :span="12">
<el-form-item label="性别" prop="sex">
<el-select
:disabled="isDisabled"
v-model="formData.sex"
placeholder="请选择性别"
:style="{ width: '100%' }"
@ -249,6 +250,7 @@
<el-col :span="12">
<el-form-item label="身份证">
<el-input
:disabled="isDisabled"
v-model="formData.id_card"
placeholder="请输入生份证"
clearable
@ -419,8 +421,7 @@
placeholder="请选择签约方"
clearable
:style="{ width: '100%' }"
@click="openCompany"
:disabled="userStore.userInfo.root == 0 ? true : false"
:disabled="true"
></el-input>
</el-form-item>
</el-col>
@ -467,7 +468,7 @@
</el-col>
</el-row>
</el-col>
<el-col v-if="isshow" :span="24" class="el-card pt-6">
<!-- <el-col v-if="isshow" :span="24" class="el-card pt-6">
<el-row>
<el-col :span="24">
<el-form-item label="合同上传" required>
@ -486,7 +487,7 @@
</el-form-item>
</el-col>
</el-row>
</el-col>
</el-col> -->
<el-col :span="24" class="el-card pt-6">
<el-form-item label prop="field139">
@ -494,7 +495,7 @@
>修改</el-button
>
<el-button
v-else
v-if="isDisabled == false"
type="primary"
:disabled="isDisabled"
size="medium"
@ -589,20 +590,7 @@ const formData = reactive({
master_position: '',
master_phone: '',
master_email: '',
other_contacts: [
// {
// name: "",
// position: "",
// phone: "",
// email: "",
// },
],
// area_manager: '',
// is_contract: '',
// account: '',
// password: '',
// deposit: '',
// deposit_time: '',
other_contacts: [],
qualification: {
business_license: '',
business_licenseB: '',
@ -888,7 +876,7 @@ const getDetails = async () => {
id: route.query.id
})
Object.keys(formData).forEach((key) => {
const stringArr = ['province', 'city', 'area', 'street']
const stringArr = ['province', 'city', 'area', 'street', 'village', 'brigade']
if (data[key] != null && data[key] != undefined) {
formData[key] = data[key]
if (key == 'qualification' && formData.qualification.bank_account) {
@ -916,12 +904,13 @@ const getDetails = async () => {
await getStreetList()
await getVillageList()
await getBrigadeList()
formData['party_a_name'] = data.contract?.party_a_name
formData['file_image'] = data.contract?.file
if (data.contract?.file) {
fileList.value[0].url = data.contract?.file
fileList.value[0].name = '合同文件'
}
formData['party_a_name'] = data.contract?.party_a_info.company_name
// formData['file_image'] = data.contract?.file
// if (data.contract?.file) {
// fileList.value[0].url = data.contract?.file
// fileList.value[0].name = ''
// }
console.log(formData)
company_type_change(formData.company_type)
}
@ -1020,4 +1009,10 @@ defineExpose({
margin-left: 12px;
}
}
.el-card {
margin-bottom: 10px;
}
.tit {
margin-top: 15px;
}
</style>

View File

@ -22,7 +22,11 @@
/>
</el-form-item>
<el-form-item label="公司类型" prop="compeny">
<el-select disabled v-model="compeny.company_type_name" placeholder="请输入公司类型">
<el-select
disabled
v-model="compeny.company_type_name"
placeholder="请输入公司类型"
>
</el-select>
</el-form-item>
<el-form-item label="省" prop="province">
@ -30,12 +34,10 @@
</el-select>
</el-form-item>
<el-form-item label="市" prop="city">
<el-select disabled v-model="compeny.city_name" placeholder="请选择市">
</el-select>
<el-select disabled v-model="compeny.city_name" placeholder="请选择市"> </el-select>
</el-form-item>
<el-form-item label="区" prop="area">
<el-select disabled v-model="compeny.area_name" placeholder="请选择区">
</el-select>
<el-select disabled v-model="compeny.area_name" placeholder="请选择区"> </el-select>
</el-form-item>
<el-form-item label="镇" prop="company_type_name">
<el-select disabled v-model="compeny.street_name" placeholder="请选择镇">
@ -73,9 +75,9 @@
<img :src="compenyimg.business_licenseB" />
</div>
</el-form-item>
<el-form-item label="其他资质" prop="contract_no" >
<el-form-item label="其他资质" prop="contract_no">
<div class="company">
<img :src="compenyimg.bank_account" />
<img :src="compenyimg.bank_account" />
</div>
</el-form-item>
</el-form>
@ -96,10 +98,18 @@
<el-input disabled v-model="compenyB.company_name" placeholder="请输入公司名称" />
</el-form-item>
<el-form-item label="社会代码" prop="organization_code" required>
<el-input disabled v-model="compenyB.organization_code" placeholder="请输入社会代码" />
<el-input
disabled
v-model="compenyB.organization_code"
placeholder="请输入社会代码"
/>
</el-form-item>
<el-form-item label="公司类型" prop="company_type">
<el-select disabled v-model="compenyB.company_type_name" placeholder="请输入社会类型">
<el-select
disabled
v-model="compenyB.company_type_name"
placeholder="请输入社会类型"
>
<el-option></el-option>
</el-select>
</el-form-item>
@ -179,11 +189,7 @@
<el-input disabled v-model="persen.mobile" placeholder="请输入联系电话" />
</el-form-item>
<el-form-item label="身份证号">
<el-input
v-model="persen.id"
placeholder="请输入身份证号"
disabled
/>
<el-input v-model="persen.id" placeholder="请输入身份证号" disabled />
</el-form-item>
<el-form-item label="省" prop="province">
<el-select disabled v-model="persen.province_name" placeholder="请选择省">
@ -267,7 +273,7 @@
</el-form-item> -->
</el-form>
</el-card>
<el-card>
<el-card v-if="basicdata.check_status == 1">
<el-form>
<el-form-item label="合同上传" prop="field127">
<el-upload
@ -289,7 +295,7 @@
<script lang="ts" setup>
import type { FormInstance, UploadProps, ElMessage, UploadUserFile } from 'element-plus'
import { apiContractDetail } from '@/api/contract'
import { ref, reactive, defineExpose ,computed} from 'vue'
import { ref, reactive, defineExpose, computed } from 'vue'
import { useRoute } from 'vue-router'
import { dictDataLists } from '@/api/setting/dict'
import { upContact } from '@/api/consumer'
@ -315,7 +321,7 @@ const formData = reactive({
status_name: ''
})
const fileList = ref<UploadUserFile[]>([])
const basicdata=ref({})
const basicdata = ref({})
const compeny = ref({})
const compenyimg = ref([])
const compenyB = ref([])
@ -330,23 +336,27 @@ const userStore = useUserStore()
async function render() {
//
const res = await apiContractDetail({ id: query.id })
compeny.value = res.party_a_info;
basicdata.value=res
compeny.value = res.party_a_info
basicdata.value = res
try {
    res.party_a_info.qualification.bank_account=JSON.parse(res.party_a_info.qualification.bank_account)
res.party_a_info.qualification.bank_account = JSON.parse(
res.party_a_info.qualification.bank_account
)
compenyimg.value = res.party_a_info.qualification
  } catch (error) {}
} catch (error) {}
compenyimg.value = res.party_a_info.qualification
if (res.type == 2) {
show.value = false
res.party_b_info.sex==1?res.party_b_info.sex="男":res.party_b_info.sex="女"
persen.value = res.party_b_info
persenimg.value = res.party_b_info.qualification
}
res.party_b_info.sex == 1 ? (res.party_b_info.sex = '男') : (res.party_b_info.sex = '女')
persen.value = res.party_b_info
persenimg.value = res.party_b_info.qualification
}
if (res.type == 1) {
compenyB.value = res.party_b_info
compenyBimg.value = res.party_b_info.qualification
flag.value = false
} else {
compenyB.value.company_name = res.party_b_info.nickname
}
}
@ -356,7 +366,7 @@ const handleAvatarSuccess_four: UploadProps['onSuccess'] = (response, uploadFile
return
}
formData.file = response.data.uri
upContact({ file: formData.file, id: route.query.id })
upContact({ file: formData.file, id: route.query.id })
}
onMounted(async () => {
await render()
@ -364,9 +374,6 @@ onMounted(async () => {
</script>
<style lang="scss" scoped>
.btn_men {
text-align: right;
}
.frame {
.el-form-item {
width: 40%;
@ -382,7 +389,7 @@ onMounted(async () => {
}
}
}
.person_select{
.person_select {
.el-form-item {
width: 30%;
.el-select {
@ -394,30 +401,30 @@ onMounted(async () => {
display: flex;
justify-content: space-between;
img {
width: 10rem;
height: 8rem;
width: 10vw;
height: 6.3vw;
}
}
.persenal {
display: flex;
align-items: center;
img {
width: 8rem;
height: 10rem;
width: 10vw;
height: 6.3vw;
}
}
.idcard {
img {
width: 10rem;
height: 10rem;
width: 10vw;
height: 6.3vw;
}
}
.company_z{
.el-form-item{
width: 40%;
}
.company_z {
.el-form-item {
width: 40%;
}
}
.el-card{
margin-top: 1px;
.el-card {
margin-top: 10px;
}
</style>

View File

@ -56,24 +56,28 @@
</template>
新增
</el-button>-->
<el-button
<!-- <el-button
v-perms="['contract.contract/delete']"
:disabled="!selectData.length"
@click="handleDelete(selectData)"
>删除</el-button
>
> -->
<div class="mt-4">
<el-table :data="pager.lists" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" />
<!-- <el-table-column type="selection" width="55" /> -->
<el-table-column label="id" prop="id" show-overflow-tooltip />
<el-table-column label="公司" prop="company_name" show-overflow-tooltip />
<!-- <el-table-column label="公司" prop="company_name" show-overflow-tooltip /> -->
<el-table-column
label="合同类型"
prop="contract_type_name"
show-overflow-tooltip
/>
<el-table-column label="合同编号" prop="contract_no" show-overflow-tooltip />
<el-table-column label="甲方" prop="party_a_name" show-overflow-tooltip />
<el-table-column label="甲方" prop="party_a_name" show-overflow-tooltip>
<template #default="scope">
<span>{{ scope.row.party_a_info.company_name }}</span>
</template>
</el-table-column>
<el-table-column label="乙方" prop="party_b_name" show-overflow-tooltip />
<el-table-column
@ -126,6 +130,7 @@ import { useDictData } from '@/hooks/useDictOptions'
import { apiContractLists, apiContractDelete, apiContractDetail } from '@/api/contract'
import { timeFormat } from '@/utils/util'
import feedback from '@/utils/feedback'
const route = useRoute()
const editRef = shallowRef<InstanceType<typeof EditPopup>>()
//
@ -139,9 +144,12 @@ const queryParams = reactive({
status: '',
party_a: '',
party_b: '',
area_manager: ''
area_manager: '',
type: ''
})
if (route.query.type) {
queryParams.type = route.query.type?.toString()
}
//
const selectData = ref<any[]>([])
@ -171,25 +179,7 @@ const checkContcat = (id: number) => {
apiContractDetail({ id }).then((res) => {
res.file ? window.open(res.file) : feedback.msgError('暂无合同可以查看')
})
// window.open('https://www.zhihu.com/signin?next=%2F')
}
//
// const handleAdd = async () => {
// showEdit.value = true;
// await nextTick();
// editRef.value?.open("add");
// };
// //
// const handleEdit = async (data: any) => {
// showEdit.value = true;
// await nextTick();
// editRef.value?.open("edit");
// editRef.value?.setFormData(data);
// };
//
const handleDelete = async (id: number | any[]) => {
await feedback.confirm('确定要删除?')

View File

@ -118,14 +118,14 @@
@click="handleDelete(row.id)"
>删除</el-button
>
<el-button
<!-- <el-button
v-if="row.is_contract == 1"
v-perms="['auth.admin/abolition']"
type="danger"
link
@click="handleAbolition(row.id)"
>废除合同</el-button
>
> -->
<template v-if="row.company_id != 0 && row.is_contract == 0">
<el-button
v-perms="['auth.admin/Draftingcontracts']"
@ -136,7 +136,7 @@
(showConctactPop = true),
(contractId = row.id)
"
>生成个人合同</el-button
>生成合同</el-button
>
<el-button
v-perms="['auth.admin/postsms']"