diff --git a/Web/src/api/common/index.js b/Web/src/api/common/index.js index 010fe15..2859ee6 100644 --- a/Web/src/api/common/index.js +++ b/Web/src/api/common/index.js @@ -45,4 +45,22 @@ export function getCommonImportTemplate(urlName) { method: 'get', responseType:'blob', }) +} + +// 手动传出(单) +export function getCommonCustominvoke(urlName,params) { + return request({ + url: `/api/${urlName}/custominvoke`, + method: 'get', + params:params + }) +} + +// 获取明细列表-如:任务列表-查看详情 +export function getCommonDeatailPaged(urlName,data) { + return request({ + url: `/api/${urlName}/getdetail`, + method: 'post', + data + }) } \ No newline at end of file diff --git a/Web/src/components/apiEditPop/index.vue b/Web/src/components/apiEditPop/index.vue index 4c6fc3b..b6039ad 100644 --- a/Web/src/components/apiEditPop/index.vue +++ b/Web/src/components/apiEditPop/index.vue @@ -54,7 +54,7 @@ /> { state.currentPage = val.page + state.pageSize = val.pageSize }) // size-change - function pageSizeChange(page){ - state.currentPage = page - emits('pageSizeChange',page) + function pageSizeChange(pageSize){ + state.pageSize = pageSize + emits('pageSizeChange',pageSize) } // current-change diff --git a/Web/src/components/elTable/index.vue b/Web/src/components/elTable/index.vue index fcb12fa..be61bb0 100644 --- a/Web/src/components/elTable/index.vue +++ b/Web/src/components/elTable/index.vue @@ -53,6 +53,8 @@ > {{ formatTableTagFilter('label',scope.row,item) }} + + {{ formatTableTagFilter('label',scope.row,item) }} {{ scope.row[item.prop] }} diff --git a/Web/src/components/tablePage/index.vue b/Web/src/components/tablePage/index.vue index 45fd6a2..52e9e0a 100644 --- a/Web/src/components/tablePage/index.vue +++ b/Web/src/components/tablePage/index.vue @@ -107,7 +107,13 @@ import store from '@/stores' import apiTableColumns from '@/utils/common/apiTableColumns' import { reactive, ref, onMounted,computed } from 'vue' - import { getCommonPaged,postCommonExport,putCommonUpdate } from '@/api/common/index' + import { + getCommonPaged, + getCommonDeatailPaged, + postCommonExport, + putCommonUpdate, + getCommonCustominvoke + } from '@/api/common/index' import { ElMessageBox, ElMessage,ElTable, ElTableColumn } from 'element-plus' import elTable from '@/components/elTable/index.vue' import elPager from '@/components/elPager/index.vue' @@ -116,6 +122,7 @@ import importPop from '@/components/importPop/index.vue' import apiEditPop from '@/components/apiEditPop/index.vue' import { formatDate } from '@/utils/formatTime' + import apiServeNames from '@/utils/common/apiServeNames' import { useRoute } from 'vue-router' const route = useRoute() @@ -150,6 +157,11 @@ type: String, default: null }, + // api类型 detailApi:走getdetail接口,不传或者pageApi:走getdatapaged接口 + apiType: { + type: String, + default: null + }, // 隐藏表头搜索 hideSearch:{ type: Boolean, @@ -286,10 +298,20 @@ apiEditPopRef.value.validate((valid) => { if(valid){ // 修改人信息处理 - formData.remark= `修改信息:${userInfo.realName} ${formatDate(new Date(), "YYYY-mm-dd HH:MM:SS")}` - if(formData.hasOwnProperty('updateByUser')){formData.updateByUser == userInfo.realName} - if(formData.hasOwnProperty('updateUser')){formData.updateUser == userInfo.realName} - if(formData.hasOwnProperty('updateTime')){formData.updateTime == formatDate(new Date(), "YYYY-mm-dd HH:MM:SS")} + if( + (formData.hasOwnProperty('updateByUser') && formData.hasOwnProperty('updateTime')) + || (formData.hasOwnProperty('updateUser') && formData.hasOwnProperty('updateTime')) + ){ + if(formData.hasOwnProperty('updateByUser')){formData.updateByUser = userInfo.realName} + if(formData.hasOwnProperty('updateUser')){formData.updateUser = userInfo.realName} + if(formData.hasOwnProperty('updateTime')){formData.updateTime = formatDate(new Date(), "YYYY-mm-dd HH:MM:SS")} + }else{ + // 特殊不处理页面 + let _notChange=['taskconifgure'] + if(_notChange.indexOf(props.apiName) < 0){ + formData.remark= `修改信息:${userInfo.realName} ${formatDate(new Date(), "YYYY-mm-dd HH:MM:SS")}` + } + } apiEditPopRef.value.changeLoading(true) putCommonUpdate(props.apiName,formData) .then(res=>{ @@ -305,42 +327,46 @@ // 格式化页面传参 function getPageParams(){ let _filters = [] - for(let i in props.searchFilter){ - let _item = props.searchOptions.filter(item=>item.prop == i) - let _type = (_item && _item.length > 0) ? _item[0].type : null - if(props.searchFilter[i] || props.searchFilter[i] == 0){ - // 时间区域格式 - if(_type == 'datetimerange'){ - _filters.push( - { - logic: "And", - column: i, - action: '>=', - value: props.searchFilter[i][0] + if(props.hideSearch){ + _filters = props.searchFilter + }else{ + for(let i in props.searchFilter){ + let _item = props.searchOptions.filter(item=>item.prop == i) + let _type = (_item && _item.length > 0) ? _item[0].type : null + if(props.searchFilter[i] || props.searchFilter[i] == 0){ + // 时间区域格式 + if(_type == 'datetimerange'){ + _filters.push( + { + logic: "And", + column: i, + action: '>=', + value: props.searchFilter[i][0] + } + ) + _filters.push( + { + logic: "And", + column: i, + action: '<=', + value: props.searchFilter[i][1] + } + ) + }else{ + let _action = 'like' + let _EqualTypes = ['tagFilter','filter','number','select']//等于情况的类型 + if(_EqualTypes.indexOf(_type) >= 0){ + _action = '==' } - ) - _filters.push( - { - logic: "And", - column: i, - action: '<=', - value: props.searchFilter[i][1] - } - ) - }else{ - let _action = 'like' - let _EqualTypes = ['tagFilter','number','select']//等于情况的类型 - if(_EqualTypes.indexOf(_type) >= 0){ - _action = '==' + _filters.push( + { + logic: "And", + column: i, + action: _action, + value: props.searchFilter[i] + } + ) } - _filters.push( - { - logic: "And", - column: i, - action: _action, - value: props.searchFilter[i] - } - ) } } } @@ -358,15 +384,27 @@ // 获取页面数据 function getTableData(page) { - state.loading = true - if(!page)page = state.pager.page - if(page)state.pager.page = page - getCommonPaged(props.apiName,getPageParams()) - .then((resp) => { - state.tableData = resp.data.data - state.pager.total = resp.data.totalCount - }) - .finally(() => (state.loading = false)) + if(props.apiType == 'detailApi'){ + state.loading = true + if(!page)page = state.pager.page + if(page)state.pager.page = page + getCommonDeatailPaged(props.apiName,getPageParams()) + .then((resp) => { + state.tableData = resp.data.data + state.pager.total = resp.data.totalCount + }) + .finally(() => (state.loading = false)) + }else{ + state.loading = true + if(!page)page = state.pager.page + if(page)state.pager.page = page + getCommonPaged(props.apiName,getPageParams()) + .then((resp) => { + state.tableData = resp.data.data + state.pager.total = resp.data.totalCount + }) + .finally(() => (state.loading = false)) + } } const importPopRef = ref() @@ -391,18 +429,24 @@ }) .finally(() => (state.loading = false)) } - // todo:手动传出(直接调接口) + // 手动传出(直接调接口) else if (btn == 'custominvoke'){ ElMessageBox.confirm('是否确定手动传出?', '提示', { confirmButtonText: '确定', cancelButtonText: '取消', type: 'warning' }).then(() => { - // state.loading = true - // deleteMenu({ ids:[id] }).then(() => { - - // }) - // .finally(() => (state.loading = false)) + state.loading = true + let _data = { + taskName:apiServeNames[props.apiName].taskName, + client:'Chery' + } + getCommonCustominvoke(props.apiName,_data) + .then((res) => { + ElMessage.success('操作成功!') + getTableData(1)//同步数据查询 + }) + .finally(() => (state.loading = false)) }) } // todo:手动传出(多选) @@ -446,8 +490,9 @@ } // size-change - function pageSizeChange(page){ - getTableData(page) + function pageSizeChange(pageSize){ + state.pager.pageSize = pageSize + getTableData(1) } // current-change diff --git a/Web/src/utils/common/apiServeNames.js b/Web/src/utils/common/apiServeNames.js new file mode 100644 index 0000000..47e2b8c --- /dev/null +++ b/Web/src/utils/common/apiServeNames.js @@ -0,0 +1,124 @@ +const apiServeNames = { + // M+6月物料需求计划风险确认 + cherysupplierconmmrp:{ + tableName:'SUPPLIER_CON_MMRP', + taskName:'M+6月物料需求计划风险确认', + }, + + // 日物料需求计划风险确认 + cherysuppliercondate:{ + tableName:'SUPPLIER_CON_DATE', + taskName:'日物料需求计划风险确认' + }, + + // 采购订单风险确认 + cherysupplierconpo:{ + tableName:'SUPPLIER_CON_PO', + taskName:'采购订单风险确认' + }, + + // 来料检验数据 + supplierpromaterialstock:{ + tableName:'SUPPLIER_PRO_MATERIAL_STOCK', + taskName:'来料检验数据' + }, + + // 排产数据 + cherysupplierproscheduling:{ + tableName:'SUPPLIER_PRO_SCHEDULING', + taskName:'排产数据' + }, + + // 供应商基础信息 + cherysupplierinfo:{ + tableName:'SUPPLIER_INFO', + taskName:'供应商基础信息' + }, + + // 人员资质信息 + cherysupplieremployee:{ + tableName:'SUPPLIER_EMPLOYEE', + taskName:'人员资质信息' + }, + + // BOM主数据 + cherysupplierbom:{ + tableName:'SUPPLIER_BOM', + taskName:'BOM主数据' + }, + + // 过程控制项质量数据 + cherysupplierprocps:{ + tableName:'SUPPLIER_PRO_CPS', + taskName:'过程控制项质量数据' + }, + + // 生产过程数据 + cherysupplierprodata:{ + tableName:'SUPPLIER_PRO_DATA', + taskName:'生产过程数据' + }, + + // 产品一次合格率 + cherysupplierprofirstpassyield:{ + tableName:'SUPPLIER_PRO_FIRST_PASSYIELD', + taskName:'产品一次合格率' + }, + + // 工位一次合格率 + cherysupplierprostationfirstpassyield:{ + tableName:'SUPPLIER_PRO_STATION_FIRST_PASSYIELD', + taskName:'工位一次合格率' + }, + + // 缺陷业务数据 + cherysupplierproflaw:{ + tableName:'SUPPLIER_PRO_FLAW', + taskName:'缺陷业务数据' + }, + + // 物料主数据 + cherysupplierpromaterialdata:{ + tableName:'SUPPLIER_PRO_MATERIAL_DATA', + taskName:'物料主数据' + }, + + // 附件类数据 + cherysupplierproattachmentdata:{ + tableName:'SUPPLIER_PRO_ATTACHMENT_DATA', + taskName:'附件类数据' + }, + + // 工艺装备 + cherysupplierproprocessequipment:{ + tableName:'SUPPLIER_PRO_PROCESS_EQUIPMENT', + taskName:'工艺装备' + }, + + // 工艺 + cherysupplierproprocess:{ + tableName:'SUPPLIER_PRO_PROCESS', + taskName:'工艺' + }, + + /*无页面,供任务明细页面使用 */ + // 环境业务数据 + cherysupplierproenvironment:{ + tableName:'SUPPLIER_PRO_ENVIRONMENT', + taskName:'环境业务数据' + }, + + // 设备OEE达成率 + cherysupplierprooeeachievementrate:{ + tableName:'SUPPLIER_PRO_OEE_ACHIEVEMENT_RATE', + taskName:'设备OEE达成率' + }, + + // OEE时间明细 + cherysupplierprooeetimedetails:{ + tableName:'SUPPLIER_PRO_OEE_TIME_DETAILS', + taskName:'OEE时间明细' + }, +} + +export default apiServeNames diff --git a/Web/src/utils/common/apiTableColumns.js b/Web/src/utils/common/apiTableColumns.js index 2c3c76d..df9c1e8 100644 --- a/Web/src/utils/common/apiTableColumns.js +++ b/Web/src/utils/common/apiTableColumns.js @@ -3,18 +3,18 @@ import EnumList from '@/utils/common/enumList' const apiTableColumns = { // 接口设置表 taskconifgure:[ + {prop:'tableName',title:'表名',align:'left',width:160}, + {prop:'taskName',title:'任务名称',align:'left',width:160}, {prop:'api',title:'api',align:'left',width:200}, + {prop:'url',title:'url',align:'left',width:300}, {prop:'corn',title:'corn'}, - {prop:'module',title:'module'}, - {prop:'client',title:'client'}, - {prop:'tableName',title:'tableName',align:'left',width:160}, - {prop:'taskName',title:'taskName',align:'left',width:160}, - {prop:'url',title:'url',align:'left',width:200}, - {prop:'writeState',title:'writeState',type:'tagFilter',options:EnumList.whether}, - {prop:'readState',title:'readState',type:'tagFilter',options:EnumList.whether}, - {prop:'isAuto',title:'isAuto',type:'tagFilter',options:EnumList.whether}, - {prop:'creationTime',title:'创建时间',width:180}, + {prop:'writeState',title:'writeState',type:'tagFilter',options:EnumList.whetherBoolean}, + {prop:'readState',title:'readState',type:'tagFilter',options:EnumList.whetherBoolean}, + {prop:'isAuto',title:'isAuto',type:'tagFilter',options:EnumList.whetherBoolean}, {prop:'remark',title:'remark',align:'left',width:300}, + {prop:'creationTime',title:'创建时间',width:180,type:'datetime',noEdit:true}, + {prop:'module',title:'module'}, + {prop:'client',title:'客户'}, ], // 任务列表 @@ -22,20 +22,20 @@ const apiTableColumns = { // {prop:'writeState',title:'writeState'}, // {prop:'readState',title:'readState'}, // {prop:'taskId',title:'taskId'}, - {prop:'tableName',title:'表名',align:'left',width:240}, - {prop:'taskName',title:'任务名称',align:'left',width:160}, - {prop:'dataCount',title:'同步总数量'}, + {prop:'tableName',title:'表名',align:'left',width:240,disabled:true}, + {prop:'taskName',title:'任务名称',align:'left',width:160,disabled:true}, + {prop:'dataCount',title:'同步总数量',type:'number'}, {prop:'subscriber',title:'客户名'}, {prop:'failedCount',title:'失败次数',type:'number'}, {prop:'failedInfo',title:'失败信息'}, {prop:'domain',title:'域名'}, {prop:'site',title:'站点'}, - {prop:'syncedPageCount',title:'更新完成时间',width:150}, + {prop:'syncedPageCount',title:'更新完成次数',type:'number',width:160}, {prop:'remark',title:'备注',align:'left',width:300}, - {prop:'createUser',title:'创建人'}, - {prop:'creationTime',title:'创建时间',width:180}, - {prop:'updateUser',title:'修改人'}, - {prop:'updateTime',title:'修改时间',width:180}, + {prop:'createUser',title:'创建人',noEdit:true}, + {prop:'creationTime',title:'创建时间',width:180,noEdit:true}, + {prop:'updateUser',title:'修改人',noEdit:true}, + {prop:'updateTime',title:'修改时间',width:180,noEdit:true}, ], /*计划物流 */ @@ -48,7 +48,6 @@ const apiTableColumns = { {prop:'assembly',title:'动力总成'}, {prop:'pattern',title:'版型'}, {prop:'omterior',title:'内饰'}, - {prop:'materialCode',title:'物料号'}, {prop:'startMonth',title:'起始月份'}, {prop:'quantity1',title:'数量1'}, {prop:'quantity2',title:'数量2'}, @@ -92,15 +91,15 @@ const apiTableColumns = { {prop:'isDelete',title:'是否删除',type:'tagFilter',options:EnumList.whether}, {prop:'version',title:'版本号'}, ], - // M+M+6月物料需求计划风险确认 + // M+6月物料需求计划风险确认 cherysupplierconmmrp:[ {prop:'supplierCode',title:'供应商代码'}, {prop:'releaseEdition',title:'需求发布版次',width:150}, {prop:'materialCode',title:'零件号'}, {prop:'plantId',title:'工厂代码'}, - {prop:'feedbackResults',title:'反馈结果',type:'tagFilter',options:EnumList.whether}, + {prop:'feedbackResults',title:'反馈结果',type:'filter',options:EnumList.feedbackResults}, // todo:当反馈结果=1时,此字段必输 - {prop:'ventureType',title:'风险类型',type:'tagFilter',options:EnumList.whether}, + {prop:'ventureType',title:'风险类型',type:'filter',options:EnumList.ventureType}, // todo:当反馈结果=1时,此字段必输 {prop:'ventureSpecific',title:'具体风险'}, {prop:'measures',title:'应对措施'}, @@ -118,6 +117,53 @@ const apiTableColumns = { {prop:'quantityMeet11',title:'满足数量11',type:'number'}, {prop:'quantityMeet12',title:'满足数量12',type:'number'}, ], + // 日物料需求计划 + cherysuppliermrpdata:[ + {prop:'releaseEdition',title:'需求发布版次',width:150}, + {prop:'materialCode',title:'零件号'}, + {prop:'materialDescription',title:'零件名称'}, + {prop:'plantId',title:'工厂代码'}, + {prop:'plantName',title:'工厂名称'}, + {prop:'startDate',title:'起始日期',width:180}, + {prop:'quantityDemand1',title:'需求数量1'}, + {prop:'quantityDemand2',title:'需求数量2'}, + {prop:'quantityDemand3',title:'需求数量3'}, + {prop:'quantityDemand4',title:'需求数量4'}, + {prop:'quantityDemand5',title:'需求数量5'}, + {prop:'quantityDemand6',title:'需求数量6'}, + {prop:'quantityDemand7',title:'需求数量7'}, + {prop:'quantityDemand8',title:'需求数量8'}, + {prop:'quantityDemand9',title:'需求数量9'}, + {prop:'quantityDemand10',title:'需求数量10',width:130}, + {prop:'quantityDemand11',title:'需求数量11',width:130}, + {prop:'quantityDemand12',title:'需求数量12',width:130}, + {prop:'quantityDemand13',title:'需求数量13',width:130}, + {prop:'quantityDemand14',title:'需求数量14',width:130}, + {prop:'quantityDemand15',title:'需求数量15',width:130}, + {prop:'quantityDemand16',title:'需求数量16',width:130}, + {prop:'quantityDemand17',title:'需求数量17',width:130}, + {prop:'quantityDemand18',title:'需求数量18',width:130}, + {prop:'quantityDemand19',title:'需求数量19',width:130}, + {prop:'quantityDemand20',title:'需求数量20',width:130}, + {prop:'quantityDemand21',title:'需求数量21',width:130}, + {prop:'quantityDemand22',title:'需求数量22',width:130}, + {prop:'quantityDemand23',title:'需求数量23',width:130}, + {prop:'quantityDemand24',title:'需求数量24',width:130}, + {prop:'quantityDemand25',title:'需求数量25',width:130}, + {prop:'quantityDemand26',title:'需求数量26',width:130}, + {prop:'quantityDemand27',title:'需求数量27',width:130}, + {prop:'quantityDemand28',title:'需求数量28',width:130}, + {prop:'quantityDemand29',title:'需求数量29',width:130}, + {prop:'quantityDemand30',title:'需求数量30',width:130}, + {prop:'quantityDemand31',title:'需求数量31',width:130}, + {prop:'is_update',title:'是否更新',type:'tagFilter',options:EnumList.whether}, + {prop:'createByUser',title:'创建人'}, + {prop:'createTime',title:'创建时间',width:180}, + {prop:'updateByUser',title:'修改人'}, + {prop:'updateTime',title:'修改时间',width:180}, + {prop:'isDelete',title:'是否删除',type:'tagFilter',options:EnumList.whether}, + {prop:'version',title:'版本号'}, + ], // 计划协议 cherysuppliersaweek:[ {prop:'scheduleAgreement',title:'计划协议号',width:120}, @@ -163,6 +209,23 @@ const apiTableColumns = { {prop:'isDelete',title:'是否删除',type:'tagFilter',options:EnumList.whether}, {prop:'version',title:'版本号'}, ], + // 过焊装未过总装 + cherysupplierporhschedul:[ + {prop:'models',title:'车型'}, + {prop:'vin',title:'VIN'}, + {prop:'productionLineId',title:'产线代码'}, + {prop:'productionLineName',title:'产线名称'}, + {prop:'materialCode',title:'物料编码'}, + {prop:'materialDescription',title:'物料描述'}, + {prop:'productionType',title:'报工类型'}, + {prop:'onLineTime',title:'上线日期时间',width:180}, + {prop:'createByUser',title:'创建人'}, + {prop:'createTime',title:'创建时间',width:180}, + {prop:'updateByUser',title:'修改人'}, + {prop:'updateTime',title:'修改时间',width:180}, + {prop:'isDelete',title:'是否删除',type:'tagFilter',options:EnumList.whether}, + {prop:'version',title:'版本号'}, + ], // 过涂装未过总装 cherysupplierprotschedul:[ {prop:'models',title:'车型'}, @@ -194,7 +257,7 @@ const apiTableColumns = { {prop:'materialCode',title:'零件号'}, {prop:'materialDescription',title:'零件名称'}, {prop:'quantityDelivery',title:'数量'}, - {prop:'returnType',title:'退货类型',type:'tagFilter',options:EnumList.returnType}, + {prop:'returnType',title:'退货类型',type:'filter',options:EnumList.returnType}, {prop:'lotNumber',title:'批次号'}, {prop:'judge',title:'判定人'}, {prop:'returnReason',title:'退货原因'}, @@ -228,10 +291,10 @@ const apiTableColumns = { {prop:'serialNumber',title:'行项目号'}, {prop:'materialCode',title:'零件号'}, {prop:'materialDescription',title:'零件名称'}, - {prop:'materialType',title:'物料类型',type:'tagFilter',options:EnumList.materialType}, + {prop:'materialType',title:'物料类型',type:'filter',options:EnumList.materialType}, {prop:'quantityCurrent',title:'当前库存数量',type:'number'}, {prop:'quantityPlan',title:'原材料在途数量',type:'number'}, - {prop:'inventoryStatus',title:'库存状态',type:'tagFilter',options:EnumList.inventoryStatus}, + {prop:'inventoryStatus',title:'库存状态',type:'filter',options:EnumList.inventoryStatus}, {prop:'safetyStock',title:'安全库存',type:'number'}, {prop:'productionCycle',title:'生产/采购周期'}, {prop:'dataUpdateTime',title:'库存更新时间',type:'datetime',width:180}, @@ -239,6 +302,34 @@ const apiTableColumns = { {prop:'supplieryxqDate',title:'效期截止日期',type:'datetime',width:180}, {prop:'creationTime',title:'创建时间',type:'datetime',width:180,noEdit:true}, ], + // 日MRP状态监控 + cherysuppliermrp:[ + {prop:'plantId',title:'工厂代码'}, + {prop:'plantName',title:'工厂名称'}, + {prop:'demandSrate',title:'需求状态'}, + {prop:'demandType',title:'需求类型'}, + {prop:'materialCode',title:'零件号'}, + {prop:'materialDescription',title:'零件名称'}, + {prop:'summarySign',title:'集货标识'}, + {prop:'dateRequired',title:'需求日期',width:180}, + {prop:'quantityDemand',title:'需求数量'}, + {prop:'confirmTime',title:'需求确认时间',width:180}, + {prop:'creatQuantity',title:'已建单数量'}, + {prop:'quantityDelivery',title:'已发货数量'}, + {prop:'quantityReceive',title:'已收货数量'}, + {prop:'quantityInTransit',title:'在途数量'}, + {prop:'onTimePercentage',title:'按时到货比'}, + {prop:'summaryCreatQuantity',title:'集货件已建单数量'}, + {prop:'summaryQuantityDelivery',title:'集货件已发货数量'}, + {prop:'summaryQuantityReceive',title:'集货件已收货数量'}, + {prop:'summaryQuantityInTransit',title:'集货件已在途数量'}, + {prop:'createByUser',title:'创建人'}, + {prop:'createTime',title:'创建时间',width:180}, + {prop:'updateByUser',title:'修改人'}, + {prop:'updateTime',title:'修改时间',width:180}, + {prop:'isDelete',title:'是否删除',type:'tagFilter',options:EnumList.whether}, + {prop:'version',title:'版本号'}, + ], // 日MRP预警推移 cherysuppliermrpwarning:[ {prop:'plantId',title:'工厂代码'}, @@ -286,14 +377,446 @@ const apiTableColumns = { {prop:'featureLower',title:'参数/特性下限值',width:180}, {prop:'featureValue',title:'参数/特性实测值',width:180}, {prop:'checkNo',title:'来料检验单号'}, - {prop:'checkResult',title:'批次的最终判定结果',type:'tagFilter',options:EnumList.checkResult,width:180}, + {prop:'checkResult',title:'批次的最终判定结果',type:'filter',options:EnumList.checkResult,width:180}, {prop:'checkTime',title:'检验时间',type:'datetime',width:180}, {prop:'samplingRate',title:'控制项要求频率',type:'number'}, {prop:'limitUpdateTime',title:'上下限更新时间',type:'datetime',width:180}, {prop:'vendorFieldDesc',title:'控制项描述'}, {prop:'vendorFieldCode',title:'控制项代码'}, {prop:'deadLine',title:'库存有效日期',type:'datetime',width:180}, - ] + ], + // 排产数据 + cherysupplierproscheduling:[ + {prop:'supplierCode',title:'供应商代码'}, + {prop:'supplierName',title:'供应商名称'}, + {prop:'plantId',title:'工厂代码'}, + {prop:'plantName',title:'工厂名称'}, + {prop:'vendorProductNo',title:'供应商总成零件号',width:180}, + {prop:'vendorProductName',title:'供应商总成零件名称',width:180}, + {prop:'cheryProductNo',title:'奇瑞零件号'}, + {prop:'cheryProductName',title:'奇瑞零件名称',width:180}, + {prop:'planNo',title:'计划单号'}, + {prop:'manufactureNo',title:'生产工单号'}, + {prop:'productBatchNo',title:'生产批次号'}, + {prop:'manufactureNum',title:'批次计划数量',width:160}, + {prop:'manufactureInputNum',title:'批次投入数量',width:160}, + {prop:'manufactureOutputNum',title:'批次产出数量',width:160}, + {prop:'planStatus',title:'排产状态',type:'filter',options:EnumList.planStatus}, + {prop:'planBeginTime',title:'计划开始时间',width:180}, + {prop:'planEndTime',title:'计划结束时间',width:180}, + {prop:'actualBeginTime',title:'实际开始时间',width:180}, + {prop:'actualEndTime',title:'实际结束时间',width:180}, + ], + // 供应商基础信息 + cherysupplierinfo:[ + {prop:'supplierCode',title:'供应商代码'}, + {prop:'supplierName',title:'供应商名称'}, + {prop:'plantId',title:'工厂代码'}, + {prop:'plantName',title:'工厂名称'}, + {prop:'workshopId',title:'车间代码'}, + {prop:'workshopName',title:'车间名称'}, + {prop:'productionLineId',title:'产线代码'}, + {prop:'productionLineName',title:'产线名称'}, + {prop:'stationId',title:'工位代码'}, + {prop:'stationName',title:'工位名称'}, + {prop:'keyStation',title:'是否关键工位',width:160,type:'tagFilter',options:EnumList.whetherByYN}, + {prop:'dataUpdateTime',title:'供应商修改时间',width:180,type:'datetime'}, + {prop:'productionLineOrder',title:'产线顺序',type:'number'}, + {prop:'stationOrder',title:'工位顺序',type:'number'}, + {prop:'vendorProductNo',title:'供应商总成零件号',width:180}, + {prop:'vendorProductName',title:'供应商总成零件名称',width:180}, + {prop:'cheryProductNo',title:'奇瑞零件号'}, + {prop:'cheryProductName',title:'奇瑞零件名称',width:180}, + ], + // 人员资质信息 + cherysupplieremployee:[ + {prop:'supplierCode',title:'供应商代码'}, + {prop:'supplierName',title:'供应商名称'}, + {prop:'plantId',title:'工厂代码'}, + {prop:'plantName',title:'工厂名称'}, + {prop:'workshopId',title:'车间代码'}, + {prop:'workshopName',title:'车间名称'}, + {prop:'productionLineId',title:'产线代码'}, + {prop:'productionLineName',title:'产线名称'}, + {prop:'stationId',title:'工位代码'}, + {prop:'stationName',title:'工位名称'}, + {prop:'operatorId',title:'工位人员账号',width:160}, + {prop:'operatorName',title:'工位人员姓名',width:160}, + {prop:'haveQuantity',title:'是否有资质',width:160,type:'tagFilter',options:EnumList.whetherByYN}, + {prop:'dataUpdateTime',title:'供应商修改时间',width:180,type:'datetime'}, + {prop:'positionId',title:'岗位代码'}, + {prop:'positionName',title:'岗位名称'}, + {prop:'qualificationLevel',title:'资质等级'}, + {prop:'checkInTime',title:'资质获取时间',width:180,type:'datetime'}, + {prop:'checkOutTime',title:'资质失去时间',width:180,type:'datetime'}, + ], + // BOM主数据 + cherysupplierbom:[ + {prop:'supplierCode',title:'供应商代码'}, + {prop:'supplierName',title:'供应商名称'}, + {prop:'bomCode',title:'BOM编码'}, + {prop:'bomName',title:'BOM名称'}, + {prop:'bomVersion',title:'BOM版本'}, + {prop:'cheryProductNo',title:'奇瑞零件号'}, + {prop:'cheryProductName',title:'奇瑞零件名称',width:180}, + {prop:'vendorProductNo',title:'供应商父件编码',width:180}, + {prop:'vendorProductName',title:'供应商父件名称',width:180}, + {prop:'vendorProductType',title:'父件类型',type:'filter',options:EnumList.vendorProductType}, + {prop:'materialUnit',title:'父件单位'}, + {prop:'subMaterialCode',title:'子件编码'}, + {prop:'subMaterialName',title:'子件名称'}, + {prop:'subMaterialType',title:'子件类型',type:'filter',options:EnumList.subMaterialType}, + {prop:'subMaterialUnit',title:'子件单位'}, + {prop:'subMaterialQuota',title:'子件用量',type:'number'}, + {prop:'dataUpdateTime',title:'BOM变更时间',width:180,type:'datetime'}, + ], + // 过程控制项质量数据 + cherysupplierprocps:[ + {prop:'supplierCode',title:'供应商代码'}, + {prop:'supplierName',title:'供应商名称'}, + {prop:'vendorProductNo',title:'供应商总成零件号',width:180}, + {prop:'vendorProductName',title:'供应商总成零件名称',width:180}, + {prop:'vendorProductSn',title:'供应商总成SN码',width:180}, + {prop:'vendorProductBatch',title:'供应商总成批次号',width:180}, + {prop:'cheryProductNo',title:'奇瑞零件号'}, + {prop:'cheryProductName',title:'奇瑞零件名称',width:180}, + {prop:'cheryProductSn',title:'奇瑞SN码'}, + {prop:'productBatchNo',title:'生产批次号'}, + {prop:'manufactureNo',title:'生产工单号'}, + {prop:'plantId',title:'工厂代码'}, + {prop:'plantName',title:'工厂名称'}, + {prop:'workshopId',title:'车间代码'}, + {prop:'workshopName',title:'车间名称'}, + {prop:'productionLineId',title:'产线代码'}, + {prop:'productionLineName',title:'产线名称'}, + {prop:'stationId',title:'工位代码'}, + {prop:'stationName',title:'工位名称'}, + {prop:'empCode',title:'工位人员编号'}, + {prop:'empName',title:'工位人员姓名'}, + {prop:'vendorFieldName',title:'控制项名称'}, + {prop:'vendorFieldCode',title:'控制项代码'}, + {prop:'gatherSpot',title:'控制项点位'}, + {prop:'samplingRate',title:'控制项要求频率',type:'number'}, + {prop:'limitUpdateTime',title:'上下限更新时间',type:'datetime',width:180}, + {prop:'vendorFieldDesc',title:'控制项描述'}, + {prop:'carrierCode',title:'载体编码'}, + {prop:'intputQty',title:'投入数量',type:'number'}, + {prop:'fttQty',title:'一次合格数量',type:'number'}, + {prop:'parameter',title:'参数',width:160,type:'tagFilter',options:EnumList.whetherByYN}, + {prop:'characteristic',title:'特性',width:160,type:'tagFilter',options:EnumList.whetherByYN}, + {prop:'cc',title:'cc项',width:160,type:'tagFilter',options:EnumList.whetherByYN}, + {prop:'sc',title:'sc项',width:160,type:'tagFilter',options:EnumList.whetherByYN}, + {prop:'spc',title:'SPC',width:160,type:'tagFilter',options:EnumList.whetherByYN}, + {prop:'standardValue',title:'控制项标准值',width:150}, + {prop:'upperLimit',title:'控制项上限',type:'number'}, + {prop:'lowerLimit',title:'控制项下限',type:'number'}, + {prop:'decimalValue',title:'控制项实测值',type:'number'}, + {prop:'unitCn',title:'控制项值的单位名称',width:180}, + {prop:'unitEn',title:'控制项单位英文',width:180}, + {prop:'checkResult',title:'检测结果'}, + {prop:'detectionMode',title:'在线检测',type:'filter',options:EnumList.detectionMode}, + {prop:'workShift',title:'班次',type:'filter',options:EnumList.workShift}, + {prop:'collectTime',title:'采集时间',type:'datetime',width:180}, + {prop:'checkMode',title:'检测方式',type:'filter',options:EnumList.checkMode}, + {prop:'deviceCode',title:'检测设备编号'}, + {prop:'deviceName',title:'检测设备名称'}, + ], + // 生产过程数据 + cherysupplierprodata:[ + {prop:'supplierCode',title:'供应商代码'}, + {prop:'supplierName',title:'供应商名称'}, + {prop:'plantId',title:'工厂代码'}, + {prop:'plantName',title:'工厂名称'}, + {prop:'workshopId',title:'车间代码'}, + {prop:'workshopName',title:'车间名称'}, + {prop:'productionLineId',title:'产线代码'}, + {prop:'productionLineName',title:'产线名称'}, + {prop:'stationId',title:'工位代码'}, + {prop:'stationName',title:'工位名称'}, + {prop:'empCode',title:'工位人员编号',width:160}, + {prop:'empName',title:'工位人员姓名',width:160}, + {prop:'vendorProductName',title:'供应商总成零件名称',width:180}, + {prop:'vendorProductNo',title:'供应商总成零件号',width:180}, + {prop:'vendorProductBatch',title:'供应商总成批次号'}, + {prop:'vendorProductSn',title:'供应商总成SN码'}, + {prop:'subProdNo',title:'子件编码'}, + {prop:'subProdName',title:'子件名称'}, + {prop:'subBatchNo',title:'子件批次号'}, + {prop:'childPackageInfo',title:'子件分包号'}, + {prop:'subProdNum',title:'子件扣料数量',type:'number',width:160}, + {prop:'childSource',title:'子件物料来源',width:160}, + {prop:'subSupplierCode',title:'分供方代码'}, + {prop:'subSupplierName',title:'分供方名称'}, + {prop:'cheryProductNo',title:'奇瑞零件号'}, + {prop:'cheryProductName',title:'奇瑞零件名称',width:180}, + {prop:'cheryProductSn',title:'奇瑞SN码'}, + {prop:'manufactureNo',title:'生产工单号'}, + {prop:'productBatchNo',title:'生产批次号'}, + {prop:'workShift',title:'班次',type:'filter',options:EnumList.workShift}, + {prop:'materialInputTime',title:'进工位的时间',type:'datetime',width:180}, + {prop:'materialOutputTime',title:'出工位的时间',type:'datetime',width:180}, + {prop:'vendorFieldNum',title:'装配设备编号',width:160}, + {prop:'vendorFieldName',title:'装配设备名称',width:160}, + {prop:'instrumentQualityStatus',title:'设备判定的质量状态',type:'filter',options:EnumList.checkResult,width:180}, + {prop:'manualQualityStatus',title:'人工判定的质量状态',type:'filter',options:EnumList.checkResult,width:180}, + {prop:'finalQualityStatus',title:'最终质量状态',type:'filter',options:EnumList.checkResult,width:180}, + {prop:'collectTime',title:'采集时间',type:'datetime',width:180}, + {prop:'dateTime',title:'子件绑定扫码时间',type:'datetime',width:180}, + {prop:'parentHardwareRevision',title:'父件硬件版本号',width:180}, + {prop:'parentSoftwareRevision',title:'父件软件版本号',width:180}, + {prop:'childHardwareRevision',title:'子件硬件版本号',width:180}, + {prop:'childSoftwareRevision',title:'子件软件版本号',width:180}, + ], + // 产品一次合格率 + cherysupplierprofirstpassyield:[ + {prop:'supplierCode',title:'供应商代码'}, + {prop:'supplierName',title:'供应商名称'}, + {prop:'vendorProductNo',title:'供应商总成零件号',width:180}, + {prop:'vendorProductName',title:'供应商总成零件名称',width:180}, + {prop:'plantId',title:'工厂代码'}, + {prop:'plantName',title:'工厂名称'}, + {prop:'workshopId',title:'车间代码'}, + {prop:'workshopName',title:'车间名称'}, + {prop:'productionLineId',title:'产线代码'}, + {prop:'productionLineName',title:'产线名称'}, + {prop:'cheryProductNo',title:'奇瑞零件号'}, + {prop:'cheryProductName',title:'奇瑞零件名称',width:180}, + {prop:'manufactureNo',title:'生产工单号'}, + {prop:'productBatchNo',title:'生产批次号'}, + {prop:'workOrderNumber',title:'批次计划数量',type:'number',width:160}, + {prop:'defectiveNumber',title:'不合格数',type:'number',width:160}, + {prop:'acceptableNumber',title:'合格数',type:'number',width:160}, + {prop:'oncePassRateRealValue',title:'一次合格率实际值',type:'number',width:180}, + {prop:'oncePassRateTagValue',title:'一次合格率目标值',type:'number',width:180}, + {prop:'workShift',title:'班次',type:'filter',options:EnumList.workShift}, + {prop:'statisticalTime',title:'生产日期',width:180,type:'datetime'}, + {prop:'dateTime',title:'值统计时间',width:180,type:'datetime'}, + ], + // 工位一次合格率 + cherysupplierprostationfirstpassyield:[ + {prop:'supplierCode',title:'供应商代码'}, + {prop:'supplierName',title:'供应商名称'}, + {prop:'plantId',title:'工厂代码'}, + {prop:'plantName',title:'工厂名称'}, + {prop:'workshopId',title:'车间代码'}, + {prop:'workshopName',title:'车间名称'}, + {prop:'productionLineId',title:'产线代码'}, + {prop:'productionLineName',title:'产线名称'}, + {prop:'stationId',title:'工位代码'}, + {prop:'stationName',title:'工位名称'}, + {prop:'cheryProductNo',title:'奇瑞零件号'}, + {prop:'cheryProductName',title:'奇瑞零件名称',width:180}, + {prop:'vendorProductNo',title:'供应商总成零件号',width:180}, + {prop:'vendorProductName',title:'供应商总成零件名称',width:180}, + {prop:'productBatchNo',title:'生产批次号'}, + {prop:'manufactureNo',title:'生产工单号'}, + {prop:'workOrderNumber',title:'批次计划数量',type:'number',width:160}, + {prop:'defectiveNumber',title:'不合格数',type:'number',width:160}, + {prop:'acceptableNumber',title:'合格数',type:'number',width:160}, + {prop:'oncePassRateRealValue',title:'一次合格率实际值',type:'number',width:180}, + {prop:'oncePassRateTagValue',title:'一次合格率目标值',type:'number',width:180}, + {prop:'workShift',title:'班次',type:'filter',options:EnumList.workShift}, + {prop:'statisticalTime',title:'生产日期',width:180,type:'datetime'}, + {prop:'dateTime',title:'值统计时间',width:180,type:'datetime'}, + ], + // 缺陷业务数据 + cherysupplierproflaw:[ + {prop:'supplierCode',title:'供应商代码'}, + {prop:'supplierName',title:'供应商名称'}, + {prop:'plantId',title:'工厂代码'}, + {prop:'plantName',title:'工厂名称'}, + {prop:'workshopId',title:'车间代码'}, + {prop:'workshopName',title:'车间名称'}, + {prop:'productionLineId',title:'产线代码'}, + {prop:'productionLineName',title:'产线名称'}, + {prop:'stationId',title:'工位代码'}, + {prop:'stationName',title:'工位名称'}, + {prop:'defectsCode',title:'缺陷代码'}, + {prop:'defectsName',title:'缺陷名称'}, + {prop:'classOfName',title:'缺陷分类',type:'filter',options:EnumList.defectsClass}, + {prop:'vendorProductNo',title:'供应商总成零件号',width:180}, + {prop:'vendorProductName',title:'供应商总成零件名称',width:180}, + {prop:'vendorProductBatch',title:'供应商总成批次号',width:180}, + {prop:'vendorProductSn',title:'供应商总成SN码',width:180}, + {prop:'cheryProductNo',title:'奇瑞零件号'}, + {prop:'cheryProductName',title:'奇瑞零件名称',width:180}, + {prop:'cheryProductSn',title:'奇瑞SN码'}, + {prop:'productBatchNo',title:'生产批次号'}, + {prop:'manufactureNo',title:'生产工单号'}, + {prop:'workShift',title:'班次',type:'filter',options:EnumList.workShift}, + {prop:'numberofdefect',title:'缺陷件数',type:'number'}, + {prop:'defectsDesc',title:'缺陷描述'}, + {prop:'defectsLevel',title:'缺陷等级',type:'filter',options:EnumList.defectsLevel}, + {prop:'statisticalTime',title:'缺陷录入时间',width:180,type:'datetime'}, + ], + // 物料主数据 + cherysupplierpromaterialdata:[ + {prop:'supplierCode',title:'供应商代码'}, + {prop:'supplierName',title:'供应商名称'}, + {prop:'vendorProductNo',title:'供应商物料号'}, + {prop:'vendorProductName',title:'供应商物料名称',width:180}, + {prop:'type',title:'类型',type:'filter',options:EnumList.materialType}, + {prop:'vendorHardwareRevision',title:'供应商零件版本号',width:180}, + {prop:'cheryProductNo',title:'奇瑞零件号'}, + {prop:'cheryProductName',title:'奇瑞零件名称',width:180}, + {prop:'oemHardwareRevision',title:'奇瑞硬件版本号',width:180}, + {prop:'oemSoftwareRevision',title:'奇瑞软件版本号',width:180}, + {prop:'oemModel',title:'车型'}, + {prop:'oemProjectName',title:'项目名称'}, + {prop:'launched',title:'是否SOP',width:160,type:'tagFilter',options:EnumList.whetherByYN}, + {prop:'dateTime',title:'数据同步执行时间',width:180,type:'datetime'}, + {prop:'plantId',title:'供应商工厂代码',width:180}, + {prop:'plantName',title:'供应商工厂名称',width:180}, + {prop:'procurementType',title:'芯片采购类型',width:160}, + {prop:'mpnCode',title:'芯片MPN标识码',width:180}, + {prop:'mpnName',title:'芯片MPN标识名称',width:180}, + {prop:'validDays',title:'物料有效期(天)',width:180}, + ], + // 附件类数据 + cherysupplierproattachmentdata:[ + {prop:'supplierCode',title:'供应商代码'}, + {prop:'supplierName',title:'供应商名称'}, + {prop:'type',title:'数据类型',type:'filter',options:EnumList.attachmentType}, + {prop:'fileName',title:'文件名'}, + {prop:'fileUrl',title:'图文地址',width:null}, + {prop:'dateTime',title:'生成时间',type:'datetime',width:180}, + {prop:'productionLineName',title:'产线名称'}, + {prop:'productionLineId',title:'产线代码'}, + {prop:'stationName',title:'工位名称'}, + {prop:'stationId',title:'工位代码'}, + {prop:'deviceName',title:'设备名称'}, + {prop:'deviceId',title:'设备代码'}, + {prop:'vendorProductNo',title:'供应商总成零件号',width:180}, + {prop:'vendorProductName',title:'供应商总成零件名称',width:180}, + {prop:'cheryProductNo',title:'奇瑞零件号'}, + {prop:'cheryProductName',title:'奇瑞零件名称',width:180}, + {prop:'vendorProductSn',title:'供应商总成SN码',width:180}, + ], + // 工艺装备 + cherysupplierproprocessequipment:[ + {prop:'supplierCode',title:'供应商代码'}, + {prop:'supplierName',title:'供应商名称'}, + {prop:'cheryProductNo',title:'奇瑞零件号'}, + {prop:'cheryProductName',title:'奇瑞零件名称',width:180}, + {prop:'vendorProductNo',title:'供应商总成零件号',width:180}, + {prop:'vendorProductName',title:'供应商总成零件名称',width:180}, + {prop:'deviceType',title:'工艺装备类型分类',type:'filter',options:EnumList.deviceType}, + {prop:'deviceCode',title:'工艺装备编码'}, + {prop:'deviceName',title:'工艺装备名称'}, + {prop:'manufacturer',title:'生产厂家'}, + {prop:'modelNumber',title:'工艺装备型号'}, + {prop:'serialNumber',title:'工艺装备序列号',width:180}, + {prop:'productionDate',title:'工艺装备制造日期',width:180,type:'datetime'}, + {prop:'material',title:'主要材质'}, + {prop:'currentLocation',title:'当前存放地点'}, + {prop:'deviceStatus',title:'工艺装备状态'}, + {prop:'cavityCount',title:'穴腔数量',type:'number'}, + {prop:'moldSize',title:'模具尺寸规格'}, + {prop:'designLifeUnits',title:'设计寿命单位'}, + {prop:'designLifeValue',title:'设计寿命'}, + {prop:'currentUsageCount',title:'当前剩余寿命',width:180}, + {prop:'overhaulCount',title:'模具大修次数',type:'number',width:160}, + {prop:'coolingChannelLayout',title:'图纸编号描述'}, + {prop:'detectionAccuracy',title:'检测精度'}, + {prop:'calibrationDate',title:'最近校准日期',width:180,type:'datetime'}, + {prop:'calibrationDueDays',title:'校准到期天数'}, + {prop:'toleranceRange',title:'允许误差范围'}, + {prop:'wearThreshold',title:'磨损阈值'}, + {prop:'detectionRange',title:'检测范围'}, + {prop:'unitType',title:'检测单位'}, + ], + // 工艺 + cherysupplierproprocess:[ + {prop:'cheryProductNo',title:'奇瑞零件号'}, + {prop:'cheryProductName',title:'奇瑞零件名称',width:180}, + {prop:'vendorProductNo',title:'供应商总成零件号',width:180}, + {prop:'vendorProductName',title:'供应商总成零件名称',width:180}, + {prop:'supplierCode',title:'供应商代码'}, + {prop:'supplierName',title:'供应商名称'}, + {prop:'techCode',title:'工艺编码'}, + {prop:'techName',title:'工艺名称'}, + {prop:'validPeriod',title:'有效期',width:180,type:'datetime'}, + {prop:'techVersion',title:'工艺版本'}, + {prop:'moldCode',title:'模具编码'}, + {prop:'moldName',title:'模具名称'}, + {prop:'maxProcessingCapacity',title:'最大加工能力'}, + {prop:'processCode',title:'工序编码'}, + {prop:'processName',title:'工序名称'}, + {prop:'processOrder',title:'工序顺序号',type:'number'}, + {prop:'deviceCode',title:'设备编码'}, + {prop:'rhythm',title:'工序节拍',type:'number'}, + {prop:'rhythmUnit',title:'节拍单位'}, + ], + + + /*无页面,供任务明细页面使用 */ + // 环境业务数据 + cherysupplierproenvironment:[ + {prop:'supplierCode',title:'供应商代码'}, + {prop:'supplierName',title:'供应商名称'}, + {prop:'plantId',title:'工厂代码'}, + {prop:'plantName',title:'工厂名称'}, + {prop:'workshopId',title:'车间代码'}, + {prop:'workshopName',title:'车间名称'}, + {prop:'productionLineId',title:'产线代码'}, + {prop:'productionLineName',title:'产线名称'}, + {prop:'envIndicatorName',title:'环境指标名称',width:160}, + {prop:'numValue',title:'指标实测值',width:160}, + {prop:'upperLimit',title:'上限值'}, + {prop:'lowerLimit',title:'下限值'}, + {prop:'chineseUnit',title:'单位'}, + {prop:'equipmentCode',title:'采集仪器代码',width:160}, + {prop:'equipmentName',title:'采集仪器名称',width:160}, + {prop:'dataCollectionPoint',title:'数据采集的点位',width:160}, + {prop:'collectTime',title:'数据采集的时间',width:180}, + ], + // 设备OEE达成率 + cherysupplierprooeeachievementrate:[ + {prop:'supplierCode',title:'供应商代码'}, + {prop:'supplierName',title:'供应商名称'}, + {prop:'plantId',title:'工厂代码'}, + {prop:'plantName',title:'工厂名称'}, + {prop:'workshopId',title:'车间代码'}, + {prop:'workshopName',title:'车间名称'}, + {prop:'productionLineId',title:'产线代码'}, + {prop:'productionLineName',title:'产线名称'}, + {prop:'stationId',title:'工位代码'}, + {prop:'stationName',title:'工位名称'}, + {prop:'deviceId',title:'设备代码'}, + {prop:'deviceName',title:'设备名称'}, + {prop:'cheryProductNo',title:'奇瑞零件号'}, + {prop:'cheryProductName',title:'奇瑞零件名称',width:180}, + {prop:'vendorProductNo',title:'供应商总成零件号',width:180}, + {prop:'vendorProductName',title:'供应商总成零件名称',width:180}, + {prop:'productBatchNo',title:'生产批次号'}, + {prop:'manufactureNo',title:'生产工单号'}, + {prop:'rate',title:'OEE实际值'}, + {prop:'rateTagValue',title:'OEE目标值'}, + {prop:'workShift',title:'班次'}, + {prop:'statisticalTime',title:'生产日期',width:180}, + {prop:'dateTime',title:'值统计时间',width:180}, + ], + // OEE时间明细 + cherysupplierprooeetimedetails:[ + {prop:'supplierCode',title:'供应商代码'}, + {prop:'supplierName',title:'供应商名称'}, + {prop:'plantId',title:'工厂代码'}, + {prop:'plantName',title:'工厂名称'}, + {prop:'workshopId',title:'车间代码'}, + {prop:'workshopName',title:'车间名称'}, + {prop:'productionLineId',title:'产线代码'}, + {prop:'productionLineName',title:'产线名称'}, + {prop:'stationId',title:'工位代码'}, + {prop:'stationName',title:'工位名称'}, + {prop:'deviceId',title:'设备代码'}, + {prop:'deviceName',title:'设备名称'}, + {prop:'recId',title:'记录ID'}, + {prop:'type',title:'大类',type:'filter',options:EnumList.OEETimeType}, + {prop:'subType',title:'小类编码'}, + {prop:'subTypeName',title:'小类描述'}, + {prop:'startTime',title:'开始时间',width:180}, + {prop:'endTime',title:'结束时间',width:180}, + ], } export default apiTableColumns \ No newline at end of file diff --git a/Web/src/utils/common/enumList.js b/Web/src/utils/common/enumList.js index 0997680..e62d059 100644 --- a/Web/src/utils/common/enumList.js +++ b/Web/src/utils/common/enumList.js @@ -4,6 +4,16 @@ const EnumList = { {label:'是',value:1,type:'success'}, {label:'否',value:0,type:'danger'} ], + // 是否Y/N + whetherByYN:[ + {label:'是',value:'Y',type:'success'}, + {label:'否',value:'N',type:'danger'}, + ], + // 是否boolean + whetherBoolean:[ + {label:'是',value:true,type:'success'}, + {label:'否',value:false,type:'danger'} + ], // 退货类型 returnType:[ {label:'合格品',value:1}, @@ -15,6 +25,16 @@ const EnumList = { {label:'半成品',value:'半成品'}, {label:'原材料',value:'原材料'}, ], + // 父件(供应商总成)类型 + vendorProductType:[ + {label:'成品',value:'成品'}, + {label:'半成品',value:'半成品'}, + ], + // 子件类型 + subMaterialType:[ + {label:'半成品',value:'半成品'}, + {label:'原材料',value:'原材料'}, + ], // 库存状态 inventoryStatus:[ {label:'生产件',value:'生产件'}, @@ -39,7 +59,67 @@ const EnumList = { checkResult:[ {label:'合格',value:'OK'}, {label:'不合格',value:'NG'}, - ] + ], + // 排产状态 + planStatus:[ + {label:'未生产',value:'0'}, + {label:'生产中',value:'1'}, + {label:'已完工',value:'2'}, + {label:'已取消',value:'3'}, + {label:'已终止',value:'4'}, + ], + // 在线检测 + detectionMode:[ + {label:'在生产线上进行检测',value:'inline'}, + {label:'从生产线上拿下来进行检测',value:'offline'}, + {label:'同时存在',value:'both'}, + ], + // 班次 + workShift:[ + {label:'白班',value:'白班'}, + {label:'晚班',value:'晚班'}, + {label:'中班',value:'中班'}, + ], + // 检测方式 + checkMode:[ + {label:'人工',value:'人工'}, + {label:'设备',value:'设备'}, + ], + // 缺陷分类 + defectsClass:[ + {label:'外观',value:'外观'}, + {label:'尺寸',value:'尺寸'}, + {label:'材料',value:'材料'}, + {label:'功能',value:'功能'}, + {label:'性能',value:'性能'}, + {label:'其他',value:'其他'}, + ], + // 缺陷等级 + defectsLevel:[ + {label:'严重',value:'1'}, + {label:'一般',value:'2'}, + {label:'轻微',value:'3'}, + ], + // 附件数据类型 + attachmentType:[ + {label:'产前管理',value:'1'}, + {label:'人员资质',value:'2'}, + {label:'监控视频',value:'3'}, + ], + // 工艺装备类型分类 + deviceType:[ + {label:'模具',value:'1'}, + {label:'检具',value:'2'}, + {label:'夹具',value:'3'}, + ], + + + // OEE时间明细-大类(供任务明细页面使用) + OEETimeType:[ + {label:'计划工作',value:'1'}, + {label:'计划停机',value:'2'}, + {label:'非计划停机',value:'3'}, + ], } export default EnumList diff --git a/Web/src/views/logisticsPlan/supplierMrpDate/index.vue b/Web/src/views/logisticsPlan/supplierMrpDate/index.vue new file mode 100644 index 0000000..f5afe79 --- /dev/null +++ b/Web/src/views/logisticsPlan/supplierMrpDate/index.vue @@ -0,0 +1,23 @@ + + + diff --git a/Web/src/views/logisticsPlan/supplierMrpState/index.vue b/Web/src/views/logisticsPlan/supplierMrpState/index.vue new file mode 100644 index 0000000..4fc486d --- /dev/null +++ b/Web/src/views/logisticsPlan/supplierMrpState/index.vue @@ -0,0 +1,23 @@ + + + diff --git a/Web/src/views/logisticsPlan/supplierProHschedul/index.vue b/Web/src/views/logisticsPlan/supplierProHschedul/index.vue new file mode 100644 index 0000000..92f06f4 --- /dev/null +++ b/Web/src/views/logisticsPlan/supplierProHschedul/index.vue @@ -0,0 +1,23 @@ + + + diff --git a/Web/src/views/productionQuality/supplierProMaterialStock/index.vue b/Web/src/views/productionQuality/supplierProMaterialStock/index.vue index 79a2213..47b1a86 100644 --- a/Web/src/views/productionQuality/supplierProMaterialStock/index.vue +++ b/Web/src/views/productionQuality/supplierProMaterialStock/index.vue @@ -6,7 +6,7 @@ :searchFilter="state.searchFilter" :rightOperation="state.rightOperation" :apiEditFormRules="state.apiEditFormRules" - :searchButtons="['search','import','export']" + :searchButtons="['search','import','export','custominvoke']" > diff --git a/Web/src/views/productionQuality/supplierProScheduling/index.vue b/Web/src/views/productionQuality/supplierProScheduling/index.vue new file mode 100644 index 0000000..6530b0d --- /dev/null +++ b/Web/src/views/productionQuality/supplierProScheduling/index.vue @@ -0,0 +1,23 @@ + + + diff --git a/Web/src/views/system/taskConifgure/index.vue b/Web/src/views/system/taskConifgure/index.vue new file mode 100644 index 0000000..c12711e --- /dev/null +++ b/Web/src/views/system/taskConifgure/index.vue @@ -0,0 +1,34 @@ + + + \ No newline at end of file diff --git a/Web/src/views/task/taskSub/index.vue b/Web/src/views/task/taskSub/index.vue index 5db682a..e5feac1 100644 --- a/Web/src/views/task/taskSub/index.vue +++ b/Web/src/views/task/taskSub/index.vue @@ -1,12 +1,13 @@