diff --git a/src/api/project/contractorMaterial/contractorMaterialRecord/index.ts b/src/api/project/contractorMaterial/contractorMaterialRecord/index.ts new file mode 100644 index 0000000..2be6a25 --- /dev/null +++ b/src/api/project/contractorMaterial/contractorMaterialRecord/index.ts @@ -0,0 +1,63 @@ +import request from '@/utils/request'; +import { AxiosPromise } from 'axios'; +import { ContractorMaterialRecordVO, ContractorMaterialRecordForm, ContractorMaterialRecordQuery } from '@/api/contractor/contractorMaterialRecord/types'; + +/** + * 查询分包方物料记录列表 + * @param query + * @returns {*} + */ + +export const listContractorMaterialRecord = (query?: ContractorMaterialRecordQuery): AxiosPromise => { + return request({ + url: '/contractor/contractorMaterialRecord/list', + method: 'get', + params: query + }); +}; + +/** + * 查询分包方物料记录详细 + * @param id + */ +export const getContractorMaterialRecord = (id: string | number): AxiosPromise => { + return request({ + url: '/contractor/contractorMaterialRecord/' + id, + method: 'get' + }); +}; + +/** + * 新增分包方物料记录 + * @param data + */ +export const addContractorMaterialRecord = (data: ContractorMaterialRecordForm) => { + return request({ + url: '/contractor/contractorMaterialRecord', + method: 'post', + data: data + }); +}; + +/** + * 修改分包方物料记录 + * @param data + */ +export const updateContractorMaterialRecord = (data: ContractorMaterialRecordForm) => { + return request({ + url: '/contractor/contractorMaterialRecord', + method: 'put', + data: data + }); +}; + +/** + * 删除分包方物料记录 + * @param id + */ +export const delContractorMaterialRecord = (id: string | number | Array) => { + return request({ + url: '/contractor/contractorMaterialRecord/' + id, + method: 'delete' + }); +}; diff --git a/src/api/project/contractorMaterial/contractorMaterialRecord/types.ts b/src/api/project/contractorMaterial/contractorMaterialRecord/types.ts new file mode 100644 index 0000000..ec71dbc --- /dev/null +++ b/src/api/project/contractorMaterial/contractorMaterialRecord/types.ts @@ -0,0 +1,141 @@ +export interface ContractorMaterialRecordVO { + /** + * 主键id + */ + id: string | number; + + /** + * 项目id + */ + projectId: string | number; + + /** + * 分包方id + */ + contractorId: string | number; + + /** + * 物料id + */ + contractorMaterialId: string | number; + + /** + * 记录类型(1到货计划 2使用情况) + */ + recordType: string; + + /** + * 记录时间 + */ + recordTime: string; + + /** + * 数量 + */ + recordNumber: number; + + /** + * 剩余数量(到货 使用) + */ + remainingNumber: number; + + /** + * 使用位置或构件部位(使用情况) + */ + usedPosition: string; + + /** + * 相关附件 + */ + file: string; + + /** + * 备注 + */ + remark: string; + +} + +export interface ContractorMaterialRecordForm extends BaseEntity { + /** + * 主键id + */ + id?: string | number; + + /** + * 物料id + */ + contractorMaterialId?: string | number; + + /** + * 记录类型(1到货计划 2使用情况) + */ + recordType?: string; + + /** + * 记录时间 + */ + recordTime?: string; + + /** + * 数量 + */ + recordNumber?: number; + + /** + * 剩余数量(到货 使用) + */ + remainingNumber?: number; + + /** + * 使用位置或构件部位(使用情况) + */ + usedPosition?: string; + + /** + * 相关附件 + */ + file?: string; + + /** + * 备注 + */ + remark?: string; + +} + +export interface ContractorMaterialRecordQuery extends PageQuery { + + /** + * 项目id + */ + projectId?: string | number; + + /** + * 分包方id + */ + contractorId?: string | number; + + /** + * 物料id + */ + contractorMaterialId?: string | number; + + /** + * 记录类型(1到货计划 2使用情况) + */ + recordType?: string; + + /** + * 使用位置或构件部位(使用情况) + */ + usedPosition?: string; + + /** + * 日期范围参数 + */ + params?: any; +} + + + diff --git a/src/api/project/contractorMaterial/index.ts b/src/api/project/contractorMaterial/index.ts new file mode 100644 index 0000000..2d5c71d --- /dev/null +++ b/src/api/project/contractorMaterial/index.ts @@ -0,0 +1,63 @@ +import request from '@/utils/request'; +import { AxiosPromise } from 'axios'; +import { ContractorMaterialVO, ContractorMaterialForm, ContractorMaterialQuery } from '@/api/contractor/contractorMaterial/types'; + +/** + * 查询分包方物料列表 + * @param query + * @returns {*} + */ + +export const listContractorMaterial = (query?: ContractorMaterialQuery): AxiosPromise => { + return request({ + url: '/contractor/contractorMaterial/list', + method: 'get', + params: query + }); +}; + +/** + * 查询分包方物料详细 + * @param id + */ +export const getContractorMaterial = (id: string | number): AxiosPromise => { + return request({ + url: '/contractor/contractorMaterial/' + id, + method: 'get' + }); +}; + +/** + * 新增分包方物料 + * @param data + */ +export const addContractorMaterial = (data: ContractorMaterialForm) => { + return request({ + url: '/contractor/contractorMaterial', + method: 'post', + data: data + }); +}; + +/** + * 修改分包方物料 + * @param data + */ +export const updateContractorMaterial = (data: ContractorMaterialForm) => { + return request({ + url: '/contractor/contractorMaterial', + method: 'put', + data: data + }); +}; + +/** + * 删除分包方物料 + * @param id + */ +export const delContractorMaterial = (id: string | number | Array) => { + return request({ + url: '/contractor/contractorMaterial/' + id, + method: 'delete' + }); +}; diff --git a/src/api/project/contractorMaterial/types.ts b/src/api/project/contractorMaterial/types.ts new file mode 100644 index 0000000..cea393c --- /dev/null +++ b/src/api/project/contractorMaterial/types.ts @@ -0,0 +1,126 @@ +export interface ContractorMaterialVO { + /** + * 分包方id + */ + contractorId: string | number; + + /** + * 物料名称 + */ + materialName: string; + + /** + * 物料类型 + */ + materialType: string; + + /** + * 物料型号 + */ + materialModel: string; + + /** + * 物料数量 + */ + materialNumber: number; + + /** + * 物料单位 + */ + materialUnit: string; + + /** + * 文件 + */ + file: string; + + /** + * 备注 + */ + remark: string; + +} + +export interface ContractorMaterialForm extends BaseEntity { + /** + * 主键id + */ + id?: string | number; + + /** + * 项目id + */ + projectId?: string | number; + + /** + * 分包方id + */ + contractorId?: string | number; + + /** + * 物料名称 + */ + materialName?: string; + + /** + * 物料类型 + */ + materialType?: string; + + /** + * 物料型号 + */ + materialModel?: string; + + /** + * 物料单位 + */ + materialUnit?: string; + + /** + * 文件 + */ + file?: string; + + /** + * 备注 + */ + remark?: string; + +} + +export interface ContractorMaterialQuery extends PageQuery { + + /** + * 项目id + */ + projectId?: string | number; + + /** + * 分包方id + */ + contractorId?: string | number; + + /** + * 物料名称 + */ + materialName?: string; + + /** + * 物料类型 + */ + materialType?: string; + + /** + * 物料型号 + */ + materialModel?: string; + + /** + * 日期范围参数 + */ + params?: any; +} + + + diff --git a/src/api/project/contractorTool/contractorToolEntry/index.ts b/src/api/project/contractorTool/contractorToolEntry/index.ts new file mode 100644 index 0000000..6a9ddc1 --- /dev/null +++ b/src/api/project/contractorTool/contractorToolEntry/index.ts @@ -0,0 +1,63 @@ +import request from '@/utils/request'; +import { AxiosPromise } from 'axios'; +import { ContractorToolEntryVO, ContractorToolEntryForm, ContractorToolEntryQuery } from '@/api/contractor/contractorToolEntry/types'; + +/** + * 查询分包方工器具进场列表 + * @param query + * @returns {*} + */ + +export const listContractorToolEntry = (query?: ContractorToolEntryQuery): AxiosPromise => { + return request({ + url: '/contractor/contractorToolRecord/list', + method: 'get', + params: query + }); +}; + +/** + * 查询分包方工器具进场详细 + * @param id + */ +export const getContractorToolEntry = (id: string | number): AxiosPromise => { + return request({ + url: '/contractor/contractorToolRecord/' + id, + method: 'get' + }); +}; + +/** + * 新增分包方工器具进场 + * @param data + */ +export const addContractorToolEntry = (data: ContractorToolEntryForm) => { + return request({ + url: '/contractor/contractorToolRecord', + method: 'post', + data: data + }); +}; + +/** + * 修改分包方工器具进场 + * @param data + */ +export const updateContractorToolEntry = (data: ContractorToolEntryForm) => { + return request({ + url: '/contractor/contractorToolRecord', + method: 'put', + data: data + }); +}; + +/** + * 删除分包方工器具进场 + * @param id + */ +export const delContractorToolEntry = (id: string | number | Array) => { + return request({ + url: '/contractor/contractorToolRecord/' + id, + method: 'delete' + }); +}; diff --git a/src/api/project/contractorTool/contractorToolEntry/types.ts b/src/api/project/contractorTool/contractorToolEntry/types.ts new file mode 100644 index 0000000..d966cc0 --- /dev/null +++ b/src/api/project/contractorTool/contractorToolEntry/types.ts @@ -0,0 +1,156 @@ +export interface ContractorToolEntryVO { + /** + * 主键id + */ + id: string | number; + + /** + * 项目id + */ + projectId: string | number; + + /** + * 分包方id + */ + contractorId: string | number; + + /** + * 分包方工器具id + */ + contractorToolId: string | number; + + /** + * 进场工器具数量 + */ + toolNumber: string; + + /** + * 检测编号 + */ + checkNum: string; + + /** + * 检测部门 + */ + checkDept: string; + + /** + * 检测时间 + */ + checkTime: string; + + /** + * 合格证 + */ + certificate: string; + + /** + * 备注 + */ + remark: string; + + /** + * 进场时间 + */ + entryTime: string; + +} + +export interface ContractorToolEntryForm extends BaseEntity { + /** + * 主键id + */ + id?: string | number; + + /** + * 分包方工器具id + */ + contractorToolId?: string | number; + + /** + * 进场工器具数量 + */ + toolNumber?: string; + + /** + * 检测编号 + */ + checkNum?: string; + + /** + * 检测部门 + */ + checkDept?: string; + + /** + * 检测时间 + */ + checkTime?: string; + + /** + * 合格证 + */ + certificate?: string; + + /** + * 备注 + */ + remark?: string; + + /** + * 进场时间 + */ + entryTime?: string; + /** + * 类型 + */ + recordType?: string; + /** + * 工器具数量 + */ + recordNumber?: number; +} + +export interface ContractorToolEntryQuery extends PageQuery { + + /** + * 项目id + */ + projectId?: string | number; + + /** + * 分包方id + */ + contractorId?: string | number; + + /** + * 分包方工器具id + */ + contractorToolId?: string | number; + + /** + * 进场工器具数量 + */ + toolNumber?: string; + + /** + * 检测编号 + */ + checkNum?: string; + /** + * 类型 + */ + recordType?: string; + /** + * 检测部门 + */ + checkDept?: string; + + /** + * 日期范围参数 + */ + params?: any; +} + + + diff --git a/src/api/project/contractorTool/index.ts b/src/api/project/contractorTool/index.ts new file mode 100644 index 0000000..2b109a2 --- /dev/null +++ b/src/api/project/contractorTool/index.ts @@ -0,0 +1,63 @@ +import request from '@/utils/request'; +import { AxiosPromise } from 'axios'; +import { ContractorToolVO, ContractorToolForm, ContractorToolQuery } from '@/api/project/contractorTool/types'; + +/** + * 查询分包方工器具列表 + * @param query + * @returns {*} + */ + +export const listContractorTool = (query?: ContractorToolQuery): AxiosPromise => { + return request({ + url: '/project/contractorTool/list', + method: 'get', + params: query + }); +}; + +/** + * 查询分包方工器具详细 + * @param id + */ +export const getContractorTool = (id: string | number): AxiosPromise => { + return request({ + url: '/project/contractorTool/' + id, + method: 'get' + }); +}; + +/** + * 新增分包方工器具 + * @param data + */ +export const addContractorTool = (data: ContractorToolForm) => { + return request({ + url: '/project/contractorTool', + method: 'post', + data: data + }); +}; + +/** + * 修改分包方工器具 + * @param data + */ +export const updateContractorTool = (data: ContractorToolForm) => { + return request({ + url: '/project/contractorTool', + method: 'put', + data: data + }); +}; + +/** + * 删除分包方工器具 + * @param id + */ +export const delContractorTool = (id: string | number | Array) => { + return request({ + url: '/project/contractorTool/' + id, + method: 'delete' + }); +}; diff --git a/src/api/project/contractorTool/types.ts b/src/api/project/contractorTool/types.ts new file mode 100644 index 0000000..97d91f4 --- /dev/null +++ b/src/api/project/contractorTool/types.ts @@ -0,0 +1,136 @@ +export interface ContractorToolVO { + /** + * 主键id + */ + id: string | number; + + /** + * 项目id + */ + projectId: string | number; + + /** + * 分包方id + */ + contractorId: string | number; + + /** + * 工具名称 + */ + toolName: string; + + /** + * 工具类型 + */ + toolType: string; + + /** + * 工具型号 + */ + toolModel: string; + + /** + * 工具数量 + */ + toolNumber: string; + + /** + * 备注 + */ + remark: string; + + /** + * 创建时间 + */ + createTime: string; + +} + +export interface ContractorToolForm extends BaseEntity { + /** + * 主键id + */ + id?: string | number; + + /** + * 项目id + */ + projectId?: string | number; + + /** + * 分包方id + */ + contractorId?: string | number; + + /** + * 工具名称 + */ + toolName?: string; + + /** + * 工具类型 + */ + toolType?: string; + + /** + * 工具型号 + */ + toolModel?: string; + + /** + * 工具数量 + */ + toolNumber?: string; + + /** + * 文件 + */ + file?: string; + + /** + * 备注 + */ + remark?: string; + +} + +export interface ContractorToolQuery extends PageQuery { + + /** + * 项目id + */ + projectId?: string | number; + + /** + * 分包方id + */ + contractorId?: string | number; + + /** + * 工具名称 + */ + toolName?: string; + + /** + * 工具类型 + */ + toolType?: string; + + /** + * 工具型号 + */ + toolModel?: string; + + /** + * 工具数量 + */ + toolNumber?: string; + + /** + * 日期范围参数 + */ + params?: any; +} + + + diff --git a/src/assets/styles/index.scss b/src/assets/styles/index.scss index bdf9b03..f4afacd 100644 --- a/src/assets/styles/index.scss +++ b/src/assets/styles/index.scss @@ -163,7 +163,7 @@ aside { } .pagination-container { - margin-top: 30px; + // margin-top: 30px; } .text-center { diff --git a/src/views/project/contractorMaterial/component/contractorMaterialRecord.vue b/src/views/project/contractorMaterial/component/contractorMaterialRecord.vue new file mode 100644 index 0000000..84685b1 --- /dev/null +++ b/src/views/project/contractorMaterial/component/contractorMaterialRecord.vue @@ -0,0 +1,343 @@ + + + diff --git a/src/views/project/contractorMaterial/index.vue b/src/views/project/contractorMaterial/index.vue new file mode 100644 index 0000000..a20c1c4 --- /dev/null +++ b/src/views/project/contractorMaterial/index.vue @@ -0,0 +1,330 @@ + + + diff --git a/src/views/project/contractorTool/component/LevanAutbound.vue b/src/views/project/contractorTool/component/LevanAutbound.vue new file mode 100644 index 0000000..163330d --- /dev/null +++ b/src/views/project/contractorTool/component/LevanAutbound.vue @@ -0,0 +1,370 @@ + + + diff --git a/src/views/project/contractorTool/index.vue b/src/views/project/contractorTool/index.vue new file mode 100644 index 0000000..630b41c --- /dev/null +++ b/src/views/project/contractorTool/index.vue @@ -0,0 +1,329 @@ + + + diff --git a/src/views/project/subcontract/index.vue b/src/views/project/subcontract/index.vue index 84e4ec5..62a6711 100644 --- a/src/views/project/subcontract/index.vue +++ b/src/views/project/subcontract/index.vue @@ -131,8 +131,8 @@ import { useUserStoreHook } from '@/store/modules/user'; const { proxy } = getCurrentInstance() as ComponentInternalInstance; // 获取用户 store const userStore = useUserStoreHook(); -const { subcontract_type } = toRefs(proxy?.useDict('subcontract_type')); const currentProject = computed(() => userStore.selectedProject); +const { subcontract_type } = toRefs(proxy?.useDict('subcontract_type')); const subcontractList = ref([]); const buttonLoading = ref(false); const loading = ref(true);