This commit is contained in:
zmj 2024-01-29 21:14:39 +08:00
parent af9393b1b9
commit 7fdbe23ca5
7 changed files with 77 additions and 115 deletions

View File

@ -200,7 +200,7 @@
</el-row>
<el-dialog v-model="showDialog" title="选择供应商" width="70%">
<suppliertable @customEvent="customEvent"></suppliertable>
<suppliertable @customEvent="customEvent" :project_id="project?.id || ''"></suppliertable>
</el-dialog>
<div v-if="formData.contract_cate == 1 && showDialog1">
<el-dialog v-model="showDialog1" title="选择采购合同" width="70%">
@ -240,13 +240,9 @@ import type { FormInstance } from 'element-plus'
import Popup from '@/components/popup/index.vue'
// import procurementDialog from '@/components/procurement/index.vue'
import suppliertable from '@/components/supplier/index.vue'
import { useDictData } from '@/hooks/useDictOptions'
import subcontractingDialog from '@/components/procurementsubcontracting_selector/index.vue'
import subcontracting from '@/components/procurementsubcontracting_selector/subcontracting.vue'
import paylistDialog from '@/components/paylist/index.vue'
const active = ref(0)
import bankaccountDialog from '@/components/bankaccount/index.vue'
@ -309,11 +305,9 @@ const delFileFn = (index: number) => {
formDataannex.splice(index, 1)
}
defineProps({
dictData: {
type: Object as PropType<Record<string, any[]>>,
default: () => ({})
}
project: Object
})
const { dictData } = useDictData('pay_period,pay_type,payment_natrue,invoice_status')
const emit = defineEmits(['success', 'close'])
const formRef = shallowRef<FormInstance>()
const popupRef = shallowRef<InstanceType<typeof Popup>>()

View File

@ -143,7 +143,7 @@
</el-col>
</el-row>
<el-dialog v-model="showDialog" title="选择供应商" width="70%">
<suppliertable @customEvent="customEvent"></suppliertable>
<suppliertable @customEvent="customEvent" :project_id="project?.id || ''"></suppliertable>
</el-dialog>
<div v-if="formData.contract_cate == 1 && showDialog1">
@ -185,6 +185,7 @@ import { isEmail, isIdCard, isPhone } from '@/utils/validate'
import type { PropType } from 'vue'
import configs from "@/config"
import useUserStore from "@/stores/modules/user";
import { useDictData } from '@/hooks/useDictOptions'
const protype = reactive([])
const base_url = configs.baseUrl + configs.urlPrefix
const userStore = useUserStore();
@ -234,12 +235,10 @@ const userEmail = (rule: any, value: string, callback: (arg0: Error | undefined)
}
};
const { dictData } = useDictData('refund_type,isaccrued,contract_type')
defineProps({
dictData: {
type: Object as PropType<Record<string, any[]>>,
default: () => ({})
}
project: Object
})
const emit = defineEmits(['success', 'close'])
const formRef = shallowRef<FormInstance>()

View File

