252 lines
4.8 KiB
TypeScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

import { ref } from "vue";
import type { ReqAddReport } from "@/api/types/index";
import { FormRules } from "element-plus";
export enum Type {
One = 1,
Two = 2,
Three = 3,
Four = 4,
Five = 5
}
export enum Important {
Zero = 0,
One = 1
}
const data = {
projectName: "",
engineeringName: "",
engineeringCode: "",
engineeringType: Type["One"],
engineeringUse: Type["One"],
engineeringCost: "",
engineeringArea: "",
engineeringLength: "",
isImportant: Important["One"],
longitude: "",
latitude: "",
province: "",
city: "",
district: "",
address: "",
licenseKey: "",
licenseCreateTime: "",
safetySupervision: "",
qualitySupervision: "",
safetySupervisionCode: "",
qualitySupervisionCode: "",
safetySupervisionPerson: "",
qualitySupervisionPerson: "",
safetySupervisionState: "",
qualitySupervisionState: "",
safetySupervisionPlan: "",
qualitySupervisionPlan: "",
startTime: "",
endTime: "",
position: "",
engineeringSingles: []
};
export type OverviewForm = Pick<ReqAddReport, keyof typeof data>;
export const form = ref<OverviewForm>(data);
export const reset = () => {
form.value = {
projectName: "",
engineeringName: "",
engineeringCode: "",
engineeringType: Type["One"],
engineeringUse: Type["One"],
engineeringCost: "",
engineeringArea: "",
engineeringLength: "",
isImportant: Important["One"],
longitude: "",
latitude: "",
province: "",
city: "",
district: "",
address: "",
licenseKey: "",
licenseCreateTime: "",
safetySupervision: "",
qualitySupervision: "",
safetySupervisionCode: "",
qualitySupervisionCode: "",
safetySupervisionPerson: "",
qualitySupervisionPerson: "",
safetySupervisionState: "",
qualitySupervisionState: "",
safetySupervisionPlan: "",
qualitySupervisionPlan: "",
startTime: "",
endTime: "",
engineeringSingles: []
};
};
export const rules = ref<FormRules>({
projectName: {
type: "string",
required: true,
message: "请输入项目名称"
},
engineeringName: {
type: "string",
required: true,
message: "请输入工程名称"
},
engineeringCode: {
type: "string",
required: true,
message: "请输入工程编码"
},
engineeringType: {
required: true,
message: "请输入工程类别",
trigger: "change"
},
engineeringUse: {
required: true,
message: "请选择工程用途",
trigger: "change"
},
engineeringCost: [
{
required: true,
message: "请输入工程造价",
trigger: "blur"
},
{
type: "number",
message: "请输入数字",
trigger: "blur"
}
],
engineeringArea: [
{
required: true,
message: "请输入工程总面积",
trigger: "blur"
},
{
type: "number",
message: "请输入数字",
trigger: "blur"
}
],
engineeringLength: [
{
required: true,
message: "请输入工程总长度m",
trigger: "blur"
},
{
type: "number",
message: "请输入数字",
trigger: "blur"
}
],
isImportant: {
type: "number",
required: true,
message: "请选择"
},
position: {
type: "string",
required: true,
message: "请选择工程位置"
},
// district: {
// type: "string",
// required: true,
// message: "请输入所属管辖区域"
// },
addressList: {
type: "string",
required: true,
message: "请输入所属管辖区域"
},
address: {
type: "string",
required: true,
message: "请输入建设地址"
},
licenseKey: {
type: "string",
required: true,
message: "请输入施工许可证号"
},
licenseCreateTime: {
type: "string",
required: true,
message: "请选择施工许可发放时间"
},
safetySupervision: {
type: "string",
required: true,
message: "请输入安全监督站"
},
qualitySupervision: {
type: "string",
required: true,
message: "请输入质量监督站"
},
safetySupervisionCode: {
type: "string",
required: true,
message: "请输入监督编号(安全)"
},
qualitySupervisionCode: {
type: "string",
required: true,
message: "请输入监督编号(质量)"
},
safetySupervisionPerson: {
type: "string",
required: true,
message: "请输入安全监督员"
},
qualitySupervisionPerson: {
type: "string",
required: true,
message: "请输入质量监督员"
},
safetySupervisionState: {
type: "string",
required: true,
message: "请输入安全监督工程状态"
},
qualitySupervisionState: {
type: "string",
required: true,
message: "请输入质量监督工程状态"
},
safetySupervisionPlan: {
type: "string",
required: true,
message: "请输入安全监督形象进度"
},
qualitySupervisionPlan: {
type: "string",
required: true,
message: "请输入质量监督形象进度"
},
startTime: {
type: "string",
required: true,
message: "请选择日期"
},
endTime: {
type: "string",
required: true,
message: "请选择日期"
}
});