This commit is contained in:
zmj 2024-04-02 17:56:22 +08:00
parent 0e85a5d6ab
commit cbd3121b87
12 changed files with 89 additions and 24 deletions

View File

@ -108,12 +108,12 @@ const tableConfig = reactive(
{ {
label: "手机号码", label: "手机号码",
value: 'mobile', value: 'mobile',
check: true check: ['contacts', checkPhone]
}, },
{ {
label: "电子邮箱", label: "电子邮箱",
value: 'email', value: 'email',
check: true check: ['contacts', checkEmail]
}, },
{ {

View File

@ -246,6 +246,26 @@ const formData = reactive({
}) })
const chekcDate = (rule: any, value: any, callback: any) => {
if (new Date(formData.actual_end_date) < new Date(formData.actual_start_date)) {
callback(new Error('实际竣工日期不能早于实际开工日期'))
} else {
callback()
}
}
const chekcDate1 = (rule: any, value: any, callback: any) => {
if (new Date(formData.planned_end_date) < new Date(formData.planned_start_date)) {
callback(new Error('计划竣工日期不能早于计划开工日期'))
} else {
callback()
}
}
// //
const formRules = reactive<any>({ const formRules = reactive<any>({
project_name: [{ project_name: [{
@ -322,6 +342,10 @@ const formRules = reactive<any>({
required: true, required: true,
message: '请输入计划竣工日期', message: '请输入计划竣工日期',
trigger: ['blur'] trigger: ['blur']
},
{
validator: chekcDate1,
trigger: ['blur']
}], }],
actual_start_date: [{ actual_start_date: [{
required: true, required: true,
@ -332,6 +356,10 @@ const formRules = reactive<any>({
required: true, required: true,
message: '请输入实际竣工日期', message: '请输入实际竣工日期',
trigger: ['blur'] trigger: ['blur']
},
{
validator: chekcDate,
trigger: ['blur']
}], }],
implementation_department: [{ implementation_department: [{
required: true, required: true,

View File

@ -45,9 +45,11 @@
<div class="mt-4"> <div class="mt-4">
<el-table :data="pager.lists" @selection-change="handleSelectionChange"> <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="合同名称" prop="contract_id" show-overflow-tooltip /> <el-table-column label="合同名称" prop="contract_name" show-overflow-tooltip />
<el-table-column label="回访编号" prop="code" show-overflow-tooltip /> <el-table-column label="回访编号" prop="code" show-overflow-tooltip />
<el-table-column label="回访方式" prop="return_visit_type_text" show-overflow-tooltip /> <el-table-column label="回访方式" prop="return_visit_type_text" show-overflow-tooltip />
<el-table-column label="客户名称" prop="custom_name" show-overflow-tooltip />
<el-table-column label="客户负责人" prop="custom_head" show-overflow-tooltip />
<el-table-column label="回访表模板" prop="template_name" show-overflow-tooltip /> <el-table-column label="回访表模板" prop="template_name" show-overflow-tooltip />
<el-table-column label="回访人" prop="create_user" show-overflow-tooltip /> <el-table-column label="回访人" prop="create_user" show-overflow-tooltip />
<el-table-column label="回访日期" prop="create_time" show-overflow-tooltip /> <el-table-column label="回访日期" prop="create_time" show-overflow-tooltip />

View File

@ -65,6 +65,20 @@
<el-descriptions-item label="我方对建设单位认可度" label-align="left" align="left" label-class-name="my-label"> {{ <el-descriptions-item label="我方对建设单位认可度" label-align="left" align="left" label-class-name="my-label"> {{
formData.my_construction_recognition_text formData.my_construction_recognition_text
}}</el-descriptions-item> }}</el-descriptions-item>
<el-descriptions-item label="关系度" label-align="left" align="left" label-class-name="my-label">
{{ formData.relationship_text }}
</el-descriptions-item>
<el-descriptions-item label="建设方财务状况" label-align="left" align="left" label-class-name="my-label">
{{ formData.construction_financial_status_text }}
</el-descriptions-item>
<el-descriptions-item label="建设方对我方认可度" label-align="left" align="left" label-class-name="my-label">
{{ formData.construction_recognition_text }}
</el-descriptions-item>
<el-descriptions-item label="附件" label-align="left" align="left" label-class-name="my-label"> <el-descriptions-item label="附件" label-align="left" align="left" label-class-name="my-label">
<annexLink :annex="formData.annex"></annexLink> <annexLink :annex="formData.annex"></annexLink>
</el-descriptions-item> </el-descriptions-item>

View File

@ -31,7 +31,7 @@
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
<el-form-item label="验收内容" prop="accept_content"> <el-form-item label="验收内容" prop="accept_content">
<el-input v-model="formData.accept_content" clearable placeholder="请输入巡视部位" /> <el-input v-model="formData.accept_content" clearable placeholder="请输入验收内容" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">

View File

@ -19,6 +19,10 @@ const detailConfig = {
label: "气温", label: "气温",
value: "air_temperature" value: "air_temperature"
}, },
{
label: "气候",
value: "climate"
},
{ {
label: "监理人员", label: "监理人员",
value: "user" value: "user"
@ -49,6 +53,7 @@ const detailConfig = {
}, },
{ {
label: "附件", label: "附件",
value: "annex", value: "annex",

View File

@ -42,7 +42,7 @@
<el-table-column label="监理工作" prop="supervision_work" show-overflow-tooltip /> <el-table-column label="监理工作" prop="supervision_work" show-overflow-tooltip />
<el-table-column label="安全文明施工情况" prop="construction_situation" show-overflow-tooltip /> <el-table-column label="安全文明施工情况" prop="construction_situation" show-overflow-tooltip />
<el-table-column label="其他事项" prop="other_matters" show-overflow-tooltip /> <el-table-column label="其他事项" prop="other_matters" show-overflow-tooltip />
<el-table-column label="操作" align="center" width="150" fixed="right"> <el-table-column label="操作" align="center" width="170" fixed="right">
<template #default="{ row }"> <template #default="{ row }">
<el-button v-perms="['supervision_work.supervision_diary/edit']" type="primary" link <el-button v-perms="['supervision_work.supervision_diary/edit']" type="primary" link
@click="handleEdit(row)"> @click="handleEdit(row)">
@ -65,8 +65,8 @@
</div> </div>
</el-card> </el-card>
<edit-popup v-if="showEdit" ref="editRef" :dict-data="dictData" @success="getLists" @close="showEdit = false" /> <edit-popup v-if="showEdit" ref="editRef" :dict-data="dictData" @success="getLists" @close="showEdit = false" />
<detailPage v-if="showDetail" ref="detailRef" @close="showDetail = false" :detailConfig="detailConfig" <detailPage v-if="showDetail" ref="detailRef" @close="showDetail = false" :detailConfig="detailConfig" :column="2"
:column="2" width="50vw" /> width="50vw" />
</div> </div>
</template> </template>

View File

@ -184,7 +184,7 @@ const chekcDate = (rule: any, value: any, callback: any) => {
} }
const chekcDate1 = (rule: any, value: any, callback: any) => { const chekcDate1 = (rule: any, value: any, callback: any) => {
if (new Date(formData.qualification_two_status) < new Date(formData.get_date_two)) { if (new Date(formData.effective_date_two) < new Date(formData.get_date_two)) {
callback(new Error('有效日期不能早于发证日期')) callback(new Error('有效日期不能早于发证日期'))
} else { } else {
callback() callback()

View File

@ -1,7 +1,6 @@
<template> <template>
<div class="edit-popup"> <div class="edit-popup">
<popup ref="popupRef" :title="popupTitle" :async="true" width="550px" @confirm="handleSubmit" <popup ref="popupRef" :title="popupTitle" :async="true" width="550px" @confirm="handleSubmit" @close="handleClose">
@close="handleClose">
<el-form ref="formRef" :model="formData" label-width="120px" :rules="formRules"> <el-form ref="formRef" :model="formData" label-width="120px" :rules="formRules">
<el-form-item label="项目名称" prop="project_name"> <el-form-item label="项目名称" prop="project_name">
<el-input v-model="formData.project_name" clearable placeholder="点击选择项目" @click="showDialog = true" <el-input v-model="formData.project_name" clearable placeholder="点击选择项目" @click="showDialog = true"
@ -14,13 +13,13 @@
<el-input v-model="formData.dept" clearable placeholder="请输入部门" /> <el-input v-model="formData.dept" clearable placeholder="请输入部门" />
</el-form-item> </el-form-item>
<el-form-item label="项目调入时间" prop="start_time"> <el-form-item label="项目调入时间" prop="start_time">
<el-date-picker class="flex-1 !flex" v-model="formData.start_time" clearable <el-date-picker class="flex-1 !flex" v-model="formData.start_time" clearable value-format="YYYY-MM-DD "
value-format="YYYY-MM-DD " placeholder="选择项目调入时间"> placeholder="选择项目调入时间">
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
<el-form-item label="项目调出时间" prop="end_time"> <el-form-item label="项目调出时间" prop="end_time">
<el-date-picker class="flex-1 !flex" v-model="formData.end_time" clearable <el-date-picker class="flex-1 !flex" v-model="formData.end_time" clearable value-format="YYYY-MM-DD "
value-format="YYYY-MM-DD " placeholder="选择项目调出时间"> placeholder="选择项目调出时间">
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
<el-form-item label="负责岗位" prop="job"> <el-form-item label="负责岗位" prop="job">
@ -75,6 +74,14 @@ const formData = reactive({
}) })
const chekcDate = (rule: any, value: any, callback: any) => {
if (new Date(formData.end_time) < new Date(formData.start_time)) {
callback(new Error('项目调出时间不能早于项目调入时间'))
} else {
callback()
}
}
// //
const formRules = reactive<any>({ const formRules = reactive<any>({
project_id: [{ project_id: [{
@ -96,6 +103,10 @@ const formRules = reactive<any>({
required: true, required: true,
message: '请输入项目调出时间', message: '请输入项目调出时间',
trigger: ['blur'] trigger: ['blur']
},
{
validator: chekcDate,
trigger: ['blur']
}] }]
}) })

View File

@ -211,6 +211,9 @@ const chekcDate = (rule: any, value: any, callback: any) => {
callback() callback()
} }
} }
const chekcDate1 = (rule: any, value: any, callback: any) => { const chekcDate1 = (rule: any, value: any, callback: any) => {
if (new Date(formData.effective_date_two) < new Date(formData.get_date_two)) { if (new Date(formData.effective_date_two) < new Date(formData.get_date_two)) {
callback(new Error('有效日期不能早于发证时间')) callback(new Error('有效日期不能早于发证时间'))
@ -309,19 +312,21 @@ const formRules = reactive<any>({
message: '请输入资质编号2', message: '请输入资质编号2',
trigger: ['blur'] trigger: ['blur']
}, },
{ ],
validator: chekcDate1,
trigger: ['blur']
}],
get_date_two: [{ get_date_two: [{
required: true, required: true,
message: '请输入发证日期2', message: '请输入发证日期2',
trigger: ['blur'] trigger: ['blur']
}], },
],
effective_date_two: [{ effective_date_two: [{
required: true, required: true,
message: '请输入有效日期2', message: '请输入有效日期2',
trigger: ['blur'] trigger: ['blur']
},
{
validator: chekcDate1,
trigger: ['blur']
}], }],
qualification_two_status: [{ qualification_two_status: [{
required: true, required: true,

View File

@ -32,7 +32,7 @@
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
<el-form-item label="部位" prop="position"> <el-form-item label="部位" prop="position">
<el-input v-model="formData.position" clearable placeholder="请输入巡视部位" /> <el-input v-model="formData.position" clearable placeholder="请输入旁站部位" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
@ -50,14 +50,14 @@
<el-col :span="8"> <el-col :span="8">
<el-form-item label="旁站开始时间" prop="start_time" label-width="120px"> <el-form-item label="旁站开始时间" prop="start_time" label-width="120px">
<el-date-picker class="flex-1 !flex" v-model="formData.start_time" clearable type="datetime" <el-date-picker class="flex-1 !flex" v-model="formData.start_time" clearable type="datetime"
value-format="YYYY-MM-DD HH:mm:ss" placeholder="选择巡视开始时间"> value-format="YYYY-MM-DD HH:mm:ss" placeholder="选择旁站开始时间">
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
<el-form-item label="旁站结束时间" prop="end_time"> <el-form-item label="旁站结束时间" prop="end_time">
<el-date-picker class="flex-1 !flex" v-model="formData.end_time" clearable type="datetime" <el-date-picker class="flex-1 !flex" v-model="formData.end_time" clearable type="datetime"
value-format="YYYY-MM-DD HH:mm:ss" placeholder="选择巡视结束时间"> value-format="YYYY-MM-DD HH:mm:ss" placeholder="选择旁站结束时间">
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -71,7 +71,7 @@
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
<el-form-item label="现场施工情况" prop="situation"> <el-form-item label="现场施工情况" prop="situation">
<el-input v-model="formData.situation" clearable placeholder="请输入巡视内容" /> <el-input v-model="formData.situation" clearable placeholder="请输入现场施工情况" />
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>

View File

@ -48,7 +48,7 @@
<el-table-column label="旁站结果" prop="side_station_result_text" show-overflow-tooltip /> <el-table-column label="旁站结果" prop="side_station_result_text" show-overflow-tooltip />
<el-table-column label="旁站人员" prop="side_station_user" show-overflow-tooltip /> <el-table-column label="旁站人员" prop="side_station_user" show-overflow-tooltip />
<el-table-column label="检查项选择" prop="check_item_detail_name" show-overflow-tooltip /> <el-table-column label="检查项选择" prop="check_item_detail_name" show-overflow-tooltip />
<el-table-column label="操作" width="120" fixed="right"> <el-table-column label="操作" width="170" fixed="right">
<template #default="{ row }"> <template #default="{ row }">
<el-button v-perms="['supervision_work.supervision_side_station/edit']" type="primary" link <el-button v-perms="['supervision_work.supervision_side_station/edit']" type="primary" link
@click="handleEdit(row)"> @click="handleEdit(row)">