@ -2,16 +2,13 @@
<div class="edit-popup">
<popup ref="popupRef" :title="popupTitle" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
<el-form ref="formRef" :model="formData" label-width="auto" :rules="formRules">
<el-row :gutter="10">
<el-col :span="8">
<el-form-item label="项目名称" prop="project_id" @click="showDialog2 = true"
:rules="[{ required: true, message: '不可为空', trigger: 'blur' }]">
<el-input v-model="project_name" clearable readonly placeholder="请选择项目" />
<el-input v-model="project_name" clearable readonly placeholder="请选择项目" :disabled="project" />
</el-form-item>
</el-col>
<el-col :span="8">
@ -56,11 +53,7 @@
<el-input v-model="formData.describe" type="textarea" clearable placeholder="请输入文档描述" />
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="附件" prop="field127">
<el-upload
accept="doc, docx, xls, xlsx, ppt, pptx, pdf, txt, zip, rar, tar, jpg, png, gif, jpeg, webp, wmv, avi, mpg, mpeg, 3gp, mov, mp4, flv, f4v, rmvb, mkv"
@ -84,10 +77,6 @@
</el-col>
</el-row>
<el-dialog v-model="showDialog" title="选择文档" width="70%">
<documentDialog @customEvent="customEvent"></documentDialog>
</el-dialog>
@ -149,40 +138,8 @@ const handleAvatarSuccess_four = (
const delFileFn = (index: number) => {
formDataannex.splice(index, 1)
}
defineProps({
dictData: {
type: Object as PropType<Record<string, any[]>>,
default: () => ({})
}
})
const emit = defineEmits(['success', 'close'])
const formRef = shallowRef<FormInstance>()
const popupRef = shallowRef<InstanceType<typeof Popup>>()
const mode = ref('add')
const showDialog = ref(false)
const showDialog2 = ref(false)
const customEvent2 = (e: any) => {
formData.project_id = e.id;
project_name.value = e.name;
project_code.value = e.project_code;
showDialog2.value = false;
};
const customEvent = (e: any) => {
formData.classify_id = e.id;
large_document.value = e.large_category;
middle_document.value = e.middle_category;
// formData.name = e.name;
showDialog.value = false;
};
//
const popupTitle = computed(() => {
return mode.value == 'edit' ? '编辑项目文档表' : '新增项目文档表'
let props = defineProps({
project: Object
})
//
@ -200,6 +157,43 @@ const formData = reactive({
})
const emit = defineEmits(['success', 'close'])
const formRef = shallowRef<FormInstance>()
const popupRef = shallowRef<InstanceType<typeof Popup>>()
const mode = ref('add')
const showDialog = ref(false)
const showDialog2 = ref(false)
const customEvent2 = (e: any) => {
formData.project_id = e.id;
project_name.value = e.name;
project_code.value = e.project_code;
showDialog2.value = false;
};
if (props.project) customEvent2(props.project);
const customEvent = (e: any) => {
formData.classify_id = e.id;
large_document.value = e.large_category;
middle_document.value = e.middle_category;
showDialog.value = false;
};
//
const popupTitle = computed(() => {
return mode.value == 'edit' ? '编辑项目文档表' : '新增项目文档表'
})
//
const formRules = reactive<any>({

View File

@ -1,15 +1,15 @@
<template>
<myTable :baseData="baseData"></myTable>
<myTable :baseData="baseData" :project="project" editPath="project_document"></myTable>
</template>
<script setup>
import { ref, reactive, defineProps } from "vue"
import myTable from "./myTable.vue"
import { apiProjectdocumentLists } from '@/api/project_document_set'
import { apiProjectdocumentLists } from '@/api/project_document'
const props = defineProps({
project_id: Number
project: Object
})
@ -17,15 +17,16 @@ const props = defineProps({
const baseData = reactive({
fetchFun: apiProjectdocumentLists,
tit: "文档",
queryParams: { project_id: props.project_id },
queryParams: { project_id: props.project.id },
columnList: [
{ label: '排序号', prop: 'sort' },
{ label: '项目名称', prop: 'project_name' },
{ label: '项目编码', prop: 'project_code' },
{ label: '文档大类', prop: 'large_category' },
{ label: '文档中类', prop: 'middle_category' },
{ label: '文档编号', prop: 'code' },
{ label: '文档名称', prop: 'name' },
{ label: '文档描述', prop: 'describe' },
{ label: '必传', prop: 'is_upload' },
{ label: '文档', prop: '' },
{ label: '版本号', prop: 'version' },
]
})

View File

@ -1,8 +1,8 @@
<template>
<myTable :baseData="baseData" :project="project" editPath="finance_receipt_record"></myTable>
<myTable :baseData="baseData1" :project="project" editPath="finance_payment_plan"></myTable>
<myTable :baseData="baseData2" :project="project" editPath="procurement_contract"></myTable>
<myTable :baseData="baseData3" :project="project" editPath="procurement_contract"></myTable>
<myTable :baseData="baseData2" :project="project" editPath="finance_payment_apply"></myTable>
<myTable :baseData="baseData3" :project="project" editPath="finance_refund_record"></myTable>
</template>
<script setup>
@ -57,15 +57,16 @@ const baseData2 = reactive({
tit: "付款记录",
queryParams: { project_id: props.project.id },
columnList: [
{ label: '付款单号', prop: 'competitor_name' },
{ label: '合同编号', prop: 'contract_no' },
{ label: '付款单号', prop: 'payment_apply_code' },
{ label: '供应商名称', prop: 'supplier_name' },
{ label: '合同类型', prop: 'contract_type' },
{ label: '期次', prop: 'period' },
{ label: '项目名称', prop: 'project_name' },
{ label: '合同编号', prop: 'contract_no' },
{ label: '付款日期', prop: 'pay_date' },
{ label: '付款性质', prop: 'payment_natrue' },
{ label: '付款方式', prop: 'pay_type' },
{ label: '付款金额', prop: 'amount' },
{ label: '付款方式', prop: 'pay_type_text' },
{ label: '付款性质', prop: 'payment_nature_text' },
{ label: '申请人', prop: 'apply_user' },
{ label: '备注', prop: 'remark' },
]
})

View File

@ -43,7 +43,7 @@
<payment v-if="activeName == 'demo-15'" :project="formData"></payment>
</el-tab-pane>
<el-tab-pane label="文档" name="demo-16">
<documentation v-if="activeName == 'demo-16'" :project_id="project_id"></documentation>
<documentation v-if="activeName == 'demo-16'" :project="formData"></documentation>
</el-tab-pane>
<el-tab-pane label="统计" name="demo-17">

View File

@ -4,62 +4,35 @@
<el-card class="!border-none" shadow="never">
<el-form class="ls-form" :model="formData" inline>
<el-form-item label="管理员">
<el-input
class="w-[280px]"
placeholder="请输入"
v-model="formData.admin_name"
clearable
@keyup.enter="resetPage"
/>
<el-input class="w-[280px]" placeholder="请输入" v-model="formData.admin_name" clearable
@keyup.enter="resetPage" />
</el-form-item>
<el-form-item label="访问方式">
<el-select class="w-[280px]" v-model="formData.type" placeholder="请选择">
<el-option
v-for="(item, index) in visitType"
:key="index"
:label="item.label"
:value="item.value"
/>
<el-option v-for="(item, index) in visitType" :key="index" :label="item.label"
:value="item.value" />
</el-select>
</el-form-item>
<el-form-item label="来源IP">
<el-input
class="w-[280px]"
placeholder="请输入"
v-model="formData.ip"
clearable
@keyup.enter="resetPage"
/>
<el-input class="w-[280px]" placeholder="请输入" v-model="formData.ip" clearable
@keyup.enter="resetPage" />
</el-form-item>
<el-form-item label="访问时间">
<daterange-picker
v-model:startTime="formData.start_time"
v-model:endTime="formData.end_time"
/>
<daterange-picker v-model:startTime="formData.start_time" v-model:endTime="formData.end_time" />
</el-form-item>
<el-form-item label="访问链接">
<el-input
class="w-[280px]"
placeholder="请输入"
v-model="formData.url"
clearable
@keyup.enter="resetPage"
/>
<el-input class="w-[280px]" placeholder="请输入" v-model="formData.url" clearable
@keyup.enter="resetPage" />
</el-form-item>
<el-form-item>
<el-button type="primary" @click="resetPage">查询</el-button>
<el-button @click="resetParams">重置</el-button>
<export-data
class="ml-2.5"
:fetch-fun="systemLogLists"
:params="formData"
:page-size="pager.size"
/>
<export-data class="ml-2.5" :fetch-fun="systemLogLists" :params="formData" :page-size="pager.size" />
</el-form-item>
</el-form>
</el-card>