Browse Source

备料计划

master
陈薪名 1 year ago
parent
commit
4975f17ba5
  1. 47
      src/views/wms/issueManage/preparetoissueplan/preparetoissueMain/index.vue
  2. 216
      src/views/wms/issueManage/preparetoissueplan/preparetoissueMain/preparetoissueMain.data.ts

47
src/views/wms/issueManage/preparetoissueplan/preparetoissueMain/index.vue

@ -44,7 +44,6 @@
@success="getList" @success="getList"
:rules="PreparetoissueMainRules" :rules="PreparetoissueMainRules"
:formAllSchemas="PreparetoissueMain.allSchemas" :formAllSchemas="PreparetoissueMain.allSchemas"
:searchTableParams="searchTableParams"
:tableAllSchemas="PreparetoissueDetail.allSchemas" :tableAllSchemas="PreparetoissueDetail.allSchemas"
:tableFormRules="PreparetoissueDetailRules" :tableFormRules="PreparetoissueDetailRules"
:tableData="tableData" :tableData="tableData"
@ -64,12 +63,11 @@
:allSchemas="PreparetoissueMain.allSchemas" :allSchemas="PreparetoissueMain.allSchemas"
:detailAllSchemas="PreparetoissueDetail.allSchemas" :detailAllSchemas="PreparetoissueDetail.allSchemas"
:detailAllSchemasRules="PreparetoissueDetailRules" :detailAllSchemasRules="PreparetoissueDetailRules"
:searchTableParams="searchTableParams"
:apiCreate="PreparetoissueDetailApi.createPreparetoissueDetail" :apiCreate="PreparetoissueDetailApi.createPreparetoissueDetail"
:apiUpdate="PreparetoissueDetailApi.updatePreparetoissueDetail" :apiUpdate="PreparetoissueDetailApi.updatePreparetoissueDetail"
:apiPage="PreparetoissueDetailApi.getPreparetoissueDetailPage" :apiPage="PreparetoissueDetailApi.getPreparetoissueDetailPage"
:apiDelete="PreparetoissueDetailApi.deletePreparetoissueDetail" :apiDelete="PreparetoissueDetailApi.deletePreparetoissueDetail"
:Echo="Echo" @searchTableSuccessDetail="searchTableSuccessDetail"
/> />
<!-- 导入 --> <!-- 导入 -->
@ -99,44 +97,35 @@ const updataTableColumns = (val) => {
tableColumns.value = val tableColumns.value = val
} }
//
const searchTableParams = ref([
//{
// formField: 'productItemCode',
// searchTableTitle: '',
// searchTableAllSchemas: Itembasic.allSchemas,
// searchTablePage: ItembasicApi.getItembasicPage
//}
])
// //
const searchTableSuccess = (formField, searchField, val, formRef, type, row ) => { const searchTableSuccess = (formField, searchField, val, formRef, type, row ) => {
nextTick(() => { nextTick(() => {
if (type == 'tableForm') { if (type == 'tableForm') {
// //
//row[formField] = val[0][searchField] row[formField] = val[0][searchField]
//row['poLine'] = val[0]['poLine'] row['toLocationCode'] = val[0]['rawLocationCode']
//row['batch'] = val[0]['toBatch']
//row['altBatch'] = val[0]['altBatch']
//row['itemCode'] = val[0]['itemCode']
//row['itemName'] = val[0]['itemName']
//row['itemDesc1'] = val[0]['itemDesc1']
//row['itemDesc2'] = val[0]['itemDesc2']
//row['projectCode'] = val[0]['projectCode']
//row['qty'] = val[0]['qty']
//row['uom'] = val[0]['uom']
} else { } else {
const setV = {} const setV = {}
setV[formField] = val[0][searchField] setV[formField] = val[0][searchField]
//setV['ppNumber'] = val[0]['ppNumber'] if (formField == 'productionPlanNumber') {
//setV['supplierCode'] = val[0]['supplierCode'] setV['workshop'] = val[0]['workshop']
setV['prodLine'] = val[0]['production_line']
setV['shift'] = val[0]['shift']
setV['team'] = val[0]['team']
}
formRef.setValues(setV) formRef.setValues(setV)
} }
}) })
} }
// //
// const Echo = ['ppNumber','poLine', 'batch', 'altBatch', 'itemCode', 'itemName', 'itemDesc1', 'itemDesc2', 'projectCode', 'qty', 'uom'] const searchTableSuccessDetail = (formField, searchField, val, formRef ) => {
const Echo = [] nextTick(() => {
const setV = {}
setV[formField] = val[0][searchField]
setV['toLocationCode'] = val[0]['rawLocationCode']
formRef.setValues(setV)
})
}
const { tableObject, tableMethods } = useTable({ const { tableObject, tableMethods } = useTable({
getListApi: PreparetoissueMainApi.getPreparetoissueMainPage // getListApi: PreparetoissueMainApi.getPreparetoissueMainPage //

216
src/views/wms/issueManage/preparetoissueplan/preparetoissueMain/preparetoissueMain.data.ts

@ -1,5 +1,33 @@
import type { CrudSchema } from '@/hooks/web/useCrudSchemas' import type { CrudSchema } from '@/hooks/web/useCrudSchemas'
import { dateFormatter } from '@/utils/formatTime' import { dateFormatter } from '@/utils/formatTime'
import * as ProductionMainApi from '@/api/wms/productionMain'
import { ProductionMain } from '@/views/wms/productionManage/productionplan/productionMain/productionMain.data'
import * as WorkshopApi from '@/api/wms/workshop'
import { Workshop } from '@/views/wms/basicDataManage/factoryModeling/workshop/workshop.data'
import * as ProductionlineApi from '@/api/wms/productionline'
import { Productionline } from '@/views/wms/basicDataManage/factoryModeling/productionline/productionline.data'
import * as ShiftApi from '@/api/wms/shift'
import { Shift } from '@/views/wms/basicDataManage/orderManage/shift/shift.data'
import * as TeamApi from '@/api/wms/team'
import { Team } from '@/views/wms/basicDataManage/orderManage/team/team.data'
import * as ProductionlineitemApi from '@/api/wms/productionlineitem'
import { Productionlineitem } from '@/views/wms/basicDataManage/itemManage/productionlineitem/productionlineitem.data'
import * as LocationApi from '@/api/wms/location'
import { Location } from '@/views/wms/basicDataManage/factoryModeling/location/location.data'
import * as WorkStationApi from '@/api/wms/workstation'
import { Workstation } from '@/views/wms/basicDataManage/factoryModeling/workstation/workstation.data'
const { t } = useI18n() // 国际化 const { t } = useI18n() // 国际化
/** /**
@ -13,6 +41,17 @@ export const PreparetoissueMain = useCrudSchemas(reactive<CrudSchema[]>([
table: { table: {
width: 150 width: 150
}, },
form: {
labelMessage: '同时影响车间 生产线 班组 班次',
componentProps: {
isSearchList: true, // 开启查询弹窗
searchListPlaceholder: '请选择生产计划', // 输入框占位文本
searchField: 'number', // 查询弹窗赋值字段
searchTitle: '生产计划信息', // 查询弹窗标题
searchAllSchemas: ProductionMain.allSchemas, // 查询弹窗所需类
searchPage: ProductionMainApi.getProductionMainPage // 查询弹窗所需分页方法
}
}
}, },
{ {
label: '车间', label: '车间',
@ -21,6 +60,17 @@ export const PreparetoissueMain = useCrudSchemas(reactive<CrudSchema[]>([
table: { table: {
width: 150 width: 150
}, },
form: {
// labelMessage: '信息提示说明!!!',
componentProps: {
isSearchList: true, // 开启查询弹窗
searchListPlaceholder: '请选择车间代码', // 输入框占位文本
searchField: 'code', // 查询弹窗赋值字段
searchTitle: '车间信息', // 查询弹窗标题
searchAllSchemas: Workshop.allSchemas, // 查询弹窗所需类
searchPage: WorkshopApi.getWorkshopPage // 查询弹窗所需分页方法
}
}
}, },
{ {
label: '生产线', label: '生产线',
@ -29,6 +79,17 @@ export const PreparetoissueMain = useCrudSchemas(reactive<CrudSchema[]>([
table: { table: {
width: 150 width: 150
}, },
form: {
labelMessage: '该生产线会影响明细中的物品代码,需在基础管理生产线物品关系中维护',
componentProps: {
isSearchList: true, // 开启查询弹窗
searchListPlaceholder: '请选择生产线', // 输入框占位文本
searchField: 'code', // 查询弹窗赋值字段
searchTitle: '生产线信息', // 查询弹窗标题
searchAllSchemas: Productionline.allSchemas, // 查询弹窗所需类
searchPage: ProductionlineApi.getProductionlinePage // 查询弹窗所需分页方法
}
}
}, },
{ {
label: '班次', label: '班次',
@ -37,6 +98,17 @@ export const PreparetoissueMain = useCrudSchemas(reactive<CrudSchema[]>([
table: { table: {
width: 150 width: 150
}, },
form: {
// labelMessage: '信息提示说明!!!',
componentProps: {
isSearchList: true, // 开启查询弹窗
searchListPlaceholder: '请选班次', // 输入框占位文本
searchField: 'code', // 查询弹窗赋值字段
searchTitle: '班次信息', // 查询弹窗标题
searchAllSchemas: Shift.allSchemas, // 查询弹窗所需类
searchPage: ShiftApi.getShiftPage // 查询弹窗所需分页方法
}
}
}, },
{ {
label: '班组', label: '班组',
@ -45,6 +117,17 @@ export const PreparetoissueMain = useCrudSchemas(reactive<CrudSchema[]>([
table: { table: {
width: 150 width: 150
}, },
form: {
// labelMessage: '信息提示说明!!!',
componentProps: {
isSearchList: true, // 开启查询弹窗
searchListPlaceholder: '请选班组', // 输入框占位文本
searchField: 'code', // 查询弹窗赋值字段
searchTitle: '班组信息', // 查询弹窗标题
searchAllSchemas: Team.allSchemas, // 查询弹窗所需类
searchPage: TeamApi.getTeamPage // 查询弹窗所需分页方法
}
}
}, },
{ {
label: '计划日期', label: '计划日期',
@ -60,6 +143,7 @@ export const PreparetoissueMain = useCrudSchemas(reactive<CrudSchema[]>([
form: { form: {
component: 'DatePicker', component: 'DatePicker',
componentProps: { componentProps: {
style: {width:'100%'},
type: 'datetime', type: 'datetime',
dateFormat: 'YYYY-MM-DD HH:mm:ss', dateFormat: 'YYYY-MM-DD HH:mm:ss',
valueFormat: 'x', valueFormat: 'x',
@ -89,7 +173,8 @@ export const PreparetoissueMain = useCrudSchemas(reactive<CrudSchema[]>([
componentProps: { componentProps: {
disabled: true disabled: true
} }
} },
isForm: false,
}, },
{ {
label: '开始时间', label: '开始时间',
@ -105,6 +190,7 @@ export const PreparetoissueMain = useCrudSchemas(reactive<CrudSchema[]>([
form: { form: {
component: 'DatePicker', component: 'DatePicker',
componentProps: { componentProps: {
style: {width:'100%'},
type: 'datetime', type: 'datetime',
dateFormat: 'YYYY-MM-DD HH:mm:ss', dateFormat: 'YYYY-MM-DD HH:mm:ss',
valueFormat: 'x', valueFormat: 'x',
@ -125,6 +211,7 @@ export const PreparetoissueMain = useCrudSchemas(reactive<CrudSchema[]>([
form: { form: {
component: 'DatePicker', component: 'DatePicker',
componentProps: { componentProps: {
style: {width:'100%'},
type: 'datetime', type: 'datetime',
dateFormat: 'YYYY-MM-DD HH:mm:ss', dateFormat: 'YYYY-MM-DD HH:mm:ss',
valueFormat: 'x', valueFormat: 'x',
@ -154,6 +241,7 @@ export const PreparetoissueMain = useCrudSchemas(reactive<CrudSchema[]>([
form: { form: {
component: 'DatePicker', component: 'DatePicker',
componentProps: { componentProps: {
style: {width:'100%'},
type: 'datetime', type: 'datetime',
dateFormat: 'YYYY-MM-DD HH:mm:ss', dateFormat: 'YYYY-MM-DD HH:mm:ss',
valueFormat: 'x', valueFormat: 'x',
@ -184,6 +272,7 @@ export const PreparetoissueMain = useCrudSchemas(reactive<CrudSchema[]>([
form: { form: {
component: 'DatePicker', component: 'DatePicker',
componentProps: { componentProps: {
style: {width:'100%'},
type: 'datetime', type: 'datetime',
dateFormat: 'YYYY-MM-DD HH:mm:ss', dateFormat: 'YYYY-MM-DD HH:mm:ss',
valueFormat: 'x', valueFormat: 'x',
@ -281,6 +370,64 @@ export const PreparetoissueMainRules = reactive({
* @returns {Array} * @returns {Array}
*/ */
export const PreparetoissueDetail = useCrudSchemas(reactive<CrudSchema[]>([ export const PreparetoissueDetail = useCrudSchemas(reactive<CrudSchema[]>([
{
label: '物品代码',
field: 'itemCode',
sort: 'custom',
table: {
width: 150
},
form: {
// labelMessage: '信息提示说明!!!',
componentProps: {
isSearchList: true, // 开启查询弹窗
searchListPlaceholder: '请选择物品代码', // 输入框占位文本
searchField: 'itemCode', // 查询弹窗赋值字段
searchTitle: '生产线物品关系信息', // 查询弹窗标题
searchAllSchemas: Productionlineitem.allSchemas, // 查询弹窗所需类
searchPage: ProductionlineitemApi.getProductionlineitemPage // 查询弹窗所需分页方法
}
},
tableForm:{
isInpuFocusShow: true,
searchListPlaceholder: '请选择物品代码', // 输入框占位文本
searchField: 'itemCode', // 查询弹窗赋值字段
searchTitle: '生产线物品关系信息', // 查询弹窗标题
searchAllSchemas: Productionlineitem.allSchemas, // 查询弹窗所需类
searchPage: ProductionlineitemApi.getProductionlineitemPage // 查询弹窗所需分页方法
},
},
{
label: '计划数量',
field: 'planQty',
sort: 'custom',
table: {
width: 150
},
form: {
component: 'InputNumber',
},
tableForm:{
type: 'InputNumber',
min: 1,
precision: 6
}
},
{
label: '计量单位',
field: 'uom',
dictType: DICT_TYPE.UOM,
dictClass: 'string',
isSearch: true,
isTable: true,
sort: 'custom',
table: {
width: 150
},
tableForm:{
type: 'Select'
},
},
{ {
label: '目标库位', label: '目标库位',
field: 'toLocationCode', field: 'toLocationCode',
@ -288,6 +435,15 @@ export const PreparetoissueDetail = useCrudSchemas(reactive<CrudSchema[]>([
table: { table: {
width: 150 width: 150
}, },
form: {
// labelMessage: '信息提示说明!!!',
componentProps: {
disabled: true
}
},
tableForm:{
disabled: true
},
}, },
{ {
label: '工位', label: '工位',
@ -296,6 +452,25 @@ export const PreparetoissueDetail = useCrudSchemas(reactive<CrudSchema[]>([
table: { table: {
width: 150 width: 150
}, },
form: {
// labelMessage: '信息提示说明!!!',
componentProps: {
isSearchList: true, // 开启查询弹窗
searchListPlaceholder: '请选择工位', // 输入框占位文本
searchField: 'code', // 查询弹窗赋值字段
searchTitle: '工位信息', // 查询弹窗标题
searchAllSchemas: Workstation.allSchemas, // 查询弹窗所需类
searchPage: WorkStationApi.getWorkstationPage // 查询弹窗所需分页方法
}
},
tableForm:{
isInpuFocusShow: true,
searchListPlaceholder: '请选择工位', // 输入框占位文本
searchField: 'code', // 查询弹窗赋值字段
searchTitle: '工位信息', // 查询弹窗标题
searchAllSchemas: Workstation.allSchemas, // 查询弹窗所需类
searchPage: WorkStationApi.getWorkstationPage // 查询弹窗所需分页方法
},
}, },
{ {
label: '截止时间', label: '截止时间',
@ -311,6 +486,7 @@ export const PreparetoissueDetail = useCrudSchemas(reactive<CrudSchema[]>([
form: { form: {
component: 'DatePicker', component: 'DatePicker',
componentProps: { componentProps: {
style: {width:'100%'},
type: 'datetime', type: 'datetime',
dateFormat: 'YYYY-MM-DD HH:mm:ss', dateFormat: 'YYYY-MM-DD HH:mm:ss',
valueFormat: 'x', valueFormat: 'x',
@ -331,14 +507,6 @@ export const PreparetoissueDetail = useCrudSchemas(reactive<CrudSchema[]>([
}, },
isTableForm: false, isTableForm: false,
}, },
{
label: '物品代码',
field: 'itemCode',
sort: 'custom',
table: {
width: 150
},
},
{ {
label: '备注', label: '备注',
field: 'remark', field: 'remark',
@ -361,6 +529,7 @@ export const PreparetoissueDetail = useCrudSchemas(reactive<CrudSchema[]>([
form: { form: {
component: 'DatePicker', component: 'DatePicker',
componentProps: { componentProps: {
style: {width:'100%'},
type: 'datetime', type: 'datetime',
dateFormat: 'YYYY-MM-DD HH:mm:ss', dateFormat: 'YYYY-MM-DD HH:mm:ss',
valueFormat: 'x', valueFormat: 'x',
@ -379,29 +548,6 @@ export const PreparetoissueDetail = useCrudSchemas(reactive<CrudSchema[]>([
isTableForm: false, isTableForm: false,
isForm: false, isForm: false,
}, },
{
label: '计划数量',
field: 'planQty',
sort: 'custom',
table: {
width: 150
},
form: {
component: 'InputNumber',
}
},
{
label: '计量单位',
field: 'uom',
dictType: DICT_TYPE.UOM,
dictClass: 'string',
isSearch: true,
isTable: true,
sort: 'custom',
table: {
width: 150
},
},
{ {
label: '最后更新者', label: '最后更新者',
field: 'updater', field: 'updater',
@ -426,6 +572,7 @@ export const PreparetoissueDetail = useCrudSchemas(reactive<CrudSchema[]>([
form: { form: {
component: 'DatePicker', component: 'DatePicker',
componentProps: { componentProps: {
style: {width:'100%'},
type: 'datetime', type: 'datetime',
dateFormat: 'YYYY-MM-DD HH:mm:ss', dateFormat: 'YYYY-MM-DD HH:mm:ss',
valueFormat: 'x', valueFormat: 'x',
@ -445,6 +592,9 @@ export const PreparetoissueDetail = useCrudSchemas(reactive<CrudSchema[]>([
table: { table: {
width: 150 width: 150
}, },
tableForm:{
type: 'Select',
},
form: { form: {
component: 'Switch', component: 'Switch',
value: 'TRUE', value: 'TRUE',
@ -470,7 +620,7 @@ export const PreparetoissueDetail = useCrudSchemas(reactive<CrudSchema[]>([
//表单校验 //表单校验
export const PreparetoissueDetailRules = reactive({ export const PreparetoissueDetailRules = reactive({
available: [ available: [
{ required: true, message: '请选择是否可用', trigger: 'change' } { required: true, message: '请选择是否可用', trigger: 'blur' }
], ],
uom: [ uom: [
{ required: true, message: '请选择计量单位', trigger: 'change' } { required: true, message: '请选择计量单位', trigger: 'change' }

Loading…
Cancel
Save