diff --git a/src/api/eam/item/itemAccounts/index.ts b/src/api/eam/item/itemAccounts/index.ts new file mode 100644 index 0000000..f660e47 --- /dev/null +++ b/src/api/eam/item/itemAccounts/index.ts @@ -0,0 +1,52 @@ +import request from '@/config/axios' + +export interface ItemAccountsVO { + itemNumber: string + qty: number + areaNumber: string + isInAccount: string + siteId: string + available: string + concurrencyStamp: number +} + +// 查询备件台账列表 +export const getItemAccountsPage = async (params) => { + if (params.isSearch) { + delete params.isSearch + const data = {...params} + return await request.post({ url: '/eam/item-accounts/senior', data }) + } else { + return await request.get({ url: `/eam/item-accounts/page`, params }) + } +} + +// 查询备件台账详情 +export const getItemAccounts = async (id: number) => { + return await request.get({ url: `/eam/item-accounts/get?id=` + id }) +} + +// 新增备件台账 +export const createItemAccounts = async (data: ItemAccountsVO) => { + return await request.post({ url: `/eam/item-accounts/create`, data }) +} + +// 修改备件台账 +export const updateItemAccounts = async (data: ItemAccountsVO) => { + return await request.put({ url: `/eam/item-accounts/update`, data }) +} + +// 删除备件台账 +export const deleteItemAccounts = async (id: number) => { + return await request.delete({ url: `/eam/item-accounts/delete?id=` + id }) +} + +// 导出备件台账 Excel +export const exportItemAccounts = async (params) => { + return await request.download({ url: `/eam/item-accounts/export-excel`, params }) +} + +// 下载用户导入模板 +export const importTemplate = () => { + return request.download({ url: '/eam/item-accounts/get-import-template' }) +} \ No newline at end of file diff --git a/src/api/eam/item/itemApplyMain/index.ts b/src/api/eam/item/itemApplyMain/index.ts new file mode 100644 index 0000000..fd0e19e --- /dev/null +++ b/src/api/eam/item/itemApplyMain/index.ts @@ -0,0 +1,57 @@ +import request from '@/config/axios' + +export interface ItemApplyMainVO { + number: string + name: string + type: string + applyId: number + applyDeptId: number + approveId: number + approveTime: Date + outId: number + outTime: Date + siteId: string + available: string + concurrencyStamp: number +} + +// 查询备件申领记录主列表 +export const getItemApplyMainPage = async (params) => { + if (params.isSearch) { + delete params.isSearch + const data = {...params} + return await request.post({ url: '/eam/item-apply-main/senior', data }) + } else { + return await request.get({ url: `/eam/item-apply-main/page`, params }) + } +} + +// 查询备件申领记录主详情 +export const getItemApplyMain = async (id: number) => { + return await request.get({ url: `/eam/item-apply-main/get?id=` + id }) +} + +// 新增备件申领记录主 +export const createItemApplyMain = async (data: ItemApplyMainVO) => { + return await request.post({ url: `/eam/item-apply-main/create`, data }) +} + +// 修改备件申领记录主 +export const updateItemApplyMain = async (data: ItemApplyMainVO) => { + return await request.put({ url: `/eam/item-apply-main/update`, data }) +} + +// 删除备件申领记录主 +export const deleteItemApplyMain = async (id: number) => { + return await request.delete({ url: `/eam/item-apply-main/delete?id=` + id }) +} + +// 导出备件申领记录主 Excel +export const exportItemApplyMain = async (params) => { + return await request.download({ url: `/eam/item-apply-main/export-excel`, params }) +} + +// 下载用户导入模板 +export const importTemplate = () => { + return request.download({ url: '/eam/item-apply-main/get-import-template' }) +} \ No newline at end of file diff --git a/src/api/eam/item/itemLocationInRecord/index.ts b/src/api/eam/item/itemLocationInRecord/index.ts new file mode 100644 index 0000000..b097160 --- /dev/null +++ b/src/api/eam/item/itemLocationInRecord/index.ts @@ -0,0 +1,56 @@ +import request from '@/config/axios' + +export interface ItemLocationInRecordVO { + itemNumber: string + locationNumber: string + transactionType: string + inventoryAction: string + businessType: string + inventoryStatus: string + uom: string + qty: number + siteId: string + available: string + concurrencyStamp: number +} + +// 查询备件库存记录列表 +export const getItemLocationInRecordPage = async (params) => { + if (params.isSearch) { + delete params.isSearch + const data = {...params} + return await request.post({ url: '/eam/item-location-record/senior', data }) + } else { + return await request.get({ url: `/eam/item-location-record/page`, params }) + } +} + +// 查询备件库存记录详情 +export const getItemLocationInRecord = async (id: number) => { + return await request.get({ url: `/eam/item-location-record/get?id=` + id }) +} + +// 新增备件库存记录 +export const createItemLocationInRecord = async (data: ItemLocationInRecordVO) => { + return await request.post({ url: `/eam/item-location-record/create`, data }) +} + +// 修改备件库存记录 +export const updateItemLocationInRecord = async (data: ItemLocationInRecordVO) => { + return await request.put({ url: `/eam/item-location-record/update`, data }) +} + +// 删除备件库存记录 +export const deleteItemLocationInRecord = async (id: number) => { + return await request.delete({ url: `/eam/item-location-record/delete?id=` + id }) +} + +// 导出备件库存记录 Excel +export const exportItemLocationInRecord = async (params) => { + return await request.download({ url: `/eam/item-location-record/export-excel`, params }) +} + +// 下载用户导入模板 +export const importTemplate = () => { + return request.download({ url: '/eam/item-location-record/get-import-template' }) +} \ No newline at end of file diff --git a/src/api/eam/item/itemLocationOutRecord/index.ts b/src/api/eam/item/itemLocationOutRecord/index.ts new file mode 100644 index 0000000..aab3d8d --- /dev/null +++ b/src/api/eam/item/itemLocationOutRecord/index.ts @@ -0,0 +1,56 @@ +import request from '@/config/axios' + +export interface ItemLocationOutRecordVO { + itemNumber: string + locationNumber: string + transactionType: string + inventoryAction: string + businessType: string + inventoryStatus: string + uom: string + qty: number + siteId: string + available: string + concurrencyStamp: number +} + +// 查询备件库存记录列表 +export const getItemLocationOutRecordPage = async (params) => { + if (params.isSearch) { + delete params.isSearch + const data = {...params} + return await request.post({ url: '/eam/item-location-record/senior', data }) + } else { + return await request.get({ url: `/eam/item-location-record/page`, params }) + } +} + +// 查询备件库存记录详情 +export const getItemLocationOutRecord = async (id: number) => { + return await request.get({ url: `/eam/item-location-record/get?id=` + id }) +} + +// 新增备件库存记录 +export const createItemLocationOutRecord = async (data: ItemLocationOutRecordVO) => { + return await request.post({ url: `/eam/item-location-record/create`, data }) +} + +// 修改备件库存记录 +export const updateItemLocationOutRecord = async (data: ItemLocationOutRecordVO) => { + return await request.put({ url: `/eam/item-location-record/update`, data }) +} + +// 删除备件库存记录 +export const deleteItemLocationOutRecord = async (id: number) => { + return await request.delete({ url: `/eam/item-location-record/delete?id=` + id }) +} + +// 导出备件库存记录 Excel +export const exportItemLocationOutRecord = async (params) => { + return await request.download({ url: `/eam/item-location-record/export-excel`, params }) +} + +// 下载用户导入模板 +export const importTemplate = () => { + return request.download({ url: '/eam/item-location-record/get-import-template' }) +} \ No newline at end of file diff --git a/src/api/eam/item/itemLocationRecord/index.ts b/src/api/eam/item/itemLocationRecord/index.ts new file mode 100644 index 0000000..51cd22e --- /dev/null +++ b/src/api/eam/item/itemLocationRecord/index.ts @@ -0,0 +1,56 @@ +import request from '@/config/axios' + +export interface ItemLocationRecordVO { + itemNumber: string + locationNumber: string + transactionType: string + inventoryAction: string + businessType: string + inventoryStatus: string + uom: string + qty: number + siteId: string + available: string + concurrencyStamp: number +} + +// 查询备件库存记录列表 +export const getItemLocationRecordPage = async (params) => { + if (params.isSearch) { + delete params.isSearch + const data = {...params} + return await request.post({ url: '/eam/item-location-record/senior', data }) + } else { + return await request.get({ url: `/eam/item-location-record/page`, params }) + } +} + +// 查询备件库存记录详情 +export const getItemLocationRecord = async (id: number) => { + return await request.get({ url: `/eam/item-location-record/get?id=` + id }) +} + +// 新增备件库存记录 +export const createItemLocationRecord = async (data: ItemLocationRecordVO) => { + return await request.post({ url: `/eam/item-location-record/create`, data }) +} + +// 修改备件库存记录 +export const updateItemLocationRecord = async (data: ItemLocationRecordVO) => { + return await request.put({ url: `/eam/item-location-record/update`, data }) +} + +// 删除备件库存记录 +export const deleteItemLocationRecord = async (id: number) => { + return await request.delete({ url: `/eam/item-location-record/delete?id=` + id }) +} + +// 导出备件库存记录 Excel +export const exportItemLocationRecord = async (params) => { + return await request.download({ url: `/eam/item-location-record/export-excel`, params }) +} + +// 下载用户导入模板 +export const importTemplate = () => { + return request.download({ url: '/eam/item-location-record/get-import-template' }) +} \ No newline at end of file diff --git a/src/api/eam/item/itemMaintenance/index.ts b/src/api/eam/item/itemMaintenance/index.ts new file mode 100644 index 0000000..d87e6f9 --- /dev/null +++ b/src/api/eam/item/itemMaintenance/index.ts @@ -0,0 +1,52 @@ +import request from '@/config/axios' + +export interface ItemMaintenanceVO { + number: string + itemNumber: string + qty: number + result: string + siteId: string + available: string + concurrencyStamp: number +} + +// 查询备件维修记录列表 +export const getItemMaintenancePage = async (params) => { + if (params.isSearch) { + delete params.isSearch + const data = {...params} + return await request.post({ url: '/eam/item-maintenance/senior', data }) + } else { + return await request.get({ url: `/eam/item-maintenance/page`, params }) + } +} + +// 查询备件维修记录详情 +export const getItemMaintenance = async (id: number) => { + return await request.get({ url: `/eam/item-maintenance/get?id=` + id }) +} + +// 新增备件维修记录 +export const createItemMaintenance = async (data: ItemMaintenanceVO) => { + return await request.post({ url: `/eam/item-maintenance/create`, data }) +} + +// 修改备件维修记录 +export const updateItemMaintenance = async (data: ItemMaintenanceVO) => { + return await request.put({ url: `/eam/item-maintenance/update`, data }) +} + +// 删除备件维修记录 +export const deleteItemMaintenance = async (id: number) => { + return await request.delete({ url: `/eam/item-maintenance/delete?id=` + id }) +} + +// 导出备件维修记录 Excel +export const exportItemMaintenance = async (params) => { + return await request.download({ url: `/eam/item-maintenance/export-excel`, params }) +} + +// 下载用户导入模板 +export const importTemplate = () => { + return request.download({ url: '/eam/item-maintenance/get-import-template' }) +} \ No newline at end of file diff --git a/src/api/eam/item/itemOrderMain/index.ts b/src/api/eam/item/itemOrderMain/index.ts new file mode 100644 index 0000000..cd41d81 --- /dev/null +++ b/src/api/eam/item/itemOrderMain/index.ts @@ -0,0 +1,65 @@ +import request from '@/config/axios' + +export interface ItemOrderMainVO { + number: string + date: string + phone: string + fax: string + purchaser: string + supplierNumber: string + supplierName: string + supplierAddress: string + shipTo: string + invoiceTo: string + contacts: string + contactsPhone: string + paymentType: string + registLocation: string + bank: string + account: string + dutyParagraph: string + siteId: string + available: string + concurrencyStamp: number +} + +// 查询备件采购订单主列表 +export const getItemOrderMainPage = async (params) => { + if (params.isSearch) { + delete params.isSearch + const data = {...params} + return await request.post({ url: '/eam/item-order-main/senior', data }) + } else { + return await request.get({ url: `/eam/item-order-main/page`, params }) + } +} + +// 查询备件采购订单主详情 +export const getItemOrderMain = async (id: number) => { + return await request.get({ url: `/eam/item-order-main/get?id=` + id }) +} + +// 新增备件采购订单主 +export const createItemOrderMain = async (data: ItemOrderMainVO) => { + return await request.post({ url: `/eam/item-order-main/create`, data }) +} + +// 修改备件采购订单主 +export const updateItemOrderMain = async (data: ItemOrderMainVO) => { + return await request.put({ url: `/eam/item-order-main/update`, data }) +} + +// 删除备件采购订单主 +export const deleteItemOrderMain = async (id: number) => { + return await request.delete({ url: `/eam/item-order-main/delete?id=` + id }) +} + +// 导出备件采购订单主 Excel +export const exportItemOrderMain = async (params) => { + return await request.download({ url: `/eam/item-order-main/export-excel`, params }) +} + +// 下载用户导入模板 +export const importTemplate = () => { + return request.download({ url: '/eam/item-order-main/get-import-template' }) +} \ No newline at end of file diff --git a/src/views/eam/item/itemAccounts/index.vue b/src/views/eam/item/itemAccounts/index.vue new file mode 100644 index 0000000..c669876 --- /dev/null +++ b/src/views/eam/item/itemAccounts/index.vue @@ -0,0 +1,244 @@ + + + diff --git a/src/views/eam/item/itemAccounts/itemAccounts.data.ts b/src/views/eam/item/itemAccounts/itemAccounts.data.ts new file mode 100644 index 0000000..ff7ca4a --- /dev/null +++ b/src/views/eam/item/itemAccounts/itemAccounts.data.ts @@ -0,0 +1,68 @@ +import type { CrudSchema } from '@/hooks/web/useCrudSchemas' +import { dateFormatter } from '@/utils/formatTime' + +// 表单校验 +export const ItemAccountsRules = reactive({ + itemNumber: [required], + areaNumber: [required], + concurrencyStamp: [required], +}) + +export const ItemAccounts = useCrudSchemas(reactive([ + { + label: '备件编号', + field: 'itemNumber', + sort: 'custom', + isSearch: true, + }, + { + label: '库存数量', + field: 'qty', + sort: 'custom', + }, + { + label: '库区编号', + field: 'areaNumber', + sort: 'custom', + }, + { + label: '是否账内库TRUE账内FALSE账外', + field: 'isInAccount', + sort: 'custom', + }, + { + label: '创建时间', + field: 'createTime', + sort: 'custom', + formatter: dateFormatter, + isForm: false, + }, + { + label: '地点ID', + field: 'siteId', + sort: 'custom', + }, + { + label: '是否可用', + field: 'available', + sort: 'custom', + }, + { + label: '并发乐观锁', + field: 'concurrencyStamp', + sort: 'custom', + form: { + component: 'InputNumber', + value: 0 + }, + }, + { + label: '操作', + field: 'action', + isForm: false, + table: { + width: 150, + fixed: 'right' + } + } +])) diff --git a/src/views/eam/item/itemApplyMain/index.vue b/src/views/eam/item/itemApplyMain/index.vue new file mode 100644 index 0000000..41fee46 --- /dev/null +++ b/src/views/eam/item/itemApplyMain/index.vue @@ -0,0 +1,244 @@ + + + diff --git a/src/views/eam/item/itemApplyMain/itemApplyMain.data.ts b/src/views/eam/item/itemApplyMain/itemApplyMain.data.ts new file mode 100644 index 0000000..0609fde --- /dev/null +++ b/src/views/eam/item/itemApplyMain/itemApplyMain.data.ts @@ -0,0 +1,146 @@ +import type { CrudSchema } from '@/hooks/web/useCrudSchemas' +import { dateFormatter } from '@/utils/formatTime' + +// 表单校验 +export const ItemApplyMainRules = reactive({ + number: [required], + name: [required], + concurrencyStamp: [required], +}) + +export const ItemApplyMain = useCrudSchemas(reactive([ + { + label: '编号', + field: 'number', + sort: 'custom', + isSearch: true, + }, + { + label: '描述', + field: 'name', + sort: 'custom', + }, + { + label: '维修申领、以旧换新字典', + field: 'type', + sort: 'custom', + form: { + component: 'SelectV2' + }, + }, + { + label: '申领人id', + field: 'applyId', + sort: 'custom', + form: { + component: 'InputNumber', + value: 0 + }, + }, + { + label: '申领人部门id', + field: 'applyDeptId', + sort: 'custom', + form: { + component: 'InputNumber', + value: 0 + }, + }, + { + label: '审批人id', + field: 'approveId', + sort: 'custom', + form: { + component: 'InputNumber', + value: 0 + }, + }, + { + label: '审批时间', + field: 'approveTime', + sort: 'custom', + formatter: dateFormatter, + form: { + component: 'DatePicker', + componentProps: { + type: 'datetime', + valueFormat: 'x' + } + }, + }, + { + label: '出库人id', + field: 'outId', + sort: 'custom', + form: { + component: 'InputNumber', + value: 0 + }, + }, + { + label: '出库时间', + field: 'outTime', + sort: 'custom', + formatter: dateFormatter, + isSearch: true, + search: { + component: 'DatePicker', + componentProps: { + valueFormat: 'YYYY-MM-DD HH:mm:ss', + type: 'daterange', + defaultTime: [new Date('1 00:00:00'), new Date('1 23:59:59')] + } + }, + form: { + component: 'DatePicker', + componentProps: { + type: 'datetime', + valueFormat: 'x' + } + }, + }, + { + label: '创建时间', + field: 'createTime', + sort: 'custom', + formatter: dateFormatter, + isSearch: true, + search: { + component: 'DatePicker', + componentProps: { + valueFormat: 'YYYY-MM-DD HH:mm:ss', + type: 'daterange', + defaultTime: [new Date('1 00:00:00'), new Date('1 23:59:59')] + } + }, + isForm: false, + }, + { + label: '地点ID', + field: 'siteId', + sort: 'custom', + }, + { + label: '是否可用', + field: 'available', + sort: 'custom', + }, + { + label: '并发乐观锁', + field: 'concurrencyStamp', + sort: 'custom', + form: { + component: 'InputNumber', + value: 0 + }, + }, + { + label: '操作', + field: 'action', + isForm: false, + table: { + width: 150, + fixed: 'right' + } + } +])) diff --git a/src/views/eam/item/itemLocationInRecord/index.vue b/src/views/eam/item/itemLocationInRecord/index.vue new file mode 100644 index 0000000..4fa16be --- /dev/null +++ b/src/views/eam/item/itemLocationInRecord/index.vue @@ -0,0 +1,244 @@ + + + diff --git a/src/views/eam/item/itemLocationInRecord/itemLocationInRecord.data.ts b/src/views/eam/item/itemLocationInRecord/itemLocationInRecord.data.ts new file mode 100644 index 0000000..d0e668f --- /dev/null +++ b/src/views/eam/item/itemLocationInRecord/itemLocationInRecord.data.ts @@ -0,0 +1,111 @@ +import type { CrudSchema } from '@/hooks/web/useCrudSchemas' +import { dateFormatter } from '@/utils/formatTime' + +// 表单校验 +export const ItemLocationInRecordRules = reactive({ + itemNumber: [required], + locationNumber: [required], + inventoryAction: [required], + businessType: [required], + uom: [required], + concurrencyStamp: [required], +}) + +export const ItemLocationInRecord = useCrudSchemas(reactive([ + { + label: '编号唯一标识', + field: 'itemNumber', + sort: 'custom', + isSearch: true, + }, + { + label: '库存编码', + field: 'locationNumber', + sort: 'custom', + }, + { + label: '事务类型IN、OUT', + field: 'transactionType', + sort: 'custom', + form: { + component: 'SelectV2' + }, + }, + { + label: '库存动作', + field: 'inventoryAction', + sort: 'custom', + isSearch: true, + }, + { + label: '业务类型', + field: 'businessType', + sort: 'custom', + isSearch: true, + form: { + component: 'SelectV2' + }, + }, + { + label: '库存状态', + field: 'inventoryStatus', + sort: 'custom', + form: { + component: 'Radio' + }, + }, + { + label: '计量单位从备件中获取', + field: 'uom', + sort: 'custom', + }, + { + label: '数量', + field: 'qty', + sort: 'custom', + }, + { + label: '创建时间', + field: 'createTime', + sort: 'custom', + formatter: dateFormatter, + isSearch: true, + search: { + component: 'DatePicker', + componentProps: { + valueFormat: 'YYYY-MM-DD HH:mm:ss', + type: 'daterange', + defaultTime: [new Date('1 00:00:00'), new Date('1 23:59:59')] + } + }, + isForm: false, + }, + { + label: '地点ID', + field: 'siteId', + sort: 'custom', + }, + { + label: '是否可用', + field: 'available', + sort: 'custom', + }, + { + label: '并发乐观锁', + field: 'concurrencyStamp', + sort: 'custom', + form: { + component: 'InputNumber', + value: 0 + }, + }, + { + label: '操作', + field: 'action', + isForm: false, + table: { + width: 150, + fixed: 'right' + } + } +])) diff --git a/src/views/eam/item/itemLocationOutRecord/index.vue b/src/views/eam/item/itemLocationOutRecord/index.vue new file mode 100644 index 0000000..e23be63 --- /dev/null +++ b/src/views/eam/item/itemLocationOutRecord/index.vue @@ -0,0 +1,244 @@ + + + diff --git a/src/views/eam/item/itemLocationOutRecord/itemLocationOutRecord.data.ts b/src/views/eam/item/itemLocationOutRecord/itemLocationOutRecord.data.ts new file mode 100644 index 0000000..19bf891 --- /dev/null +++ b/src/views/eam/item/itemLocationOutRecord/itemLocationOutRecord.data.ts @@ -0,0 +1,111 @@ +import type { CrudSchema } from '@/hooks/web/useCrudSchemas' +import { dateFormatter } from '@/utils/formatTime' + +// 表单校验 +export const ItemLocationOutRecordRules = reactive({ + itemNumber: [required], + locationNumber: [required], + inventoryAction: [required], + businessType: [required], + uom: [required], + concurrencyStamp: [required], +}) + +export const ItemLocationOutRecord = useCrudSchemas(reactive([ + { + label: '编号唯一标识', + field: 'itemNumber', + sort: 'custom', + isSearch: true, + }, + { + label: '库存编码', + field: 'locationNumber', + sort: 'custom', + }, + { + label: '事务类型IN、OUT', + field: 'transactionType', + sort: 'custom', + form: { + component: 'SelectV2' + }, + }, + { + label: '库存动作', + field: 'inventoryAction', + sort: 'custom', + isSearch: true, + }, + { + label: '业务类型', + field: 'businessType', + sort: 'custom', + isSearch: true, + form: { + component: 'SelectV2' + }, + }, + { + label: '库存状态', + field: 'inventoryStatus', + sort: 'custom', + form: { + component: 'Radio' + }, + }, + { + label: '计量单位从备件中获取', + field: 'uom', + sort: 'custom', + }, + { + label: '数量', + field: 'qty', + sort: 'custom', + }, + { + label: '创建时间', + field: 'createTime', + sort: 'custom', + formatter: dateFormatter, + isSearch: true, + search: { + component: 'DatePicker', + componentProps: { + valueFormat: 'YYYY-MM-DD HH:mm:ss', + type: 'daterange', + defaultTime: [new Date('1 00:00:00'), new Date('1 23:59:59')] + } + }, + isForm: false, + }, + { + label: '地点ID', + field: 'siteId', + sort: 'custom', + }, + { + label: '是否可用', + field: 'available', + sort: 'custom', + }, + { + label: '并发乐观锁', + field: 'concurrencyStamp', + sort: 'custom', + form: { + component: 'InputNumber', + value: 0 + }, + }, + { + label: '操作', + field: 'action', + isForm: false, + table: { + width: 150, + fixed: 'right' + } + } +])) diff --git a/src/views/eam/item/itemLocationRecord/index.vue b/src/views/eam/item/itemLocationRecord/index.vue new file mode 100644 index 0000000..bcee0ca --- /dev/null +++ b/src/views/eam/item/itemLocationRecord/index.vue @@ -0,0 +1,244 @@ + + + diff --git a/src/views/eam/item/itemLocationRecord/itemLocationRecord.data.ts b/src/views/eam/item/itemLocationRecord/itemLocationRecord.data.ts new file mode 100644 index 0000000..00b2407 --- /dev/null +++ b/src/views/eam/item/itemLocationRecord/itemLocationRecord.data.ts @@ -0,0 +1,111 @@ +import type { CrudSchema } from '@/hooks/web/useCrudSchemas' +import { dateFormatter } from '@/utils/formatTime' + +// 表单校验 +export const ItemLocationRecordRules = reactive({ + itemNumber: [required], + locationNumber: [required], + inventoryAction: [required], + businessType: [required], + uom: [required], + concurrencyStamp: [required], +}) + +export const ItemLocationRecord = useCrudSchemas(reactive([ + { + label: '编号唯一标识', + field: 'itemNumber', + sort: 'custom', + isSearch: true, + }, + { + label: '库存编码', + field: 'locationNumber', + sort: 'custom', + }, + { + label: '事务类型IN、OUT', + field: 'transactionType', + sort: 'custom', + form: { + component: 'SelectV2' + }, + }, + { + label: '库存动作', + field: 'inventoryAction', + sort: 'custom', + isSearch: true, + }, + { + label: '业务类型', + field: 'businessType', + sort: 'custom', + isSearch: true, + form: { + component: 'SelectV2' + }, + }, + { + label: '库存状态', + field: 'inventoryStatus', + sort: 'custom', + form: { + component: 'Radio' + }, + }, + { + label: '计量单位从备件中获取', + field: 'uom', + sort: 'custom', + }, + { + label: '数量', + field: 'qty', + sort: 'custom', + }, + { + label: '创建时间', + field: 'createTime', + sort: 'custom', + formatter: dateFormatter, + isSearch: true, + search: { + component: 'DatePicker', + componentProps: { + valueFormat: 'YYYY-MM-DD HH:mm:ss', + type: 'daterange', + defaultTime: [new Date('1 00:00:00'), new Date('1 23:59:59')] + } + }, + isForm: false, + }, + { + label: '地点ID', + field: 'siteId', + sort: 'custom', + }, + { + label: '是否可用', + field: 'available', + sort: 'custom', + }, + { + label: '并发乐观锁', + field: 'concurrencyStamp', + sort: 'custom', + form: { + component: 'InputNumber', + value: 0 + }, + }, + { + label: '操作', + field: 'action', + isForm: false, + table: { + width: 150, + fixed: 'right' + } + } +])) diff --git a/src/views/eam/item/itemMaintenance/index.vue b/src/views/eam/item/itemMaintenance/index.vue new file mode 100644 index 0000000..2fde18f --- /dev/null +++ b/src/views/eam/item/itemMaintenance/index.vue @@ -0,0 +1,244 @@ + + + diff --git a/src/views/eam/item/itemMaintenance/itemMaintenance.data.ts b/src/views/eam/item/itemMaintenance/itemMaintenance.data.ts new file mode 100644 index 0000000..75af293 --- /dev/null +++ b/src/views/eam/item/itemMaintenance/itemMaintenance.data.ts @@ -0,0 +1,80 @@ +import type { CrudSchema } from '@/hooks/web/useCrudSchemas' +import { dateFormatter } from '@/utils/formatTime' + +// 表单校验 +export const ItemMaintenanceRules = reactive({ + number: [required], + itemNumber: [required], + qty: [required], + concurrencyStamp: [required], +}) + +export const ItemMaintenance = useCrudSchemas(reactive([ + { + label: '代码', + field: 'number', + sort: 'custom', + isSearch: true, + }, + { + label: '备件代码', + field: 'itemNumber', + sort: 'custom', + isSearch: true, + }, + { + label: '数量', + field: 'qty', + sort: 'custom', + }, + { + label: '维修结果YES、NO', + field: 'result', + sort: 'custom', + isSearch: true, + }, + { + label: '创建时间', + field: 'createTime', + sort: 'custom', + formatter: dateFormatter, + isSearch: true, + search: { + component: 'DatePicker', + componentProps: { + valueFormat: 'YYYY-MM-DD HH:mm:ss', + type: 'daterange', + defaultTime: [new Date('1 00:00:00'), new Date('1 23:59:59')] + } + }, + isForm: false, + }, + { + label: '地点ID', + field: 'siteId', + sort: 'custom', + }, + { + label: '是否可用', + field: 'available', + sort: 'custom', + }, + { + label: '并发乐观锁', + field: 'concurrencyStamp', + sort: 'custom', + form: { + component: 'InputNumber', + value: 0 + }, + }, + { + label: '操作', + field: 'action', + isForm: false, + table: { + width: 150, + fixed: 'right' + } + } +])) diff --git a/src/views/eam/item/itemOrderMain/index.vue b/src/views/eam/item/itemOrderMain/index.vue new file mode 100644 index 0000000..1176f11 --- /dev/null +++ b/src/views/eam/item/itemOrderMain/index.vue @@ -0,0 +1,244 @@ + + + diff --git a/src/views/eam/item/itemOrderMain/itemOrderMain.data.ts b/src/views/eam/item/itemOrderMain/itemOrderMain.data.ts new file mode 100644 index 0000000..8d7ea4a --- /dev/null +++ b/src/views/eam/item/itemOrderMain/itemOrderMain.data.ts @@ -0,0 +1,153 @@ +import type { CrudSchema } from '@/hooks/web/useCrudSchemas' +import { dateFormatter } from '@/utils/formatTime' + +// 表单校验 +export const ItemOrderMainRules = reactive({ + number: [required], + date: [required], + concurrencyStamp: [required], +}) + +export const ItemOrderMain = useCrudSchemas(reactive([ + { + label: '订单号唯一标识', + field: 'number', + sort: 'custom', + isSearch: true, + }, + { + label: '日期', + field: 'date', + sort: 'custom', + formatter: dateFormatter, + form: { + component: 'DatePicker', + componentProps: { + type: 'datetime', + valueFormat: 'x' + } + }, + }, + { + label: '电话', + field: 'phone', + sort: 'custom', + }, + { + label: '传真', + field: 'fax', + sort: 'custom', + }, + { + label: '采购员', + field: 'purchaser', + sort: 'custom', + }, + { + label: '供应商编号', + field: 'supplierNumber', + sort: 'custom', + }, + { + label: '供应商名称', + field: 'supplierName', + sort: 'custom', + }, + { + label: '供应商地址', + field: 'supplierAddress', + sort: 'custom', + }, + { + label: '发货至', + field: 'shipTo', + sort: 'custom', + }, + { + label: '开票至', + field: 'invoiceTo', + sort: 'custom', + }, + { + label: '联系人', + field: 'contacts', + sort: 'custom', + }, + { + label: '联系电话', + field: 'contactsPhone', + sort: 'custom', + }, + { + label: '付款方式', + field: 'paymentType', + sort: 'custom', + form: { + component: 'SelectV2' + }, + }, + { + label: '注册地', + field: 'registLocation', + sort: 'custom', + }, + { + label: '开户行', + field: 'bank', + sort: 'custom', + }, + { + label: '账号', + field: 'account', + sort: 'custom', + }, + { + label: '税号', + field: 'dutyParagraph', + sort: 'custom', + }, + { + label: '创建时间', + field: 'createTime', + sort: 'custom', + formatter: dateFormatter, + isSearch: true, + search: { + component: 'DatePicker', + componentProps: { + valueFormat: 'YYYY-MM-DD HH:mm:ss', + type: 'daterange', + defaultTime: [new Date('1 00:00:00'), new Date('1 23:59:59')] + } + }, + isForm: false, + }, + { + label: '地点ID', + field: 'siteId', + sort: 'custom', + }, + { + label: '是否可用', + field: 'available', + sort: 'custom', + }, + { + label: '并发乐观锁', + field: 'concurrencyStamp', + sort: 'custom', + form: { + component: 'InputNumber', + value: 0 + }, + }, + { + label: '操作', + field: 'action', + isForm: false, + table: { + width: 150, + fixed: 'right' + } + } +]))