54 lines
1.4 KiB
TypeScript
54 lines
1.4 KiB
TypeScript
|
|
import request from '@/config/axios'
|
||
|
|
|
||
|
|
export interface ProjectVO {
|
||
|
|
id?: number
|
||
|
|
projectName: string
|
||
|
|
contractSignedFlag: boolean
|
||
|
|
contractAmount?: number
|
||
|
|
totalConstructionArea?: number
|
||
|
|
constructionUnitName?: string
|
||
|
|
contactName?: string
|
||
|
|
contactPhone?: string
|
||
|
|
contractSigningDate?: string
|
||
|
|
projectManagerName?: string
|
||
|
|
engineeringPrincipalName?: string
|
||
|
|
projectType?: string
|
||
|
|
projectStartYear?: number
|
||
|
|
finalSettlementAmount?: number
|
||
|
|
expectedKValue?: number
|
||
|
|
createTime?: string
|
||
|
|
}
|
||
|
|
|
||
|
|
export type ProjectSaveVO = Omit<ProjectVO, 'createTime'>
|
||
|
|
|
||
|
|
export interface ProjectPageReqVO extends PageParam {
|
||
|
|
projectName?: string
|
||
|
|
contractSignedFlag?: boolean
|
||
|
|
projectStartYear?: number
|
||
|
|
createTime?: string[]
|
||
|
|
}
|
||
|
|
|
||
|
|
export const getProjectPage = (params: ProjectPageReqVO) => {
|
||
|
|
return request.get({ url: '/tjt/project/page', params })
|
||
|
|
}
|
||
|
|
|
||
|
|
export const getProject = (id: number) => {
|
||
|
|
return request.get({ url: '/tjt/project/get', params: { id } })
|
||
|
|
}
|
||
|
|
|
||
|
|
export const createProject = (data: ProjectSaveVO) => {
|
||
|
|
return request.post({ url: '/tjt/project/create', data })
|
||
|
|
}
|
||
|
|
|
||
|
|
export const updateProject = (data: ProjectSaveVO) => {
|
||
|
|
return request.put({ url: '/tjt/project/update', data })
|
||
|
|
}
|
||
|
|
|
||
|
|
export const deleteProject = (id: number) => {
|
||
|
|
return request.delete({ url: '/tjt/project/delete', params: { id } })
|
||
|
|
}
|
||
|
|
|
||
|
|
export const deleteProjectList = (ids: number[]) => {
|
||
|
|
return request.delete({ url: '/tjt/project/delete-list', params: { ids: ids.join(',') } })
|
||
|
|
}
|