diff --git a/src/api/wms/purchasereceiptJobDetail/index.ts b/src/api/wms/purchasereceiptJobDetail/index.ts index 4163887b2..c012a623f 100644 --- a/src/api/wms/purchasereceiptJobDetail/index.ts +++ b/src/api/wms/purchasereceiptJobDetail/index.ts @@ -55,6 +55,18 @@ export const getPurchasereceiptJobDetailPageSapre = async (params) => { } } +// 查询采购收货任务子列表 +export const getPurchasereceiptJobDetailPageSCP = async (params) => { + if (params.isSearch) { + delete params.isSearch + const data = {...params} + return await request.post({ url: '/wms/purchasereceipt-job-detail/seniorSCP', data }) + } else { + return await request.get({ url: `/wms/purchasereceipt-job-detail/pageSCP`, params }) + } +} + + // 查询采购收货任务子详情 export const getPurchasereceiptJobDetail = async (id: number) => { return await request.get({ url: `/wms/purchasereceipt-job-detail/get?id=` + id }) diff --git a/src/api/wms/relegateRequest/index.ts b/src/api/wms/relegateRequestDetail/index.ts similarity index 50% rename from src/api/wms/relegateRequest/index.ts rename to src/api/wms/relegateRequestDetail/index.ts index a26e8c360..98aa10e73 100644 --- a/src/api/wms/relegateRequest/index.ts +++ b/src/api/wms/relegateRequestDetail/index.ts @@ -1,6 +1,6 @@ import request from '@/config/axios' -export interface RelegateRequestVO { +export interface RelegateRequestDetailVO { id: number itemCode: string downItemCode: string @@ -32,39 +32,39 @@ export interface RelegateRequestVO { } // 查询物料降级信息列表 -export const getRelegateRequestPage = async (params) => { +export const getRelegateRequestDetailPage = async (params) => { if (params.isSearch) { delete params.isSearch const data = {...params} - return await request.post({ url: '/wms/relegate-request/senior', data }) + return await request.post({ url: '/wms/relegate-request-detail/senior', data }) } else { - return await request.get({ url: `/wms/relegate-request/page`, params }) + return await request.get({ url: `/wms/relegate-request-detail/page`, params }) } } // 查询物料降级信息详情 -export const getRelegateRequest = async (id: number) => { - return await request.get({ url: `/wms/relegate-request/get?id=` + id }) +export const getRelegateRequestDetail = async (id: number) => { + return await request.get({ url: `/wms/relegate-request-detail/get?id=` + id }) } // 新增物料降级信息 -export const createRelegateRequest = async (data: RelegateRequestVO) => { - return await request.post({ url: `/wms/relegate-request/create`, data }) +export const createRelegateRequestDetail = async (data: RelegateRequestDetailVO) => { + return await request.post({ url: `/wms/relegate-request-detail/create`, data }) } // 修改物料降级信息 -export const updateRelegateRequest = async (data: RelegateRequestVO) => { - return await request.put({ url: `/wms/relegate-request/update`, data }) +export const updateRelegateRequestDetail = async (data: RelegateRequestDetailVO) => { + return await request.put({ url: `/wms/relegate-request-detail/update`, data }) } // 删除物料降级信息 -export const deleteRelegateRequest = async (id: number) => { - return await request.delete({ url: `/wms/relegate-request/delete?id=` + id }) +export const deleteRelegateRequestDetail = async (id: number) => { + return await request.delete({ url: `/wms/relegate-request-detail/delete?id=` + id }) } // 导出物料降级信息 Excel -export const exportRelegateRequest = async (params) => { - return await request.download({ url: `/wms/relegate-request/export-excel`, params }) +export const exportRelegateRequestDetail = async (params) => { + return await request.download({ url: `/wms/relegate-request-detail/export-excel`, params }) } // 下载用户导入模板 diff --git a/src/api/wms/relegateRequestMain/index.ts b/src/api/wms/relegateRequestMain/index.ts new file mode 100644 index 000000000..1b3ca3018 --- /dev/null +++ b/src/api/wms/relegateRequestMain/index.ts @@ -0,0 +1,68 @@ +import request from '@/config/axios' + +export interface RelegateRequestMainVO { + id: number + fromWarehouseCode: string + number: string + businessType: string + remark: string + extraProperties: string + siteId: string + requestTime: Date + dueTime: Date + departmentCode: string + status: string + autoCommit: string + autoAgree: string + autoExecute: string + directCreateRecord: string + concurrencyStamp: number + ruleUserId: number + fromAreaTypes: string + fromAreaCodes: string + serialNumber: string + inInventoryStatuses: string + outInventoryStatuses: string + reason: string +} + +// 查询物料降级申请主列表 +export const getRelegateRequestMainPage = async (params) => { + if (params.isSearch) { + delete params.isSearch + const data = {...params} + return await request.post({ url: '/wms/relegate-request-main/senior', data }) + } else { + return await request.get({ url: `/wms/relegate-request-main/page`, params }) + } +} + +// 查询物料降级申请主详情 +export const getRelegateRequestMain = async (id: number) => { + return await request.get({ url: `/wms/relegate-request-main/get?id=` + id }) +} + +// 新增物料降级申请主 +export const createRelegateRequestMain = async (data: RelegateRequestMainVO) => { + return await request.post({ url: `/wms/relegate-request-main/create`, data }) +} + +// 修改物料降级申请主 +export const updateRelegateRequestMain = async (data: RelegateRequestMainVO) => { + return await request.put({ url: `/wms/relegate-request-main/update`, data }) +} + +// 删除物料降级申请主 +export const deleteRelegateRequestMain = async (id: number) => { + return await request.delete({ url: `/wms/relegate-request-main/delete?id=` + id }) +} + +// 导出物料降级申请主 Excel +export const exportRelegateRequestMain = async (params) => { + return await request.download({ url: `/wms/relegate-request-main/export-excel`, params }) +} + +// 下载用户导入模板 +export const importTemplate = () => { + return request.download({ url: '/wms/relegate-request-main/get-import-template' }) +} \ No newline at end of file diff --git a/src/views/mes/abilityInfo/index.vue b/src/views/mes/abilityInfo/index.vue index 945375f6f..85bc873ae 100644 --- a/src/views/mes/abilityInfo/index.vue +++ b/src/views/mes/abilityInfo/index.vue @@ -66,6 +66,7 @@ import * as defaultButtons from '@/utils/disposition/defaultButtons' import TableHead from '@/components/TableHead/src/TableHead.vue' import ImportForm from '@/components/ImportForm/src/ImportForm.vue' import Detail from '../components/Detail.vue' +import {MesOrderMonthMain} from "@/views/mes/ordermonthplan/mesOrderMonthMain.data"; defineOptions({ name: 'AbilityInfo' }) @@ -150,6 +151,15 @@ const buttonTableClick = async (val, row) => { /** 添加/修改操作 */ const basicFormRef = ref() const openForm = (type: string, row?: any) => { + let disabledFlag = false + if(type==='update'){ + disabledFlag = true + } + AbilityInfo.allSchemas.formSchema.forEach(item => { + if (item.field == 'ablityCode') { + item.componentProps.disabled =disabledFlag + } + }) basicFormRef.value.open(type, row) } diff --git a/src/views/mes/opersteps/index.vue b/src/views/mes/opersteps/index.vue index 6250e6ef1..48bb42dd9 100644 --- a/src/views/mes/opersteps/index.vue +++ b/src/views/mes/opersteps/index.vue @@ -159,7 +159,6 @@ const openForm = (type: string, row?: any) => { } }) basicFormRef.value.open(type, row) - basicFormRef.value.open(type, row) } // form表单提交 diff --git a/src/views/mes/ordermonthplan/index.vue b/src/views/mes/ordermonthplan/index.vue index 6c59a287a..d525dfc0f 100644 --- a/src/views/mes/ordermonthplan/index.vue +++ b/src/views/mes/ordermonthplan/index.vue @@ -185,6 +185,15 @@ const buttonTableClick = async (val, row) => { /** 添加/修改操作 */ const basicFormRef = ref() const openForm = (type: string, row?: any) => { + let disabledFlag = false + if(type==='update'){ + disabledFlag = true + } + MesOrderMonthMain.allSchemas.formSchema.forEach(item => { + if (item.field == 'planMasterCode' || item.field == 'planSubCode') { + item.componentProps.disabled =disabledFlag + } + }) basicFormRef.value.open(type, row) } diff --git a/src/views/mes/pattern/index.vue b/src/views/mes/pattern/index.vue index e7a6f128d..459f4190f 100644 --- a/src/views/mes/pattern/index.vue +++ b/src/views/mes/pattern/index.vue @@ -149,6 +149,15 @@ const buttonTableClick = async (val, row) => { /** 添加/修改操作 */ const basicFormRef = ref() const openForm = (type: string, row?: any) => { + let disabledFlag = false + if(type==='update'){ + disabledFlag = true + } + Pattern.allSchemas.formSchema.forEach(item => { + if (item.field == 'code') { + item.componentProps.disabled =disabledFlag + } + }) basicFormRef.value.open(type, row) } diff --git a/src/views/mes/patternType/index.vue b/src/views/mes/patternType/index.vue index 6a1ad681a..e0cc50b14 100644 --- a/src/views/mes/patternType/index.vue +++ b/src/views/mes/patternType/index.vue @@ -149,6 +149,15 @@ const buttonTableClick = async (val, row) => { /** 添加/修改操作 */ const basicFormRef = ref() const openForm = (type: string, row?: any) => { + let disabledFlag = false + if(type==='update'){ + disabledFlag = true + } + PatternType.allSchemas.formSchema.forEach(item => { + if (item.field == 'code') { + item.componentProps.disabled =disabledFlag + } + }) basicFormRef.value.open(type, row) } diff --git a/src/views/mes/qualityclass/index.vue b/src/views/mes/qualityclass/index.vue index bd691dd60..aa7018cab 100644 --- a/src/views/mes/qualityclass/index.vue +++ b/src/views/mes/qualityclass/index.vue @@ -149,7 +149,15 @@ const buttonTableClick = async (val, row) => { /** 添加/修改操作 */ const basicFormRef = ref() const openForm = (type: string, row?: any) => { - console.log(row) + let disabledFlag = false + if(type==='update'){ + disabledFlag = true + } + Qualityclass.allSchemas.formSchema.forEach(item => { + if (item.field == 'code') { + item.componentProps.disabled =disabledFlag + } + }) basicFormRef.value.open(type, row) } diff --git a/src/views/mes/qualitygroup/index.vue b/src/views/mes/qualitygroup/index.vue index 2255e5593..04d6a8e6b 100644 --- a/src/views/mes/qualitygroup/index.vue +++ b/src/views/mes/qualitygroup/index.vue @@ -149,6 +149,15 @@ const buttonTableClick = async (val, row) => { /** 添加/修改操作 */ const basicFormRef = ref() const openForm = (type: string, row?: any) => { + let disabledFlag = false + if(type==='update'){ + disabledFlag = true + } + Qualitygroup.allSchemas.formSchema.forEach(item => { + if (item.field == 'code') { + item.componentProps.disabled =disabledFlag + } + }) basicFormRef.value.open(type, row) } diff --git a/src/views/mes/reworkBatch/index.vue b/src/views/mes/reworkBatch/index.vue index d081b8355..72022d168 100644 --- a/src/views/mes/reworkBatch/index.vue +++ b/src/views/mes/reworkBatch/index.vue @@ -51,7 +51,7 @@ /> - diff --git a/src/views/mes/reworkSingle/index.vue b/src/views/mes/reworkSingle/index.vue index a5254d728..e8b17bdd4 100644 --- a/src/views/mes/reworkSingle/index.vue +++ b/src/views/mes/reworkSingle/index.vue @@ -51,7 +51,7 @@ /> - diff --git a/src/views/mes/workstation/index.vue b/src/views/mes/workstation/index.vue index 13b6a688f..95255959d 100644 --- a/src/views/mes/workstation/index.vue +++ b/src/views/mes/workstation/index.vue @@ -171,6 +171,15 @@ const buttonTableClick = async (val, row) => { /** 添加/修改操作 */ const basicFormRef = ref() const openForm = (type: string, row?: any) => { + let disabledFlag = false + if(type==='update'){ + disabledFlag = true + } + Workstation.allSchemas.formSchema.forEach(item => { + if (item.field == 'code') { + item.componentProps.disabled =disabledFlag + } + }) basicFormRef.value.open(type, row) } diff --git a/src/views/system/user/UserForm.vue b/src/views/system/user/UserForm.vue index 8e880a02a..d673cdc96 100644 --- a/src/views/system/user/UserForm.vue +++ b/src/views/system/user/UserForm.vue @@ -7,6 +7,23 @@ :rules="formRules" label-width="80px" > + + + + + + + + + + + + @@ -38,23 +55,6 @@ - - - - - - - - - - - - diff --git a/src/views/wms/basicDataManage/itemManage/relegate/relegateRequest/index.vue b/src/views/wms/basicDataManage/itemManage/relegate/relegateRequest/index.vue new file mode 100644 index 000000000..637efc95c --- /dev/null +++ b/src/views/wms/basicDataManage/itemManage/relegate/relegateRequest/index.vue @@ -0,0 +1,340 @@ + + + diff --git a/src/views/wms/basicDataManage/itemManage/relegate/relegateRequest/relegateRequestMain.data.ts b/src/views/wms/basicDataManage/itemManage/relegate/relegateRequest/relegateRequestMain.data.ts new file mode 100644 index 000000000..80f8bb35c --- /dev/null +++ b/src/views/wms/basicDataManage/itemManage/relegate/relegateRequest/relegateRequestMain.data.ts @@ -0,0 +1,539 @@ +import type { CrudSchema } from '@/hooks/web/useCrudSchemas' +import { dateFormatter } from '@/utils/formatTime' +import * as getRequestsettingApi from '@/api/wms/requestsetting/index' + +import * as ItembasicApi from '@/api/wms/itembasic' +import { Itembasic } from '@/views/wms/basicDataManage/itemManage/itembasic/itembasic.data' + +import {Warehouse} from "@/views/wms/basicDataManage/factoryModeling/warehouse/warehouse.data"; +import * as WarehouseApi from "@/api/wms/warehouse"; + +import * as BalanceApi from '@/api/wms/balance' +import { Balance } from '@/views/wms/inventoryManage/balance/balance.data' + +// 获取自动提交自动通过自动执行,跳过任务直接删生成记录的默认值 +const queryParams = { + pageSize:10, + pageNo:1, + code:'RelegateRequest' +} + const data = await getRequestsettingApi.getRequestsettingPage(queryParams) + const requestsettingData =data?.list[0]||{} +// 表单校验 +export const RelegateRequestMainRules = reactive({ + fromWarehouseCode: [required], + number: [required], + businessType: [required], + autoCommit: [required], + autoAgree: [required], + autoExecute: [required], + directCreateRecord: [required], + concurrencyStamp: [required], + fromAreaTypes: [required], + fromAreaCodes: [required], +}) + +export const RelegateRequestMain = useCrudSchemas(reactive([ + { + label: '单据号', + field: 'number', + sort: 'custom', + isSearch: true, + isForm: false + }, + { + label: '从仓库代码', + field: 'fromWarehouseCode', + sort: 'custom', + form: { + // labelMessage: '信息提示说明!!!', + componentProps: { + isSearchList: true, // 开启查询弹窗 + searchListPlaceholder: '请选择仓库代码', // 输入框占位文本 + searchField: 'code', // 查询弹窗赋值字段 + searchTitle: '仓库信息', // 查询弹窗标题 + searchAllSchemas: Warehouse.allSchemas, // 查询弹窗所需类 + searchPage: WarehouseApi.getWarehousePage, // 查询弹窗所需分页方法 + searchCondition: [{ + key: 'available', + value: 'TRUE', + isMainValue: false + }] + } + } + }, + + { + label: '业务类型', + field: 'businessType', + sort: 'custom', + isSearch: true, + isForm: false, + isTable: false + }, + { + label: '备注', + field: 'remark', + sort: 'custom', + isSearch: true, + isForm: false, + isTable: false + }, + { + label: '创建时间', + field: 'createTime', + sort: 'custom', + formatter: dateFormatter, + 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, + isTable: false + }, + { + label: '扩展属性', + field: 'extraProperties', + sort: 'custom', + isForm: false, + isTable: false + }, + { + label: '地点ID', + field: 'siteId', + sort: 'custom', + isForm: false, + isTable: false + }, + { + label: '申请时间', + field: 'requestTime', + sort: 'custom', + formatter: dateFormatter, + 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, + isTable: false + }, + { + label: '截止时间', + field: 'dueTime', + sort: 'custom', + formatter: dateFormatter, + 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, + isTable: false + }, + { + label: '部门', + field: 'departmentCode', + sort: 'custom', + isForm: false, + }, + { + label: '状态', + field: 'status', + dictType: DICT_TYPE.REQUEST_STATUS, + dictClass: 'string', + isSearch: true, + isForm: false, + isTable: true, + sort: 'custom', + table: { + width: 150 + }, + }, + { + label: '自动提交', + field: 'autoCommit', + dictType: DICT_TYPE.TRUE_FALSE, + dictClass: 'string', + isTable: false, + isForm: false, + sort: 'custom', + table: { + width: 150 + }, + form: { + component: 'Switch', + value: requestsettingData.autoCommit, + componentProps: { + inactiveValue: 'FALSE', + activeValue: 'TRUE', + disabled: true + } + } + }, + { + label: '自动通过', + field: 'autoAgree', + dictType: DICT_TYPE.TRUE_FALSE, + dictClass: 'string', + isTable: false, + isForm: false, + sort: 'custom', + table: { + width: 150 + }, + form: { + component: 'Switch', + value: requestsettingData.autoCommit, + componentProps: { + inactiveValue: 'FALSE', + activeValue: 'TRUE', + disabled: true + } + } + }, + { + label: '自动执行', + field: 'autoExecute', + dictType: DICT_TYPE.TRUE_FALSE, + dictClass: 'string', + isTable: false, + isForm: false, + sort: 'custom', + table: { + width: 150 + }, + form: { + component: 'Switch', + value: requestsettingData.autoCommit, + componentProps: { + inactiveValue: 'FALSE', + activeValue: 'TRUE', + disabled: true + } + } + }, + { + label: '直接生成记录', + field: 'directCreateRecord', + dictType: DICT_TYPE.TRUE_FALSE, + dictClass: 'string', + isTable: false, + isForm: false, + sort: 'custom', + table: { + width: 150 + }, + form: { + component: 'Switch', + value: requestsettingData.autoCommit, + componentProps: { + inactiveValue: 'FALSE', + activeValue: 'TRUE', + disabled: true + } + } + }, + { + label: '并发乐观锁', + field: 'concurrencyStamp', + sort: 'custom', + isForm: false, + isTable: false + }, + { + label: '权限所属人员id', + field: 'ruleUserId', + sort: 'custom', + isForm: false, + isTable: false + }, + { + label: '工作流流水号', + field: 'serialNumber', + sort: 'custom', + isForm: false, + isTable: false + }, + { + label: '原因', + field: 'reason', + sort: 'custom', + isForm: false, + }, + { + label: '操作', + field: 'action', + isForm: false, + table: { + width: 150, + fixed: 'right' + } + } +])) + +// 表单校验 +export const RelegateRequestDetailRules = reactive({ + itemCode: [required], + downItemCode: [required], + businessType: [required], + available: [required], + departmentCode: [required], + concurrencyStamp: [required], +}) + +export const RelegateRequestDetail = useCrudSchemas(reactive([ + { + label: '物料代码', + field: 'itemCode', + sort: 'custom', + isSearch: true, + form: { + componentProps: { + isSearchList: true, + searchListPlaceholder: '请选择物料代码', + searchField: 'itemCode', + searchTitle: '物料基础信息', + searchAllSchemas: Itembasic.allSchemas, + searchPage: ItembasicApi.getItembasicPage, + searchCondition: [{ + key: 'available', + value: 'TRUE', + isMainValue: false + }] + } + } + }, + { + label: '降级物料代码', + field: 'downItemCode', + sort: 'custom', + form: { + componentProps: { + isSearchList: true, + searchListPlaceholder: '请选择降级物料代码', + searchField: 'itemCode', + searchTitle: '物料基础信息', + searchAllSchemas: Itembasic.allSchemas, + searchPage: ItembasicApi.getItembasicPage, + searchCondition: [{ + key: 'available', + value: 'TRUE', + isMainValue: false + }] + } + }, + isSearch: true + }, + { + label: '计量单位', + field: 'uom', + dictType: DICT_TYPE.UOM, + dictClass: 'string', + sort: 'custom', + table: { + width: 150 + }, + tableForm: { + type: 'Select', + disabled: true + }, + form: { + componentProps: { + disabled: true + } + } + }, + { + label: '数量', + field: 'qty', + sort: 'custom', + }, + { + label: '从批次', + field: 'fromBatch', + sort: 'custom', + form: { + componentProps: { + disabled: true, + } + }, + }, + { + label: '从包装号', + field: 'fromPackingNumber', + sort: 'custom', + form: { + componentProps: { + disabled: true, + } + }, + }, + { + label: '从库位代码', + field: 'fromLocationCode', + sort: 'custom', + form: { + componentProps: { + disabled: true, + } + }, + }, + { + label: '从库区类型', + field: 'fromAreaTypes', + sort: 'custom', + isForm:false, + }, + { + label: '从库区代码', + field: 'fromAreaCodes', + sort: 'custom', + isForm:false, + }, + { + label: '从仓库代码', + field: 'fromWarehouseCode', + sort: 'custom', + isForm:false, + }, + { + label: '到包装号', + field: 'toPackingNumber', + sort: 'custom', + }, + { + label: '到批次', + field: 'toBatch', + sort: 'custom', + }, + { + label: '到库位代码', + field: 'toLocationCode', + sort: 'custom', + }, + { + label: '到仓库代码', + field: 'toWarehouseCode', + sort: 'custom', + isForm:false, + }, + { + label: '到库区类型', + field: 'toAreaTypes', + sort: 'custom', + isForm:false, + }, + { + label: '到库区代码', + field: 'toAreaCodes', + sort: 'custom', + isForm:false, + }, + { + label: '是否可用', + field: 'available', + sort: 'custom', + isForm:false, + }, + { + label: '备注', + field: 'remark', + sort: 'custom', + }, + { + label: '部门', + field: 'departmentCode', + sort: 'custom', + isForm:false, + }, + { + label: '地点ID', + field: 'siteId', + sort: 'custom', + form: { + component: 'InputNumber', + value: 0 + }, + isForm:false, + }, + { + label: '扩展属性', + field: 'extraProperties', + sort: 'custom', + isForm:false, + }, + { + label: '创建时间', + field: 'createTime', + sort: 'custom', + formatter: dateFormatter, + 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: '状态', + field: 'status', + dictType: DICT_TYPE.REQUEST_STATUS, + dictClass: 'string', + isSearch: true, + isForm: false, + isTable: true, + sort: 'custom', + table: { + width: 150 + }, + }, + { + label: '并发乐观锁', + field: 'concurrencyStamp', + sort: 'custom', + isForm:false, + form: { + component: 'InputNumber', + value: 0 + }, + }, + { + label: '工作流流水号', + field: 'serialNumber', + isForm:false, + sort: 'custom', + }, + { + label: '权限所属人员id', + field: 'ruleUserId', + sort: 'custom', + isForm:false, + form: { + component: 'InputNumber', + value: 0 + }, + }, + { + label: '操作', + field: 'action', + isForm: false, + table: { + width: 150, + fixed: 'right' + } + } +])) diff --git a/src/views/wms/basicDataManage/itemManage/relegateRequest/relegateRequestMain.data.ts b/src/views/wms/basicDataManage/itemManage/relegateRequest/relegateRequestMain.data.ts new file mode 100644 index 000000000..cc7ee6027 --- /dev/null +++ b/src/views/wms/basicDataManage/itemManage/relegateRequest/relegateRequestMain.data.ts @@ -0,0 +1,553 @@ +import type { CrudSchema } from '@/hooks/web/useCrudSchemas' +import { dateFormatter } from '@/utils/formatTime' +import * as getRequestsettingApi from '@/api/wms/requestsetting/index' + +import * as ItembasicApi from "@/api/wms/itembasic"; + +import { Itembasic } from '@/views/wms/basicDataManage/itemManage/itembasic/itembasic.data' + +import {Warehouse} from "@/views/wms/basicDataManage/factoryModeling/warehouse/warehouse.data"; +import * as WarehouseApi from "@/api/wms/warehouse"; + +import * as BalanceApi from '@/api/wms/balance' +import { Balance } from '@/views/wms/inventoryManage/balance/balance.data' + +// 获取自动提交自动通过自动执行,跳过任务直接删生成记录的默认值 +const queryParams = { + pageSize:10, + pageNo:1, + code:'RelegateRequest' +} + const data = await getRequestsettingApi.getRequestsettingPage(queryParams) + const requestsettingData =data?.list[0]||{} +// 表单校验 +export const RelegateRequestMainRules = reactive({ + fromWarehouseCode: [required], + number: [required], + businessType: [required], + autoCommit: [required], + autoAgree: [required], + autoExecute: [required], + directCreateRecord: [required], + concurrencyStamp: [required], + fromAreaTypes: [required], + fromAreaCodes: [required], +}) + +export const RelegateRequestMain = useCrudSchemas(reactive([ + { + label: '单据号', + field: 'number', + sort: 'custom', + isSearch: true, + isForm: false + }, + { + label: '从仓库代码', + field: 'fromWarehouseCode', + sort: 'custom', + form: { + // labelMessage: '信息提示说明!!!', + componentProps: { + isSearchList: true, // 开启查询弹窗 + searchListPlaceholder: '请选择仓库代码', // 输入框占位文本 + searchField: 'code', // 查询弹窗赋值字段 + searchTitle: '仓库信息', // 查询弹窗标题 + searchAllSchemas: Warehouse.allSchemas, // 查询弹窗所需类 + searchPage: WarehouseApi.getWarehousePage, // 查询弹窗所需分页方法 + searchCondition: [{ + key: 'available', + value: 'TRUE', + isMainValue: false + }] + } + } + }, + + { + label: '业务类型', + field: 'businessType', + sort: 'custom', + isSearch: true, + isForm: false, + isTable: false + }, + { + label: '备注', + field: 'remark', + sort: 'custom', + isSearch: true, + isForm: false, + isTable: false + }, + { + label: '创建时间', + field: 'createTime', + sort: 'custom', + formatter: dateFormatter, + 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, + isTable: false + }, + { + label: '扩展属性', + field: 'extraProperties', + sort: 'custom', + isForm: false, + isTable: false + }, + { + label: '地点ID', + field: 'siteId', + sort: 'custom', + isForm: false, + isTable: false + }, + { + label: '申请时间', + field: 'requestTime', + sort: 'custom', + formatter: dateFormatter, + 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, + isTable: false + }, + { + label: '截止时间', + field: 'dueTime', + sort: 'custom', + formatter: dateFormatter, + 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, + isTable: false + }, + { + label: '部门', + field: 'departmentCode', + sort: 'custom', + isForm: false, + }, + { + label: '状态', + field: 'status', + dictType: DICT_TYPE.REQUEST_STATUS, + dictClass: 'string', + isSearch: true, + isForm: false, + isTable: true, + sort: 'custom', + table: { + width: 150 + }, + }, + { + label: '自动提交', + field: 'autoCommit', + dictType: DICT_TYPE.TRUE_FALSE, + dictClass: 'string', + isTable: false, + isForm: false, + sort: 'custom', + table: { + width: 150 + }, + form: { + component: 'Switch', + value: requestsettingData.autoCommit, + componentProps: { + inactiveValue: 'FALSE', + activeValue: 'TRUE', + disabled: true + } + } + }, + { + label: '自动通过', + field: 'autoAgree', + dictType: DICT_TYPE.TRUE_FALSE, + dictClass: 'string', + isTable: false, + isForm: false, + sort: 'custom', + table: { + width: 150 + }, + form: { + component: 'Switch', + value: requestsettingData.autoCommit, + componentProps: { + inactiveValue: 'FALSE', + activeValue: 'TRUE', + disabled: true + } + } + }, + { + label: '自动执行', + field: 'autoExecute', + dictType: DICT_TYPE.TRUE_FALSE, + dictClass: 'string', + isTable: false, + isForm: false, + sort: 'custom', + table: { + width: 150 + }, + form: { + component: 'Switch', + value: requestsettingData.autoCommit, + componentProps: { + inactiveValue: 'FALSE', + activeValue: 'TRUE', + disabled: true + } + } + }, + { + label: '直接生成记录', + field: 'directCreateRecord', + dictType: DICT_TYPE.TRUE_FALSE, + dictClass: 'string', + isTable: false, + isForm: false, + sort: 'custom', + table: { + width: 150 + }, + form: { + component: 'Switch', + value: requestsettingData.autoCommit, + componentProps: { + inactiveValue: 'FALSE', + activeValue: 'TRUE', + disabled: true + } + } + }, + { + label: '并发乐观锁', + field: 'concurrencyStamp', + sort: 'custom', + isForm: false, + isTable: false + }, + { + label: '权限所属人员id', + field: 'ruleUserId', + sort: 'custom', + isForm: false, + isTable: false + }, + { + label: '工作流流水号', + field: 'serialNumber', + sort: 'custom', + isForm: false, + isTable: false + }, + { + label: '原因', + field: 'reason', + sort: 'custom', + isForm: false, + }, + { + label: '操作', + field: 'action', + isForm: false, + table: { + width: 150, + fixed: 'right' + } + } +])) + +// 表单校验 +export const RelegateRequestDetailRules = reactive({ + itemCode: [required], + downItemCode: [required], + businessType: [required], + available: [required], + departmentCode: [required], + concurrencyStamp: [required], +}) + +export const RelegateRequestDetail = useCrudSchemas(reactive([ + { + label: '物料代码', + field: 'itemCode', + sort: 'custom', + isSearch: true, + tableForm:{ + isInpuFocusShow: false, // 开启查询弹窗 + searchListPlaceholder: '请选择物料代码', + searchField: 'code', + searchTitle: '物料基础信息', + searchAllSchemas: Itembasic.allSchemas, + searchPage: ItembasicApi.getItembasicPage, + searchCondition: [{ + key: 'available', + value: 'TRUE', + isMainValue: false + }] + }, + form: { + componentProps: { + isSearchList: true, + searchListPlaceholder: '请选择物料代码', + searchField: 'itemCode', + searchTitle: '物料基础信息', + searchAllSchemas: Itembasic.allSchemas, + searchPage: ItembasicApi.getItembasicPage, + searchCondition: [{ + key: 'available', + value: 'TRUE', + isMainValue: false + }] + } + } + }, + { + label: '降级物料代码', + field: 'downItemCode', + sort: 'custom', + form: { + componentProps: { + isSearchList: true, + searchListPlaceholder: '请选择降级物料代码', + searchField: 'itemCode', + searchTitle: '物料基础信息', + searchAllSchemas: Itembasic.allSchemas, + searchPage: ItembasicApi.getItembasicPage, + searchCondition: [{ + key: 'available', + value: 'TRUE', + isMainValue: false + }] + } + }, + isSearch: true + }, + { + label: '计量单位', + field: 'uom', + dictType: DICT_TYPE.UOM, + dictClass: 'string', + sort: 'custom', + table: { + width: 150 + }, + tableForm: { + type: 'Select', + disabled: true + }, + form: { + componentProps: { + disabled: true + } + } + }, + { + label: '数量', + field: 'qty', + sort: 'custom', + }, + { + label: '从批次', + field: 'fromBatch', + sort: 'custom', + form: { + componentProps: { + disabled: true, + } + }, + }, + { + label: '从包装号', + field: 'fromPackingNumber', + sort: 'custom', + form: { + componentProps: { + disabled: true, + } + }, + }, + { + label: '从库位代码', + field: 'fromLocationCode', + sort: 'custom', + form: { + componentProps: { + disabled: true, + } + }, + }, + { + label: '从库区类型', + field: 'fromAreaTypes', + sort: 'custom', + isForm:false, + }, + { + label: '从库区代码', + field: 'fromAreaCodes', + sort: 'custom', + isForm:false, + }, + { + label: '从仓库代码', + field: 'fromWarehouseCode', + sort: 'custom', + isForm:false, + }, + { + label: '到包装号', + field: 'toPackingNumber', + sort: 'custom', + }, + { + label: '到批次', + field: 'toBatch', + sort: 'custom', + }, + { + label: '到库位代码', + field: 'toLocationCode', + sort: 'custom', + }, + { + label: '到仓库代码', + field: 'toWarehouseCode', + sort: 'custom', + isForm:false, + }, + { + label: '到库区类型', + field: 'toAreaTypes', + sort: 'custom', + isForm:false, + }, + { + label: '到库区代码', + field: 'toAreaCodes', + sort: 'custom', + isForm:false, + }, + { + label: '是否可用', + field: 'available', + sort: 'custom', + isForm:false, + }, + { + label: '备注', + field: 'remark', + sort: 'custom', + }, + { + label: '部门', + field: 'departmentCode', + sort: 'custom', + isForm:false, + }, + { + label: '地点ID', + field: 'siteId', + sort: 'custom', + form: { + component: 'InputNumber', + value: 0 + }, + isForm:false, + }, + { + label: '扩展属性', + field: 'extraProperties', + sort: 'custom', + isForm:false, + }, + { + label: '创建时间', + field: 'createTime', + sort: 'custom', + formatter: dateFormatter, + 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: '状态', + field: 'status', + dictType: DICT_TYPE.REQUEST_STATUS, + dictClass: 'string', + isSearch: true, + isForm: false, + isTable: true, + sort: 'custom', + table: { + width: 150 + }, + }, + { + label: '并发乐观锁', + field: 'concurrencyStamp', + sort: 'custom', + isForm:false, + form: { + component: 'InputNumber', + value: 0 + }, + }, + { + label: '工作流流水号', + field: 'serialNumber', + isForm:false, + sort: 'custom', + }, + { + label: '权限所属人员id', + field: 'ruleUserId', + sort: 'custom', + isForm:false, + form: { + component: 'InputNumber', + value: 0 + }, + }, + { + label: '操作', + field: 'action', + isForm: false, + table: { + width: 150, + fixed: 'right' + } + } +])) diff --git a/src/views/wms/basicDataManage/itemManage/relegateRequest/index.vue b/src/views/wms/basicDataManage/itemManage/relegateRequestDetail/index.vue similarity index 98% rename from src/views/wms/basicDataManage/itemManage/relegateRequest/index.vue rename to src/views/wms/basicDataManage/itemManage/relegateRequestDetail/index.vue index e60621efe..ca983bb05 100644 --- a/src/views/wms/basicDataManage/itemManage/relegateRequest/index.vue +++ b/src/views/wms/basicDataManage/itemManage/relegateRequestDetail/index.vue @@ -60,7 +60,7 @@