This commit is contained in:
zmj 2024-05-09 14:06:09 +08:00
parent 300e34c468
commit dab80090ea
34 changed files with 511 additions and 171 deletions

View File

@ -29,3 +29,11 @@ export function apiFinancialInvoiceDetail(params: any) {
export function apiFinancialInvoiceSearch(params: any) {
return request.get({ url: "/financial.financial_invoice/datas", params });
}
// 财务管理--下载开票台账列表
export function apiFinancialInvoiceDown(params: any) {
return request.post({
url: "/financial.financial_invoice/download",
params,
});
}

View File

@ -1,26 +1,34 @@
import request from '@/utils/request'
import request from "@/utils/request";
// 财务管理--到账台账列表
export function apiFinancialRefundLists(params: any) {
return request.get({ url: '/financial.financial_refund/lists', params })
return request.get({ url: "/financial.financial_refund/lists", params });
}
// 添加财务管理--到账台账
export function apiFinancialRefundAdd(params: any) {
return request.post({ url: '/financial.financial_refund/add', params })
return request.post({ url: "/financial.financial_refund/add", params });
}
// 编辑财务管理--到账台账
export function apiFinancialRefundEdit(params: any) {
return request.post({ url: '/financial.financial_refund/edit', params })
return request.post({ url: "/financial.financial_refund/edit", params });
}
// 删除财务管理--到账台账
export function apiFinancialRefundDelete(params: any) {
return request.post({ url: '/financial.financial_refund/delete', params })
return request.post({ url: "/financial.financial_refund/delete", params });
}
// 财务管理--到账台账详情
export function apiFinancialRefundDetail(params: any) {
return request.get({ url: '/financial.financial_refund/detail', params })
}
return request.get({ url: "/financial.financial_refund/detail", params });
}
// 财务管理--到账台账详情
export function apiFinancialRefundDownl(params: any) {
return request.post({
url: "/financial.financial_refund/download",
params,
});
}

View File

@ -1,7 +1,6 @@
<template>
<div class="edit-popup">
<popup ref="popupRef" :title="popupTitle" :async="true" width="80vw" @confirm="handleSubmit"
@close="handleClose">
<popup ref="popupRef" :title="popupTitle" :async="true" width="80vw" @confirm="handleSubmit" @close="handleClose">
<el-form ref="formRef" :model="formData" label-width="190px" :rules="formRules">
<el-row>
@ -53,8 +52,7 @@
</el-col>
<el-col :span="8">
<el-form-item label="地下层数">
<el-input v-model="formData.underground_floors" clearable placeholder="请输入地下层数"
type="number" />
<el-input v-model="formData.underground_floors" clearable placeholder="请输入地下层数" type="number" />
</el-form-item>
</el-col>
<el-col :span="8">
@ -99,17 +97,20 @@
</el-col>
<el-col :span="8">
<el-form-item label="项目经理">
<el-input v-model="formData.project_manager" clearable placeholder="请输入项目经理" />
<el-input v-model="formData.project_manager_name" @click="userclick('project_manager')"
clearable placeholder="请输入项目经理" />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="项目副经理">
<el-input v-model="formData.deputy_project_manager" clearable placeholder="请输入项目副经理" />
<el-input v-model="formData.deputy_project_manager_name"
@click="userclick('deputy_project_manager')" clearable placeholder="请输入项目副经理" />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="专业工程师">
<el-input v-model="formData.engineer" clearable placeholder="请输入专业工程师" />
<el-input v-model="formData.engineer_name" @click="userclick('engineer')" clearable
placeholder="请输入专业工程师" />
</el-form-item>
</el-col>
<el-col :span="8">
@ -124,13 +125,14 @@
</el-col>
<el-col :span="8">
<el-form-item label="填表时间" prop="create_time">
<el-date-picker class="flex-1 !flex" v-model="formData.create_time" clearable
type="datetime" value-format="YYYY-MM-DD HH:mm:ss" placeholder="选择创建时间">
<el-date-picker class="flex-1 !flex" v-model="formData.create_time" clearable type="datetime"
value-format="YYYY-MM-DD HH:mm:ss" placeholder="选择创建时间">
</el-date-picker>
</el-form-item>
</el-col>
</el-row>
</el-form>
<personnelselector ref="personnel" @confirm="submituser" type="1"></personnelselector>
<formTable :formData="formData.evolve" :config="tableConfig"></formTable>
<formTable :formData="formData.preparation" :config="tableConfig1"></formTable>
<el-dialog v-model="showDialog" title="选择项目" width="70%">
@ -191,8 +193,11 @@ const formData = reactive({
build_unit: '',
build_unit_contact: '',
project_manager: '',
project_manager_name: '',
deputy_project_manager: '',
deputy_project_manager_name: '',
engineer: '',
engineer_name: '',
content: '',
create_user: userStore.account,
create_time: timeFormat('', 'yyyy-mm-dd hh:MM:ss'),
@ -215,6 +220,22 @@ const formData = reactive({
})
//
const personnel = ref<any>()
let val = ''
const userclick = (vals) => {
val = vals
personnel.value.open()
}
//
const submituser = (e: any) => {
formData[val] = e.id;
formData[val + '_name'] = e.name
}
const tableConfig = reactive(
{
title: "项目组工作开展情况",

View File

@ -5,117 +5,117 @@
<el-row>
<el-col :span="8">
<el-form-item label="项目名称" prop="project_name">
<el-input v-model="formData.project_name" clearable placeholder="请输入项目名称"/>
<el-input v-model="formData.project_name" clearable placeholder="请输入项目名称" />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="项目编号">
<el-input v-model="formData.project_code" clearable placeholder="系统自动生成" disabled/>
<el-input v-model="formData.project_code" clearable placeholder="系统自动生成" disabled />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="行业" prop="industry">
<el-select class="flex-1" v-model="formData.industry" clearable placeholder="请选择行业">
<el-option v-for="(item, index) in dictData.supervision_project_industry" :key="index"
:label="item.name" :value="item.value"/>
<el-option v-for="(item, index) in dictData.supervision_project_industry" :key="index" :label="item.name"
:value="item.value" />
</el-select>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="性质" prop="nature">
<el-select class="flex-1" v-model="formData.nature" clearable placeholder="请选择性质">
<el-option v-for="(item, index) in dictData.supervision_project_nature" :key="index"
:label="item.name" :value="item.value"/>
<el-option v-for="(item, index) in dictData.supervision_project_nature" :key="index" :label="item.name"
:value="item.value" />
</el-select>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="委托单位">
<el-input v-model="formData.company_name" clearable placeholder="请输入委托单位" @click="showDialog1 = true"/>
<el-input v-model="formData.company_name" clearable placeholder="请输入委托单位" @click="showDialog1 = true" />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="建设区域" prop="build_area">
<el-select class="flex-1" v-model="formData.build_area" clearable placeholder="请选择建设区域">
<el-option v-for="(item, index) in dictData.const_area" :key="index" :label="item.name"
:value="item.value"/>
:value="item.value" />
</el-select>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="项目地址">
<el-input v-model="formData.address" clearable placeholder="请输入项目地址"/>
<el-input v-model="formData.address" clearable placeholder="请输入项目地址" />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="项目级别" prop="project_level">
<el-select class="flex-1" v-model="formData.project_level" clearable placeholder="请选择项目级别">
<el-option v-for="(item, index) in dictData.supervision_project_level" :key="index"
:label="item.name" :value="item.value"/>
<el-option v-for="(item, index) in dictData.supervision_project_level" :key="index" :label="item.name"
:value="item.value" />
</el-select>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="总投资(元)" prop="total_investment">
<el-input v-model="formData.total_investment" clearable placeholder="请输入总投资(元)" type="number"/>
<el-input v-model="formData.total_investment" clearable placeholder="请输入总投资(元)" type="number" />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="立项日期">
<el-date-picker class="flex-1 !flex" v-model="formData.initiation_date" clearable
value-format="YYYY-MM-DD" placeholder="选择咨询结束日期">
<el-date-picker class="flex-1 !flex" v-model="formData.initiation_date" clearable value-format="YYYY-MM-DD"
placeholder="选择咨询结束日期">
</el-date-picker>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="关联合同">
<el-input v-model="formData.contract_name" clearable placeholder="请输入关联合同" disabled/>
<el-input v-model="formData.contract_name" clearable placeholder="请输入关联合同" disabled />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="合同金额">
<el-input v-model="formData.contract_amount" clearable placeholder="请输入合同金额" type="number"/>
<el-input v-model="formData.contract_amount" clearable placeholder="请输入合同金额" type="number" />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="合同服务内容">
<el-input v-model="formData.contract_content" clearable placeholder="请输入合同服务内容"/>
<el-input v-model="formData.contract_content" clearable placeholder="请输入合同服务内容" />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="项目规模及概况">
<el-input v-model="formData.project_overview" clearable placeholder="请输入项目规模及概况"/>
<el-input v-model="formData.project_overview" clearable placeholder="请输入项目规模及概况" />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="咨询范围">
<el-input v-model="formData.consult_content" clearable placeholder="请输入咨询范围"/>
<el-input v-model="formData.consult_content" clearable placeholder="请输入咨询范围" />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="备注">
<el-input v-model="formData.remark" clearable placeholder="请输入备注" type="textarea"/>
<el-input v-model="formData.remark" clearable placeholder="请输入备注" type="textarea" />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="咨询开始日期" prop="consult_start_date">
<el-date-picker class="flex-1 !flex" v-model="formData.consult_start_date" clearable
value-format="YYYY-MM-DD" placeholder="选择咨询开始日期">
value-format="YYYY-MM-DD" placeholder="选择咨询开始日期">
</el-date-picker>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="咨询结束日期" prop="consult_end_date">
<el-date-picker class="flex-1 !flex" v-model="formData.consult_end_date" clearable
value-format="YYYY-MM-DD" placeholder="选择咨询结束日期">
<el-date-picker class="flex-1 !flex" v-model="formData.consult_end_date" clearable value-format="YYYY-MM-DD"
placeholder="选择咨询结束日期">
</el-date-picker>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="工程状态" prop="engineering_status">
<el-select class="flex-1" v-model="formData.engineering_status" clearable placeholder="请选择建设区域">
<el-option v-for="(item, index) in dictData.engineering_status" :key="index"
:label="item.name" :value="item.value"/>
<el-option v-for="(item, index) in dictData.engineering_status" :key="index" :label="item.name"
:value="item.value" />
</el-select>
</el-form-item>
</el-col>
@ -123,25 +123,25 @@
<el-form-item label="咨询类型" prop="consult_type">
<el-select class="flex-1" v-model="formData.consult_type" clearable placeholder="请选择建设区域">
<el-option v-for="(item, index) in dictData.consult_type" :key="index" :label="item.name"
:value="item.value"/>
:value="item.value" />
</el-select>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="联系电话" prop="telephone">
<el-input v-model="formData.telephone" clearable placeholder="请输入联系电话"/>
<el-input v-model="formData.telephone" clearable placeholder="请输入联系电话" />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="委托联系人">
<el-input v-model="formData.consult_user" clearable placeholder="请输入委托联系人" />
<el-input v-model="formData.consult_user_name" @click="userclick('consult_user')" clearable
placeholder="请输入委托联系人" />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="监管部门">
<el-select v-model="formData.supervision_department" placeholder="请选择监管部门"
class="flex-1">
<el-select v-model="formData.supervision_department" placeholder="请选择监管部门" class="flex-1">
<el-option :label="item.name" :value="item.id" v-for="item in deptList">
</el-option>
</el-select>
@ -149,8 +149,7 @@
</el-col>
<el-col :span="8">
<el-form-item label="实施部门">
<el-select v-model="formData.implementation_department" placeholder="请选择实施部门"
class="flex-1">
<el-select v-model="formData.implementation_department" placeholder="请选择实施部门" class="flex-1">
<el-option :label="item.name" :value="item.id" v-for="item in deptList">
</el-option>
</el-select>
@ -166,12 +165,13 @@
</el-col>
<el-col :span="8">
<el-form-item label="项目负责人员">
<el-input v-model="formData.project_manager_name" clearable placeholder="请输入项目负责人员" @click="userclick('project_manager')"/>
<el-input v-model="formData.project_manager_name" clearable placeholder="请输入项目负责人员"
@click="userclick('project_manager')" />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="甲方单位">
<el-input v-model="formData.part_a_unit" clearable placeholder="请输入甲方单位"/>
<el-input v-model="formData.part_a_unit" clearable placeholder="请输入甲方单位" />
</el-form-item>
</el-col>
<el-col :span="8">
@ -185,7 +185,7 @@
</el-col>
<el-col :span="8">
<el-form-item label="归档目录">
<el-input v-model="formData.archiving_directory" clearable placeholder="请输入归档目录"/>
<el-input v-model="formData.archiving_directory" clearable placeholder="请输入归档目录" />
</el-form-item>
</el-col>
<el-col :span="8">
@ -195,13 +195,13 @@
</el-col>
<el-col :span="8">
<el-form-item label="创建人" prop="create_user">
<el-input v-model="formData.create_user" clearable placeholder="请输入创建人"/>
<el-input v-model="formData.create_user" clearable placeholder="请输入创建人" />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="创建时间" prop="create_time">
<el-date-picker class="flex-1 !flex" v-model="formData.create_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-form-item>
</el-col>
@ -224,15 +224,15 @@
</template>
<script lang="ts" setup name="consultProjectEdit">
import type {FormInstance} from 'element-plus'
import type { FormInstance } from 'element-plus'
import Popup from '@/components/popup/index.vue'
import {apiConsultProjectAdd, apiConsultProjectEdit, apiConsultProjectDetail} from '@/api/consult_project'
import {timeFormat} from '@/utils/util'
import type {PropType} from 'vue'
import { apiConsultProjectAdd, apiConsultProjectEdit, apiConsultProjectDetail } from '@/api/consult_project'
import { timeFormat } from '@/utils/util'
import type { PropType } from 'vue'
import useUserStore from "@/stores/modules/user";
import {checkPhone} from "@/utils/validate"
import {apiCostApprovedProjectDetail} from "@/api/cost_approved_project";
import {marketing_custom} from "@/components/dialogTable/dialogTableConfig";
import { checkPhone } from "@/utils/validate"
import { apiCostApprovedProjectDetail } from "@/api/cost_approved_project";
import { marketing_custom } from "@/components/dialogTable/dialogTableConfig";
const userStore = useUserStore().userInfo;
@ -404,10 +404,10 @@ const formRules = reactive<any>({
message: '请输入咨询结束日期',
trigger: ['blur']
},
{
validator: chekcDate,
trigger: ["blur"],
},
{
validator: chekcDate,
trigger: ["blur"],
},
],
engineering_status: [{
@ -425,10 +425,10 @@ const formRules = reactive<any>({
message: '请输入联系电话',
trigger: ['blur']
},
{
validator: checkPhone,
trigger: ["blur"],
},
{
validator: checkPhone,
trigger: ["blur"],
},
],
consult_user: [{
required: true,
@ -501,10 +501,10 @@ const getDetail = async (row: Record<string, any>) => {
//
const handleSubmit = async () => {
await formRef.value?.validate()
const data = {...formData,}
const data = { ...formData, }
mode.value == 'edit'
? await apiConsultProjectEdit(data)
: await apiConsultProjectAdd(data)
? await apiConsultProjectEdit(data)
: await apiConsultProjectAdd(data)
popupRef.value?.close()
emit('success')
}
@ -521,7 +521,7 @@ const handleClose = () => {
}
if (route.query.contractId) {
apiCostApprovedProjectDetail({id: route.query.contractId}).then((res) => {
apiCostApprovedProjectDetail({ id: route.query.contractId }).then((res) => {
customEvent(res)
})
}

View File

@ -1,7 +1,6 @@
<template>
<div class="edit-popup">
<popup ref="popupRef" :title="popupTitle" :async="true" width="550px" @confirm="handleSubmit"
@close="handleClose">
<popup ref="popupRef" :title="popupTitle" :async="true" width="550px" @confirm="handleSubmit" @close="handleClose">
<el-form ref="formRef" :model="formData" label-width="120px" :rules="formRules">
<el-form-item label="合同名称" prop="contract_name">
<el-input v-model="formData.contract_name" clearable placeholder="点击选择合同" @click="showDialog = true"
@ -16,7 +15,8 @@
</el-date-picker>
</el-form-item>
<el-form-item label="计划人" prop="collection_user">
<el-input v-model="formData.collection_user" clearable placeholder="请输入计划人" />
<el-input v-model="formData.collection_user_name" @click="userclick('collection_user')" clearable
placeholder="请输入计划人" />
</el-form-item>
<el-form-item label="备注" prop="remark">
<el-input v-model="formData.remark" clearable placeholder="请输入备注" type="remark" />
@ -25,6 +25,8 @@
<upload-annex :form-data="formData"></upload-annex>
</el-form-item>
</el-form>
<personnelselector ref="personnel" @confirm="submituser" type="1"></personnelselector>
<el-dialog v-model="showDialog" title="选择合同" width="70%">
<dialogTable :config="cost_approved_projects" @customEvent="customEvent" :query="{ status: 1 }">
</dialogTable>
@ -65,10 +67,27 @@ const formData = reactive({
collection_amount: '',
collection_date: '',
collection_user: '',
collection_user_name: '',
remark: '',
annex: [],
})
//
const personnel = ref<any>()
let val = ''
const userclick = (vals) => {
val = vals
personnel.value.open()
}
//
const submituser = (e: any) => {
formData[val] = e.id;
formData[val + '_name'] = e.name
}
const customEvent = (e) => {
formData.contract_id = e.id
formData.contract_name = e.contract_name

View File

@ -33,7 +33,7 @@
<el-table-column label="合同名称" prop="contract_name" show-overflow-tooltip />
<el-table-column label="计划收款金额" prop="collection_amount" show-overflow-tooltip />
<el-table-column label="计划日期" prop="collection_date" show-overflow-tooltip />
<el-table-column label="计划人" prop="collection_user" show-overflow-tooltip />
<el-table-column label="计划人" prop="collection_user_name" show-overflow-tooltip />
<el-table-column label="操作" width="170" fixed="right">
<template #default="{ row }">
<el-button v-perms="['financial.financial_collection_plan/edit']" type="primary" link
@ -57,8 +57,8 @@
</div>
</el-card>
<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"
width="550px" :column='1' />
<detailPage v-if="showDetail" ref="detailRef" @close="showDetail = false" :detailConfig="detailConfig" width="550px"
:column='1' />
</div>
</template>

View File

@ -63,6 +63,9 @@
</el-button>
<el-button v-perms="['financial.financial_invoice/detail']" link @click="handleDetail(row.id)">
详情
</el-button><el-button v-perms="['financial.financial_invoice/detail']" link
@click="handleDown(row.id)">
下载发票
</el-button>
</template>
</el-table-column>
@ -80,7 +83,7 @@
<script lang="ts" setup name="financialInvoiceLists">
import { usePaging } from '@/hooks/usePaging'
import { useDictData } from '@/hooks/useDictOptions'
import { apiFinancialInvoiceLists, apiFinancialInvoiceDelete, apiFinancialInvoiceDetail } from '@/api/financial_invoice'
import { apiFinancialInvoiceLists, apiFinancialInvoiceDelete, apiFinancialInvoiceDetail, apiFinancialInvoiceDown } from '@/api/financial_invoice'
import { timeFormat } from '@/utils/util'
import feedback from '@/utils/feedback'
import EditPopup from './edit.vue'
@ -150,6 +153,12 @@ const handleDetail = async (id: any) => {
detailRef.value?.open()
detailRef.value?.setFormData(res)
}
//
const handleDown = async (id: any) => {
let res = await apiFinancialInvoiceDown({ id })
const a = document.createElement('a')
a.href = import.meta.env.VITE_APP_BASE_URL + res.url
a.click()
}
getLists()
</script>

View File

@ -55,6 +55,9 @@
<el-button v-perms="['financial.financial_refund/detail']" link @click="handleDetail(row.id)">
详情
</el-button>
<el-button v-perms="['financial.financial_invoice/detail']" link @click="handleDown(row.id)">
下载到账回单
</el-button>
</template>
</el-table-column>
</el-table>
@ -72,7 +75,7 @@
<script lang="ts" setup name="financialRefundLists">
import { usePaging } from '@/hooks/usePaging'
import { useDictData } from '@/hooks/useDictOptions'
import { apiFinancialRefundLists, apiFinancialRefundDelete, apiFinancialRefundDetail } from '@/api/financial_refund'
import { apiFinancialRefundLists, apiFinancialRefundDelete, apiFinancialRefundDetail, apiFinancialRefundDownl } from '@/api/financial_refund'
import { timeFormat } from '@/utils/util'
import feedback from '@/utils/feedback'
import EditPopup from './edit.vue'
@ -143,7 +146,13 @@ const handleDetail = async (id: any) => {
detailRef.value?.open()
detailRef.value?.setFormData(res)
}
//
const handleDown = async (id: any) => {
let res = await apiFinancialRefundDownl({ id })
const a = document.createElement('a')
a.href = import.meta.env.VITE_APP_BASE_URL + res.url
a.click()
}
getLists()
</script>

View File

@ -22,7 +22,8 @@
</el-date-picker>
</el-form-item>
<el-form-item label="收文人" prop="accept_user">
<el-input v-model="formData.accept_user" clearable placeholder="请输入收文人" />
<el-input v-model="formData.accept_user_name" @click="userclick('accept_user')" clearable
placeholder="请输入收文人" />
</el-form-item>
<el-form-item label="收文日期" prop="accept_date">
<el-date-picker class="flex-1 !flex" v-model="formData.accept_date" clearable type="date"
@ -30,7 +31,8 @@
</el-date-picker>
</el-form-item>
<el-form-item label="传阅人" prop="read_user">
<el-input v-model="formData.read_user" clearable placeholder="请输入传阅人" />
<el-input v-model="formData.read_user_name" @click="userclick('read_user')" clearable
placeholder="请输入传阅人" />
</el-form-item>
<el-form-item label="备注">
<el-input v-model="formData.remark" clearable placeholder="请输入备注" type="textarea" />
@ -40,6 +42,8 @@
</el-form-item>
</el-form>
<personnelselector ref="personnel" @confirm="submituser" type="1"></personnelselector>
<el-dialog v-model="showDialog" title="选择项目" width="70%">
<dialogTable @customEvent="customEvent" :config="manage_project" />
</el-dialog>
@ -82,12 +86,30 @@ const formData = reactive({
send_company: '',
send_date: '',
accept_user: '',
accept_user_name: '',
accept_date: '',
read_user: '',
read_user_name: '',
remark: '',
annex: [],
})
//
const personnel = ref<any>()
let val = ''
const userclick = (vals) => {
val = vals
personnel.value.open()
}
//
const submituser = (e: any) => {
formData[val] = e.id;
formData[val + '_name'] = e.name
}
const customEvent = (e: any) => {
formData.project_id = e.id
formData.project_name = e.project_name

View File

@ -8,9 +8,9 @@
<el-form-item label="发文单位" prop="send_company">
<el-input class="w-[280px]" v-model="queryParams.send_company" clearable placeholder="请输入发文单位" />
</el-form-item>
<el-form-item label="收文人" prop="accept_user">
<!-- <el-form-item label="收文人" prop="accept_user">
<el-input class="w-[280px]" v-model="queryParams.accept_user" clearable placeholder="请输入收文人" />
</el-form-item>
</el-form-item> -->
<el-form-item>
<el-button type="primary" @click="resetPage">查询</el-button>
<el-button @click="resetParams">重置</el-button>
@ -35,7 +35,7 @@
<el-table-column label="内容摘要" prop="abstract" show-overflow-tooltip />
<el-table-column label="发文单位" prop="send_company" show-overflow-tooltip />
<el-table-column label="发文日期" prop="send_date" show-overflow-tooltip />
<el-table-column label="收文人" prop="accept_user" show-overflow-tooltip />
<el-table-column label="收文人" prop="accept_user_name" show-overflow-tooltip />
<el-table-column label="收文日期" prop="accept_date" show-overflow-tooltip />
<el-table-column label="操作" align="center" fixed="right">
<template #default="{ row }">

View File

@ -1,7 +1,6 @@
<template>
<div class="edit-popup">
<popup ref="popupRef" :title="popupTitle" :async="true" width="550px" @confirm="handleSubmit"
@close="handleClose">
<popup ref="popupRef" :title="popupTitle" :async="true" width="550px" @confirm="handleSubmit" @close="handleClose">
<el-form ref="formRef" :model="formData" label-width="100px" :rules="formRules">
<el-form-item label="项目名称" prop="project_name">
<el-input v-model="formData.project_name" clearable placeholder="点击选择项目" readonly
@ -24,7 +23,7 @@
<el-form-item label="信息类别" prop="info_cate">
<el-checkbox-group v-model="formData.info_cate">
<el-checkbox v-for="(item, index) in dictData.info_cate" :key="index" :label="item.value">{{
item.name }}</el-checkbox>
item.name }}</el-checkbox>
</el-checkbox-group>
</el-form-item>
<el-form-item label=" 信息内容" prop="content">
@ -34,7 +33,7 @@
<el-input v-model="formData.opinions" clearable placeholder="请输入项目部意见" />
</el-form-item>
<el-form-item label="主送人" prop="giver">
<el-input v-model="formData.giver" clearable placeholder="请输入主送人" />
<el-input v-model="formData.giver_name" @click="userclick('giver')" clearable placeholder="请输入主送人" />
</el-form-item>
<el-form-item label="附件" prop="annex">
<uploadAnnex :formData="formData"></uploadAnnex>
@ -48,6 +47,7 @@
</el-date-picker>
</el-form-item>
</el-form>
<personnelselector ref="personnel" @confirm="submituser" type="1"></personnelselector>
<el-dialog v-model="showDialog" title="选择项目" width="70%">
<dialogTable @customEvent="customEvent" :config="manage_project" />
</el-dialog>
@ -107,11 +107,27 @@ const formData = reactive({
content: '',
opinions: '',
giver: '',
giver_name: '',
annex: [],
create_user: userStore.account,
create_time: timeFormat('', 'yyyy-mm-dd hh:MM:ss'),
})
//
const personnel = ref<any>()
let val = ''
const userclick = (vals) => {
val = vals
personnel.value.open()
}
//
const submituser = (e: any) => {
formData[val] = e.id;
formData[val + '_name'] = e.name
}
const customEvent = (e: any) => {
formData.project_id = e.id
formData.project_name = e.project_name

View File

@ -39,7 +39,7 @@
<el-table-column label="发生日期" prop="happen_date" show-overflow-tooltip />
<el-table-column label="严重程度" prop="severity_text" show-overflow-tooltip />
<el-table-column label="信息类别" prop="info_cate_text" show-overflow-tooltip />
<el-table-column label="主送人" prop="giver" show-overflow-tooltip />
<el-table-column label="主送人" prop="giver_name" show-overflow-tooltip />
<el-table-column label="操作" align="center" fixed="right">
<template #default="{ row }">
<el-button v-perms="['manage_communication.manage_info_report/edit']" type="primary" link

View File

@ -21,19 +21,22 @@
<el-input v-model="formData.send_company" clearable placeholder="请输入发文单位" />
</el-form-item>
<el-form-item label="发文人" prop="send_user">
<el-input v-model="formData.send_user" clearable placeholder="请输入发文人" />
<el-input v-model="formData.send_user_name" clearable @click="userclick('send_user')"
placeholder="请输入发文人" />
</el-form-item>
<el-form-item label="签收人" prop="accept_user">
<el-input v-model="formData.accept_user" clearable placeholder="请输入签收人" />
<el-input v-model="formData.accept_user_name" @click="userclick('accept_user')" clearable
placeholder="请输入签收人" />
</el-form-item>
<el-form-item label="备注">
<el-input v-model="formData.remark" clearable placeholder="请输入备注" type="textarea" />
</el-form-item>
<el-form-item label="附件" prop="annex">
<uploadAnnex :formData="formData"></uploadAnnex>
</el-form-item>
</el-form>
<personnelselector ref="personnel" @confirm="submituser" type="1"></personnelselector>
<el-dialog v-model="showDialog" title="选择项目" width="70%">
<dialogTable @customEvent="customEvent" :config="manage_project" />
</el-dialog>
@ -75,10 +78,28 @@ const formData = reactive({
send_date: '',
send_company: '',
send_user: '',
send_user_name: '',
accept_user: '',
accept_user_name: '',
remark: '',
annex: [],
})
//
const personnel = ref<any>()
let val = ''
const userclick = (vals) => {
val = vals
personnel.value.open()
}
//
const submituser = (e: any) => {
formData[val] = e.id;
formData[val + '_name'] = e.name
}
const customEvent = (e: any) => {
formData.project_id = e.id
formData.project_name = e.project_name

View File

@ -39,8 +39,8 @@
<el-table-column label="内容摘要" prop="abstract" show-overflow-tooltip />
<el-table-column label="发文日期" prop="send_date" show-overflow-tooltip />
<el-table-column label="发文单位" prop="send_company" show-overflow-tooltip />
<el-table-column label="发文人" prop="send_user" show-overflow-tooltip />
<el-table-column label="签收人" prop="accept_user" show-overflow-tooltip />
<el-table-column label="发文人" prop="send_user_name" show-overflow-tooltip />
<el-table-column label="签收人" prop="accept_user_name" show-overflow-tooltip />
<el-table-column label="备注" prop="remark" show-overflow-tooltip />
<el-table-column label="操作" align="center" width="170" fixed="right">
<template #default="{ row }">

View File

@ -11,7 +11,7 @@ const detailConfig = {
},
{
label: "法定代表人",
value: "fddbr"
value: "fddbr_name"
},
{
label: "联系电话",
@ -72,7 +72,7 @@ const detailConfig = {
},
{
label: "经办人",
value: "jbr"
value: "jbr_name"
},
{
label: "年检时间",
@ -80,7 +80,7 @@ const detailConfig = {
},
{
label: "负责人",
value: "fzr"
value: "fzr_name"
},
{
label: "负责人手机",
@ -88,7 +88,7 @@ const detailConfig = {
},
{
label: "技术负责人",
value: "jsfzrsj"
value: "jsfzrsj_name"
},
{
label: "备注",

View File

@ -18,7 +18,8 @@
</el-col>
<el-col :span="8">
<el-form-item label="法定代表人">
<el-input v-model="formData.fddbr" clearable placeholder="请输入法定代表人" />
<el-input v-model="formData.fddbr_name" @click="userclick('fddbr')" clearable
placeholder="请输入法定代表人" />
</el-form-item>
</el-col>
<el-col :span="8">
@ -100,7 +101,8 @@
</el-col>
<el-col :span="8">
<el-form-item label="经办人">
<el-input v-model="formData.jbr" clearable placeholder="请输入经办人" />
<el-input v-model="formData.jbr_name" @click="userclick('jbr')" clearable
placeholder="请输入经办人" />
</el-form-item>
</el-col>
<el-col :span="8">
@ -112,7 +114,8 @@
</el-col>
<el-col :span="8">
<el-form-item label="负责人">
<el-input v-model="formData.fzr" clearable placeholder="请输入负责人" />
<el-input v-model="formData.fzr_name" @click="userclick('fzr')" clearable
placeholder="请输入负责人" />
</el-form-item>
</el-col>
<el-col :span="8">
@ -122,7 +125,8 @@
</el-col>
<el-col :span="8">
<el-form-item label="技术负责人">
<el-input v-model="formData.jsfzr" clearable placeholder="请输入技术负责人" />
<el-input v-model="formData.jsfzr_name" @click="userclick('jsfzr')" clearable
placeholder="请输入技术负责人" />
</el-form-item>
</el-col>
<el-col :span="8">
@ -139,13 +143,11 @@
<el-form-item label="附件">
<upload-annex :form-data="formData"></upload-annex>
</el-form-item>
</el-col>
</el-row>
</el-form>
<personnelselector ref="personnel" @confirm="submituser" type="1"></personnelselector>
</popup>
</div>
</template>
@ -180,6 +182,7 @@ const formData = reactive({
org_name: '',
filing_type: '',
fddbr: '',
fddbr_name: '',
telephone: '',
yyzzbh: '',
zzzsbh: '',
@ -195,16 +198,36 @@ const formData = reactive({
bajsq: '',
basj: '',
jbr: '',
jbr_name: '',
njsj: '',
fzr: '',
fzr_name: '',
fzrsj: '',
jsfzr: '',
jsfzr_name: '',
jsfzrsj: '',
remark: '',
annex: '',
})
//
const personnel = ref<any>()
let val = ''
const userclick = (vals) => {
val = vals
personnel.value.open()
}
//
const submituser = (e: any) => {
formData[val] = e.id;
formData[val + '_name'] = e.name
}
const checkDate = (rule: any, value: any, callback: any) => {
if (new Date(formData.bajsq) < new Date(formData.baksq)) {
callback(new Error('备案结束期不能早于备案开始期'))

View File

@ -8,11 +8,11 @@
<el-input class="w-[280px]" v-model="queryParams.org_name" clearable placeholder="请输入机构名称" />
</el-form-item>
</el-col>
<el-col :span="8">
<!-- <el-col :span="8">
<el-form-item label="法定代表人" prop="fddbr">
<el-input class="w-[280px]" v-model="queryParams.fddbr" clearable placeholder="请输入法定代表人" />
</el-form-item>
</el-col>
</el-col> -->
<el-col :span="8">
<el-form-item label="联系电话" prop="telephone">
<el-input class="w-[280px]" v-model="queryParams.telephone" clearable placeholder="请输入联系电话" />
@ -49,14 +49,14 @@
<el-table :data="pager.lists" @selection-change="handleSelectionChange" border>
<el-table-column type="selection" width="55" />
<el-table-column :render-header="pager.calcWidth" label="机构名称" prop="org_name" show-overflow-tooltip />
<el-table-column label="法定代表人" prop="fddbr" show-overflow-tooltip />
<el-table-column label="法定代表人" prop="fddbr_name" show-overflow-tooltip />
<el-table-column :render-header="pager.calcWidth" label="联系电话" prop="telephone" show-overflow-tooltip />
<el-table-column :render-header="pager.calcWidth" label="机构注册地址" prop="jgzcdz" show-overflow-tooltip />
<el-table-column :render-header="pager.calcWidth" label="备案开始期" prop="baksq" show-overflow-tooltip />
<el-table-column :render-header="pager.calcWidth" label="备案结束期" prop="bajsq" show-overflow-tooltip />
<el-table-column label="经办人" prop="jbr" show-overflow-tooltip />
<el-table-column label="经办人" prop="jbr_name" show-overflow-tooltip />
<el-table-column label="年检时间" prop="njsj" show-overflow-tooltip />
<el-table-column label="负责人" prop="fzr" show-overflow-tooltip />
<el-table-column label="负责人" prop="fzr_name" show-overflow-tooltip />
<el-table-column label="负责人手机" prop="fzrsj" show-overflow-tooltip />
<el-table-column label="操作" width="170" fixed="right">
<template #default="{ row }">

View File

@ -47,7 +47,7 @@ const detailConfig = {
},
{
label: "开票联系人",
value: "invoice_contact"
value: "invoice_contact_name"
},
{
label: "开票单位注册地址",

View File

@ -1,7 +1,6 @@
<template>
<div class="edit-popup">
<popup ref="popupRef" :title="popupTitle" :async="true" width="80vw" @confirm="handleSubmit"
@close="handleClose">
<popup ref="popupRef" :title="popupTitle" :async="true" width="80vw" @confirm="handleSubmit" @close="handleClose">
<el-form ref="formRef" :model="formData" label-width="160px" :rules="formRules">
<el-row>
<el-col :span="8">
@ -39,8 +38,7 @@
<el-col :span="8">
<el-form-item label="客户分类" prop="category">
<el-select v-model="formData.category" placeholder="请选择客户分类" class="flex-1">
<el-option :label="item.name" :value="item.value"
v-for="item in dictData.custom_category">
<el-option :label="item.name" :value="item.value" v-for="item in dictData.custom_category">
</el-option>
</el-select>
</el-form-item>
@ -68,7 +66,8 @@
</el-col>
<el-col :span="8">
<el-form-item label="开票联系人">
<el-input v-model="formData.invoice_contact" clearable placeholder="请输入开票联系人" />
<el-input v-model="formData.invoice_contact_name" @click="userclick('invoice_contact')"
clearable placeholder="请输入开票联系人" />
</el-form-item>
</el-col>
<el-col :span="8">
@ -95,8 +94,8 @@
</el-col>
<el-col :span="8">
<el-form-item label="所在省份" prop="province">
<el-select v-model="formData.province" clearable placeholder="请选择省"
@change="province_change" class="flex-1">
<el-select v-model="formData.province" clearable placeholder="请选择省" @change="province_change"
class="flex-1">
<el-option v-for="(item, index) in datas.provinceOptions" :key="index"
:label="item.province_name" :value="item.province_code" />
</el-select>
@ -105,8 +104,8 @@
<el-col :span="8">
<el-form-item label="所在市区" prop="city">
<el-select v-model="formData.city" clearable placeholder="请选择市" class="flex-1">
<el-option v-for="(item, index) in datas.cityOptions" :key="index"
:label="item.city_name" :value="item.city_code" />
<el-option v-for="(item, index) in datas.cityOptions" :key="index" :label="item.city_name"
:value="item.city_code" />
</el-select>
</el-form-item>
</el-col>
@ -143,7 +142,7 @@
</el-form-item>
</el-col>
</el-row>
<personnelselector ref="personnel" @confirm="submituser" type="1"></personnelselector>
<formTable :formData="formData.detail" :config="tableConfig" :dictData="dictData">
</formTable>
</el-form>
@ -201,6 +200,7 @@ const formData = reactive({
taxpayer_identification_number: '',
opening_bank: '',
invoice_contact: '',
invoice_contact_name: '',
invoice_company_address: '',
invoice_company_telephone: '',
opening_bank_account: '',
@ -230,6 +230,22 @@ const formData = reactive({
]
})
//
const personnel = ref<any>()
let val = ''
const userclick = (vals) => {
val = vals
personnel.value.open()
}
//
const submituser = (e: any) => {
formData[val] = e.id;
formData[val + '_name'] = e.name
}
const tableConfig = reactive({
title: '联系人',
tableConfig: [
@ -505,7 +521,7 @@ const getCityList = async () => {
}
//
function province_change (value: string) {
function province_change(value: string) {
formData.city = ''
getCityList()
}

View File

@ -374,12 +374,8 @@ const handleClose = () => {
emit('close')
}
import { deptLists } from "@/api/org/department"
// <el-select v-model="formData.department" placeholder="" class="flex-1">
// <el-option :label="item.name" :value="item.id" v-for="item in deptList">
// </el-option>
// </el-select>
// <personnelselector ref="personnel" @confirm="submituser" type="1"></personnelselector>
//
@ -396,7 +392,11 @@ const submituser = (e: any) => {
formData[val + '_name'] = e.name
}
import { deptLists } from "@/api/org/department"
// <el-select v-model="formData.department" placeholder="" class="flex-1">
// <el-option :label="item.name" :value="item.id" v-for="item in deptList">
// </el-option>
// </el-select>
const deptList = ref([])
const getDeptList = async () => {
let res = await deptLists()

View File

@ -1,7 +1,6 @@
<template>
<div class="edit-popup">
<popup ref="popupRef" :title="popupTitle" :async="true" width="550px" @confirm="handleSubmit"
@close="handleClose">
<popup ref="popupRef" :title="popupTitle" :async="true" width="550px" @confirm="handleSubmit" @close="handleClose">
<el-form ref="formRef" :model="formData" label-width="120px" :rules="formRules">
<el-form-item label="项目名称" prop="project_name">
<el-input v-model="formData.project_name" clearable placeholder="点击选择项目" readonly
@ -16,7 +15,7 @@
</el-date-picker>
</el-form-item>
<el-form-item label="检查人" prop="user">
<el-input v-model="formData.user" clearable placeholder="请输入检查人" />
<el-input v-model="formData.user_name" @click="userclick('user')" clearable placeholder="请输入检查人" />
</el-form-item>
<el-form-item label="问题名称" prop="problem_name">
<el-input v-model="formData.problem_name" clearable placeholder="请输入问题名称" />
@ -45,6 +44,8 @@
<uploadAnnex :formData="formData"></uploadAnnex>
</el-form-item>
<personnelselector ref="personnel" @confirm="submituser" type="1"></personnelselector>
</el-form>
<el-dialog v-model="showDialog" title="选择项目" width="70%">
<dialogTable @customEvent="customEvent" :config="supervision_project" />
@ -85,6 +86,7 @@ const formData = reactive({
name: '',
date: '',
user: '',
user_name: '',
problem_name: '',
problem_type: '',
problem_desc: '',
@ -95,6 +97,23 @@ const formData = reactive({
annex: [],
})
//
const personnel = ref<any>()
let val = ''
const userclick = (vals) => {
val = vals
personnel.value.open()
}
//
const submituser = (e: any) => {
formData[val] = e.id;
formData[val + '_name'] = e.name
}
const customEvent = (e) => {
formData.project_id = e.id
formData.project_name = e.project_name

View File

@ -37,7 +37,7 @@
<el-table-column label="项目名称" prop="project_name" show-overflow-tooltip />
<el-table-column label="检查名称" prop="name" show-overflow-tooltip />
<el-table-column label="检查日期" prop="date" show-overflow-tooltip />
<el-table-column label="检查人" prop="user" show-overflow-tooltip />
<el-table-column label="检查人" prop="user_name" show-overflow-tooltip />
<el-table-column label="问题名称" prop="problem_name" show-overflow-tooltip />
<el-table-column label="问题类型" prop="problem_type" show-overflow-tooltip />
<el-table-column label="问题说明" prop="problem_desc" show-overflow-tooltip />

View File

@ -1,7 +1,6 @@
<template>
<div class="edit-popup">
<popup ref="popupRef" :title="popupTitle" :async="true" width="550px" @confirm="handleSubmit"
@close="handleClose">
<popup ref="popupRef" :title="popupTitle" :async="true" width="550px" @confirm="handleSubmit" @close="handleClose">
<el-form ref="formRef" :model="formData" label-width="120px" :rules="formRules">
<el-form-item label="危大工程监控" prop="dangerous_engineering_monitoring_title">
<el-input v-model="formData.dangerous_engineering_monitoring_title" clearable readonly
@ -19,9 +18,12 @@
</el-radio-group>
</el-form-item>
<el-form-item label="告知人员" prop="notice_user">
<el-input v-model="formData.notice_user" clearable placeholder="请输入告知人员" />
<el-input v-model="formData.notice_user_name" @click="userclick('notice_user')" clearable
placeholder="请输入告知人员" />
</el-form-item>
</el-form>
<personnelselector ref="personnel" @confirm="submituser" type="1"></personnelselector>
<el-dialog v-model="showDialog" title="选择危大工程监控" width="70%">
<dialogTable :config="supervision_dangerous_engineering_monitoring" @customEvent="customEvent">
</dialogTable>
@ -62,7 +64,26 @@ const formData = reactive({
actual_construction_date: '',
is_notice: '',
notice_user: '',
notice_user_name: '',
})
//
const personnel = ref<any>()
let val = ''
const userclick = (vals) => {
val = vals
personnel.value.open()
}
//
const submituser = (e: any) => {
formData[val] = e.id;
formData[val + '_name'] = e.name
}
const customEvent = (e: any) => {
formData.dangerous_engineering_monitoring_id = e.id
formData.dangerous_engineering_monitoring_title = e.project_name

View File

@ -35,7 +35,7 @@
<el-table-column label="危大工程监控" prop="dangerous_engineering_monitoring_title" show-overflow-tooltip />
<el-table-column label="实际施工日期" prop="actual_construction_date" show-overflow-tooltip />
<el-table-column label="是否告知" prop="is_notice_text" show-overflow-tooltip />
<el-table-column label="告知人员" prop="notice_user" show-overflow-tooltip />
<el-table-column label="告知人员" prop="notice_user_name" show-overflow-tooltip />
<el-table-column label="危大工程类型" prop="type" show-overflow-tooltip />
<el-table-column label="施工部位" prop="position" show-overflow-tooltip />
<el-table-column label="操作" width="170" align="center" fixed="right">

View File

@ -1,7 +1,6 @@
<template>
<div class="edit-popup">
<popup ref="popupRef" :title="popupTitle" :async="true" width="550px" @confirm="handleSubmit"
@close="handleClose">
<popup ref="popupRef" :title="popupTitle" :async="true" width="550px" @confirm="handleSubmit" @close="handleClose">
<el-form ref="formRef" :model="formData" label-width="120px" :rules="formRules">
<el-form-item label="危大工程监控" prop="dangerous_engineering_monitoring_title">
<el-input v-model="formData.project_name" clearable readonly @click="showDialog = true"
@ -13,7 +12,8 @@
</el-date-picker>
</el-form-item>
<el-form-item label="消除人" prop="eliminate_user">
<el-input v-model="formData.eliminate_user" clearable placeholder="请输入消除人" />
<el-input v-model="formData.eliminate_user_name" @click="userclick('eliminate_user')" clearable
placeholder="请输入消除人" />
</el-form-item>
<el-form-item label="是否告知" prop="is_notice">
<el-radio-group v-model="formData.is_notice">
@ -22,9 +22,12 @@
</el-radio-group>
</el-form-item>
<el-form-item label="告知人员" prop="notice_user">
<el-input v-model="formData.notice_user" clearable placeholder="请输入告知人员" />
<el-input v-model="formData.notice_user_name" @click="userclick('notice_user')" clearable
placeholder="请输入告知人员" />
</el-form-item>
</el-form>
<personnelselector ref="personnel" @confirm="submituser" type="1"></personnelselector>
<el-dialog v-model="showDialog" title="选择危大工程监控" width="70%">
<dialogTable :config="supervision_dangerous_engineering_monitoring" @customEvent="customEvent">
</dialogTable>
@ -63,11 +66,30 @@ const formData = reactive({
dangerous_engineering_monitoring_id: '',
project_name: "",
eliminate_date: '',
eliminate_user_name: '',
eliminate_user: '',
is_notice: '',
notice_user: '',
notice_user_name: '',
})
//
const personnel = ref<any>()
let val = ''
const userclick = (vals) => {
val = vals
personnel.value.open()
}
//
const submituser = (e: any) => {
formData[val] = e.id;
formData[val + '_name'] = e.name
}
const customEvent = (e: any) => {
formData.dangerous_engineering_monitoring_id = e.id
formData.project_name = e.project_name

View File

@ -31,7 +31,7 @@
<el-table-column type="selection" width="55" />
<el-table-column label="危大工程监控" prop="dangerous_engineering_monitoring_title" show-overflow-tooltip />
<el-table-column label="危险消除日期" prop="eliminate_date" show-overflow-tooltip />
<el-table-column label="消除人" prop="eliminate_user" show-overflow-tooltip />
<el-table-column label="消除人" prop="eliminate_user_name" show-overflow-tooltip />
<el-table-column label="是否告知" prop="is_notice_text" show-overflow-tooltip />
<el-table-column label="施工部位" prop="position" show-overflow-tooltip />
<el-table-column label="操作" width="170" align="center" fixed="right">

View File

@ -1,7 +1,6 @@
<template>
<div class="edit-popup">
<popup ref="popupRef" :title="popupTitle" :async="true" width="550px" @confirm="handleSubmit"
@close="handleClose">
<popup ref="popupRef" :title="popupTitle" :async="true" width="550px" @confirm="handleSubmit" @close="handleClose">
<el-form ref="formRef" :model="formData" label-width="120px" :rules="formRules">
<el-form-item label="项目名称" prop="project_name">
<el-input v-model="formData.project_name" clearable placeholder="点击选择项目" readonly
@ -32,14 +31,15 @@
<el-input v-model="formData.position" clearable placeholder="请输入施工部位" />
</el-form-item>
<el-form-item label="本项目特征">
<el-input v-model="formData.project_characteristics" clearable placeholder="请输入本项目特征"
type="textarea" />
<el-input v-model="formData.project_characteristics" clearable placeholder="请输入本项目特征" type="textarea" />
</el-form-item>
<el-form-item label="上级监管人员">
<el-input v-model="formData.supervisor" clearable placeholder="请输入上级监管人员" />
<el-input v-model="formData.supervisor_name" @click="userclick('supervisor')" clearable
placeholder="请输入上级监管人员" />
</el-form-item>
<el-form-item label="负责人">
<el-input v-model="formData.responsible_person" clearable placeholder="请输入负责人" />
<el-input v-model="formData.responsible_person_name" @click="userclick('responsible_person')" clearable
placeholder="请输入负责人" />
</el-form-item>
</el-form>
<el-dialog v-model="showDialog" title="选择项目" width="70%">
@ -52,6 +52,8 @@
:query="{ project_id: formData.project_id, node_type: 2 }"></dialogTable>
</el-dialog>
</div>
<personnelselector ref="personnel" @confirm="submituser" type="1"></personnelselector>
</popup>
</div>
</template>
@ -97,8 +99,28 @@ const formData = reactive({
position: '',
project_characteristics: '',
supervisor: '',
supervisor_name: '',
responsible_person: '',
responsible_person_name: '',
})
//
const personnel = ref<any>()
let val = ''
const userclick = (vals) => {
val = vals
personnel.value.open()
}
//
const submituser = (e: any) => {
formData[val] = e.id;
formData[val + '_name'] = e.name
}
const customEvent = (e) => {
formData.project_id = e.id
formData.project_name = e.project_name

View File

@ -107,7 +107,8 @@
</el-col>
<el-col :span="8">
<el-form-item label="检查人">
<el-input v-model="formData.check_user" clearable placeholder="请输入检查人" />
<el-input v-model="formData.check_user_name" @click="userclick('check_user')" clearable
placeholder="请输入检查人" />
</el-form-item>
</el-col>
<el-col :span="8">
@ -124,7 +125,8 @@
</el-col>
<el-col :span="8">
<el-form-item label="监控责任人">
<el-input v-model="formData.responsible_person" clearable placeholder="请输入监控责任人" />
<el-input v-model="formData.responsible_person_name" @click="userclick('responsible_person')"
clearable placeholder="请输入监控责任人" />
</el-form-item>
</el-col>
<el-col :span="8">
@ -160,6 +162,8 @@
</el-row>
</el-form>
<personnelselector ref="personnel" @confirm="submituser" type="1"></personnelselector>
<el-dialog v-model="showDialog" title="选择项目" width="70%">
<dialogTable @customEvent="customEvent" :config="supervision_project" />
@ -208,9 +212,11 @@ const formData = reactive({
is_accept: '',
is_accept_to_plan: '',
check_user: '',
check_user_name: '',
check_time: '',
problems_rectification: '',
responsible_person: '',
responsible_person_name: '',
exceed_the_control_value: '',
exceed_the_warning_value: '',
control_measures: '',
@ -218,6 +224,23 @@ const formData = reactive({
create_time: "",
})
//
const personnel = ref<any>()
let val = ''
const userclick = (vals) => {
val = vals
personnel.value.open()
}
//
const submituser = (e: any) => {
formData[val] = e.id;
formData[val + '_name'] = e.name
}
const customEvent = (e) => {
formData.project_id = e.id
formData.project_name = e.project_name

View File

@ -74,7 +74,8 @@
</el-col>
<el-col :span="8">
<el-form-item label="初审人">
<el-input v-model="formData.first_auditor" clearable placeholder="请输入初审人" />
<el-input v-model="formData.first_auditor_name" @click="userclick('first_auditor')" clearable
placeholder="请输入初审人" />
</el-form-item>
</el-col>
<el-col :span="8">
@ -127,6 +128,8 @@
</el-dialog>
</div>
<formTable :formData="formData.maintenance_record" :config="tableConfig"></formTable>
<personnelselector ref="personnel" @confirm="submituser" type="1"></personnelselector>
</popup>
</div>
</template>
@ -176,6 +179,7 @@ const formData = reactive({
approval_type: '',
first_audit_opinion: '',
first_auditor: '',
first_auditor_name: '',
first_audit_time: '',
final_audit_opinion: '',
final_audit_time: '',
@ -184,6 +188,22 @@ const formData = reactive({
maintenance_record: []
})
// <personnelselector ref="personnel" @confirm="submituser" type="1"></personnelselector>
//
const personnel = ref<any>()
let val = ''
const userclick = (vals) => {
val = vals
personnel.value.open()
}
//
const submituser = (e: any) => {
formData[val] = e.id;
formData[val + '_name'] = e.name
}
const tableConfig = reactive(
{
title: "机械维修保养记录",

View File

@ -3,8 +3,7 @@
<popup ref="popupRef" :title="popupTitle" :async="true" width="550px" @confirm="handleSubmit" @close="handleClose">
<el-form ref="formRef" :model="formData" label-width="110px" :rules="formRules">
<el-form-item label="项目名称" prop="project_name">
<el-input v-model="formData.project_name" clearable placeholder="点击选择项目" readonly
@click="showDialog = true" />
<el-input v-model="formData.project_name" clearable placeholder="点击选择项目" readonly @click="showDialog = true" />
</el-form-item>
<el-form-item label="信息摘要" prop="abstract">
<el-input v-model="formData.abstract" clearable placeholder="请输入信息摘要" />
@ -34,7 +33,7 @@
<el-input v-model="formData.opinions" clearable placeholder="请输入项目部意见" />
</el-form-item>
<el-form-item label="主送人">
<el-input v-model="formData.giver" clearable placeholder="请输入主送人" />
<el-input v-model="formData.giver_name" @click="userclick('giver')" clearable placeholder="请输入主送人" />
</el-form-item>
<createUserLable :formData="formData"></createUserLable>
@ -42,6 +41,8 @@
<uploadAnnex :formData="formData"></uploadAnnex>
</el-form-item>
</el-form>
<personnelselector ref="personnel" @confirm="submituser" type="1"></personnelselector>
<el-dialog v-model="showDialog" title="选择项目" width="70%">
<dialogTable @customEvent="customEvent" :config="supervision_project" />
</el-dialog>
@ -90,11 +91,28 @@ const formData = reactive({
info_content: "",
opinions: "",
giver: "",
giver_name: "",
annex: [],
create_user: "",
create_time: "",
});
//
const personnel = ref<any>()
let val = ''
const userclick = (vals) => {
val = vals
personnel.value.open()
}
//
const submituser = (e: any) => {
formData[val] = e.id;
formData[val + '_name'] = e.name
}
//
const formRules = reactive<any>({
project_id: [

View File

@ -45,7 +45,7 @@
<el-table-column label="信息类别" prop="info_cate_text" show-overflow-tooltip />
<el-table-column label="信息内容" prop="info_content" show-overflow-tooltip />
<el-table-column label="项目部意见" prop="opinions" show-overflow-tooltip />
<el-table-column label="主送人" prop="giver" show-overflow-tooltip />
<el-table-column label="主送人" prop="giver_name" show-overflow-tooltip />
<el-table-column label="操作" width="170" align="center" fixed="right">
<template #default="{ row }">

View File

@ -10,7 +10,11 @@
<el-input v-model="formData.name" clearable placeholder="请输入姓名" />
</el-form-item>
<el-form-item label="部门" prop="dept">
<el-input v-model="formData.dept" clearable placeholder="请输入部门" />
<!-- <el-input v-model="formData.dept" clearable placeholder="请输入部门" /> -->
<el-select v-model="formData.dept" placeholder="请选择部门" class="flex-1">
<el-option :label="item.name" :value="item.id" v-for="item in deptList">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="项目调入时间" prop="start_time">
<el-date-picker class="flex-1 !flex" v-model="formData.start_time" clearable value-format="YYYY-MM-DD "
@ -73,6 +77,14 @@ const formData = reactive({
remark: '',
})
import { deptLists } from "@/api/org/department"
const deptList = ref([])
const getDeptList = async () => {
let res = await deptLists()
deptList.value = res.lists
}
getDeptList()
const chekcDate = (rule: any, value: any, callback: any) => {
if (new Date(formData.end_time) < new Date(formData.start_time)) {

View File

@ -7,7 +7,8 @@
@click="showDialog = true" />
</el-form-item>
<el-form-item label="检查人" prop="check_user">
<el-input v-model="formData.check_user" clearable placeholder="请输入检查人" />
<el-input v-model="formData.check_user_name" @click="userclick('check_user')" clearable
placeholder="请输入检查人" />
</el-form-item>
<el-form-item label="检查日期" prop="check_date">
<el-date-picker class="flex-1 !flex" v-model="formData.check_date" clearable value-format="YYYY-MM-DD"
@ -25,9 +26,10 @@
</el-form-item>
<el-form-item label="附件">
<uploadAnnex :formData="formData"></uploadAnnex>
</el-form-item>
</el-form>
<personnelselector ref="personnel" @confirm="submituser" type="1"></personnelselector>
<el-dialog v-model="showDialog" title="选择项目" width="70%">
<dialogTable @customEvent="customEvent" :config="supervision_project" />
</el-dialog>
@ -65,19 +67,28 @@ const formData = reactive({
project_id: '',
project_name: "",
check_user: '',
check_user_name: '',
check_date: '',
check_area: '',
problem_desc: '',
remark: '',
annex: [],
})
const handleAvatarSuccess_four = (response: any) => {
Array.isArray(formData.annex) ? "" : formData.annex = []
// @ts-ignore
response.code != 0 ? formData.annex.push({ uri: response.data.uri, name: response.data.name }) : ElMessage.error(response.msg);
};
//
const delFileFn = (index: number) => { formData.annex.splice(index, 1) }
// <personnelselector ref="personnel" @confirm="submituser" type="1"></personnelselector>
//
const personnel = ref<any>()
let val = ''
const userclick = (vals) => {
val = vals
personnel.value.open()
}
//
const submituser = (e: any) => {
formData[val] = e.id;
formData[val + '_name'] = e.name
}
//

View File

@ -5,9 +5,9 @@
<el-form-item label="所属项目" prop="project_id">
<selectRemote :formData="queryParams" model="project_id" :api="apiSupervisionProjectSearch" />
</el-form-item>
<el-form-item label="检查人" prop="check_user">
<!-- <el-form-item label="检查人" prop="check_user">
<el-input class="w-[280px]" v-model="queryParams.check_user" clearable placeholder="请输入检查人" />
</el-form-item>
</el-form-item> -->
<el-form-item label="检查地点" prop="check_area">
<el-input class="w-[280px]" v-model="queryParams.check_area" clearable placeholder="请输入检查地点" />
</el-form-item>
@ -33,7 +33,7 @@
<el-table border :data="pager.lists" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" />
<el-table-column label="项目名称" prop="project_name" show-overflow-tooltip />
<el-table-column label="检查人" prop="check_user" show-overflow-tooltip />
<el-table-column label="检查人" prop="check_user_name" show-overflow-tooltip />
<el-table-column label="检查日期" prop="check_date" show-overflow-tooltip />
<el-table-column label="检查地点" prop="check_area" show-overflow-tooltip />
<el-table-column label="问题描述" prop="problem_desc" show-overflow-tooltip />