王震
2023-12-13 67da82f0b0c24df5f19bbfcfec63801d9ae902d8
Merge remote-tracking branch 'origin/master'

# Conflicts:
# vue.config.js
已删除1个文件
已修改166个文件
已添加1个文件
2175 ■■■■ 文件已修改
src/api/plan/operationtask.js 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/api/plan/productionschedul.js 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/api/product/handymantype.js 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/api/quality/finishedDelivery.js 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/api/quality/finishedProduct.js 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/api/quality/packageInspect.js 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/verifition/Verify/VerifyPoints.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/const/crud/admin/sys-public-param.js 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/const/crud/customerOrder/customerOrderForm.js 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/page/full-screen/fullScreenPlus.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/page/index/logo.vue 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/page/index/sidebar/sidebarItem.vue 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/page/login/index.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/page/login/thirdpartylogin.vue 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/util/elAttr.js 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/accounting/unitworkfactor/index.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/accounting/unitworkfactor/unitworkfactor-form.vue 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/accounting/unitworkfactor/updateQuota-form.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/basic/company/index.vue 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/basic/crew/crew-form.vue 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/basic/discmaintenance/discmaintenance-form.vue 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/basic/division/index.vue 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/basic/factory/index.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/basic/location/index.vue 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/basic/log/index.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/basic/param/index.vue 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/basic/part/index.vue 31 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/basic/part/part-form.vue 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/basic/part/print-label-form.vue 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/basic/poc/index.vue 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/basic/tabletest/index.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/basic/template/index.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/basic/template/template-form.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/basic/warehouse/index.vue 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/basic/workstation/index.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/basic/workstation/workstation-form.vue 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/common/custom-table.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/common/document.vue 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/common/documentDetail.vue 11 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/common/operationParamTemplate.vue 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/common/part.vue 36 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/common/rawMaterial-part.vue 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/common/search-select.vue 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/common/teststandardradio.vue 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/common/ztt-table.vue 12 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/equipment/equipment/index.vue 27 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/equipment/metering/index.vue 77 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/huawei/code19bind/list.vue 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/huawei/code19gen/form.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/huawei/grossweightcode/list.vue 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/huawei/grossweightcode/task-secret-form.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/oa/JiegouModal.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/oa/PeizhiModal.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/oa/technology-document-new.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/oa/technology-document.vue 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/plan/customer/index.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/plan/customerorder/confirm-pull-customerorder.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/plan/customerorder/customerorder-config-history.vue 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/plan/customerorder/customerorder-form.vue 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/plan/customerorder/customerorder-return.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/plan/customerorder/customerorder-ztt-table.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/plan/customerorder/index.vue 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/plan/customerorder/other-customer-order-line.vue 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/plan/customerorder/sample-customerorder-form.vue 47 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/plan/customerorder/schedule-table.vue 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/plan/manfacturingorderstatement/index.vue 197 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/plan/manufacturingorder/auto-operationtask.vue 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/plan/manufacturingorder/customerorder.vue 15 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/plan/manufacturingorder/customize-param-template.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/plan/manufacturingorder/index.vue 253 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/plan/manufacturingorder/order-operation-form.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/plan/manufacturingorder/productorder-form.vue 36 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/plan/manufacturingorder/routing.vue 18 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/plan/manufacturingorderapply/index.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/plan/masterproductionschedule/auto-manufacturingorder.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/plan/masterproductionschedule/index.vue 12 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/plan/operationtask/gantt.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/plan/operationtask/index.vue 12 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/plan/operationtask/operationtask-form.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/plan/operationtask/task-material.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/plan/productionschedul/index.vue 122 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/plan/productionschedul/template-form.vue 173 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/plan/schedule/gantt.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/plan/schedulelookover/ganttview.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/plan/segmentmerge/index.vue 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/plan/segmentmerge/operate-dialog.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/plan/segmentmerge/operation-technology-form.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/product/dutyrecord/index.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/product/producttraceability/index.vue 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/product/producttraceability/traceability-diagram.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/product/workbench/batchproductout-form-new.vue 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/product/workbench/batchproductout-form.vue 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/product/workbench/feed-form.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/product/workbench/feed-pane.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/product/workbench/feed-tab.vue 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/product/workbench/handymantype.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/product/workbench/index.vue 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/product/workbench/mould-pane.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/product/workbench/operation-task-pane.vue 13 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/product/workbench/product-record-form.vue 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/product/workbench/productout-form-by-batch.vue 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/product/workbench/productout-form.vue 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/product/workbench/productrecord-tab.vue 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/product/workbench/producttracking-tab.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/product/workbench/shift-productout-form.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/product/workbench/splitTaskForm.vue 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/product/workbench/taskinfo-pane.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/product/workbench/workReport-feed.vue 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/product/workbench/workReportCard.vue 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/quality/Packaging_ledger/index.vue 115 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/quality/Packaging_ledger/pack-from.vue 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/quality/Packaging_ledger/pack-fromadd.vue 66 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/quality/apply/index.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/quality/exception/exception.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/quality/exception/index.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/quality/finishedProductInspection/finishedProduct-form.vue 114 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/quality/finishedProductInspection/finishedProduct-print.vue 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/quality/finishedProductInspection/finishedProducter-print.vue 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/quality/finishedProductInspection/index.vue 29 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/quality/newReport/ReportForm.vue 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/quality/packageinspect/packageInspect-form.vue 75 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/quality/processInspect/index.vue 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/quality/processInspect/processInspect-form.vue 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/quality/processconfiguration/index.vue 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/quality/processconfiguration/table-form.vue 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/quality/rawMaterial/QrcodeReader.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/quality/rawMaterial/index.vue 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/quality/rawMaterial/rawMaterial-form.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/quality/report/index.vue 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/quality/standardbind/standardbind-form.vue 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/quality/statistics/rateChart.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/quality/testitemlayout/index.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/quality/testplan/testplan-form.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/quality/unqualifiedprocess/examineApproveform.vue 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/quality/unqualifiedprocess/index.vue 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/quality/unqualifiedprocess/loaction-form.vue 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/quality/unqualifiedprocess/unqualifiedprocessform.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/technology/completeproductstructure/completeproductstructure-form.vue 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/technology/completeproductstructure/index.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/technology/document/checkStandardTable.vue 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/technology/document/document-form.vue 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/technology/document/extendsOperation.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/technology/document/extendsTestStandard.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/technology/document/extendsTestStandardParam.vue 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/technology/document/index.vue 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/technology/document/teststandard.vue 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/technology/routing/index.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/technology/structure/index.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/technology/structure/single-structure-form.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/warehouse/FinishedDelivery/index.vue 62 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/warehouse/FinishedWarehousing/index.vue 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/warehouse/changestock/index.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/warehouse/check/check-detail.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/warehouse/pallettransports/ifslocation-form.vue 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/warehouse/pallettransports/ifsstock-form.vue 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/warehouse/pallettransports/index.vue 21 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/warehouse/returnstock/ifslocation-form.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/warehouse/returnstock/index.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/warehouse/returnstock/returnstock-form.vue 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/warehouse/returnstock/stock-part.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/warehouse/stock/index.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/warehouse/stock/print-label-form.vue 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/warehouse/stock/small-print-label-form.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/warehouse/stock/small-warehousing-label-form.vue 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/warehouse/stock/stock-table.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/warehouse/stock/warehousing-label-form.vue 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/zte/pkgidbind/index.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
vue.config.js 46 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/api/plan/operationtask.js
@@ -294,3 +294,9 @@
    params: query
  })
}
export function getTechnologyRouting(id) {
  return request({
    url: '/mes/operationTask/getTechnologyRouting/'+id,
    method: 'get',
  })
}
src/api/plan/productionschedul.js
@@ -21,4 +21,19 @@
    method: 'put',
    data: data
  })
}
export function deleteSchedul(mId) {
  return request({
    url: '/mes/productionSchedul/'+mId,
    method: 'delete',
  })
}
export function updateSchedul(data) {
  return request({
    url: '/mes/productionSchedul/updateByMId',
    method: 'post',
    data: data
  })
}
src/api/product/handymantype.js
@@ -124,13 +124,14 @@
  return request({
    url: '/mes/product/isProductionCounting',
    method: 'get',
        params: query
    params: query
  })
}
export function qualifiedLocation(id) {
export function qualifiedLocation(query) {
  return request({
    url: '/mes/product/qualifiedLocation/' + id,
    method: 'get'
    url: '/mes/product/qualifiedLocation',
    method: 'get',
    params: query
  })
}
src/api/quality/finishedDelivery.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,9 @@
import request from '@/router/axios'
export function fetchList(query) {
  return request({
    url: '/mes/finishedIncome/page',
    method: 'get',
    params: query
  })
}
src/api/quality/finishedProduct.js
@@ -77,4 +77,12 @@
    responseType : 'blob',
    params: query
  })
}
export function updateLocationIdById(obj) {
  return request({
    url: '/mes/qualityFinishedInspect/'+obj.id,
    method: 'post',
    params: obj
  })
}
src/api/quality/packageInspect.js
@@ -36,4 +36,10 @@
    params: data
  })
}
export function getCustomer(id) {
  return request({
    url: '/mes/packageInspect/getcustomer/'+id,
    method: 'get',
  })
}
src/components/verifition/Verify/VerifyPoints.vue
@@ -224,7 +224,6 @@
                    let y =Math.round(155 * p.y/parseInt(imgSize.imgHeight))
                    return {x,y}
                })
                // console.log(newPointArr,"newPointArr");
                return newPointArr
            }
        },
src/const/crud/admin/sys-public-param.js
@@ -21,7 +21,6 @@
var validateParam = (rule, value, callback) => {
  getObj(value).then((response) => {
    console.log('window.boxType', window.boxType)
    if (window.boxType === 'edit') callback()
    const result = response.data.data
    if (result !== null) {
src/const/crud/customerOrder/customerOrderForm.js
@@ -17,6 +17,7 @@
export const tableOption = {
  border: true,
  index: true,
  indexFixed: false,
  height: '292px',
  indexLabel: '序号',
  menuAlign: 'center',
@@ -91,7 +92,7 @@
    dataType: 'number',
    minWidth: 200,
    span: 24,
    rules:[{message:'类型必须是数字',trigger:'blur'}]
    rules:[{required:true,message:'类型必须是数字',trigger:'blur'}]
  }, {
    label: '收货地址',
    prop: 'shippingAddress',
src/page/full-screen/fullScreenPlus.vue
@@ -1033,7 +1033,6 @@
    that.carousel()
    // that.createCharts()
    setInterval(() => {
      // console.info("刷新:" + new Date());
      // that.init()
    }, 30000)
  },
src/page/index/logo.vue
@@ -71,7 +71,6 @@
  },
  created() {
    this.sysTitle = localStorage.getItem('SYSTEM_LOGO_TITLE')
    console.log('userInfouserInfo', this.userInfo)
    // this.getLogoInfo()
  },
  methods: {
@@ -81,7 +80,6 @@
      this.iconNameEn = null
      getByStaffId(this.userInfo.staffId).then((response) => {
        const resData = response.data.data
        console.log('resData', resData)
        if (resData != null) {
          this.logSrc = resData.fileAddress
          this.iconNameCn = resData.iconNameCn
@@ -120,7 +118,7 @@
  width: 220px;
  height: 64px;
  line-height: 64px;
  background-color: #006eff;
  background-color: #875a7b;
  font-size: 20px;
  overflow: hidden;
  box-sizing: border-box;
@@ -151,7 +149,7 @@
    width: 220px;
    height: 64px;
    line-height: 64px;
    background-color: #006eff;
    background-color: #875a7b;
    font-size: 20px;
    overflow: hidden;
    box-sizing: border-box;
src/page/index/sidebar/sidebarItem.vue
@@ -122,8 +122,6 @@
      return validatenull(val)
    },
    open(item) {
      console.log(item[this.labelKey])
      console.log(item[this.pathKey])
      if (this.screen <= 1) this.$store.commit('SET_COLLAPSE');
      this.$router.$avueRouter.group = item.group;
      if(item[this.labelKey]=='工作台'){
src/page/login/index.vue
@@ -99,7 +99,7 @@
          })
      },
      error: function(XMLHttpRequest, textStatus, errorThrown) {
        console.log('访问马上聊出错')
        console.error('访问马上聊出错')
      }
    })
  },
src/page/login/thirdpartylogin.vue
@@ -11,7 +11,6 @@
  },
  created() {
    this.initLogin()
    console.log(this.SSO)
  },
  computed: {
    ...mapGetters(['tagWel'])
@@ -19,7 +18,6 @@
  methods: {
    initLogin() {
      const code = this.SSO.split('&')[0].split('=')[1]
      console.log(code)
      if (code) {
        this.$store.dispatch('LoginBySSO', code).then(() => {
src/util/elAttr.js
@@ -2,9 +2,9 @@
  let t = ele.offsetTop
  let l = ele.offsetLeft
  ele = ele.offsetParent
  console.log(t)
  console.log(l)
  console.log(ele)
  // console.log(t)
  // console.log(l)
  // console.log(ele)
  while (ele != null) {
    t += ele.offsetTop
    l += ele.offsetLeft
src/views/accounting/unitworkfactor/index.vue
@@ -36,7 +36,6 @@
import QuotaForm from '@/views/accounting/unitworkfactor/updateQuota-form.vue'
import { mapGetters } from 'vuex'
import ttable from '@/views/common/ztt-table.vue'
import { remote } from '../../../api/admin/dict'
export default {
  data() {
src/views/accounting/unitworkfactor/unitworkfactor-form.vue
@@ -217,7 +217,7 @@
              })
              .catch((error) => {
                this.isSubmit = false
                console.log(error)
                console.error(error)
              })
          } else {
            addObj(this.dataForm)
@@ -229,7 +229,7 @@
              })
              .catch((error) => {
                this.isSubmit = false
                console.log(error)
                console.error(error)
              })
          }
        } else {
src/views/accounting/unitworkfactor/updateQuota-form.vue
@@ -72,7 +72,7 @@
            })
            .catch((error) => {
              this.isSubmit = false
              console.log(error)
              console.error(error)
            })
        } else {
          this.isSubmit = false
src/views/basic/company/index.vue
@@ -49,6 +49,7 @@
          isShowHide:true,//是否显示显影按钮
          isSearch:false,//高级查询按钮
          isCopy: true,
          isRefresh: true, // æ˜¯å¦æ˜¾ç¤ºåˆ·æ–°æŒ‰é’®
          defaultOrderBy:{column:'createTime',direction:'desc'}
        },
        table: {
@@ -108,6 +109,10 @@
    },
    methods: {
      hello(){
        if(this.multipleSelection.length < 1){
          this.$message.error("请先选择要复制的数据!")
          return
        }
        copy(this.multipleSelection).then(response =>{
          this.getData()
        })
src/views/basic/crew/crew-form.vue
@@ -24,11 +24,11 @@
        >确定</el-button
      >
    </span>
    <staffDialog
    <!-- <staffDialog
      :currshowlist.sync="showStaff"
      :multiSelect="true"
      @handleSelectionChange="selectStaff"
    />
    /> -->
  </el-dialog>
</template>
src/views/basic/discmaintenance/discmaintenance-form.vue
@@ -156,7 +156,7 @@
              })
              .catch((error) => {
                this.isSubmit = false
                console.log(error)
                console.error(error)
              })
          } else {
            addObj(this.dataForm)
@@ -168,7 +168,7 @@
              })
              .catch((error) => {
                this.isSubmit = false
                console.log(error)
                console.error(error)
              })
          }
        } else {
src/views/basic/division/index.vue
@@ -37,7 +37,7 @@
      multipleSelection: [],
      uploadInfo: {
        // æ˜¯å¦å±•示上传EXCEL以及对应的url
        isShow: true,
        isShow: false,
        url: '/mes/division/upload'
      },
      prelang: 'operation',
@@ -52,6 +52,7 @@
        seqNo: true,
        isShowHide: true, // æ˜¯å¦æ˜¾ç¤ºæ˜¾å½±æŒ‰é’®
        isSearch: false, // é«˜çº§æŸ¥è¯¢æŒ‰é’®
        isRefresh: true, // æ˜¯å¦æ˜¾ç¤ºåˆ·æ–°æŒ‰é’®
        defaultOrderBy: { column: 'createTime', direction: 'desc' }
      },
      table: {
src/views/basic/factory/index.vue
@@ -53,6 +53,7 @@
        seqNo: true,
        isShowHide: true, // æ˜¯å¦æ˜¾ç¤ºæ˜¾å½±æŒ‰é’®
        isSearch: false, // é«˜çº§æŸ¥è¯¢æŒ‰é’®
        isRefresh: true, // æ˜¯å¦æ˜¾ç¤ºåˆ·æ–°æŒ‰é’®
        defaultOrderBy: { column: 'createTime', direction: 'desc' }
      },
      table: {
src/views/basic/location/index.vue
@@ -44,7 +44,7 @@
      mulLocation: [],
      uploadInfo: {
        // æ˜¯å¦å±•示上传EXCEL以及对应的url
        isShow: true,
        isShow: false,
        url: '/mes/location/upload'
      },
      prelang: 'operation',
@@ -59,6 +59,7 @@
        seqNo: true,
        isShowHide: true, // æ˜¯å¦æ˜¾ç¤ºæ˜¾å½±æŒ‰é’®
        isSearch: true, // é«˜çº§æŸ¥è¯¢æŒ‰é’®
        isRefresh: true, // æ˜¯å¦æ˜¾ç¤ºåˆ·æ–°æŒ‰é’®
        defaultOrderBy: { column: 'createTime', direction: 'desc' }
      },
      table: {
src/views/basic/log/index.vue
@@ -266,7 +266,7 @@
    },
    // å¯¼å‡º
    documentHandle(event) {
      console.log(event)
      console.error(event)
      ifsLogExport({ type: event })
        .then((response) => {
          transform(response)
src/views/basic/param/index.vue
@@ -36,7 +36,7 @@
      isShowQuery: false,
      uploadInfo: {
        // æ˜¯å¦å±•示上传EXCEL以及对应的url
        isShow: true,
        isShow: false,
        url: '/mes/param/upload'
      },
      prelang: 'operation',
@@ -51,6 +51,7 @@
        seqNo: true,
        isShowHide: true, // æ˜¯å¦æ˜¾ç¤ºæ˜¾å½±æŒ‰é’®
        isSearch: true, // é«˜çº§æŸ¥è¯¢æŒ‰é’®
        isRefresh: true, // æ˜¯å¦æ˜¾ç¤ºåˆ·æ–°æŒ‰é’®
        defaultOrderBy: { column: 'createTime', direction: 'desc' }
      },
      table: {
src/views/basic/part/index.vue
@@ -93,7 +93,8 @@
        multiSelect: true, //
        seqNo: true,
        isShowHide: true, // æ˜¯å¦æ˜¾ç¤ºæ˜¾å½±æŒ‰é’®
        isSearch: false, // é«˜çº§æŸ¥è¯¢æŒ‰é’®
        isSearch: false, // é«˜çº§æŸ¥è¯¢æŒ‰é’®,
        isRefresh: true, // æ˜¯å¦æ˜¾ç¤ºåˆ·æ–°æŒ‰é’®
        defaultOrderBy: { column: 'id', direction: 'desc' }
      },
      table: {
@@ -190,7 +191,7 @@
            searchInfoType: 'text'
          },
          // ä¸€çº§åˆ†ç±»
          {
           {
            minWidth: '120',
            prop: 'assortment',
            label: '一级分类',
@@ -227,7 +228,7 @@
            optList: () => {
              return this.getThreeLevelClassification()
            }
          },
          },
          // è§„æ ¼
          {
            minWidth: '140',
@@ -239,7 +240,7 @@
            searchInfoType: 'text'
          },
          // åž‹å·
          {
          /* {
            minWidth: '140',
            prop: 'partModel',
            label: '型号',
@@ -301,7 +302,7 @@
            optList: () => {
              return this.lotTrackingIfsOptions
            }
          },
          }, */
          // ç‰ˆæœ¬å·
          {
            minWidth: '140',
@@ -311,7 +312,7 @@
            isTrue: true,
            isSearch: true,
            searchInfoType: 'text'
          },
          }/* ,
          // è®¡åˆ’方法
          {
            minWidth: '140',
@@ -325,9 +326,9 @@
            optList: () => {
              return this.planningMethodOptions
            }
          },
          }, */
          // å›¾å·
          {
         /*  {
            minWidth: '140',
            prop: 'drawingNumber',
            label: '图号',
@@ -355,9 +356,9 @@
            isTrue: true,
            isSearch: true,
            searchInfoType: 'text'
          },
          }, */
          // æ£€éªŒå‘˜
          {
          /* {
            minWidth: '140',
            prop: 'examiner',
            label: '检验员',
@@ -388,7 +389,7 @@
            isTrue: true,
            isSearch: true,
            searchInfoType: 'text'
          }
          } */
        ],
        toolbar: [
          {
@@ -448,15 +449,17 @@
  created() {
    this.table.column.find((e) => e.label === 'IFS启用批次管理').isTrue = false
    this.table.column.find((e) => e.label === '计划方法').isTrue = false
    this.getUnitType('unit')
    this.getMaterialType('material_type')
    this.getCategoryType('category')
    this.getAssortmentType('assortment')
    this.getPlanningMethodType('planning_method_type')
    this.getThreeLevelClassificationType('three_classification_type')
    this.getMaterialAttributeType()
    this.getExaminerDict('examiner_type')
  },
  mounted(){
    this.getUnitType('unit')
    this.getMaterialType('material_type')
    this.getMaterialAttributeType()
  },
  computed: {
    ...mapGetters(['permissions'])
  },
src/views/basic/part/part-form.vue
@@ -534,7 +534,6 @@
          // åŽ»é™¤é›¶ä»¶ç¼–å·ä¸¤è¾¹çš„ç©ºæ ¼
          this.dataForm.partNo = this.dataForm.partNo.trim()
          if (this.dataForm.id) {
            console.log(this.dataForm)
            putObj(this.dataForm)
              .then((data) => {
                this.$message.success('修改成功')
@@ -544,7 +543,7 @@
              })
              .catch((error) => {
                this.isSubmit = false
                console.log(error)
                console.error(error)
              })
          } else {
            addObj(this.dataForm)
@@ -556,7 +555,7 @@
              })
              .catch((error) => {
                this.isSubmit = false
                console.log(error)
                console.error(error)
              })
          }
        } else {
src/views/basic/part/print-label-form.vue
@@ -219,7 +219,6 @@
            startMeterMark: this.printLabelInfo.startMeterMark,
            endMeterMark: this.printLabelInfo.endMeterMark
          }
          console.log('this.dataForm', this.dataForm)
        })
      }
    }
@@ -230,7 +229,6 @@
  methods: {
    beginPrint() {
      this.LODOP = getLodop()
      console.log(this.dataForm)
      const qr = {
        part_no: this.dataForm.partNo,
        lot_batch_no: this.dataForm.ifsBatchNo,
src/views/basic/poc/index.vue
@@ -202,7 +202,6 @@
      this.currTreeNodeData = {}
    },
    handleNodeClick(data) {
      console.log('data', data)
      this.currTreeNodeData = data
    },
    addOperateParam() {
@@ -213,12 +212,10 @@
      }
    },
    deleteClick(row, index) {
      console.log()
      this.currTreeNodeData.paramList.splice(index, 1)
      this.$message.success('删除成功')
    },
    savePoc() {
      console.log('treeData', this.treeData)
      if (this.treeData[0].children.length > 0) {
        addObj(this.treeData).then((response) => {
          this.$message.success('保存成功')
src/views/basic/tabletest/index.vue
@@ -161,7 +161,6 @@
  },
  methods: {
    objectSpanMethod(data) {
      console.log('spanData', data)
      if (data[3] === 2) {
        if (data[2] % 2 === 0) {
          data[4]({
src/views/basic/template/index.vue
@@ -204,6 +204,7 @@
        seqNo: true,
        isShowHide: true, // æ˜¯å¦æ˜¾ç¤ºæ˜¾å½±æŒ‰é’®
        isSearch: true, // é«˜çº§æŸ¥è¯¢æŒ‰é’®
        isRefresh: true, // æ˜¯å¦æ˜¾ç¤ºåˆ·æ–°æŒ‰é’®
        defaultOrderBy: { column: 'id', direction: 'desc' }
      },
      table: {
@@ -605,7 +606,6 @@
    },
    // ä¿®æ”¹ä¿å­˜
    saveSample(index, row) {
      console.log('row', row)
      var obj = {}
      obj.technologyOperationParamId = row.id
      obj.technologyOperationTemplateId = row.technologyOperationTemplateId
src/views/basic/template/template-form.vue
@@ -136,7 +136,6 @@
      const templateType = this.templateTypeList.find(
        (item) => item.templateTypeName === currOperationTemplateType
      )
      console.log(templateType)
      if (templateType != undefined) {
        this.dataForm.dataType = templateType.dataType
      } else {
src/views/basic/warehouse/index.vue
@@ -39,7 +39,7 @@
      isShowQuery: false,
      uploadInfo: {
        // æ˜¯å¦å±•示上传EXCEL以及对应的url
        isShow: true,
        isShow: false,
        url: '/mes/warehouse/uploadExcel'
      },
      prelang: 'operation',
@@ -54,6 +54,7 @@
        seqNo: true,
        isShowHide: true, // æ˜¯å¦æ˜¾ç¤ºæ˜¾å½±æŒ‰é’®
        isSearch: true, // é«˜çº§æŸ¥è¯¢æŒ‰é’®
        isRefresh: true, // æ˜¯å¦æ˜¾ç¤ºåˆ·æ–°æŒ‰é’®
        defaultOrderBy: { column: 'createTime', direction: 'desc' }
      },
      table: {
src/views/basic/workstation/index.vue
@@ -37,7 +37,7 @@
      innerVisible: false,
      uploadInfo: {
        // æ˜¯å¦å±•示上传EXCEL以及对应的url
        isShow: true,
        isShow: false,
        url: '/mes/workstation/upload'
      },
      prelang: 'workstation',
src/views/basic/workstation/workstation-form.vue
@@ -1,10 +1,10 @@
<template>
  <el-dialog
    v-diadrag
    :title="!dataForm.id ? '新增' : '修改'"
    :close-on-click-modal="false"
    :visible.sync="visible"
    style="min-width: 2000px"
    width="60%"
    top="5vh"
  >
    <el-row>
      <el-form
@@ -416,7 +416,6 @@
        getObj(this.dataForm.id).then((response) => {
          if (this.dataForm) {
            this.dataForm = response.data.data
            console.log(this.dataForm)
            this.allEquipList = this.dataForm.equipments
            this.allFeedLocation = this.dataForm.locations
            this.allLocation = JSON.parse(
src/views/common/custom-table.vue
@@ -695,7 +695,6 @@
  },
  methods: {
    fieldInputEnter(prop, row) {
      console.log('sadasdasdsa')
      this.$emit('inputEnterEvent', { prop: prop, row: row })
    },
    onDragEnd() {
src/views/common/document.vue
@@ -61,7 +61,7 @@
      <el-button @click="innerVisible = false">取 æ¶ˆ</el-button>
      <el-button type="primary" @click="saveSelectRow">ç¡® å®š</el-button>
    </div>
    <DocumentDetail :currshowlist.sync="showDocument" :docId="documentId">
    <DocumentDetail :currshowlist.sync="showDocument" :docId="Number(documentId)">
    </DocumentDetail>
  </el-dialog>
</template>
@@ -151,7 +151,7 @@
            searchInfoType: 'text'
          },
          // ç»ç¼˜é¢œè‰²
          {
          /* {
            minWidth: '120',
            prop: 'insulationColor',
            label: '绝缘颜色',
@@ -169,7 +169,7 @@
            isTrue: true,
            isSearch: true,
            searchInfoType: 'text'
          },
          }, */
          {
            minWidth: '120',
            prop: 'version',
@@ -189,7 +189,7 @@
            isSearch: true,
            searchInfoType: 'text'
          },
          {
         /*  {
            minWidth: '120',
            prop: 'country',
            label: '国家',
@@ -197,7 +197,7 @@
            isTrue: true,
            isSearch: true,
            searchInfoType: 'text'
          },
          }, */
          {
            minWidth: '120',
            prop: 'state',
src/views/common/documentDetail.vue
@@ -52,7 +52,7 @@
                  ></el-input>
                </el-form-item>
              </el-col>
              <el-col :span="4">
              <!-- <el-col :span="4">
                <el-form-item label="项目类别" prop="projectType">
                  <el-select
                    v-model="dataForm.projectType"
@@ -74,7 +74,7 @@
                <el-form-item label="国家" prop="country">
                  <countrySelector v-model="dataForm.country"></countrySelector>
                </el-form-item>
              </el-col>
              </el-col> -->
            </el-row>
            <el-row>
              <el-col :span="5">
@@ -166,7 +166,7 @@
            >
              <TeststandardDialog
                :editable="editable"
                :documentId="Number(dataForm.id)"
                :documentId="Number(docId)"
              >
              </TeststandardDialog>
            </el-tab-pane>
@@ -374,7 +374,7 @@
                </el-collapse>
              </el-card>
            </el-tab-pane>
            <el-tab-pane label="图片上传" style="height: 100%">
            <!-- <el-tab-pane label="图片上传" style="height: 100%">
              <el-card class="document-structure">
                <div slot="header">
                  <span>结构图</span>
@@ -440,7 +440,7 @@
                  <img width="100%" :src="dialogFlowImageUrl" alt="" />
                </el-dialog>
              </el-card>
            </el-tab-pane>
            </el-tab-pane> -->
          </el-tabs>
        </div>
      </div>
@@ -874,7 +874,6 @@
      this.dialogStructureImageUrl = file.url
    },
    handleStructureSuccess(response, file, fileList) {
      console.log('上传成功')
    },
    handleStructureExceed(files, fileList) {
      this.$message.warning(
src/views/common/operationParamTemplate.vue
@@ -161,10 +161,8 @@
    },
    saveSelectRow() {
      if (this.multiSelect) {
        console.log("aaaaaaa--",this.multiSelect,this.multipleSelection)
        this.$emit('handleSelectionParamTemplateChange', this.multipleSelection)
      } else {
        console.log("bbbbbbb--",this.multiSelect,this.currentRow)
        this.$emit('listenToParamTemplateEvent', this.currentRow)
      }
      this.innerVisible = false
src/views/common/part.vue
@@ -202,24 +202,24 @@
            isSearch: true,
            searchInfoType: 'text'
          },
          {
            minWidth: '100',
            prop: 'drawingNumber',
            label: '图号',
            sort: true,
            isTrue: true,
            isSearch: true,
            searchInfoType: 'text'
          },
          {
            minWidth: '120',
            prop: 'ean',
            label: 'EAN编码',
            sort: true,
            isTrue: true,
            isSearch: true,
            searchInfoType: 'text'
          }
          // {
          //   minWidth: '100',
          //   prop: 'drawingNumber',
          //   label: '图号',
          //   sort: true,
          //   isTrue: true,
          //   isSearch: true,
          //   searchInfoType: 'text'
          // },
          // {
          //   minWidth: '120',
          //   prop: 'ean',
          //   label: 'EAN编码',
          //   sort: true,
          //   isTrue: true,
          //   isSearch: true,
          //   searchInfoType: 'text'
          // }
        ],
        materialTypeList: [],
        materialAttributeList: []
src/views/common/rawMaterial-part.vue
@@ -194,8 +194,6 @@
        }
      },
      saveSelectRow() {
        // console.log(this.multipleSelection);
        console.log();
        if (this.multiSelect) {
          this.$emit('handleSelectionChange', this.multipleSelection)
        } else {
src/views/common/search-select.vue
@@ -106,13 +106,11 @@
  },
  created() {},
  mounted() {
    console.log(this.option)
  },
  methods: {},
  watch: {
    'option.data': {
      handler(val) {
        console.log(val)
        // å¼ºåˆ¶æ”¹ä¸ºNumber类型,不然页面展示的是字符串id
        this.option.select = Number(
          this.dataForm.id || this.$route.params.id || this.$route.query.id || 0
@@ -120,12 +118,6 @@
        if (this.option.select === 0) {
          this.option.select = ''
        }
        console.log(
          this.option.data.length,
          this.option.select,
          'SearchSelectOption'
        )
      },
      deep: true
    }
src/views/common/teststandardradio.vue
@@ -44,7 +44,7 @@
            align="center"
            width="50"
          />
          <el-table-column label="线芯" prop="wireCore" align="center" />
          <!-- <el-table-column label="线芯" prop="wireCore" align="center" /> -->
          <el-table-column label="参数编号" prop="code" align="center" />
          <el-table-column label="参数项" prop="parameterItem" align="center" />
          <el-table-column
@@ -57,8 +57,8 @@
            prop="parameterFormat"
            align="center"
          />
          <el-table-column label="通道" prop="aisle" align="center" />
          <el-table-column label="部位" prop="position" align="center" />
          <!-- <el-table-column label="通道" prop="aisle" align="center" />
          <el-table-column label="部位" prop="position" align="center" /> -->
          <el-table-column label="单位" prop="unit" align="center" />
        </el-table>
      </el-col>
src/views/common/ztt-table.vue
@@ -397,6 +397,7 @@
        @size-change="sizeChangeHandle"
        :page-sizes="[10, 20, 50, 100]"
        :page-size="pagination.pageSize"
        :page-count="pagination.size"
        :layout="
          size
            ? 'total, prev, pager, next'
@@ -718,6 +719,7 @@
        currentPage:
          this.table.currentPage == null ? 1 : this.table.currentPage,
        pageSize: this.table.pageSize == null ? 20 : this.table.pageSize,
        size: this.table.size == null ? 7 : this.table.size,
        total: this.table.total == null ? 0 : this.table.total
      }, // åˆ†é¡µä¿¡æ¯
      inMemoryColWidth: {}, // è®°å¿†ä¸­åˆ—宽,默认列宽
@@ -1401,7 +1403,6 @@
            }
          }
        }
        console.log(this.multipleSelection)
        this.$emit('handleSelectionChange', this.multipleSelection)
      } else {
        this.multipleSelection = val
@@ -1536,7 +1537,6 @@
          }
        }
      }
      console.log(this.columnList);
      this.tableKey = Math.random()
      // this.$forceUpdate();
      const currPathColumnOrder = this.currPath + '_column'
@@ -1578,10 +1578,18 @@
      if (response.code != '0') {
        this.$message.warning(response.msg)
      } else {
      if(response.data!=""&&response.data!=[]&&response.data!=null){
        this.$message({
          message: response.data,
          type: 'success'
        })
      }else{
        this.$message({
          message: '上传成功',
          type: 'success'
        })
      }
        this.importDialogVisible=false
        this.getDataList()
      }
      this.$refs.uploadScan.clearFiles()
src/views/equipment/equipment/index.vue
@@ -18,9 +18,11 @@
        ref="addOrUpdate"
        @refreshDataList="getData"
      ></table-form>
      <el-dialog title="标签列表" :visible.sync="diaPrintTab" width="500px">
    </basic-container>
    <el-dialog title="标签列表" :visible.sync="diaPrintTab" width="500px" top="5vh">
      <div style="width:100%;height:400px;overflow-y: auto;">
        <div class="dia_body" id="printRaw">
          <el-card class="box-card" v-for="(tem, i) in multipleSelection" :key="i" style="margin-bottom: 30px; font-size: 16px !important;">
          <el-card class="box-card" v-for="(tem, i) in multipleSelection" :key="i" style="margin-bottom: 10px; font-size: 16px !important;">
            <el-row>
              <el-col :span="8" :offset="1">序号:</el-col>
              <el-col :span="7" style="font-weight: bold;">{{ tem.id }}</el-col>
@@ -41,12 +43,12 @@
            </el-row>
          </el-card>
        </div>
        <span slot="footer" class="dialog-footer">
          <el-button @click="diaPrintTab = false">取 æ¶ˆ</el-button>
          <el-button type="primary" @click="printFun">打 å°</el-button>
        </span>
      </el-dialog>
    </basic-container>
      </div>
      <span slot="footer" class="dialog-footer">
        <el-button @click="diaPrintTab = false">取 æ¶ˆ</el-button>
        <el-button type="primary" @click="printFun">打 å°</el-button>
      </span>
    </el-dialog>
  </div>
</template>
@@ -296,15 +298,17 @@
                  targetStyles:['*'],                 
                  style: `@page {
                    margin:0;
                    size: 360px 175px;
                    padding: 0;
                    size: 360px 170px;
                  }
                  hrml{
                  html{
                    zoom:100%;
                  }
                  @media print{
                    width: 360px;
                    height: 175px;
                    height: 170px;
                    margin:0;
                    padding: 0;
                  }`,
                  onPrintDialogClose: this.erexcel=false,
                  targetStyles: ["*"], // ä½¿ç”¨dom的所有样式,很重要
@@ -339,7 +343,6 @@
    },
    handleSelectionChange(val) {
      this.multipleSelection = val
      console.log(this.multipleSelection);
    },
    // æ–°å¢ž / ä¿®æ”¹
    addOrUpdateHandle(row) {
src/views/equipment/metering/index.vue
@@ -19,32 +19,34 @@
          @refreshDataList="getData"
        ></table-form>
      </basic-container>
      <el-dialog title="标签列表" :visible.sync="diaPrintTab" width="500px">
        <div class="dia_body" style="height: 400px;overflow-y: auto;padding: 0 10px;">
          <el-card class="box-card" v-for="(tem, i) in multipleSelection" :key="i" style="margin-bottom: 15px;">
            <el-row>
              <el-col :span="10" :offset="3">序号:</el-col>
              <el-col :span="10" style="font-weight: bold;">{{ i + 1 }}</el-col>
            </el-row>
            <el-row>
              <el-col :span="10" :offset="3">编号:</el-col>
              <el-col :span="10" style="font-weight: bold;">{{ tem.code }}</el-col>
            </el-row>
            <el-row>
              <el-col :span="10" :offset="3">设备名称:</el-col>
              <el-col :span="10" style="font-weight: bold;">{{ tem.name }}</el-col>
            </el-row>
            <el-row>
              <el-col :span="10" :offset="3">设备二维码:</el-col>
              <el-col :span="10">
                <vueQr :text="tem.code" :size="80" :margin="2"></vueQr>
              </el-col>
            </el-row>
          </el-card>
      <el-dialog title="标签列表" :visible.sync="diaPrintTab" width="500px" top="5vh">
        <div style="width:100%;height:400px;overflow-y: auto;">
          <div class="dia_body" id="printMetering">
            <el-card class="box-card" v-for="(tem, i) in multipleSelection" :key="i" style="margin-bottom: 10px; font-size: 16px !important;">
              <el-row>
                <el-col :span="10" :offset="3">序号:</el-col>
                <el-col :span="10" style="font-weight: bold;">{{ i + 1 }}</el-col>
              </el-row>
              <el-row>
                <el-col :span="10" :offset="3">编号:</el-col>
                <el-col :span="10" style="font-weight: bold;">{{ tem.code }}</el-col>
              </el-row>
              <el-row>
                <el-col :span="10" :offset="3">设备名称:</el-col>
                <el-col :span="10" style="font-weight: bold;">{{ tem.name }}</el-col>
              </el-row>
              <el-row>
                <el-col :span="10" :offset="3">设备二维码:</el-col>
                <el-col :span="10">
                  <vueQr :text="tem.code" :size="80" :margin="2"></vueQr>
                </el-col>
              </el-row>
            </el-card>
          </div>
        </div>
        <span slot="footer" class="dialog-footer">
          <el-button @click="diaPrintTab = false">取 æ¶ˆ</el-button>
          <el-button type="primary" @click="diaPrintTab = false">打 å°</el-button>
          <el-button type="primary" @click="printFun">打 å°</el-button>
        </span>
      </el-dialog>
    </div>
@@ -58,6 +60,7 @@
  import * as fecha from 'element-ui/lib/utils/date'
  import { remote } from '../../../api/admin/dict'
  import vueQr from 'vue-qr'
  import PrintJS from 'print-js'
  export default {
    data() {
      return {
@@ -82,7 +85,7 @@
          isRefresh: true, // æ˜¯å¦æ˜¾ç¤ºåˆ·æ–°æŒ‰é’®
          isShowHide: true, // æ˜¯å¦æ˜¾ç¤ºæ˜¾å½±æŒ‰é’®
          isSearch: false, // é«˜çº§æŸ¥è¯¢æŒ‰é’®
          defaultOrderBy: { column: 'manufactureDate', direction: 'desc' }
          defaultOrderBy: { column: 'id', direction: 'desc' }
        },
        table: {
          total: 0,
@@ -321,6 +324,32 @@
      })
    },
    methods: {
      printFun() {
          this.diaPrintTab = false;
          PrintJS({
              printable: 'printMetering',//页面
              type: "html",//文档类型
                maxWidth:450,
                targetStyles:['*'],
                style: `@page {
                  margin:0;
                  padding: 0;
                  size: 360px 170px;
                }
                html{
                  zoom:100%;
                }
                @media print{
                  width: 360px;
                  height: 170px;
                  margin:0;
                  padding: 0;
                }`,
                onPrintDialogClose: this.erexcel=false,
                targetStyles: ["*"], // ä½¿ç”¨dom的所有样式,很重要
                font_size: '',
          });
      },
      pullEquipFun(){
        this.table.toolbar.find((e) => e.text === '同步').loading = true
        pullEquip().then(res=>{
src/views/huawei/code19bind/list.vue
@@ -345,9 +345,7 @@
      })
    },
    print(row) {
      console.log(row)
      getPrintInfo(row ? row.id : row).then((res) => {
        console.log(res)
        this.$refs.printForm.printData(res.data.data)
        this.getData()
      })
src/views/huawei/code19gen/form.vue
@@ -166,7 +166,6 @@
    getCusMaterialCode() {
      getHwMaterialCode()
        .then((response) => {
          console.log(response)
          this.materialCodes = response.data.data
        })
        .catch(() => {})
src/views/huawei/grossweightcode/list.vue
@@ -311,10 +311,8 @@
      })
    },
    print(row) {
      console.log(row)
      this.currRow = row
      getPrintInfo(row ? row.id : row).then((res) => {
        console.log(res)
        if (res.data.data.needPwd) {
          this.hintMsg = res.data.data.hintMsg
          this.showTaskSecretForm = true
@@ -327,7 +325,6 @@
      })
    },
    confirmSecret(data) {
      console.log(data)
      this.$refs.printForm.printData(data)
    },
    // åˆ é™¤
src/views/huawei/grossweightcode/task-secret-form.vue
@@ -76,7 +76,6 @@
        checkSubmitPassword(this.password, this.grossweightcodeobj.id).then(
          (response) => {
            const resData = response.data
            console.log(resData)
            if (resData.code === 0) {
              this.$emit('confirmSecret', this.tackingList)
              this.innerVisible = false
src/views/oa/JiegouModal.vue
@@ -208,7 +208,6 @@
    // æ ¹æ®å·¥è‰ºæ–‡ä»¶id,查询工艺文件所有的信息
    getDocumentInfo(documentId) {
      getTechnology(documentId).then((response) => {
        console.log(response)
        const resData = response.data.data
        // this.dataForm = resData
        const bomRoutings = resData
src/views/oa/PeizhiModal.vue
@@ -219,7 +219,6 @@
          }
        }
        this.processConfigContentData.processConfigDataList = processConfigDataList
        console.log(this.processConfigContentData)
      })
    }
  }
src/views/oa/technology-document-new.vue
@@ -137,7 +137,6 @@
  },
  created() {
    document.title = '工艺详情'
    console.log(window.location.href)
    var url = window.location.href
    var param = url.split('?')[1]
    if (param) {
src/views/oa/technology-document.vue
@@ -450,7 +450,6 @@
  },
  created() {
    document.title = '工艺文件审核'
    console.log(window.location.href)
    var url = window.location.href
    var param = url.split('?')[1]
    const params = param.split('&')
@@ -473,7 +472,6 @@
      getDocumentForOa(id).then((response) => {
        if (response.data.code === 0) {
          const resData = response.data.data
          console.log(resData)
          const bomRoutings = resData.bomRoutings
          const testStandards = resData.testStandards
          const materialCosts = resData.materialCosts
@@ -577,7 +575,6 @@
            }
          }
          this.processConfigContentData.processConfigDataList = processConfigDataList
          console.log(this.processConfigContentData)
        }
      })
    },
@@ -638,15 +635,12 @@
        i = i + keyValues.length
      }
      this.materialCostList = allKeyValues
      console.log(this.rowColSplitNodes)
      console.log(this.materialCostList)
    },
    technologyDocumentSpanMethod({ row, column, rowIndex, columnIndex }) {
      if (columnIndex === 0 || columnIndex === 1) {
        var rowColSplitNode = this.rowColSplitNodes.find(
          (item) => item.key == row.bomId && item.node === rowIndex
        )
        console.log(row.bomId, rowIndex)
        if (rowColSplitNode !== undefined) {
          return {
            rowspan: rowColSplitNode.num,
src/views/plan/customer/index.vue
@@ -242,7 +242,6 @@
    },
    handleSelectionChange(val) {
      this.multipleSelection = val
      console.log(this.multipleSelection);
    },
    // åˆ é™¤
    deleteHandle(row) {
src/views/plan/customerorder/confirm-pull-customerorder.vue
@@ -70,7 +70,7 @@
          })
          .catch((error) => {
            this.isSubmit = false
            console.log(error)
            console.error(error)
          })
      } else {
        this.isSubmit = false
src/views/plan/customerorder/customerorder-config-history.vue
@@ -243,7 +243,6 @@
            }
          }
          const tableData = this.$refs.commonPartTable.getTableData()
          console.log(tableData)
          // åˆ¤æ–­é¢‘率列数
          let cnt = 0
          for (let i = 0; i < tableData.length; i++) {
@@ -312,7 +311,6 @@
            })
          }
          this.table.column = this.table.column.concat(extCol)
          // console.log(this.table.column)
        })
      }
    },
src/views/plan/customerorder/customerorder-form.vue
@@ -1038,9 +1038,7 @@
            // if (response.data.data.customerOrderList != null) {
            //   this.dataForm = response.data.data.customerOrderList
            //
            //   console.log('0')
            //   if (this.dataForm.OrderOrContract) {
            //     console.log('1')
            //     // å°†è®¢å•还是合同转义
            //     if (this.dataForm.OrderOrContract == '0') {
            //       this.dataForm.OrderOrContract = '合同'
@@ -1049,7 +1047,6 @@
            //     }
            //   }
            // } else {
            //   console.log('2')
            this.dataForm = response.data.data
            // }
@@ -1198,7 +1195,6 @@
      this.showPart = true
    },
    selectPart(part) {
      console.log(part);
      if (part) {
        this.dataForm.partNo = part.partNo
      }
@@ -1352,7 +1348,6 @@
    // ä¿å­˜é…ç½®å•
    saveConfig() {
      const configId = this.configContent.id
      console.log(this.configContent)
      for (
        let i = this.configContent.processConfigDataList.length - 1;
        i >= 0;
@@ -1368,7 +1363,6 @@
      }
      if (configId) {
        newProcessConfigEditOne(this.configContent).then((res) => {
          console.log(res)
          if (res.data.code === 0) {
            this.$message.success('保存成功')
            this.init(this.configContent.orderId)
@@ -1378,7 +1372,6 @@
        })
      } else {
        newProcessConfigAddOne(this.configContent).then((res) => {
          console.log(res)
          if (res.data.code === 0) {
            this.$message.success('保存成功')
            this.init(this.configContent.orderId)
@@ -1403,7 +1396,6 @@
        } else {
          this.$message.error('该销售订单号下,没有其他订单行')
          /* const configId = this.configContent.id
          console.log(this.configContent)
          for (
            let i = this.configContent.processConfigDataList.length - 1;
            i >= 0;
@@ -1419,7 +1411,6 @@
          }
          if (configId) {
            newProcessConfigEdit(this.configContent).then((res) => {
              console.log(res)
              if (res.data.code === 0) {
                this.$message.success('保存成功')
                this.init(this.configContent.orderId)
@@ -1429,7 +1420,6 @@
            })
          } else {
            newProcessConfigAdd(this.configContent).then((res) => {
              console.log(res)
              if (res.data.code === 0) {
                this.$message.success('保存成功')
                this.init(this.configContent.orderId)
@@ -1441,7 +1431,6 @@
        }
      })
      /* const configId = this.configContent.id
      console.log(this.configContent)
      for (
        let i = this.configContent.processConfigDataList.length - 1;
        i >= 0;
@@ -1457,7 +1446,6 @@
      }
      if (configId) {
        newProcessConfigEdit(this.configContent).then((res) => {
          console.log(res)
          if (res.data.code === 0) {
            this.$message.success('保存成功')
            this.init(this.configContent.orderId)
@@ -1467,7 +1455,6 @@
        })
      } else {
        newProcessConfigAdd(this.configContent).then((res) => {
          console.log(res)
          if (res.data.code === 0) {
            this.$message.success('保存成功')
            this.init(this.configContent.orderId)
@@ -1529,7 +1516,6 @@
      // var param = Object.assign({ current: 1, size: 20 })
      // getProcessConfigPage(param).then((res) => {
      //   const list = res.data.data.records
      //   console.log(list)
      // })
    },
    // èŽ·å–ç¡®è®¤
src/views/plan/customerorder/customerorder-return.vue
@@ -82,7 +82,6 @@
        this.customerOrderList.forEach((item) => {
          ids.push(item.id)
        })
        console.log('this.userInfo.username', this.userInfo.username)
        const setDataForm = {
          customerOrderIds: ids,
          returnUser: this.userInfo.staffName,
src/views/plan/customerorder/customerorder-ztt-table.vue
@@ -1373,7 +1373,6 @@
            }
          }
        }
        console.log(this.multipleSelection)
        this.$emit('handleSelectionChange', this.multipleSelection)
      } else {
        this.multipleSelection = val
src/views/plan/customerorder/index.vue
@@ -690,7 +690,7 @@
          //   fun: this.packageExportHandle
          // },
          {
            text: '作废',
            text: '删除',
            type: 'text',
            size: 'small',
            fun: this.cancelHandle,
@@ -975,8 +975,6 @@
    },
    // åˆ›å»ºä¸»ç”Ÿäº§è®¡åˆ’
    masterPlanHandle() {
      console.log(this.multipleSelection);
      if (this.multipleSelection && this.multipleSelection.length > 0) {
        if (this.judgeCoState(this.multipleSelection)) {
          // åˆ¤æ–­ä¸€ä¸‹å‰©ä½™æ•°é‡æ˜¯å¦å¤§äºŽ0
@@ -1101,7 +1099,6 @@
          })
          if (flag) {
            checkOA(this.multipleSelection.map((e) => e.id)).then((res) => {
              console.log(res)
              if (!res.data.data.success) {
                this.$confirm(`${res.data.data.message}`, '提示', {
                  confirmButtonText: '确定',
@@ -1150,7 +1147,6 @@
    // ç®±ç ä¿¡æ¯å¯¼å‡º
    packageExportHandle(row) {
      console.log(row.otcQuantity)
      if (row.otcQuantity) {
        this.packageExport.visible = true
        this.packageExport.form = {
@@ -1579,7 +1575,6 @@
    },
    // å¯¼å‡ºå°è´¦
    exportStandBook() {
      // console.log(this.$refs.customerOrderTable.getQueryParam(),"SSS")
      // if (this.multipleSelection.length > 0) {
      //   let ids = ''
      //   this.multipleSelection.forEach((item) => {
src/views/plan/customerorder/other-customer-order-line.vue
@@ -149,7 +149,6 @@
    },
    updateCurrOrder() {
      const configId = this.configContent.id
      console.log(this.configContent)
      for (
        let i = this.configContent.processConfigDataList.length - 1;
        i >= 0;
@@ -165,7 +164,6 @@
      }
      if (configId) {
        newProcessConfigEditOne(this.configContent).then((res) => {
          console.log(res)
          if (res.data.code === 0) {
            this.innerVisible = false
            this.$message.success('保存成功')
@@ -176,7 +174,6 @@
        })
      } else {
        newProcessConfigAddOne(this.configContent).then((res) => {
          console.log(res)
          if (res.data.code === 0) {
            this.innerVisible = false
            this.$message.success('保存成功')
@@ -198,7 +195,6 @@
      if (orderIds.length > 0) {
        orderIds.push(this.customerOrderId)
        const configId = this.configContent.id
        console.log(this.configContent)
        for (
          let i = this.configContent.processConfigDataList.length - 1;
          i >= 0;
@@ -214,7 +210,6 @@
        }
        this.configContent.orderIdList = orderIds
        newProcessConfigEdit(this.configContent).then((res) => {
          console.log(res)
          if (res.data.code === 0) {
            this.innerVisible = false
            this.$message.success('保存成功')
src/views/plan/customerorder/sample-customerorder-form.vue
@@ -68,7 +68,7 @@
        <el-row>
          <el-col :span="6">
            <el-form-item label="业务员" prop="salesMan">
              <el-select @change="selsctionSales" filterable v-model="salesSelectData" style="width:100%">
              <el-select @change="selsctionSales" clearable filterable v-model="salesSelectData" style="width:100%">
                <el-option v-for="(item,index) in staffOptions" :key="index" :value="item.staffNo+','+item.staffName" :label="item.staffName"/>
              </el-select>
            </el-form-item>
@@ -538,23 +538,39 @@
    },
    // è¡¨å•提交
    dataFormSubmit() {
      this.buttonDisable = true
      this.$refs.dataForm.validate((valid) => {
        this.dataForm.customerOrderVOList = this.tableData
      const _than = this
      let isError = false
      _than.buttonDisable = true
      _than.tableData.forEach(ele=>{
        if(ele.buyQtyDue==null || ele.buyQtyDue=='' || ele.buyQtyDue==undefined){
          _than.$message.error("零件数量不能为空!")
          isError = true
        }else{
          var reg = /^\d+$/
          if(!reg.test(ele.buyQtyDue)){
            _than.$message.error("零件数量类型必须是数字!")
            isError = true
          }
        }
      })
      if(isError){
        _than.buttonDisable = false
        return
      }
      _than.$refs.dataForm.validate((valid) => {
        if (valid) {
          addObj(this.dataForm)
            .then((data) => {
              this.$message.success('添加成功')
              this.initDataForm();
              this.visible = false
              this.buttonDisable = false
              this.$emit('refreshDataList', 1)
            })
            .catch((error) => {
              this.buttonDisable = false
          _than.dataForm.customerOrderVOList = _than.tableData
          addObj(_than.dataForm).then((data) => {
              _than.$message.success('添加成功')
              _than.initDataForm();
              _than.visible = false
              _than.buttonDisable = false
              _than.$emit('refreshDataList', 1)
            }).catch((error) => {
              _than.buttonDisable = false
            })
        } else {
          this.buttonDisable = false
          _than.buttonDisable = false
        }
      })
    },
@@ -564,7 +580,6 @@
      this.showPart = true
    },
    selectPart(part) {
      console.log(part);
      const index = this.currentSelectRow
      if (part) {
        this.tableData[index].partNo = part.partNo
src/views/plan/customerorder/schedule-table.vue
@@ -230,19 +230,11 @@
        })
        this.dataForm.customer = JSON.parse(JSON.stringify(customerList))
      })
      // this.dataForm.forEach(item=>{
      //   console.log(1111);
      //       console.log("循环",item);
      //       item.qtyPlaned=item.buyQtyDue
      //   })
        console.log("data",this.dataForm);
    },
    dataFormSubmit() {
      this.isSubmit = true
      this.$refs.dataForm.validate((valid) => {
        if (valid) {
          // console.log(this.dataForm);
          // return
          checkSchedule(this.dataForm.customer)
            .then((res) => {
              if (res.data.data.success) {
src/views/plan/manfacturingorderstatement/index.vue
@@ -1,107 +1,66 @@
<template>
  <div class="mod-config">
    <basic-container>
      <div class="avue-crud">
        <el-row>
          <el-col :span="1">
            <div>
              <el-divider direction="vertical"></el-divider>
              <div
                style="float: left;height: 18px;font-size: 13px;line-height: 18px;font-weight: bold"
              >
                <span>销售订单</span>
              </div>
            </div>
          </el-col>
          <el-col :span="3">
            <div>
              <el-input
                clearable
                @keyup.enter.native="getDataList"
                v-model="paramObject.customerOrderNo"
                placeholder="销售订单"
                @clear="getDataList"
                style="width: 100%"
              >
              </el-input>
            </div>
          </el-col>
          <el-col :span="1" offset="1">
            <div>
              <el-divider direction="vertical"></el-divider>
              <div
                style="float: left;height: 18px;font-size: 13px;line-height: 18px;font-weight: bold"
              >
                <span>主计划号</span>
              </div>
            </div>
          </el-col>
          <el-col :span="3">
            <div>
              <el-input
                clearable
                @keyup.enter.native="getDataList"
                v-model="paramObject.mpsNo"
                placeholder="主计划号"
                @clear="getDataList"
                style="width: 100%"
              >
              </el-input>
            </div>
          </el-col>
          <el-col :span="1" offset="1">
            <div>
              <el-divider direction="vertical"></el-divider>
              <div
                style="float: left;height: 18px;font-size: 13px;line-height: 18px;font-weight: bold"
              >
                <span>车间订单</span>
              </div>
            </div>
          </el-col>
          <el-col :span="3">
            <div>
              <el-input
                clearable
                @keyup.enter.native="getDataList"
                v-model="paramObject.moNo"
                placeholder="车间订单"
                @clear="getDataList"
                style="width: 100%"
              >
              </el-input>
            </div>
          </el-col>
          <el-col :span="1" offset="1">
            <div>
              <el-divider direction="vertical"></el-divider>
              <div
                style="float: left;height: 18px;font-size: 13px;line-height: 18px;font-weight: bold"
              >
                <span>需求日期</span>
              </div>
            </div>
          </el-col>
          <el-col :span="3">
            <div>
              <el-date-picker
                clearable
                v-model="paramObject.requiredDate"
                type="datetimerange"
                start-placeholder="开始"
                end-placeholder="结束"
                value-format="yyyy-MM-dd HH:mm:ss"
                @change="feedDateChange($event)"
                size="mini"
                style="width:100px"
              >
              </el-date-picker>
            </div>
          </el-col>
          <el-col :span="2" offset="1">
            <el-button type="primary" @click="getDataList()">搜索</el-button>
          </el-col>
        </el-row>
      <div class="avue-crud" style="margin: 0px 10px">
        <el-form :model="paramObject" label-width="100px" label-position="right">
          <el-row>
            <el-col :span="5">
              <el-form-item label="销售订单">
                <el-input
                  clearable
                  @keyup.enter.native="getDataList"
                  v-model="paramObject.customerOrderNo"
                  placeholder="销售订单"
                  @clear="getDataList"
                  style="width: 100%"
                > </el-input>
              </el-form-item>
            </el-col>
            <el-col :span="5">
              <el-form-item label="主计划号">
                <el-input
                  clearable
                  @keyup.enter.native="getDataList"
                  v-model="paramObject.mpsNo"
                  placeholder="主计划号"
                  @clear="getDataList"
                  style="width: 100%"
                > </el-input>
              </el-form-item>
            </el-col>
            <el-col :span="5">
              <el-form-item label="车间订单">
                <el-input
                  clearable
                  @keyup.enter.native="getDataList"
                  v-model="paramObject.moNo"
                  placeholder="车间订单"
                  @clear="getDataList"
                  style="width: 100%"
                > </el-input>
              </el-form-item>
            </el-col>
            <el-col :span="5">
              <el-form-item label="需求日期">
                <el-date-picker
                  style="width:100%"
                  clearable
                  v-model="paramObject.requiredDate"
                  type="datetimerange"
                  start-placeholder="开始"
                  end-placeholder="结束"
                  value-format="yyyy-MM-dd HH:mm:ss"
                  @change="feedDateChange($event)"
                  size="mini"
                > </el-date-picker>
              </el-form-item>
            </el-col>
            <el-col :span="3" :offset="1">
              <el-button type="primary" @click="getDataList()">搜索</el-button>
            </el-col>
          </el-row>
        </el-form>
        <el-table
          :data="dataList"
          border
@@ -110,12 +69,14 @@
          class="l-mes-table"
          :height="screenHeight"
        >
          <el-table-column type="index" label="序号" width="50">
          <el-table-column type="index" label="序号" align="center" width="50">
          </el-table-column>
          <el-table-column
            prop="customerName"
            header-align="center"
            align="center"
            min-width="120"
            show-overflow-tooltip
            label="客户名称"
          >
          </el-table-column>
@@ -123,6 +84,8 @@
            prop="customerOrderNo"
            header-align="center"
            align="center"
            min-width="120"
            show-overflow-tooltip
            label="销售订单号"
          >
          </el-table-column>
@@ -130,6 +93,8 @@
            prop="mpsNo"
            header-align="center"
            align="center"
            min-width="120"
            show-overflow-tooltip
            label="主计划号"
          >
          </el-table-column>
@@ -137,6 +102,8 @@
            prop="partNo"
            header-align="center"
            align="center"
            min-width="120"
            show-overflow-tooltip
            label="零件号"
          >
          </el-table-column>
@@ -144,6 +111,8 @@
            prop="partName"
            header-align="center"
            align="center"
            min-width="120"
            show-overflow-tooltip
            label="零件名称"
          >
          </el-table-column>
@@ -151,6 +120,8 @@
            prop="qtyRequired"
            header-align="center"
            align="center"
            min-width="120"
            show-overflow-tooltip
            label="车间订单需求数量"
          >
          </el-table-column>
@@ -158,6 +129,8 @@
            prop="unit"
            header-align="center"
            align="center"
            min-width="120"
            show-overflow-tooltip
            label="单位"
          >
          </el-table-column>
@@ -165,6 +138,8 @@
            prop="requiredDate"
            header-align="center"
            align="center"
            min-width="120"
            show-overflow-tooltip
            label="需求日期"
          >
          </el-table-column>
@@ -172,6 +147,8 @@
            prop="moNo"
            header-align="center"
            align="center"
            min-width="120"
            show-overflow-tooltip
            label="车间订单号"
          >
          </el-table-column>
@@ -180,6 +157,8 @@
              prop="name"
              header-align="center"
              align="center"
              min-width="100"
              show-overflow-tooltip
              label="工序名称"
            >
            </el-table-column>
@@ -187,6 +166,8 @@
              prop="operationPartNo"
              header-align="center"
              align="center"
              min-width="100"
              show-overflow-tooltip
              label="工序零件号"
            >
            </el-table-column>
@@ -194,6 +175,8 @@
              prop="operationPartName"
              header-align="center"
              align="center"
              min-width="100"
              show-overflow-tooltip
              label="工序零件名称"
            >
            </el-table-column>
@@ -201,6 +184,8 @@
              prop="pda"
              header-align="center"
              align="center"
              min-width="100"
              show-overflow-tooltip
              label="工序需求数量"
            >
            </el-table-column>
@@ -208,6 +193,8 @@
              prop="plannedQuantity"
              header-align="center"
              align="center"
              min-width="100"
              show-overflow-tooltip
              label="工单的计划数量"
            >
            </el-table-column>
@@ -215,6 +202,8 @@
              prop="completedQuantity"
              header-align="center"
              align="center"
              min-width="100"
              show-overflow-tooltip
              label="工单的完成数量"
            >
            </el-table-column>
@@ -222,6 +211,8 @@
              prop="units"
              header-align="center"
              align="center"
              min-width="100"
              show-overflow-tooltip
              label="单位"
            >
            </el-table-column>
@@ -230,6 +221,8 @@
            prop="count"
            header-align="center"
            align="center"
            min-width="100"
            show-overflow-tooltip
            label="工序完成进度"
          >
          </el-table-column>
src/views/plan/manufacturingorder/auto-operationtask.vue
@@ -74,7 +74,7 @@
          </el-select>
        </template>
      </el-table-column>
      <el-table-column prop="locationId" label="库位" align="center">
     <!--  <el-table-column prop="locationId" label="库位" align="center">
        <template slot-scope="scope">
          <el-select
            v-model="scope.row.locationId"
@@ -92,7 +92,7 @@
            </el-option>
          </el-select>
        </template>
      </el-table-column>
      </el-table-column> -->
      <el-table-column
        prop="partNo"
        label="零件号"
@@ -124,7 +124,7 @@
      </el-table-column>
      <el-table-column prop="sunit" label="单位2" align="center">
      </el-table-column> -->
      <el-table-column prop="reelSpec" label="载具规格" align="center">
     <!--  <el-table-column prop="reelSpec" label="载具规格" align="center">
        <template slot-scope="scope">
          <el-input v-model="scope.row.reelSpec"></el-input>
        </template>
@@ -133,7 +133,7 @@
        <template slot-scope="scope">
          <el-input v-model="scope.row.discNum"></el-input>
        </template>
      </el-table-column>
      </el-table-column> -->
      <el-table-column prop="remark" label="备注" align="center">
        <template slot-scope="scope">
          <el-input v-model="scope.row.remark"></el-input>
@@ -527,7 +527,6 @@
  },
  watch: {
    currshowlist() {
      console.log('orderId', this.orderId)
      this.innerVisible = this.currshowlist
      if (this.selectionArray && this.selectionArray.length > 0) {
        this.operationTaskType = this.selectionArray[0].workshopTypeCode
@@ -541,7 +540,6 @@
            const resData = response.data
            if (resData.code === 0) {
              const autoTaskList = resData.data
              console.log(this.selectionArray)
              autoTaskList.forEach((item) => {
                this.operationData.push({
                  operationName: item.operationName,
src/views/plan/manufacturingorder/customerorder.vue
@@ -207,7 +207,7 @@
                  ></el-input
                ></el-form-item>
              </el-row>
            </el-card>
            <!-- </el-card> -->
          </el-tab-pane>
          <el-tab-pane label="附件" type="card" name="附件">
            <div style="display: flex;justify-content:flex-end;">
@@ -321,16 +321,6 @@
          </el-tab-pane>
        </el-tabs>
      </el-form>
      <span slot="footer" class="dialog-footer">
      <el-button @click="visible = false">取消</el-button>
      <el-button
        type="primary"
        :disabled="buttonDisable"
        v-thinclick="`dataFormSubmit`"
        v-if="editable"
        >确定</el-button
      >
    </span>
    </el-tab-pane>
  </el-tabs>
</template>
@@ -369,6 +359,8 @@
      fileList: [],
      title: '',
      orderParamList: [],
      progrecessFileLoading: false,
      editable: true,
      isFullScreen: false,
      visible: false,
      buttonDisable: false,
@@ -572,7 +564,6 @@
    //附件的查询
    downs(label, e){
      if(this.activeFileName=='附件'){
        console.log('1');
        getProcessConfigFile({
          orderNumber: this.dataForm.contractNo,
          lineNumber: this.dataForm.customerNo
src/views/plan/manufacturingorder/customize-param-template.vue
@@ -70,7 +70,6 @@
        })).then(response => {
          if (response.data.code === 0) {
            this.operationTemplateTypeList = response.data.data
            console.info( this.operationTemplateTypeList )
          }else{
            this.operationTemplateTypeList=[];
          }
src/views/plan/manufacturingorder/index.vue
@@ -22,8 +22,9 @@
            </el-button>
            <el-dropdown-menu slot="dropdown">
              <el-dropdown-item
                :key="index"
                :command="item.command"
                v-for="item in taskTypeArr"
                v-for="(item,index) in taskTypeArr"
                :disabled="canCreateTask"
                >{{ item.label }}</el-dropdown-item
              >
@@ -40,8 +41,9 @@
            </el-button>
            <el-dropdown-menu slot="dropdown">
              <el-dropdown-item
                :key="i"
                :command="item.command"
                v-for="item in stateTagArr"
                v-for="(item,i) in stateTagArr"
                :disabled="item.disabled"
                >{{ item.label }}</el-dropdown-item
              >
@@ -197,30 +199,76 @@
      </el-dialog>
    </basic-container>
    <!-- æ ‡ç­¾æ‰“印 -->
    <el-dialog title="标签列表" :visible.sync="diaPrintTab" width="500px">
      <div class="dia_body" style="height: 400px;overflow-y: auto;padding: 0 10px;">
        <el-card class="box-card" v-for="(item, i) in qrData" :key="i" style="margin-bottom: 15px;width:100%">
              <el-row>
                <el-col :span="10" :offset="3">序号:</el-col>
                <el-col :span="10" style="font-weight: bold;">{{ i + 1 }}</el-col>
              </el-row>
              <el-row>
                <el-col :span="10" :offset="3">车间订单号:</el-col>
                <el-col :span="10" style="font-weight: bold;">{{ item.moNo2 }}</el-col>
              </el-row>
              <el-row>
                <el-col :span="10" :offset="3">订单二维码:</el-col>
                <el-col :span="10">
                  <vueQr :text="JSON.stringify(item)" :size="80" :margin="2"></vueQr>
                </el-col>
              </el-row>
          </el-card>
    <el-dialog title="标签列表" :visible.sync="diaPrintTab" width="500px" top="5vh">
      <div style="width:100%;height: 400px;overflow-y: auto;">
        <div class="dia_body">
          <el-checkbox
          style="margin: 10px 5px;"
          :indeterminate="isIndeterminate"
          v-model="checkAll"
          @change="handleCheckAllChange">全选</el-checkbox>
          <el-checkbox-group @change="changePrintCode()" v-model="checkIndexList">
            <el-card class="box-card" v-for="(item, i) in qrData" :key="i" style="margin-bottom: 15px; font-size: 16px !important;">
                  <el-checkbox :label="i" :key="i" style="position: relative;top:-20px;left:5px"><br></el-checkbox>
                  <el-row>
                    <el-col :span="10" :offset="3">批次号</el-col>
                    <el-col :span="10" style="font-weight: bold;">{{ item.code.moNo2 }}</el-col>
                  </el-row>
                  <el-row>
                    <el-col :span="10" :offset="3">订单号:</el-col>
                    <el-col :span="10" style="font-weight: bold;">{{ item.orderNo }}</el-col>
                  </el-row>
                  <el-row>
                    <el-col :span="10" :offset="3">客户名称:</el-col>
                    <el-col :span="10" style="font-weight: bold;">{{ item.cName }}</el-col>
                  </el-row>
                  <el-row>
                    <el-col :span="10" :offset="3">零件名称:</el-col>
                    <el-col :span="10" style="font-weight: bold;">{{ item.pName }}</el-col>
                  </el-row>
                  <el-row>
                    <el-col :span="10" :offset="3">车间订单二维码:</el-col>
                    <el-col :span="10">
                      <vueQr :text="JSON.stringify(item.code)" :size="80" :margin="2"></vueQr>
                    </el-col>
                  </el-row>
            </el-card>
          </el-checkbox-group>
        </div>
      </div>
      <span slot="footer" class="dialog-footer">
        <el-button @click="diaPrintTab = false">取 æ¶ˆ</el-button>
        <el-button type="primary" @click="diaPrintTab = false">打 å°</el-button>
        <el-button type="primary" @click="printFun">打 å°</el-button>
      </span>
    </el-dialog>
    <div class="el-dialog__body" style="width:448.8px;overflow-y: auto;position: absolute;top:9999px;padding: 0;">
        <div id="printMOrder">
          <el-card class="box-card" v-for="(item, i) in checkDataList" :key="i" style="padding-top:0px;margin-bottom:10px;font-size: 16px !important;">
            <el-row style="font-size:12px;">
              <el-col :span="10" :offset="3">批次号</el-col>
              <el-col :span="10" style="font-weight: bold;">{{ item.code.moNo2 }}</el-col>
            </el-row>
            <el-row style="font-size:12px;">
              <el-col :span="10" :offset="3">订单号:</el-col>
              <el-col :span="10" style="font-weight: bold;">{{ item.orderNo }}</el-col>
            </el-row>
            <el-row style="font-size:12px;">
              <el-col :span="10" :offset="3">客户名称:</el-col>
              <el-col :span="10" style="font-weight: bold;">{{ item.cName }}</el-col>
            </el-row>
            <el-row style="font-size:12px;">
              <el-col :span="10" :offset="3">零件名称:</el-col>
              <el-col :span="10" style="font-weight: bold;">{{ item.pName }}</el-col>
            </el-row>
            <el-row style="font-size:12px;">
              <el-col :span="10" :offset="3">订单二维码:</el-col>
              <el-col :span="10">
                <vueQr :text="JSON.stringify(item.code)" :size="80" :margin="2"></vueQr>
              </el-col>
            </el-row>
          </el-card>
        </div>
      </div>
  </div>
</template>
@@ -250,12 +298,15 @@
import { getStore } from '@/util/store.js'
import { getObj as getSysParam } from '@/api/admin/sys-public-param'
import vueQr from 'vue-qr'
import PrintJS from 'print-js'
export default {
  data() {
    return {
      checkList: [],
      checkAll: false,
      isIndeterminate: true,
      checkDataList: [],
      checkIndexList: [],
      qrData: [],
      orderDatalist:[],
      diaPrintTab:false,
      showCustomerorder: false,
      paramObj: { customerList: null },
@@ -444,7 +495,7 @@
            isSearch: true,
            searchInfoType: 'text'
          },
          {
          /* {
            minWidth: '120',
            prop: 'printRequirement',
            label: '印字要求',
@@ -461,7 +512,7 @@
            isTrue: true,
            isSearch: true,
            searchInfoType: 'text'
          },
          }, */
           {
            minWidth: '120',
            prop: 'scrapQty',
@@ -536,7 +587,7 @@
            searchInfoType: 'text'
          },
          {
          /* {
            minWidth: '120',
            prop: 'outerColor',
            label: '外护颜色',
@@ -554,7 +605,7 @@
            isTrue: true,
            isSearch: true,
            searchInfoType: 'text'
          },
          }, */
          {
            minWidth: '120',
@@ -603,7 +654,7 @@
            searchInfoType: 'datetimerange',
            formatter: this.formatDutyDate
          },
          {
          /* {
            minWidth: '120',
            prop: 'bomConfirmStatus',
            label: 'BOM状态',
@@ -665,7 +716,7 @@
              }
              return formatVal
            }
          },
          }, */
          {
            minWidth: '200',
            prop: 'remark',
@@ -675,7 +726,7 @@
            isSearch: true,
            searchInfoType: 'text'
          },
          {
          /* {
            minWidth: '100',
            prop: 'oriIfsOrderNo',
            label: '原IFS订单号',
@@ -710,8 +761,8 @@
            isTrue: true,
            isSearch: true,
            searchInfoType: 'text'
          },
          {
          }, */
         /*  {
            minWidth: '100',
            prop: 'qtyApply',
            label: '申请数量',
@@ -719,7 +770,7 @@
            isTrue: true,
            isSearch: true,
            searchInfoType: 'text'
          },
          }, */
          {
            minWidth: '140',
            width: '120',
@@ -742,7 +793,7 @@
            searchInfoType: 'datetimerange',
            formatter: this.formatDutyDate
          },
          {
          /* {
            minWidth: '120',
            prop: 'ifsSync',
            label: '订单同步ERP',
@@ -816,7 +867,7 @@
              }
              return formatVal
            }
          },
          }, */
          {
            minWidth: '100',
            prop: 'factoryName',
@@ -1051,7 +1102,103 @@
  mounted() {
    // this.initQueryParams()
  },
  watch:{
    diaPrintTab(newVal){
      if(!newVal){
        this.qrData = []
        this.checkIndexList = []
        this.checkDataList = []
        this.isIndeterminate = true;
      }
    }
  },
  methods: {
    //全选
    handleCheckAllChange(val) {
      if(val){
        for(var i=0;i<this.qrData.length;i++){
          this.checkIndexList.push(i)
        }
        this.checkDataList = this.qrData
      }else{
        this.checkIndexList = []
        this.checkDataList = []
      }
      this.isIndeterminate = false;
    },
    //选择要打印的二维码
    changePrintCode(){
      let indexList = this.checkIndexList
      let arr = []
      indexList.forEach(i=>{
        arr.push(this.qrData[i])
      })
      this.checkDataList = arr
    },
    //打印方法
    printFun() {
        if(this.checkDataList.length < 1){
          this.$message.warning("请选择要打印的二维码")
          return
        }
        this.diaPrintTab = false;
        PrintJS({
            printable: 'printMOrder',//页面
            type: "html",//文档类型
              maxWidth:450,
              targetStyles:['*'],
              style: `@page {
                margin:0;
                size: 360px 175px;
              }
              html{
                zoom:100%;
              }
              @media print{
                width: 360px;
                height: 175px;
                margin:0;
              }`,
              onPrintDialogClose: this.erexcel=false,
              targetStyles: ["*"], // ä½¿ç”¨dom的所有样式,很重要
              font_size: '',
        });
    },
    //初始化二维码标签数据
    initQrData(data){
      this.qrData = []
      if(data){
        console.log(data);
        let index = Number(data.qtyRequired) + Number(data.scrapQty)
        if(index>0){
          for(var i=1;i<= index;i++){
            let obj = {
              orderNo: data.customerOrderNo,
              cName: data.customerName,
              pName: data.partName,
              code: {
                moNo: data.moNo,
                moNo2: null,
              }
            }
            let no = (i+"").padStart(3,'0')
            obj.code.moNo2 = data.moNo + no
            this.qrData.push(obj)
          }
        }
      }
    },
    //标签打印按钮
    labelPrint(){
      if(this.multipleSelection.length==0){
          this.$message.warning('请选择一条数据')
          return
      }
      let selection = this.multipleSelection
      let lastRow = selection[ selection.length - 1 ]
      this.initQrData(lastRow)
      this.diaPrintTab = true
    },
    getManufactureAttr(row, column, cellValue) {
      this.manufactureAttrs.forEach((obj) => {
        if (obj.value === cellValue) {
@@ -1168,7 +1315,6 @@
                getByMoIds([this.orderPlan.id]).then((repsonse) => {
                  const resData = repsonse.data.data
                  const resCode = repsonse.data.code
                  console.log("resData-----",repsonse);
                  if (resCode === 0) {
                    const _that = this
                    for (const key in resData) {
@@ -1400,36 +1546,8 @@
        }
      }
    },
    //初始化二维码标签数据
    initQrData(data){
      if(data){
        let index = Number(data.qtyRequired) + Number(data.scrapQty)
        if(index>0){
          for(var i=1;i<= index;i++){
            let obj = {
              moNo: data.moNo,
              moNo2: null,
            }
            let no = (i+"").padStart(3,'0')
            obj.moNo2 = data.moNo + no
            this.qrData.push(obj)
          }
        }
      }
    },
    // table自带事件
    handleSelectionChange(val) {
      console.log(val,"一行");
      let orderData = []
      orderData =val.map( el =>{
         return{
            moNo:el.moNo,
            qtyRequired: el.qtyRequired,
            scrapQty: el.scrapQty
         }
      })
     this.orderDatalist = orderData
     this.initQrData(orderData[0])
      // æ ¹æ®çŠ¶æ€ï¼Œç¦ç”¨è¡¨å¤´æŒ‰é’®
      // ç­›é€‰å‡ºé€‰ä¸­è®°å½•的状态
      var stateArr = val.map(function(value, index) {
@@ -1722,13 +1840,6 @@
        this.$message.error('上传失败')
      }
    },
    labelPrint(){
      if(this.multipleSelection.length==0){
          this.$message.warning('请选择一条数据')
          return
        }
      this.diaPrintTab = true
    }
  }
}
</script>
src/views/plan/manufacturingorder/order-operation-form.vue
@@ -114,7 +114,6 @@
  },
  watch: {
    currshowlist() {
      console.log('orderId', this.orderId)
      this.innerVisible = this.currshowlist
      if (this.currshowlist) {
        this.initData()
src/views/plan/manufacturingorder/productorder-form.vue
@@ -89,6 +89,7 @@
            <el-col :span="3">
              <el-form-item label="完成数量" prop="qtyFinished">
                <el-input-number
                  style= "width: 90%"
                  v-model="dataForm.qtyFinished"
                  placeholder=""
                  :controls="false"
@@ -107,7 +108,7 @@
                </el-date-picker>
              </el-form-item>
            </el-col>
            <el-col :span="6">
            <!-- <el-col :span="6">
              <el-form-item label="外护颜色" prop="outerColor">
                <el-input
                  readonly
@@ -124,10 +125,8 @@
                  placeholder=""
                ></el-input>
              </el-form-item>
            </el-col>
          </el-row>
          <el-row :gutter="10">
            <el-col :span="6">
            </el-col> -->
             <el-col :span="6">
              <el-form-item label="备注" prop="remark">
                <el-input v-model="dataForm.remark" placeholder=""></el-input>
              </el-form-item>
@@ -150,7 +149,8 @@
                </el-select>
              </el-form-item>
            </el-col>
            <el-col
          </el-row>
            <!-- <el-col
              :span="2"
              v-if="permissions.plan_manufacturingorder_bom_sure"
            >
@@ -175,8 +175,8 @@
                <el-switch v-model="dataForm.standardConfirmStatus">
                </el-switch>
              </el-form-item>
            </el-col>
            <el-col :span="2">
            </el-col> -->
            <!-- <el-col :span="2">
              <el-form-item
                label="IFS车间订单接收时报告工序"
                prop="isReportOperation"
@@ -185,7 +185,7 @@
                <el-switch v-model="dataForm.isReportOperation" disabled>
                </el-switch>
              </el-form-item>
            </el-col>
            </el-col> -->
            <!-- <el-col :span="2">
              <el-form-item label="BOM确认">
                <el-switch >
@@ -204,7 +204,7 @@
                </el-switch>
              </el-form-item>
            </el-col> -->
          </el-row>
        </div>
        <div class="productorder-detail">
          <el-card class="productorder-list">
@@ -226,15 +226,7 @@
                            <el-option
                              v-for="item in dataForm.routingList"
                              :key="item.id"
                              :label="
                                item.routingNo +
                                  '-' +
                                  item.bomTypeDb +
                                  '-' +
                                  item.alternativeNo +
                                  '-' +
                                  item.alternativeDesc
                              "
                              :label="item.routingNo "
                              :value="item.id"
                            >
                            </el-option>
@@ -1224,7 +1216,6 @@
    this.getBomTypeDbOptions()
    this.getManufactureAttrs('manufacture_attr_type')
    this.getSysParam(sysParam.IS_REPORT_OPERATION)
    // console.log(this.components);
  },
  watch: {
    'dataForm.partId'(newValue, oldValue) {
@@ -1239,9 +1230,6 @@
      }
    },
    components(newVal,oldVal){
      console.log("新",newVal);
      console.log("老",oldVal);
      console.log(this.components);
    },
    currentRouting(newValue, oldValue) {
      if (newValue && newValue.id) {
@@ -1292,7 +1280,6 @@
      if (newValue && newValue.id) {
        // æŸ¥è¯¢äº§å“ç»“构对应的组件
        getBom(newValue.id).then((response) => {
          console.log("查",this.components);
          // this.components = [response.data.data.tree]
        })
      }
@@ -2096,7 +2083,6 @@
    },
    // æ–°å¢žå·¥åº
    addOperation(operation) {
      console.log('operation', operation)
    },
    insertOperation(operation) {},
    structSelectionChange(val) {
src/views/plan/manufacturingorder/routing.vue
@@ -96,15 +96,15 @@
            isSearch: true,
            searchInfoType: 'text'
          },
          {
            minWidth: '100',
            prop: 'name',
            label: '工艺名称',
            sort: true,
            isTrue: true,
            isSearch: true,
            searchInfoType: 'text'
          },
          // {
          //   minWidth: '100',
          //   prop: 'name',
          //   label: '工艺名称',
          //   sort: true,
          //   isTrue: true,
          //   isSearch: true,
          //   searchInfoType: 'text'
          // },
          // å·¥è‰ºç±»åž‹
          {
            minWidth: '120',
src/views/plan/manufacturingorderapply/index.vue
@@ -232,7 +232,6 @@
      this.currRow = row
    },
    getCurrRow() {
      console.log('currRow', this.currRow)
    },
    filterHandler(value, row, column) {
      const property = column.property
src/views/plan/masterproductionschedule/auto-manufacturingorder.vue
@@ -417,7 +417,6 @@
    },
    getWorkShopOptions() {
      remote('work_shop').then((response) => {
        console.log("高压",response);
        if (response.data.code === 0) {
          this.workShopOptions = response.data.data
        } else {
src/views/plan/masterproductionschedule/index.vue
@@ -411,7 +411,7 @@
            isSearch: true,
            searchInfoType: 'text'
          },
          {
          /* {
            minWidth: '140',
            prop: 'inventoryReservedQuantity',
            label: '库存预留数量',
@@ -419,8 +419,8 @@
            isTrue: true,
            isSearch: false,
            searchInfoType: 'text'
          },
          {
          }, */
          /* {
            minWidth: '140',
            prop: 'outsourcingNumber',
            label: '委外数量',
@@ -428,7 +428,7 @@
            isTrue: true,
            isSearch: false,
            searchInfoType: 'text'
          },
          }, */
          {
            minWidth: '140',
            prop: 'manufacturingQuantity',
@@ -552,7 +552,7 @@
            isTrue: true,
            isSearch: true,
            searchInfoType: 'text'
          },
          }/* ,
          {
            minWidth: '140',
            prop: 'outerColor',
@@ -588,7 +588,7 @@
            isTrue: true,
            isSearch: true,
            searchInfoType: 'text'
          }
          } */
        ],
        toolbar: [],
        operator: [
src/views/plan/operationtask/gantt.vue
@@ -251,7 +251,6 @@
    this.onTaskDbclickEvents.push(
      gantt.attachEvent('onTaskDblClick', (id, e) => {
        const task = gantt.getTask(id)
        console.log(task)
        if (!task.parent) {
          //   this.$message.warning('所属资源展开后,才可进行编辑')
          return false
src/views/plan/operationtask/index.vue
@@ -352,7 +352,7 @@
            isSearch: true,
            searchInfoType: 'text'
          },
          {
          /* {
            minWidth: '120',
            prop: 'splannedQuantity',
            label: '计划数量2',
@@ -369,7 +369,7 @@
            isTrue: true,
            isSearch: true,
            searchInfoType: 'text'
          },
          }, */
          {
            minWidth: '120',
            prop: 'completedQuantity',
@@ -379,7 +379,7 @@
            isSearch: true,
            searchInfoType: 'text'
          },
          {
          /* {
            minWidth: '120',
            prop: 'discNum',
            label: '盘数',
@@ -387,8 +387,8 @@
            isTrue: true,
            isSearch: true,
            searchInfoType: 'text'
          },
          {
          }, */
          /* {
            minWidth: '120',
            prop: 'reelSpec',
            label: '载具规格',
@@ -396,7 +396,7 @@
            isTrue: true,
            isSearch: true,
            searchInfoType: 'text'
          },
          }, */
          {
            width: '130',
            prop: 'ratio',
src/views/plan/operationtask/operationtask-form.vue
@@ -763,7 +763,6 @@
    init(id, param, outPutBatchList, qtyPlaned) {
      if (param) {
                console.log(param);
        this.dataForm.ifsOrderNo = param.ifsOrderNo
        this.qtyRequired = param.qtyRequired
        this.dataForm.moId = param.id
@@ -779,6 +778,7 @@
            //              this.dataForm.partName = this.routingList.partName
            //              this.dataForm.partId = this.routingList.partId
            // åˆ¶é€ è®¢å•form创建的,自动带出工序
            console.log(this.routingOptions);
            if (param.selectedRoutingOperationId && this.routingOptions) {
              const option = this.routingOptions.find(
                (e) => e.id === param.selectedRoutingOperationId
src/views/plan/operationtask/task-material.vue
@@ -117,7 +117,6 @@
      this.showPart = true
    },
    delMaterial(row, index) {
      console.log('index', index)
      this.operationMaterialData.splice(index, 1)
    },
    // ç‰©æ–™é€‰ä¸­åŽçš„回调
src/views/plan/productionschedul/index.vue
@@ -4,12 +4,19 @@
      <el-row>
        <el-col :span="12">
          <div style="height:80vh;padding: 0px 10px;">
            <avue-crud :data="tableData" ref="crud" :option="option" :span-method="spanMethod"
            <avue-crud
            :data="tableData"
            ref="crud"
            :option="option"
            :span-method="spanMethod"
            @refresh-change="getData"
            @current-change="handleCurrentChange"
            @size-change="handleSizeChange"
            :page="page" 
            @selection-change="selectionRow"
            :table-loading="loading">
            <template #menu="{ row, index }">
              <el-button type="text" icon="el-icon-edit" size="small" @click="editHandle(row, index)">编辑</el-button>
              <el-button type="text" icon="el-icon-delete" size="small" @click="deleteHandle(row, index)">删除</el-button>
            </template>
          </avue-crud>
@@ -97,6 +104,31 @@
        <el-button type="primary" @click="confirmEditSchedul">ç¡® å®š</el-button>
      </span>
  </el-dialog>
  <el-dialog
    title="编辑"
    :visible.sync="editDialogVisible"
    width="50%">
    <el-form :model="editForm" label-width="120px">
      <el-row>
        <el-col :span="24">
          <el-form-item label="生产情况:">
            <el-input style="width:100%" placeholder="请输入生产情况" type="textarea" :row="2" v-model="editForm.productionStatus"></el-input>
          </el-form-item>
        </el-col>
      </el-row>
      <el-row>
        <el-col :span="24">
          <el-form-item label="生产程度:">
            <el-input style="width:100%" placeholder="请输入生产程度" type="textarea" :row="2" v-model="editForm.productionRoutine"></el-input>
          </el-form-item>
        </el-col>
      </el-row>
    </el-form>
    <span slot="footer" class="dialog-footer">
      <el-button @click="editDialogVisible = false">取 æ¶ˆ</el-button>
      <el-button type="primary" @click="confirmEdit()">ç¡® å®š</el-button>
    </span>
  </el-dialog>
  </div>
</template>
@@ -104,14 +136,21 @@
import {
  fetchScheduleList,
  fetchScheduleById,
  fillTime
  fillTime,
  deleteSchedul,
  updateSchedul
} from '@/api//plan/productionschedul'
import TableForm from './template-form'
import ttable from '@/views/common/ztt-table.vue'
import { mapGetters } from 'vuex'
export default {
    data() {
    return {
      editForm:{
        id: null,
        productionRoutine: null,
        productionStatus: null,
      },
      editDialogVisible: false,
      dialogVisible: false,
      scheduleList: [],
      scheduleEditList: [],
@@ -122,17 +161,20 @@
      page: {
        total: 10,
        currentPage: 1,
        pageSize: 10
        pageSize: 10,
        pagerCount: 5
      },
      option: {
        height: 400,
        selection: true,
        columnBtn: false,
        index: true,
        rowKey: 'product',
        indexFixed: false,
        selectionFixed: false,
        rowKey: 'mid',
        indexLabel: '序号',
        menuAlign: 'center',
        menuWidth: 100,
        menuWidth: 130,
        editBtn: false,
        delBtn: false,
        addBtn: false,
@@ -255,7 +297,6 @@
  },
  components: {
    ttable,
    TableForm,
  },
  computed: {
    ...mapGetters(['permissions']),
@@ -272,7 +313,15 @@
    this.rowCalc()
  },
  watch:{
    editDialogVisible(newVal){
      if(!newVal){
        this.editForm = {
          id: null,
          productionRoutine: null,
          productionStatus: null,
        }
      }
    }
  },
  mounted() {
@@ -280,6 +329,26 @@
  beforeDestroy() {
  },
  methods: {
    confirmEdit(){
      const _than = this
      updateSchedul(this.editForm).then(res=>{
        if(res.status===200){
          _than.$message.success("更新成功")
          _than.editDialogVisible = false
          _than.getData()
        }
      }).catch(error=>{
        console.error(error);
      })
    },
    editHandle(row,index){
      if(row){
        this.editForm.id = row.mid
        this.editForm.productionRoutine = row.productionRoutine
        this.editForm.productionStatus = row.productionStatus
        this.editDialogVisible = true
      }
    },
    openEditDialog(){
      this.scheduleEditList = JSON.parse(JSON.stringify(this.scheduleList))
      this.dialogVisible = true
@@ -287,8 +356,6 @@
    confirmEditSchedul(){
      let data = this.scheduleEditList
      let orderObj = this.multipleSelection[0]
      console.log("data---",data)
      console.log("orderObj-----",orderObj)
      let obj = {
        "documentActualTime": data[0].actualTime,
        "documentPlanTime": data[0].planTime,
@@ -310,7 +377,6 @@
        "productType": orderObj.productType,
        "projectName": orderObj.projectName
      }
      console.log("obj----->>>",obj);
      fillTime(obj).then(res=>{
        if(res.status===200){
          this.$message.success("更新成功")
@@ -394,12 +460,24 @@
      }
      return ''
    },
    handleSizeChange(val){
      if(val){
        this.page.pageSize=val
        this.getData()
      }
    },
    handleCurrentChange(val){
      if(val){
        this.page.currentPage=val
        this.getData()
      }
    },
    // èŽ·å–æ•°æ®åˆ—è¡¨
    getData() {
      this.loading = true
      let param = {
        size: 20,
        current: 1,
        size: this.page.pageSize,
        current: this.page.currentPage,
      }
      fetchScheduleList(param).then((res) => {
        this.tableData = res.data.data.records
@@ -409,17 +487,22 @@
      })
      this.loading = false
    },
    handleCurrentChange(val) {
      this.multipleSelection = val
    },
    // åˆ é™¤
    deleteHandle(row,index) {
      this.$confirm('是否确认删除', '提示', {
      const _than = this
      _than.$confirm('是否确认删除', '提示', {
        confirmButtonText: '确定',
        cancelButtonText: '取消',
        type: 'warning'
      }).then(function() {
        deleteSchedul(row.mid).then(res=>{
          if(res.status===200){
            _than.$message.success("删除成功")
            _than.getData()
          }
        }).catch(error=>{
          console.error(error)
        })
      })
    },
    //动态合并方法
@@ -490,6 +573,9 @@
}
</script>
<style>
.el-tag--small{
  display: none;
}
.basic-template-table .el-table__body .el-table__row td:first-child .cell {
  padding-left: 0px;
  padding-right: 0px;
src/views/plan/productionschedul/template-form.vue
ÎļþÒÑɾ³ý
src/views/plan/schedule/gantt.vue
@@ -434,7 +434,6 @@
      gantt.refreshData()
    },
    parseData() {
      console.log(this.$props.tasks)
      gantt.parse(this.$props.tasks)
    },
    clearAll() {
src/views/plan/schedulelookover/ganttview.vue
@@ -359,7 +359,6 @@
          return false
        }
        const parentTask = gantt.getTask(task.parent)
        console.log(parentTask)
        if (parentTask.$open == true) {
          // ä»»åŠ¡å±•å¼€çš„æƒ…å†µä¸‹ï¼Œæ‰èƒ½ç¼–è¾‘
          this.$emit('task-dbclick', task)
src/views/plan/segmentmerge/index.vue
@@ -1137,7 +1137,6 @@
          this.taskIds.push(item.id)
        })
        getOperationsByTaskIds({ ids: this.taskIds }).then((response) => {
          console.log('response', response.data)
          const resData = response.data.data
          resData.forEach((item) => {
            this.$set(item, 'commonChecked', false)
@@ -1668,7 +1667,6 @@
        ids.push(item.id)
      })
      getOperationsByTaskIds(ids).then((response) => {
        console.log('data', response.data)
      }) */
    },
    taskDetailHandleSelectionChange(val) {
src/views/plan/segmentmerge/operate-dialog.vue
@@ -108,7 +108,6 @@
    },
    getSegmentOperateData() {
      getOperationsByTaskIds({ ids: this.taskIds }).then((response) => {
        console.log('response', response.data)
        const resData = response.data.data
        resData.forEach((item) => {
          this.$set(item, 'commonChecked', false)
src/views/plan/segmentmerge/operation-technology-form.vue
@@ -215,7 +215,6 @@
          })
        }
      })
      console.log('resultList', resultList)
      if (resultList.length > 0 && resultList[0].routingList.length > 0) {
        let flag = true
        resultList.forEach((ele) => {
src/views/product/dutyrecord/index.vue
@@ -1022,7 +1022,6 @@
    salarySummaryList() {
      let r = JSON.parse(JSON.stringify(this.salarySummaryListRes))
      const Heji = this.getHeji_tab4(r)
      console.log(Heji)
      Heji.forEach((e) => {
        const idx = r.findLastIndex((x) => e.staffId === x.staffId)
        r = [...r.slice(0, idx + 1), e, ...r.slice(idx + 1)]
src/views/product/producttraceability/index.vue
@@ -1262,7 +1262,6 @@
          _that.selectedProductSystemNo = nodeData.key.split('_')[0]
          // const query = { systemNo: 'XT000131' }
          const query = { systemNo: nodeData.key.split('_')[0] }
          console.log(query)
          queryOperationTask(query)
            .then((response) => {
              var data = response.data
@@ -1356,7 +1355,6 @@
                  _that.paramTabs = []
                } else {
                  // å·¥æ­¥ä¿¡æ¯
                  console.log('nodeData', nodeData.batchNo)
                  _that.getStepRecords({
                    id: _that.currOperateTask.id,
                    sn: nodeData.batchNo.split('SN号:')[1]
@@ -1384,7 +1382,6 @@
            })
        }
      })
      console.log(param.diagram.selection)
    },
    // æ ¹æ®å·¥å•id,查询对应的工艺参数信息
    queryTechnologyInfo(taskId) {
@@ -1570,7 +1567,6 @@
    },
    // åˆ‡æ¢è¿½æº¯æ¨¡å¼
    changeTraceType() {
      console.log('traceType', this.traceType)
      this.changePart()
    },
    paramsTableHeaderStyle({ row, column, rowIndex, columnIndex }) {
src/views/product/producttraceability/traceability-diagram.vue
@@ -172,7 +172,6 @@
    updateModel: function(val) {
      // No GoJS transaction permitted when replacing Diagram.model.
      if (val instanceof go.Model) {
        console.log('ssss')
        this.diagram.model = val
      } else {
        var m = new go.GraphLinksModel()
src/views/product/workbench/batchproductout-form-new.vue
@@ -742,7 +742,6 @@
                              //     this.saveDisabled = false
                              //   })
                              //   .catch((error) => {
                              //     console.log('失败' + new Date().getTime())
                              //     this.saveDisabled = false
                              //   })
                            } else {
@@ -787,7 +786,6 @@
                                  //     this.saveDisabled = false
                                  //   })
                                  //   .catch((error) => {
                                  //     console.log('失败' + new Date().getTime())
                                  //     this.saveDisabled = false
                                  //   })
                                })
@@ -805,7 +803,6 @@
                          }
                        })
                        .catch((error) => {
                          console.log('失败' + new Date().getTime())
                          this.saveDisabled = false
                        })
                    } else {
@@ -821,7 +818,6 @@
                  }
                })
                .catch((error) => {
                  console.log('失败' + new Date().getTime())
                  this.saveDisabled = false
                })
            }
@@ -860,9 +856,6 @@
        spinner: 'el-icon-loading',
        background: 'rgba(0, 0, 0, 0.7)'
      })
      // console.log('==========')
      // console.log(nowListIndex)
      // console.log(oriList[nowListIndex])
      const list = []
      list.push(oriList[nowListIndex])
      // å°†æ•°æ®çš„盘数 åˆ†æˆæ®µåŽ æ›´æ–°æ­¤æ¬¡ç›˜æ•°
@@ -875,10 +868,6 @@
        }
      }
      // console.log(idx)
      // console.log(submitCount)
      // console.log(list)
      // console.log(listDisNumber)
      //
      // setTimeout(() => {
      //   loading.close()
@@ -903,9 +892,6 @@
          if (data.code == 0) {
            // è¿”回报工主表id,用于刷新页面
            var productMainId = data.data
            // console.log(idx)
            // console.log(submitCount)
            // console.log(listDisNumber)
            loading.close()
            // å·²å®Œæˆæ•°æ® æ¶ˆæ¯è®°å½•
            this.messageMap['' + nowListIndex] =
@@ -924,7 +910,6 @@
            } else {
              // æ‰¹é‡æäº¤å®Œæˆï¼Œåˆ·æ–°æŠ¥å·¥é¡µé¢æ•°æ®
              this.$emit('refreshProductOutputList', productMainId)
              console.log(this.messageMap)
              this.$message.success('新增成功')
              this.innerVisible = false
            }
@@ -936,7 +921,6 @@
        })
        .catch((error) => {
          loading.close()
          console.log('失败' + new Date().getTime())
          this.saveDisabled = false
          this.showError()
        })
@@ -981,7 +965,6 @@
              //     this.saveDisabled = false
              //   })
              //   .catch((error) => {
              //     console.log('失败' + new Date().getTime())
              //     this.saveDisabled = false
              //   })
            } else {
@@ -1022,7 +1005,6 @@
                  //     this.saveDisabled = false
                  //   })
                  //   .catch((error) => {
                  //     console.log('失败' + new Date().getTime())
                  //     this.saveDisabled = false
                  //   })
                })
@@ -1040,7 +1022,6 @@
          }
        })
        .catch((error) => {
          console.log('失败' + new Date().getTime())
          this.saveDisabled = false
        })
    }
src/views/product/workbench/batchproductout-form.vue
@@ -488,7 +488,6 @@
                productOuts.push(productOut)
              }
              productVo.productOutputList = productOuts
              console.log('dasdad', productVo)
              batchSaveProductOutput(productVo)
                .then((response) => {
                  var data = response.data
@@ -504,7 +503,6 @@
                  this.saveDisabled = false
                })
                .catch((error) => {
                  console.log('失败' + new Date().getTime())
                  this.saveDisabled = false
                })
            }
src/views/product/workbench/feed-form.vue
@@ -219,7 +219,6 @@
    pullFeed() {
      var partNoList = []
      var partNoLists
      console.log('this.dataList', this.dataList)
      for (var i = 0; i < this.dataList.length; i++) {
        partNoLists = this.dataList[i].partNo
        partNoList.push(partNoLists)
src/views/product/workbench/feed-pane.vue
@@ -1977,7 +1977,6 @@
            }
        },
        inputHandle(){
            console.log(this.currOperateTask);
            if (this.selectFeeds.length > 0) {
                var list = []
                this.selectFeeds.forEach(a=>{
src/views/product/workbench/feed-tab.vue
@@ -661,7 +661,6 @@
    }
  },
  created() {
    console.log('asdasdasdad')
    this.loadStockByWorkstation()
    this.loadFeedByWorkstation(this.workstationId)
  },
@@ -875,8 +874,6 @@
  watch: {
    workstationId() {
      if (this.workstationId) {
        console.log('sssssssss')
        this.loadStockByWorkstation()
        this.loadFeedByWorkstation(this.workstationId)
      }
src/views/product/workbench/handymantype.vue
@@ -224,7 +224,6 @@
    workstationId: {
      handler: function(newVal, oldVal) {
        if (this.workstationId) {
          console.log(`output->this.workstationId`,this.workstationId)
          getAllHandymanTemplate(
            Object.assign({ workstationId: this.workstationId })
          ).then((response) => {
src/views/product/workbench/index.vue
@@ -1487,7 +1487,8 @@
.warning-info {
  margin-left: 20px;
  font-size: 16px;
  font-size: 13px;
  font-weight: bold;
  color: red;
  letter-spacing: 3px;
}
@@ -1710,7 +1711,6 @@
            customerOrderNo: this.operateTaskForm.orderNumber
          }).then((res) => {
            const result = res.data.data
            console.log(result)
            result.forEach(function(item) {
              const obj = {
                key: item,
@@ -1718,7 +1718,6 @@
              }
              that.partNames.push(obj)
            })
            console.log(that.partNames)
          })
        }, 500)
      } else {
@@ -2216,7 +2215,6 @@
          (e) => e.id === this.dutyForm.workstationId
        ).workCenter
      }
      console.log(this.paramObj_StationSave)
      this.visible_StationSave = true
    },
    Select_StationSave() {
src/views/product/workbench/mould-pane.vue
@@ -630,7 +630,6 @@
        fetchList(query)
          .then((response) => {
            var data = response.data
            console.info(data)
            if (data.code === 0) {
              this.materialList = data.data.records
            } else {
src/views/product/workbench/operation-task-pane.vue
@@ -18,12 +18,9 @@
      <img class="selectedImg" src="/img/workbench/icon_selected.png" />
      <div class="header">
        <div>工单号:{{ item.taskNo }}</div>
        <!-- <div class="tag" :style="{ backgroundColor: getTagColor(item.planFinishDay) }">
          {{ getTagText(item.planFinishDay) }}
        </div> -->
        <el-alert
          center
          style="width: 80px;height:30px;line-height: 30px;"
          style="width: 80px;height:28px;line-height: 100%;font-size:10px"
          :title="getTagText(item.planFinishDay)"
          :type="getTagColor(item.planFinishDay)"
          effect="dark"
@@ -239,7 +236,7 @@
}
.status-change-div {
  width: 20%;
  max-width: 100px;
  max-width: 160px;
}
.status-change-div >>> .el-select {
  width: 100%;
@@ -553,16 +550,13 @@
          .then((res) => {
            if (!res.data.data) {
              changeSubmitState(taskId, true).then((res) => {
                console.log(res)
              })
              getDraftProductOut(taskId).then((response) => {
                console.log(response)
                const list = response.data.data || []
                if (list.length > 0) {
                  this.batchChangeSubmit(list, 0, currItem)
                } else {
                  changeSubmitState(taskId, false).then((res) => {
                    console.log(res)
                  })
                  currItem.statusAction = null
                  this.$message.warning('没有可提交的数据')
@@ -592,7 +586,6 @@
          .catch((error) => {
            console.log(error)
            changeSubmitState(taskId, false).then((res) => {
              console.log(res)
            })
          })
      }
@@ -615,7 +608,6 @@
            this.batchChangeSubmit(list, i, currItem)
          } else {
            changeSubmitState(this.taskID, false).then((res) => {
              console.log(res)
            })
            // æ‰¹é‡æäº¤å®Œæˆï¼Œåˆ·æ–°æŠ¥å·¥é¡µé¢æ•°æ®
            this.$emit('refreshReport')
@@ -625,7 +617,6 @@
          console.log(error)
          loading.close()
          changeSubmitState(this.taskID, false).then((res) => {
            console.log(res)
          })
          const errorMsg = '报工单号' + list[i].productNo + ':'
          this.$message.error(errorMsg + '处理失败')
src/views/product/workbench/product-record-form.vue
@@ -395,7 +395,6 @@
          endTime: this.endTime
          //   criteria: JSON.stringify(obj)
        }).then((res) => {
          console.log(res.data.data.length)
          if (res.data.data.length) {
            const arr = []
            arr.push(res.data.data[0])
@@ -407,7 +406,6 @@
            this.scanArr.push(res.data.data[0].id)
            this.idList = [...new Set(this.scanArr)]
            this.part = null
            console.log(this.idList)
          }
        })
      }
@@ -472,7 +470,6 @@
          templateType: this.currTemplateType
        })
      ).then((response) => {
        console.log(response)
        this.paramTemplatesList = response.data.data.records
      })
    },
@@ -507,7 +504,6 @@
          this.params = JSON.parse(JSON.stringify(list))
        }
      })
      console.log(this.selectedTemplateId)
    },
    getParamValuesi() {
      this.params = []
@@ -524,7 +520,6 @@
          this.params = JSON.parse(JSON.stringify(list))
        }
      })
      console.log(this.selectedTemplateIds)
    },
    saveProductRecord() {
      this.saveDisabled = true
@@ -661,11 +656,8 @@
        // this.part = val.systemNo + '   ' + val.outBatchNo
        this.part = val.outBatchNo
        this.productOutId = val.id
        console.log(this.part)
        const forData = []
        console.log(val)
        forData.push(val)
        console.log(forData)
        for (let i = 0; i < forData.length; i++) {
          if (!this.produceList.some((e) => e.id === forData[i].id))
            this.produceList.push(forData[i])
@@ -692,8 +684,6 @@
          }
        }
        // this.idList = [...new Set(arr)]
        console.log(this.outputPartsList)
        console.log(this.idList)
      }
    },
    selectProductOutPuts(val) {
@@ -705,11 +695,8 @@
        // this.part = val.systemNo + '   ' + val.outBatchNo
        this.parts = val.partBatchNo
        this.productOutId = val.id
        console.log(this.parts)
        const forData = []
        console.log(val)
        forData.push(val)
        console.log(forData)
        for (let i = 0; i < forData.length; i++) {
          if (!this.cutApartList.some((e) => e.id === forData[i].id))
            this.cutApartList.push(forData[i])
@@ -735,12 +722,9 @@
          }
        }
        // this.idLists = [...new Set(arr)]
        console.log(this.outputPartsList)
        console.log(this.idLists)
      }
    },
    handleDelete(index, row) {
      console.log(index, row)
      this.outputPartsList = this.outputPartsList.filter(
        (item) => item.id !== row.id
      )
@@ -749,8 +733,6 @@
      this.produceList = this.produceList.filter((item) => item.id !== row.id)
      this.cutApartList = this.cutApartList.filter((item) => item.id !== row.id)
      console.log(this.idList)
      console.log(this.outputPartsList)
    },
    // å›žè½¦æ¢è¡Œ
    nextFocus(index) {
@@ -774,9 +756,7 @@
          this.paramObj.endTime = this.getNowFormatDate()
          this.paramObjs.startTime = this.getNowFormatDate()
          this.paramObjs.endTime = this.getNowFormatDate()
          console.log(123456)
        } else if (this.createDateRangeArr.length !== 0) {
          console.log(123456)
          this.paramObj.startTime = this.createDateRangeArr[0]
            .split('-')
            .join('')
src/views/product/workbench/productout-form-by-batch.vue
@@ -672,7 +672,6 @@
                          }
                        })
                        .catch((error) => {
                          console.log('失败' + new Date().getTime())
                          this.saveDisabled = false
                        })
                    } else {
@@ -688,7 +687,6 @@
                  }
                })
                .catch((error) => {
                  console.log('失败' + new Date().getTime())
                  this.saveDisabled = false
                })
            }
@@ -744,9 +742,6 @@
          if (data.code == 0) {
            // è¿”回报工主表id,用于刷新页面
            var productMainId = data.data
            // console.log(idx)
            // console.log(submitCount)
            // console.log(listDisNumber)
            loading.close()
            // å·²å®Œæˆæ•°æ® æ¶ˆæ¯è®°å½•
            this.messageMap['' + nowListIndex] =
@@ -765,7 +760,6 @@
            } else {
              // æ‰¹é‡æäº¤å®Œæˆï¼Œåˆ·æ–°æŠ¥å·¥é¡µé¢æ•°æ®
              this.$emit('refreshTaskDetailInfoList')
              console.log(this.messageMap)
              this.$message.success('新增成功')
              this.innerVisible = false
            }
@@ -777,7 +771,6 @@
        })
        .catch((error) => {
          loading.close()
          console.log('失败' + new Date().getTime())
          this.saveDisabled = false
          this.showError()
        })
@@ -845,7 +838,6 @@
          }
        })
        .catch((error) => {
          console.log('失败' + new Date().getTime())
          this.saveDisabled = false
        })
    }
src/views/product/workbench/productout-form.vue
@@ -527,7 +527,6 @@
                productOuts.push(productOut)
              }
              productVo.productOutputList = productOuts
              console.log('dasdad', productVo)
              saveProductOutput(productVo)
                .then((response) => {
                  var data = response.data
@@ -543,7 +542,6 @@
                  this.saveDisabled = false
                })
                .catch((error) => {
                  console.log('失败' + new Date().getTime())
                  this.saveDisabled = false
                })
            } else {
src/views/product/workbench/productrecord-tab.vue
@@ -560,30 +560,25 @@
      //   dutyRecordId: this.isDutyFilter ? this.currentDutyRecord.id : null,
      //   workstationId: this.isWorkstationFilter ? this.workstationId : null
      // })
      // console.log(val, res)
      // this.productRecords = res.data.data
    },
    // å¤šé€‰åˆ é™¤
    select(selection, row) {
      console.log(selection, row)
      const arr = []
      // this.idList = []
      selection.forEach((item) => {
        arr.push(item.id)
      })
      this.idList = [...new Set(arr)]
      console.log(this.idList)
    },
    // å…¨é€‰åˆ é™¤
    selectAll(selection) {
      console.log(selection)
      const arr = []
      // this.idList = []
      selection.forEach((item) => {
        arr.push(item.id)
      })
      this.idList = [...new Set(arr)]
      console.log(this.idList)
    },
    async delAlls() {
      let isContinue = true
@@ -601,7 +596,6 @@
            isContinue = true
            // this.idList = []
            const res = await delAll(this.idList)
            console.log(res)
            this.getProductRecords()
            this.$message.success('删除成功!')
            this.idList = []
@@ -657,7 +651,6 @@
    },
    // èŽ·å–ç”Ÿäº§è®°å½•åˆ—è¡¨
    getProductRecords() {
      console.log(this.createDateRange)
      let templateJson
      if (this.createDateRange != null && this.createDateRange !== '') {
        templateJson = {
@@ -702,13 +695,11 @@
        item.toggleRowSelection(row)
      })
      const index = this.idList.indexOf(row.id)
      console.log(index)
      if (index >= 0) {
        this.idList.splice(index, 1)
      } else {
        this.idList.push(row.id)
      }
      console.log(this.idList)
      this.currProductRecordId = row.id
      this.paramValues = []
      var productRecordJson = {
@@ -745,7 +736,6 @@
    nextFocus(index) {
      index++
      this.$refs['reference_' + index].focus()
      // console.log(this.i)
    },
    // åˆ é™¤æŸæ¡ç”Ÿäº§è®°å½•
    delProductrecord(index, row) {
@@ -835,10 +825,8 @@
          //   JSON.stringify(paramValueArray)
          // )
          updateProductRecord(obj).then((response) => {
            console.log(this.idList)
            if (response.data.code === 0) {
              this.$message.success('修改成功')
              console.log(this.$refs.productRecordTable)
              this.$refs.productRecordTable.forEach((item) => {
                item.clearSelection()
              })
src/views/product/workbench/producttracking-tab.vue
@@ -947,7 +947,6 @@
    },
    handleSelectionChange(val) {
      this.multipleSelection = val
      console.info(this.multipleSelection)
    },
    // é€‰ä¸­æŠ¥å‘Š
    changeProductMain() {
src/views/product/workbench/shift-productout-form.vue
@@ -542,7 +542,6 @@
                productOuts.push(productOut)
              }
              productVo.productOutputList = productOuts
              console.log('dasdad', productVo)
              saveProductOutput(productVo)
                .then((response) => {
                  var data = response.data
src/views/product/workbench/splitTaskForm.vue
@@ -848,7 +848,6 @@
        const exsitMan = this.personBoardList.find((item) => {
          return item.staffId == this.userInfo.staffId
        })
        console.log('exsitMan', exsitMan)
        if (exsitMan) {
          const flag = this.checkProductQuality()
          if (flag) {
@@ -928,8 +927,6 @@
      }
    },
    taskTypeChange() {
      // console.log('sadasd')
      // this.$refs.sn_seach_input.focus()
      this.stockFieldInfo = null
      this.stockList = []
      this.splitResultList = []
src/views/product/workbench/taskinfo-pane.vue
@@ -1527,7 +1527,6 @@
    },
    // æ”¾å¤§å›¾ç‰‡
    openImg() {
      console.log('放大照片')
    },
    downloadProcessConfigFile(row) {
      downloadProcessConfigFile(
src/views/product/workbench/workReport-feed.vue
@@ -35,13 +35,13 @@
    >
      <el-table-column label="报工单号" prop="productNo" align="center">
      </el-table-column>
      <el-table-column
      <!-- <el-table-column
        label="序列号"
        prop="partBatchNo"
        align="center"
        :show-overflow-tooltip="true"
      >
      </el-table-column>
      </el-table-column> -->
      <el-table-column
        label="零件编号"
        prop="partNo"
@@ -57,7 +57,7 @@
      >
      </el-table-column>
      <el-table-column
        label="IFS批次号"
        label="批次号"
        prop="ifsBatchNo"
        align="center"
        :show-overflow-tooltip="true"
@@ -284,6 +284,7 @@
                this.$message.success('更新投入成功')
                // åˆ·æ–°æŠ•料信息
                this.$emit('refreshFeedsForDel')
                this.$emit('refreshTable')
              } else {
                this.$message.error('更新投入失败')
              }
@@ -305,6 +306,7 @@
                // currRow.id = data.data
                // åˆ·æ–°æŠ•料信息
                this.$emit('refreshFeedsForDel')
                this.$emit('refreshTable')
              } else {
                this.$message.error('添加投入失败')
              }
@@ -328,6 +330,7 @@
              this.$message.success('删除投入成功')
              // åˆ·æ–°æŠ•料信息
              this.$emit('refreshFeedsForDel')
              this.$emit('refreshTable')
            } else {
              this.$message.error('删除投入失败')
            }
@@ -350,6 +353,7 @@
        currRow.inputQuantity = currRow.availableStockQuantity
        currRow.availableStockQuantity = 0
      }
      this.$emit("refreshTable")
    }
  }
}
src/views/product/workbench/workReportCard.vue
@@ -170,10 +170,10 @@
        </el-table-column>
        <el-table-column label="零件名称" prop="partName" align="center" :show-overflow-tooltip="true">
        </el-table-column>
        <el-table-column label="序列号" prop="outBatchNo" align="center" width="120" :show-overflow-tooltip="true">
        <el-table-column label="批次号" prop="outBatchNo" align="center" width="120" :show-overflow-tooltip="true">
          <template slot-scope="scope">
            <el-input :id="'idReport_' + +scope.$index" :ref="'reference_' + scope.$index" v-if="scope.row.isEdit"
              v-model="scope.row.outBatchNo" placeholder="序列号"></el-input>
              v-model="scope.row.outBatchNo" placeholder="批次号"></el-input>
            <template v-if="!scope.row.isEdit">{{
              scope.row.outBatchNo
            }}</template>
@@ -443,7 +443,7 @@
      <shiftProductoutFormDialog :currshowlist.sync="showShiftProductForm" :productList="productList"
        :parentInfo="parentInfo" :currentDutyRecord="currentDutyRecord" :personBoardList="personBoardList"
        @refreshProductOutputList="refreshProductOutputList" />
      <workReportFeed v-if="searchFeed" ref="searchFeed" @refreshFeedsForDel="refreshFeedsForDel"></workReportFeed>
      <workReportFeed v-if="searchFeed" ref="searchFeed" @refreshTable="getBatchReport(5)" @refreshFeedsForDel="refreshFeedsForDel"></workReportFeed>
      <productOutFormDialog :currshowlist.sync="showProductForm" :productList="productList" :parentInfo="parentInfo"
        :currentDutyRecord="currentDutyRecord" :personBoardList="personBoardList"
@@ -456,8 +456,8 @@
    <div>
      <iframe id="frame" style="width:2480px;overflow:hidden;margin-top: 200px;" :src="jimusrc"></iframe>
    </div>
    <el-dialog title="产出合格库位" :visible.sync="dialogVisible" width="30%">
      <span>合格库位:</span>
    <el-dialog title="产出放入线边仓库位" :visible.sync="dialogVisible" width="30%">
      <span>移入线边仓库位:</span>
      <el-select v-model="locationIdValue" placeholder="请选择">
        <el-option v-for="item in options" :key="item.index" :label="`${item.locNo}+${item.locName}`" :value="item.id">
        </el-option>
@@ -3266,7 +3266,10 @@
          this.$message.error('最多只能选择1条记录进行提交!')
          return false
        } else {
          qualifiedLocation(this.multipleSelection[0].workstationId).then(res => {
          qualifiedLocation({
              workstationId: this.multipleSelection[0].workstationId,
              operationTaskId: this.currOperateTask.id
          }).then(res => {
            this.options = res.data.data
            if (this.options.length > 1) {
              this.dialogVisible = true
src/views/quality/Packaging_ledger/index.vue
@@ -71,23 +71,34 @@
              <el-table-column
                label="产品"
                prop="product"
                show-overflow-tooltip
                align="center"
              />
              <el-table-column
                label="产品编号"
                prop="productNo"
                show-overflow-tooltip
                align="center"
              >
              </el-table-column>
              <el-table-column
                label="批次号"
                prop="outBatchNo"
                show-overflow-tooltip
                align="center"
              >
              </el-table-column>
              <el-table-column
                label="规格型号"
                prop="specs"
                show-overflow-tooltip
                align="center"
              >
              </el-table-column>
              <el-table-column
                label="单位"
                prop="unit"
                show-overflow-tooltip
                align="center"
              >
              </el-table-column>
@@ -95,19 +106,16 @@
                label="数量"
                prop="number"
                align="center"
                show-overflow-tooltip
                width="80"
              >
                <template slot-scope="scope">
                  <el-input v-model="scope.row.number"></el-input>
                </template>
              </el-table-column>
              ></el-table-column>
              <el-table-column
                fixed="right"
                label="操作"
                align="center"
                width="80">
                <template slot-scope="scope">
                  <el-button @click="deleteadd(scope.row)"  size="small">删除</el-button>
                  <el-button type="text" @click="deleteadd(scope.row)" icon="el-icon-delete"  size="small">删除</el-button>
                </template>
              </el-table-column>
            </el-table>
@@ -128,23 +136,25 @@
        </packfromadd>
      </basic-container>
      <el-dialog title="标签列表" top="5vh" :visible.sync="diaPrintTab" width="500px">
        <div id="qrCard" class="dia_body" style="height: 400px;overflow-y: auto;padding: 0 10px;">
          <el-card class="box-card" v-for="(item, i) in qrData" :key="i" style="margin-bottom: 15px;">
            <el-row>
              <el-col :span="10" :offset="3">序号:</el-col>
              <el-col :span="10" style="font-weight: bold;">{{ i + 1 }}</el-col>
            </el-row>
            <el-row>
              <el-col :span="10" :offset="3">包装编号:</el-col>
              <el-col :span="10" style="font-weight: bold;">{{ item.packageNo }}</el-col>
            </el-row>
            <el-row>
              <el-col :span="10" :offset="3">二维码:</el-col>
              <el-col :span="10">
                <vueQr :text="JSON.stringify(item)" :size="120" :margin="1"></vueQr>
              </el-col>
            </el-row>
          </el-card>
        <div style="width:100%;height: 400px;overflow-y: auto;">
          <div id="qrCard" class="dia_body">
            <el-card class="box-card" v-for="(item, i) in qrData" :key="i" style="margin-bottom: 10px;">
              <el-row>
                <el-col :span="10" :offset="3">序号:</el-col>
                <el-col :span="10" style="font-weight: bold;">{{ i + 1 }}</el-col>
              </el-row>
              <el-row>
                <el-col :span="10" :offset="3">包装编号:</el-col>
                <el-col :span="10" style="font-weight: bold;">{{ item.packageNo }}</el-col>
              </el-row>
              <el-row>
                <el-col :span="10" :offset="3">包装台账二维码:</el-col>
                <el-col :span="10">
                  <vueQr :text="JSON.stringify(item)" :size="110" :margin="1"></vueQr>
                </el-col>
              </el-row>
            </el-card>
          </div>
        </div>
        <span slot="footer" class="dialog-footer">
          <el-button @click="diaPrintTab = false">取 æ¶ˆ</el-button>
@@ -313,20 +323,27 @@
      printFun() {
          this.diaPrintTab = false;
          PrintJS({
              printable: "qrCard",
              type: "html",
              // header: "原材料检测报告",
              targetStyles: ["*"],
              style: `@page {margin: 0mm 5mm;}
                      html {zoom:100%;}
                      @media print {
                        html,body{
                          width:60mm;
                          height:40mm;
                        }
                      }`,
              ignoreElements: ["no-ignore"],
              orientation: 'portrait'
              printable: 'qrCard',//页面
              type: "html",//文档类型
                maxWidth:450,
                targetStyles:['*'],
                style: `@page {
                  margin:0;
                  padding: 0;
                  size: 360px 170px;
                }
                html{
                  zoom:100%;
                }
                @media print{
                  width: 360px;
                  height: 170px;
                  margin:0;
                  padding: 0;
                }`,
                onPrintDialogClose: this.erexcel=false,
                targetStyles: ["*"], // ä½¿ç”¨dom的所有样式,很重要
                font_size: '',
          });
      },
      handleSelectionChange(val){
@@ -340,24 +357,12 @@
          return
        }
        this.diaPrintTab = true
        console.log(this.multipleSelection);
        this.multipleSelection.forEach(item=>{
          let obj = {
            packageNo: item.packageNo,
            contractNo: item.contractNo,
            boxInfo: []
            packageBoxId:item.id
          }
          list({packageBoxId:item.id}).then((res) =>{
            res.data.data.forEach(ele=>{
              obj.boxInfo.push({
                product: ele.product,
                productNo: ele.productNo,
                specs: ele.specs,
                unit: ele.unit,
                number: ele.number
              })
            })
          })
          this.qrData.push(obj)
        })
      },
@@ -411,9 +416,15 @@
         this.testStandardParams.forEach(el => {
              el.packageBoxId =this.goid
         });
         console.log(this.testStandardParams);
  //       return
        saveList(this.testStandardParams).then((res) =>{
          this.$message.success('保存成功')
          this.rightquery()
          if(res.status===200){
            this.$message.success('保存成功')
            this.rightquery()
          }
        }).catch(error=>{
          console.error(error);
        })
      },
      //删除
src/views/quality/Packaging_ledger/pack-from.vue
@@ -128,7 +128,6 @@
    },
    watch: {
      currshowlist() {
        console.log(22211);
        this.innerVisible = this.currshowlist
        if (this.currshowlist) {
          this.$nextTick(() => {
@@ -149,7 +148,6 @@
        // this.$refs.paramTable.getDataList()
        // },
        Getdata(val){
            console.log(val);
            this.datalistid = val
        },
      saveSelectRow() {
src/views/quality/Packaging_ledger/pack-fromadd.vue
@@ -1,7 +1,7 @@
<template>
    <el-dialog
      width="60%"
      title="参数"
      title="产品库存明细"
      top="5vh"
      :visible.sync="innerVisible"
      :show="currshowlist"
@@ -43,7 +43,6 @@
    data() {
      return {
        datalist:[],
        datalistid:"",
        ajaxFun: dataadd,
        currentRow: false,
        typeOptions: [],
@@ -111,7 +110,43 @@
              sort: true,
              isTrue: true,
              isSearch: true,
              searchInfoType: 'datetimerange'
              searchInfoType: 'text'
            },
            {
              minWidth: '120',
              prop: 'outBatchNo',
              label: '批次号',
              sort: true,
              isTrue: true,
              isSearch: true,
              searchInfoType: 'text'
            },
            {
              minWidth: '120',
              prop: 'number',
              label: '数量',
              sort: true,
              isTrue: true,
              isSearch: true,
              searchInfoType: 'text'
            },
            {
              minWidth: '120',
              prop: 'locNo',
              label: '库位编号',
              sort: true,
              isTrue: true,
              isSearch: true,
              searchInfoType: 'text'
            },
            {
              minWidth: '120',
              prop: 'locName',
              label: '库位名称',
              sort: true,
              isTrue: true,
              isSearch: true,
              searchInfoType: 'text'
            },
          ],
        },
@@ -123,7 +158,6 @@
    },
    watch: {
      currshowlist() {
        console.log(22211);
        this.innerVisible = this.currshowlist
      }
    },
@@ -134,32 +168,12 @@
      this.getParamType()
    },
    methods: {
         // èŽ·å–æ•°æ®åˆ—è¡¨
        getData() {
      // èŽ·å–æ•°æ®åˆ—è¡¨
      getData() {
        this.$refs.paramTable.getDataList()
        },
        handleSelectionChange(val){
            let data = val
            data.forEach(el => {
                this.datalistid = el
            });
        },
      saveSelectRow() {
        console.log(this.packageBoxIddata,"123");
        // saveList ({customerId:this.datalistid.id,contractNo:this.datalistid.contractNo}).then((res =>{
        //     console.log(res);
        //     if (res.status === 200) {
        //         this.$message.success('新增成功')
        //     }else{
        //         this.$message.error('创建失败')
        //     }
        // }))
        this.innerVisible = false
        //   this.$emit('handleSelectionChange',this.innerVisible )
      },
      handleSelectionChange(val){
        this.datalist = val
        console.log(this.datalist,"数据");
      },
      saveSelectRow(){
        this.$emit('handleSelectionChange',this.datalist )
src/views/quality/apply/index.vue
@@ -549,7 +549,6 @@
      if (this.currentApplyId) {
        getStock().then((data) => {
          if (data.data.data.code === 1) {
            console.info(sysParam.SHOW_STEP_BUSINESS)
            this.stockList = data.data.data.data.listInfo
            this.showErpStock = true
          }
src/views/quality/exception/exception.vue
@@ -328,7 +328,6 @@
    },
    submitUpload(file) {
      console.info(this.currentRow && this.currentRow.id)
      console.log(file);
      if (this.currentRow && this.currentRow.id) {
        const maxSize = 5 * 1024 *1024
        let jpgType = 'image/jpeg'
src/views/quality/exception/index.vue
@@ -383,7 +383,6 @@
      }
    },
    submitUpload() {
      console.info(this.currentRow && this.currentRow.id)
      if (this.currentRow && this.currentRow.id) {
        this.paramData.exceptionId = this.currentRow.id
      } else {
src/views/quality/finishedProductInspection/finishedProduct-form.vue
@@ -13,7 +13,7 @@
    </div>
    <div class="page-main">
        <div class="finishedProduct-basic">
            <el-form :model="processInspectVo" ref="addInspectionform" class="l-mes"
            <el-form :model="processInspectVo" :rules="processInspectRules" ref="addInspectionform" class="l-mes"
            label-position="right" label-width="120px" style="width: 100%"  size="small">
                <div class="formwrapper">
                    <el-row>
@@ -30,19 +30,25 @@
                            </el-form-item>
                        </el-col>
                        <el-col :span="6">
                            <el-form-item label="报工单号:">
                                <el-input disabled v-model="processInspectVo.productNo"
                                    placeholder="请输入报工单号:" autocomplete="off" />
                            </el-form-item>
                        </el-col>
                        <el-col :span="6">
                            <el-form-item label="客户名称:">
                                <el-input disabled v-model="processInspectVo.prname"
                                    placeholder="请输入客户名称" autocomplete="off" />
                            </el-form-item>
                        </el-col>
                    </el-row>
                    <el-row>
                        <el-col :span="6">
                            <el-form-item label="工程名称:">
                                <el-input disabled v-model="processInspectVo.sname"
                                    placeholder="请输入工程名称" autocomplete="off" />
                            </el-form-item>
                        </el-col>
                    </el-row>
                    <el-row>
                        <el-col :span="6">
                            <el-form-item label="产品名称:">
                                <el-select style="width: 100%" @change="changeOptionsSamplename" :disabled="processInspectVo.id != null"
@@ -65,18 +71,33 @@
                                    placeholder="请输入规格型号" autocomplete="off" />
                            </el-form-item>
                        </el-col>
                    </el-row>
                    <el-row>
                        <el-col :span="6">
                            <el-form-item label="单位:">
                                <el-input disabled v-model="processInspectVo.unit"
                                    placeholder="请输入单位" autocomplete="off" />
                            </el-form-item>
                        </el-col>
                    </el-row>
                    <el-row>
                        <el-col :span="6">
                            <el-form-item label="数量:">
                                <el-input v-model="processInspectVo.quantity" placeholder="请输入数量"
                                    autocomplete="off" :disabled="processInspectVo.id != null" />
                            </el-form-item>
                        </el-col>
                        <el-col :span="6" v-if="processInspectVo.id != null">
                            <el-form-item label="批次号:">
                                <el-input v-model="processInspectVo.outBatchNo" autocomplete="off" disabled />
                            </el-form-item>
                        </el-col>
                        <el-col :span="6" v-if="processInspectVo.id != null">
                            <el-form-item label="产品合格库位:" prop="locationId">
                                <el-select @change="changeLocation" clearable style="width:100%"
                                v-model="processInspectVo.locationId" placeholder="请选择合格库位"
                                :disabled="resultVal!=null && processInspectVo.id!=null" autocomplete="off">
                                    <el-option v-for="(item,i) in locationList" :key="i"
                                    :label="item.locName+'-'+item.locNo" :value="item.id"></el-option>
                                </el-select>
                            </el-form-item>
                        </el-col>
                    </el-row>
@@ -104,21 +125,20 @@
                        <el-table-column prop="required" label="标准值" width="240" ></el-table-column>
                        <el-table-column prop="inspectionValue" v-for="(item, index) in empiricalValueAdd" :key="index" label="检测值"
                            width="240" style="text-align: center;">
                            <template slot-scope="scope">
                                <el-col v-if="scope.row.itype === '1'">
                                    <el-tooltip v-if="scope.row.iname!=null" :disabled="scope.row.eId != null"
                                        class="item" effect="dark" content="请先选择设备!"
                                            placement="top-start">
                                            <el-input :disabled="scope.row.eId == null" v-model="scope.row.empiricalValueAddss[index]"
                                                @blur="changeState(scope.row, index)" placeholder="请输入检测值"></el-input>
                                                @blur="changeState(scope.row)" placeholder="请输入检测值"></el-input>
                                            <span v-if="resultVal != null" v-text="scope.row.empiricalValueAddss[index]"></span>
                                    </el-tooltip>
                                </el-col>
                                <el-col v-else>
                                        <el-tooltip v-if="scope.row.iname != null" :disabled="scope.row.eId != null"
                                            class="item" effect="dark" content="请先选择设备!" placement="top-start">
                                            <el-select style="width: 100%;" @change="changeState(scope.row, index)" :disabled="scope.row.eId == null" v-model="scope.row.empiricalValueAddss[index]" placeholder="请选择">
                                            <el-select style="width: 100%;" @change="changeState(scope.row)" :disabled="scope.row.eId == null" v-model="scope.row.empiricalValueAddss[index]" placeholder="请选择">
                                                <el-option v-for="item in dataVal" :key="item.value" :label="item.label"
                                                    :value="item.value">
                                                </el-option>
@@ -133,16 +153,15 @@
                            <template slot-scope="scope">
                                <span v-if="resultVal!=null && processInspectVo.id!=null" v-text="scope.row.ename"></span>
                                <div v-else>
                                    <!-- <el-input  v-model="scope.row.eId"  v-if="scope.row.iname != null" placeholder="请输入设备号"></el-input> -->
                                    <el-select style="width:100%" v-model="scope.row.eId"
                                    v-if="scope.row.iname != null" filterable @change="updateDevice(scope.row,scope.$index)">
                                    v-if="scope.row.iname != null" filterable @change="updateDevice(scope.row)">
                                        <el-option v-for="(item,index) in deviceList"
                                        :key="index" :value="item.id" :label="item.number +'-'+ item.name"></el-option>
                                        :key="index" :value="item.id" :label="item.code +'-'+ item.name"></el-option>
                                    </el-select>
                                </div>
                            </template>
                        </el-table-column>
                        <el-table-column prop="inspectionValue"  :key="index"
                        <el-table-column prop="inspectionValue">
                                label="检验描述" width="240" style="text-align: center;">
                                <template slot-scope="scope">
                                    <el-col v-if="scope.row.itype === '1'">
@@ -151,7 +170,7 @@
                                            <el-input :disabled="scope.row.eId == null"
                                                v-model="scope.row.inote"
                                                @blur="changeState(scope.row, index)" placeholder="请输入检验描述"></el-input>
                                                @blur="changeState(scope.row)" placeholder="请输入检验描述"></el-input>
                                            <span v-if="resultVal != null && processInspectVo.id != null"
                                                v-text="scope.row.inote"></span>
@@ -162,12 +181,7 @@
                                            class="item" effect="dark" content="请先选择设备!" placement="top-start">
                                            <el-input :disabled="scope.row.eId == null"
                                                v-model="scope.row.inote"
                                                @blur="changeState(scope.row, index)" placeholder="请输入检测值"></el-input>
                                            <!-- <el-select style="width: 100%;" @change="changeState(scope.row, index)" :disabled="scope.row.eId == null" v-model="scope.row.inote" placeholder="请选择">
                                                <el-option v-for="item in dataVal" :key="item.value" :label="item.label"
                                                    :value="item.value">
                                                </el-option>
                                            </el-select> -->
                                                @blur="changeState(scope.row)" placeholder="请输入检测值"></el-input>
                                            <span v-if="resultVal != null && processInspectVo.id != null"
                                                v-text="scope.row.inote"></span>
                                        </el-tooltip>
@@ -227,11 +241,14 @@
    updateFinishedInsProduct,
    updateFinishedInspectById,
    selectDeviceAPI,
    updateLocationIdById,
 } from '@/api/quality/finishedProduct'
import { selectDevice } from '@/api/quality/rawMaterial'
 import { getIfsLocationByGroupCopyAll } from '@/api/warehouse/location'
 import { remote } from '@/api/admin/dict'
export default {
    data() {
        return {
            locationList: [],
            dataVal: [{
                label: '是',
                value: '是'
@@ -247,6 +264,9 @@
            empiricalValueAdd: 1,
            // ç¼–辑时存储最长的列数字,做删除判断
            empiricalValueAddMaxNumber: 0,
            processInspectRules: {
                locationId: [{required: true,message:'请选择库位号',trigger:'blur'}]
            },
            processInspectVo: {
                id: null,
                finInsNo: null,
@@ -260,7 +280,9 @@
                specificationsModel: null,
                unit: null,
                technologyId: null,
                documentId: null
                documentId: null,
                outBatchNo: null,
                locationId: null,
            },
            inspectionItems: [], // æ–°å¢žæ£€éªŒé¡¹ç›®è¡¨æ ¼
            inspectionResultForm: [],
@@ -278,16 +300,43 @@
    mounted() {
        this.getDeviceList()
        this.processInspectVo.id = this.$route.query.id
        this.resultVal = this.$route.query.resultVal
        this.resultVal = this.$route.params.resultVal
        if(this.resultVal == null){
            let val = sessionStorage.getItem("finished-resultVal-"+this.processInspectVo.id);
            val == undefined ? this.resultVal=null : this.resultVal = val
        }
        this.getIfsLocation()
        this.init()
    },
    methods: {
        changeLocation(val){
            if(val){
                let obj = {
                    id: this.processInspectVo.id,
                    locationId: val
                }
                updateLocationIdById(obj).then(res=>{
                    if(res.status===200){
                        this.$message.success("更新合格库位成功")
                    }
                })
            }
        },
        getIfsLocation(){
            getIfsLocationByGroupCopyAll({locationGroup: '1'}).then(res=>{
                if(res.status===200){
                    this.locationList = res.data.data
                }
            }).catch(error=>{
                console.error(error);
            })
        },
        submitSave(){
            let locationId = this.processInspectVo.locationId
            if(locationId==null){
                this.$message.error("请选择产品合格库位")
                return
            }
            let pro = 0
            this.inspectionItems.forEach(item => {
                if(item.children){
@@ -359,6 +408,8 @@
                    this.processInspectVo.unit = result.punit
                    this.processInspectVo.quantity = result.quantity
                    this.processInspectVo.documentId = result.documentId
                    this.processInspectVo.outBatchNo = result.outBatchNo
                    this.processInspectVo.locationId = result.locationId
                    let userList = []
                    result.children.forEach(item=>{
                        item.iid = Math.random()
@@ -395,15 +446,11 @@
        },
        getDeviceList(){
            selectDeviceAPI(null).then(res=>{
                // this.deviceList = res.data.data
                console.log(res);
                this.deviceList = res.data.data
            })
        },
        updateDevice(row,index){
        updateDevice(row){
            let rowId=JSON.stringify(row.iid)
            console.log(row);
            updateDeviceById({deviceId:row.eId,fpid:row.iid}).then(res=>{
                this.inspectionItems.forEach(obj=>{
                    obj.children.forEach(c=>{
@@ -414,14 +461,6 @@
                        c.inote=''
                        }
                    })
                    // if(obj.children){
                    //     obj.children[index-1].inspectionValue = ''
                    //     obj.children[index-1].iresult = null
                    //     obj.children[index-1].empiricalValueAddss = []
                    //     obj.children[index-1].inote=''
                    // }
                })
            }).catch(error=>{
                console.log(error)
@@ -438,7 +477,7 @@
            this.processInspectVo.unit = sample.unit
            this.processInspectVo.documentId = sample.documentId
        },
        changeState(row, index) {
        changeState(row) {
            if (row.iid != null && row.iid != '') {
                let str = ""
                row.empiricalValueAddss.forEach(e => {
@@ -482,7 +521,6 @@
                let id = res.data.data
                if(id != null){
                    queryById(id).then(response=>{
                        console.log(response.data.data.children)
                        let proList = response.data.data.children
                        proList.forEach(item=>{
                            item.iid = Math.random();
src/views/quality/finishedProductInspection/finishedProduct-print.vue
@@ -293,9 +293,7 @@
    },
    created(){
        this.tableData = this.formData
        console.log("============",this.tableData)
        this.initData()
        // this.initProjectList(this.projectList)
    },
    methods:{
        initData(){
@@ -309,10 +307,8 @@
        formData(newVal){
            if(newVal){
                this.projectList = []
                console.log(newVal)
                this.tableData = newVal
                this.initData()
                // this.initProjectList(this.projectList)
            }
        }
    },
src/views/quality/finishedProductInspection/finishedProducter-print.vue
@@ -604,7 +604,6 @@
        initData(){
            let ii = []
            let pp = []
        console.log("<-------------------->");
            this.deviceStr = this.tableData.projectName
            this.product = this.tableData.material
            this.number = this.tableData.quantity
@@ -612,7 +611,6 @@
            this.material = this.tableData.material
            this.materialCode = this.tableData.materialCode
            this.quantity = this.tableData.quantity
            console.log(this.tableData,"-----------11111");
            this.tableData.children.forEach(el =>{
                this.prjdata.push(el)
                el.children.forEach(kl =>{
@@ -628,7 +626,6 @@
                this.iname = Array.from(new Set(pp)).join(",")
        },
        initprjdata(list){
            console.log(list,"uuuuuuuuuuuuuuuuu");
            const data = {
                            eId: '',
                            ename: '',
@@ -701,7 +698,6 @@
        formData(newVal){
            if(newVal){
                this.prjdata = []
                console.log("formData变化--",newVal)
                this.tableData = newVal
                this.initData()
                this.initprjdata(this.prjdata)
src/views/quality/finishedProductInspection/index.vue
@@ -37,7 +37,7 @@
    import { transform } from '@/util/fileTransform'
    import printTemplate from './finishedProducter-print.vue'
    import PrintJS from 'print-js'
import { title } from 'process'
    import { title } from 'process'
    export default {
        components: {
            finishedProductInspectionAdd,
@@ -84,6 +84,14 @@
                        },
                        {
                            minWidth: '120',
                            prop: 'productNo',
                            label: '报工单号',
                            isTrue: true,
                            isSearch: true,
                            searchInfoType: 'text'
                        },
                        {
                            minWidth: '120',
                            prop: 'orderNumber',
                            label: '订单号',
                            isTrue: true,
@@ -107,6 +115,14 @@
                            isTrue: true,
                            isSearch: true,
                            searchInfoType: 'text',
                        },
                        {
                            minWidth: '120',
                            prop: 'outBatchNo',
                            label: '批次号',
                            isTrue: true,
                            isSearch: true,
                            searchInfoType: 'text'
                        },
                        {
                            minWidth: '120',
@@ -172,16 +188,16 @@
                        },
                    ],
                    toolbar: [
                    {
                    /* {
                        text: '新增',
                        type: 'primary',
                        fun: this.addOrUpdateHandle
                    },
                    },
                    {
                        text: '导出',
                        type: 'primary',
                        fun: this.exportExcel
                    }
                    }*/
                    ],
                    operator: [{
                        text: '打印',
@@ -214,7 +230,6 @@
        watch:{
        printFormData(newVal){
            if(newVal){
                // console.log("pData变化--",newVal);
                this.printFormData = newVal
            }
        }
@@ -249,13 +264,11 @@
            exportExcel(){
                let queryParam=this.$refs.finishedProduct.getQueryParam();
                delete queryParam.criteria
                // console.log(queryParam);
                exportExaminationProducts(queryParam).then((res)=>{
                    transform(res)
                })
            },
            deleteHandle(row){
                // console.log(row.id)
                this.$confirm('确认删除该数据吗?', '提示', {
                confirmButtonText: '确定',
                cancelButtonText: '取消',
@@ -277,6 +290,8 @@
                    name: 'finishedProductForm',
                    query: { 
                        id: row == null ? null : row.id,
                    },
                    params: {
                        resultVal: row == null ? null : row.result 
                    }
                })
src/views/quality/newReport/ReportForm.vue
@@ -1304,7 +1304,6 @@
    judgmentQuality() {
      judgmentSampleCheck(this.reportInfo.reportSampleList[0]).then(
        (response) => {
          console.log('response', response)
          const checkResult = response.data.data.success
          const checkMessage = response.data.data.message
          if (checkResult) {
@@ -1407,7 +1406,6 @@
          this.dataForm.sampleCheckLength == null
            ? null
            : this.dataForm.sampleCheckLength
        console.log('cd', cd)
        if (cd && cd != null) {
          if (temperature && temperature != null) {
            this.dataList['采集项'].forEach((item) => {
src/views/quality/packageinspect/packageInspect-form.vue
@@ -160,6 +160,20 @@
        </el-row>
      </div>
    </div>
    <el-dialog
      title="提示"
      :visible.sync="dialogVisible"
      width="30%">
      <el-form :model="submitData" ref="form" label-width="100px" >
        <el-form-item label="请输入行号" prop="lineNo" :rules="{required:true,message:'行号不能为空',trigger:'blur'}">
          <el-input v-model="submitData.lineNo" />
        </el-form-item>
      </el-form>
      <span slot="footer" class="dialog-footer">
        <el-button @click="dialogVisible = false">取 æ¶ˆ</el-button>
        <el-button type="primary" @click="confirmSubmit(submitData,false)">ç¡® å®š</el-button>
      </span>
    </el-dialog>
  </div>
</template>
@@ -168,6 +182,7 @@
  fetchListById,
  updatePackageInsProduct,
  updatePackageInspectById,
  getCustomer,
} from '@/api/quality/packageInspect'
export default {
    computed:{},
@@ -175,6 +190,12 @@
    },
    data(){
        return{
            submitData: {
              id:null,
              result: null,
              lineNo: null,
            },
            dialogVisible: false,
            loading: false,
            resultVal: null,
            dataForm:{
@@ -222,6 +243,11 @@
      this.init()
    },
    watch:{
      dialogVisible(newVal){
        if(!newVal){
          this.$refs.form.resetFields();
        }
      }
    },
    methods:{
      changeResult(){
@@ -249,21 +275,44 @@
          cancelButtonText: '取消',
          type: 'warning'
        }).then(() => {
          let data = {
          id: _than.dataForm.id,
          result: _than.conclusionTable[0].result,
        }
        updatePackageInspectById(data).then(res => {
          if(res.data.code === 0){
            _than.resultVal = res.data.data
            sessionStorage.setItem("packIns-resultVal-"+_than.dataForm.id,res.data.data)
            _than.$message.success("上报成功");
          }else{
            _than.$message.error("上报失败",res.data.data);
          }
        })
          _than.submitData.id = _than.dataForm.id,
          _than.submitData.result = _than.conclusionTable[0].result,
          getCustomer(_than.dataForm.id).then(res=>{
            if(res.status===200){
              _than.confirmSubmit(_than.submitData,true)
            }
          }).catch(error=>{
            console.log("输入行号");
            _than.dialogVisible = true
          })
        }).catch(() => {})
      },
      confirmSubmit(data,isOtc){
        const _than = this
        let isSubmit = false
        if(isOtc){
          isSubmit = true
        }else{
          _than.$refs.form.validate(valid=>{
            if(valid){
              isSubmit = true
              _than.dialogVisible = false
            }
          })
        }
        if(isSubmit){
          updatePackageInspectById(data).then(res => {
            if(res.data.code === 0){
              _than.resultVal = res.data.data
              sessionStorage.setItem("packIns-resultVal-"+_than.dataForm.id,res.data.data)
              _than.$message.success("上报成功");
            }else{
              _than.$message.error("上报失败",res.data.data);
            }
          })
        }
      },
      // æ·»åŠ è¡Œ
      clickAddLine() {
          this.list.push({
src/views/quality/processInspect/index.vue
@@ -160,10 +160,10 @@
                        type: 'primary',
                        fun: this.addOrUpdateHandle
                    },
                    {
                        text: '导出',
                        fun: this.exportExcel
                    }
                    // {
                    //     text: '导出',
                    //     fun: this.exportExcel
                    // }
                    ],
                    operator: [{
                        text: '作废',
@@ -185,7 +185,6 @@
            exportExcel(){
                let queryParam=this.$refs.processInspect.getQueryParam();
                delete queryParam.criteria
                console.log(queryParam);
                exportProcessInsProduct(queryParam).then((res)=>{
                    transform(res)
                })
src/views/quality/processInspect/processInspect-form.vue
@@ -289,7 +289,6 @@
    methods: {
        submitSave() {
            let pro = 0
        console.log(this.inspectionItems);
            this.inspectionItems.forEach(item => {
                if (item.children) {
                    let arr = item.children.filter(obj => {
@@ -389,7 +388,6 @@
                        }
                    })
                    this.inspectionItems = result.children
                    console.log(this.inspectionItems);
                    this.inspectionResultForm = [{
                        materialCode: result.materialCode,
                        material: result.material,
@@ -435,23 +433,16 @@
            this.technologyList = sample.children
        },
        changeState(row, index) {
            console.log(row)
            if (row.iid != null && row.iid != '') {
                let str = ""
                row.empiricalValueAddss.forEach(e => {
                    str += e + ","
                })
                // if (note === undefined || note === '' || note === null) {
                //     return
                // }
                console.log(str)
                str = str.slice(0, -1);
                if (str === undefined || str === '' || str === null) {
                    return
                }
                let obj = {
                    devideId: row.eId,
                    ppid: row.iid,
@@ -459,7 +450,6 @@
                    note : row.inote
                }
                console.log(obj)
                updateProcessInsProduct(obj).then(res => {
                    if (res.data.code == 0) {
                        this.$message.success("更新成功")
@@ -476,7 +466,6 @@
                let id = res.data.data
                if (id != null) {
                    queryById(id).then(response => {
                        console.log(response.data.data.children)
                        let proList = response.data.data.children
                        proList.forEach(item => {
                            item.iid = Math.random();
src/views/quality/processconfiguration/index.vue
@@ -266,11 +266,11 @@
        
        ],
        toolbar: [
          {
            text: '导出',
            type: 'primary',
            fun: this.handleExport
          },
          // {
          //   text: '导出',
          //   type: 'primary',
          //   fun: this.handleExport
          // },
        ],
        operator: [
          // {
@@ -321,7 +321,6 @@
    },
    handleExport(){
      exportData(this.queryParam).then(res=>{
          console.log(res)
          this.downloadFun(res)
      }).catch(error=>{
          console.log(error);
@@ -367,9 +366,7 @@
    },
    //提交审核
   Submitreview(row){
      console.log(row.id);
       pullInsUnapi({id:row.id}).then(res =>{
        console.log(res);
        this.$refs.processconfiguration.refreshData()
       })
    },
src/views/quality/processconfiguration/table-form.vue
@@ -213,7 +213,6 @@
      })
    },
    selectStaffCallback(param, paramName) {
      console.log(paramName)
      if (param) {
        if (paramName == 'originator') {
          this.dataForm.originator = ''
@@ -256,7 +255,6 @@
      remote('work_shop').then((response) => {
        if (response.data.code === 0) {
          this.dataTypeList = response.data.data
          console.log(this.dataTypeList)
        } else {
          this.dataTypeList = []
        }
src/views/quality/rawMaterial/QrcodeReader.vue
@@ -42,7 +42,6 @@
      return {}
    },
    created() {
      console.log(222222222222224564646);
    },
  
    components: {
src/views/quality/rawMaterial/index.vue
@@ -27,7 +27,7 @@
            @queryParam="getQueryParam($event)"
            ref="rawMaterialTable">
            <template #toolbar>
                <el-button @click="exportRawMaterial" type="primary" >导出</el-button>
                <!-- <el-button @click="exportRawMaterial" type="primary" >导出</el-button> -->
            </template>
            </ttable>
        </basic-container>
@@ -332,7 +332,6 @@
        },
        exportRawMaterial(){
            exportRawMaterial(this.queryParam).then(res=>{
                console.log(res)
                this.downloadFun(res)
            }).catch(error=>{
                console.log(error);
src/views/quality/rawMaterial/rawMaterial-form.vue
@@ -367,7 +367,6 @@
      Turnonthecamera() {
      this.qrcode = true
      this.camera = 'rear'
      console.log(2222222);
    },
    // æ‰«ç ç»“果回调
    // onDecode(result) {
src/views/quality/report/index.vue
@@ -1529,7 +1529,6 @@
        let flagMsg = ''
        const cd =
          this.currentSample == null ? null : this.currentSample.stockQuantity
        console.log('cd', cd)
        if (cd && cd != null) {
          this.paramValues.forEach((item) => {
            if (
@@ -1627,14 +1626,12 @@
              },
              data: requireData,
              success: function(response) {
                console.log('response', response)
                const resJson = JSON.parse(
                  response
                    .replace(/\r/g, '')
                    .replace(/\n/g, '')
                    .replace(/\s*/g, '')
                )
                console.log('resJson', resJson)
                // TODO
                if (resJson.message) {
                  const resData = resJson.data
@@ -1729,7 +1726,6 @@
    },
    // é™„件预览
    handlePictureCardPreview(file) {
      console.log(file)
      this.dialogImageUrl = file.url
      this.dialogImageVisible = true
    },
src/views/quality/standardbind/standardbind-form.vue
@@ -129,7 +129,6 @@
      this.showTestStandard = true
    },
    selectPart(param, nodePart, index) {
      console.log(param)
      if (param) {
        this.dataForm.partId = param.id
        this.dataForm.partNo = param.partNo
@@ -137,7 +136,6 @@
      }
    },
    selectOperate(operate) {
      console.log(operate)
      if (operate) {
        this.dataForm.operationId = operate.id
        this.dataForm.operationNo = operate.operationNo
@@ -145,7 +143,6 @@
      }
    },
    selectTestStandard(param) {
      console.log(param)
      if (param) {
        this.dataForm.standardId = param.id
        this.dataForm.standardNo = param.standardNo
src/views/quality/statistics/rateChart.vue
@@ -46,7 +46,6 @@
              }
            }
          })
          console.log(this.allGX)
          if (this.xAxisList.length < 4) {
            this.options.dataZoom[0].show = false
            this.options.dataZoom[0].end = 100
src/views/quality/testitemlayout/index.vue
@@ -1788,7 +1788,6 @@
    },
    // æäº¤ç”Ÿæˆçš„布局json
    submitJson() {
      console.log('this.layOutItems', this.layOutItems)
    },
    // å¼¹å‡ºå¸ƒå±€ç»“果预览窗口
    previewLayOut() {
src/views/quality/testplan/testplan-form.vue
@@ -442,7 +442,6 @@
    },
    // åˆ é™¤å­è¡¨
    delStandard(row) {
      console.log(row)
      delStandard(row.id).then((res) => {
        if (res.data.code === 0) {
          this.getTestPlanInfo(this.dataForm.id)
src/views/quality/unqualifiedprocess/examineApproveform.vue
@@ -411,7 +411,6 @@
      })
    },
    init(row) {
      console.log(row)
      this.getCauseType()
      this.getProcessMode()
      this.getType()
@@ -425,7 +424,6 @@
        if (this.dataForm.id) {
          getUnqualifiedProcess(this.dataForm.id).then((response) => {
            const resData = response.data.data
            console.log(resData)
            this.dataForm.id = resData.id
            this.dataForm.processNo = resData.processNo
            this.dataForm.reason = resData.reason
src/views/quality/unqualifiedprocess/index.vue
@@ -649,10 +649,8 @@
      }
    },
    selectPart(part) {
      console.log(part)
      if (part) {
        partDegrade(this.multipleSelection[0].id, part.id).then((res) => {
          console.log(res)
          this.$message.success('零件降级成功!')
        })
      }
src/views/quality/unqualifiedprocess/loaction-form.vue
@@ -258,7 +258,6 @@
      this.innerVisible = true
    },
    dataFormSubmit() {
      console.log(this.mulLocation)
      if (this.mulLocation) {
        this.$emit('refreshDataList', this.mulLocation)
        this.innerVisible = false
@@ -269,7 +268,6 @@
    // é€‰ä¸­åº“位行
    handleCurrentChange(val) {
      this.mulLocation = val
      console.log(val)
    },
    getWarehouseLocGroupList() {
      const warehouseList = []
src/views/quality/unqualifiedprocess/unqualifiedprocessform.vue
@@ -430,7 +430,6 @@
        if (this.dataForm.id) {
          getUnqualifiedProcess(this.dataForm.id).then((response) => {
            const resData = response.data.data
            console.log(resData)
            this.dataForm.id = resData.id
            this.dataForm.processNo = resData.processNo
            this.dataForm.reason = resData.reason
src/views/technology/completeproductstructure/completeproductstructure-form.vue
@@ -294,7 +294,6 @@
  },
  computed: {
    editable: function() {
      console.log()
      if (!this.dataForm.id) {
        return true
      }
@@ -335,32 +334,11 @@
      if (this.dataForm.id) {
        getObj(this.dataForm.id).then((response) => {
          var resultData = response.data.data
          console.log(resultData)
          this.treeForm = resultData
          // this.treeForm.id = resultData.id
          // this.treeForm.partId = resultData.partId
          // this.treeForm.partNo = resultData.partNo
          // this.treeForm.partName = resultData.partName
          // this.treeForm.number = resultData.number
          // this.treeForm.insulationColor = resultData.insulationColor
          // this.treeForm.sheathColor = resultData.sheathColor
          // this.treeForm.characteristicOne = resultData.characteristicOne
          // this.treeForm.version = resultData.version
          // this.treeForm.alternativeNo = resultData.alternativeNo
          // this.treeForm.alternativeDesc = resultData.alternativeDesc
          // this.treeForm.bomTypeDb = resultData.bomTypeDb
          // this.treeForm.state = resultData.state
          // this.treeForm.remark = resultData.remark
          this.dataForm.state = resultData.state
          this.preViewData = []
          this.preViewData.push(resultData.tree)
          this.tableData = resultData.bomComponentVOS
          // getPartAllStructureExt(this.treeForm).then((res) => {
          //   const result = res.data
          //   if (result.code === 0) {
          //     this.tableData.push(result.data)
          //   }
          // })
        })
      } else {
        this.initDefaultForm()
src/views/technology/completeproductstructure/index.vue
@@ -34,7 +34,7 @@
      multipleSelection: [],
      uploadInfo: {
        // æ˜¯å¦å±•示上传EXCEL以及对应的url
        isShow: true,
        isShow: false,
        url: 'mes/bom/uploadExcel',
      },
      prelang: 'completeProductStructure',
src/views/technology/document/checkStandardTable.vue
@@ -104,13 +104,13 @@
              align="center"
              width="50"
            />
            <el-table-column label="线芯" prop="wireCore" align="center" />
            <el-table-column
           <!--  <el-table-column label="线芯" prop="wireCore" align="center" /> -->
           <!--  <el-table-column
              prop="isCheck"
              label="抽检"
              align="center"
              :formatter="isCheckFormatter"
            />
            /> -->
            <el-table-column label="参数编号" prop="code" align="center" />
            <el-table-column
              label="参数项"
@@ -162,12 +162,12 @@
              align="center"
            >
            </el-table-column>
            <el-table-column label="通道" prop="aisle" align="center">
            <!-- <el-table-column label="通道" prop="aisle" align="center">
            </el-table-column>
            <el-table-column label="部位" prop="position" align="center">
            </el-table-column>
            </el-table-column> -->
            <el-table-column label="单位" prop="unit" align="center" />
            <el-table-column
           <!--  <el-table-column
              width="150"
              label="继承检测零件"
              prop="extendsPartNo"
@@ -196,9 +196,9 @@
                  ></el-button>
                </el-input>
              </template>
            </el-table-column>
            </el-table-column> -->
            <el-table-column
            <!-- <el-table-column
              width="150"
              label="继承检测工序"
              prop="extendsPartNo"
@@ -257,7 +257,7 @@
                  ></el-button>
                </el-input>
              </template>
            </el-table-column>
            </el-table-column> -->
            <el-table-column label="操作" align="center">
              <template slot-scope="scope">
                <el-button
@@ -590,7 +590,6 @@
            return
          }
        }
        console.log(this.operationTestStandardParamList)
        updDocTestStandardDetails(this.operationTestStandardParamList).then(
          (response) => {
            this.$message.success('检测标准参数保存成功')
@@ -844,7 +843,6 @@
      }
    },
    openExtendsTestStandard(row) {
      console.log(row)
      if (row.extendsOperationId) {
        this.showExtendsTestStandard = true
        this.selectRow = row
src/views/technology/document/document-form.vue
@@ -11,7 +11,7 @@
      </div>
    </div>
    <div class="page-main">
      <div class="document-basic">
      <div class="document-basic" style="height: 28%;">
        <el-form
          :model="dataForm"
          :rules="dataRule"
@@ -160,6 +160,15 @@
                  </el-select>
                </el-form-item>
              </el-col>
              <el-col :span="6">
              <el-form-item label="项目号" prop="projectNo">
                <el-input
                  v-model="dataForm.projectNo"
                  placeholder="项目号"
                  style="width:100%"
                ></el-input>
              </el-form-item>
            </el-col>
              <el-col :span="6">
                <el-form-item label="备注" prop="remark">
                  <el-input
@@ -854,7 +863,7 @@
          { required: true, message: '版本号不能为空', trigger: 'blur' }
        ],
        projectNo: [
          { required: true, message: '项目号不能为空', trigger: 'blur' }
          // { required: true, message: '项目号不能为空', trigger: 'blur' }
        ],
        projectType: [
          { required: true, message: '项目类别不能为空', trigger: 'change' }
@@ -1205,7 +1214,6 @@
        if (this.currTechnologyName != null && this.currTechnologyName !== '') {
          // å½“用户删除工艺文件中关联的工艺路线时,若该文件对应BOM中所需半成品的工艺路线也已与当前工艺文件关联
          routingChildCheck(this.currTechnologyBomPartName).then((res) => {
            console.log('res', res.data)
            const resData = res.data
            let num = 0
            if (resData.code === 0) {
@@ -1902,7 +1910,6 @@
      if (this.dataForm.id) {
        this.getDocumentInfo(this.dataForm.id)
      }
      console.log('上传成功')
    },
    handleStructureExceed(files, fileList) {
      // this.$message.warning(
@@ -1944,7 +1951,6 @@
      this.dialogFlowVisible = true
    },
    handleFlowSuccess(response, file, fileList) {
      console.log('上传成功')
    },
    handleFlowExceed(files, fileList) {
      this.$message.warning(
@@ -1988,8 +1994,6 @@
    },
    getSummaries(param) {
      const { columns, data } = param
      // console.log(columns, 'A')
      // console.log(data, 'B')
      const sums = []
      columns.forEach((column, index) => {
        if (index === 0) {
src/views/technology/document/extendsOperation.vue
@@ -88,7 +88,6 @@
        const res = response.data
        if (res.code === 0) {
          this.dataList = res.data.operations
          console.log(this.dataList)
        }
      })
    },
src/views/technology/document/extendsTestStandard.vue
@@ -94,7 +94,6 @@
      }
      qryDocTestStandard(obj).then((res) => {
        this.dataList = res.data.data
        console.log(this.dataList)
      })
    },
    doubleClick() {
src/views/technology/document/extendsTestStandardParam.vue
@@ -88,12 +88,10 @@
  },
  methods: {
    getData() {
      console.log(this.dataFormId)
      qryDocTestStandardDetailsByStandardId({
        standardId: this.dataFormId
      }).then((response) => {
        this.dataList = response.data.data
        console.log(this.dataList)
      })
    },
    doubleClick() {
src/views/technology/document/index.vue
@@ -239,7 +239,7 @@
            isSearch: true,
            searchInfoType: 'text'
          },
          {
          /* {
            minWidth: '120',
            prop: 'projectType',
            label: '项目类别',
@@ -271,7 +271,7 @@
            isSearch: true,
            searchInfoType: 'text'
          },
 */
          // æè¿°
          {
            minWidth: '120',
src/views/technology/document/teststandard.vue
@@ -59,7 +59,7 @@
  deleteTestStandard,
  getTestStand,
  saveTestStandard
} from '../../../api/technology/document'
} from '@/api/technology/document'
import qualityStandardDialog from '@/views/common/teststandardradio.vue'
export default {
@@ -184,14 +184,18 @@
  computed: {
    ...mapGetters(['permissions'])
  },
  created() {},
  created() {
    getTestStand(this.paramObj)
  },
  mounted(){
    getTestStand(this.paramObj)
  },
  methods: {
    // èŽ·å–æ•°æ®åˆ—è¡¨
    getData() {
      this.$refs.selectTestStandardTable.getDataList()
    },
    addOrUpdateHandle() {
      console.info(this.documentId)
      if (this.documentId) {
        if (this.editable) {
          this.qualityStandardParamObj = {
src/views/technology/routing/index.vue
@@ -138,7 +138,7 @@
      customUpload: true,
      uploadInfo: {
        // æ˜¯å¦å±•示上传EXCEL以及对应的url
        isShow: true,
        isShow: false,
        url: '/mes/routing/uploadExcel'
      },
      prelang: 'routing',
src/views/technology/structure/index.vue
@@ -129,7 +129,7 @@
      customUpload: true,
      uploadInfo: {
        // æ˜¯å¦å±•示上传EXCEL以及对应的url
        isShow: true,
        isShow: false,
        url: '/mes/structure/uploadExt'
      },
      prelang: 'structure',
src/views/technology/structure/single-structure-form.vue
@@ -480,7 +480,6 @@
          this.$set(nodePart, 'unit', param.unit)
          this.$set(nodePart, 'drawingNumber', param.drawingNumber)
          this.$set(nodePart, 'planningMethod', param.planningMethod)
          console.info(index)
          this.clearClass(index)
        }
      } else {
src/views/warehouse/FinishedDelivery/index.vue
@@ -4,6 +4,7 @@
        <ttable
        :table="table"
        :isShowHide="true"
        :ajaxFun="ajaxFun"
        :prelang="prelang"
        :options="options" 
        ref="processconfiguration"
@@ -16,9 +17,12 @@
<script>
import ttable from '@/views/common/ztt-table.vue'
import { fetchList, } from '@/api/quality/finishedDelivery'
export default {
    data(){
        return {
            ajaxFun: fetchList,
            prelang: 'operation',
            dataListLoading: false,
            options: {
@@ -44,22 +48,30 @@
                column: [
                  {
                    minWidth: '140',
                    prop: 'oo',
                    label: '订单编号',
                    prop: 'packageNo',
                    label: '包装编号',
                    isTrue: true,
                    isSearch: true,
                    searchInfoType: 'text',
                  },{
                    minWidth: '140',
                    prop: 'materhhooial',
                    label: '质量追溯号',
                    prop: 'outBatchNo',
                    label: '批次号',
                    isTrue: true,
                    isSearch: true,
                    searchInfoType: 'text',
                  },
                  {
                    minWidth: '140',
                    prop: 'mateuurial',
                    prop: 'partNo',
                    label: '产品编号',
                    isTrue: true,
                    isSearch: true,
                    searchInfoType: 'text',
                  },
                  {
                    minWidth: '140',
                    prop: 'partName',
                    label: '产品名称',
                    isTrue: true,
                    isSearch: true,
@@ -67,7 +79,7 @@
                  },
                  {
                    minWidth: '140',
                    prop: 'materoiial',
                    prop: 'specs',
                    label: '规格型号',
                    isTrue: true,
                    isSearch: true,
@@ -75,7 +87,7 @@
                  },
                  {
                    minWidth: '140',
                    prop: 'matperoial',
                    prop: 'unit',
                    label: '单位',
                    isTrue: true,
                    isSearch: true,
@@ -83,7 +95,7 @@
                  },
                  {
                    minWidth: '140',
                    prop: 'materpial',
                    prop: 'number',
                    label: '数量',
                    isTrue: true,
                    isSearch: true,
@@ -91,34 +103,40 @@
                  },
                  {
                    minWidth: '130',
                    width: '150',
                    prop: 'dealTime',
                    prop: 'createTime',
                    label: '入库时间',
                    sort: true,
                    isTrue: true,
                    isSearch: true,
                    searchInfoType: 'datetimerange',
                    // formatter: this.formatDateTime,
                },
                ],
                toolbar: [
                    formatter: this.formatDateTime,
                  },
                  {
                    text: 'xxx',
                    type: 'primary',
                    // fun: this.addOrUpdateHandle
                    minWidth: '130',
                    prop: 'createUser',
                    label: '创建人',
                    sort: true,
                    isTrue: true,
                    isSearch: true,
                    searchInfoType: 'text',
                  },
                ],
                toolbar: [],
                // operator: [],
                // operatorConfig: {}
            },
       }
    },
    medthods: {},
//     computed: {
//     ...mapGetters(['permissions'])
//   },
    // computed: {
    //   ...mapGetters(['permissions'])
    // },
    components: {
    ttable
      ttable
    },
    medthods: {
      formatDateTime(row, column, cellValue) {
          return cellValue ? fecha.format(new Date(cellValue), 'yyyy-MM-dd') : ''
      },
    },
}
</script>
src/views/warehouse/FinishedWarehousing/index.vue
@@ -121,13 +121,7 @@
                    searchInfoType: 'text',
                },
                ],
                toolbar: [
                  {
                    text: 'xx',
                    type: 'primary',
                    // fun: this.addOrUpdateHandle
                  },
                ],
                toolbar: [],
                // operator: [],
                // operatorConfig: {}
            },
src/views/warehouse/changestock/index.vue
@@ -543,7 +543,6 @@
            for (let i = 0; i < this.dataForm.dataList.length; i++) {
              this.dataForm.dataList[i].synIfs = true
            }
            console.log(this.dataForm.dataList)
            checkWdr(this.dataForm.dataList).then((res1) => {
              addStockNumber(this.dataForm.dataList).then((res) => {
                this.$message.success('入库成功')
src/views/warehouse/check/check-detail.vue
@@ -233,7 +233,6 @@
    // åˆ é™¤
    goDel() {
      if (this.multipleSelection && this.multipleSelection.length > 0) {
        console.log(this.multipleSelection)
        this.$confirm(
          `是否确认删除,共${this.multipleSelection.length}条`,
          '提示',
src/views/warehouse/pallettransports/ifslocation-form.vue
@@ -179,7 +179,6 @@
        if (response.data.code === 0) {
          this.locTypeOption = response.data.data
        }
        console.log(response);
      })
    },
    // å•行选中
@@ -204,7 +203,6 @@
    saveSelectRow() {
      this.isSubmit = true
      const transportsMaterials = []
      console.log(`output->this.transportsList`,this.transportsList)
      this.transportsList.forEach((item) => {
        transportsMaterials.push({
          id: item.id,
src/views/warehouse/pallettransports/ifsstock-form.vue
@@ -113,18 +113,6 @@
                flagMsg =
                  flagMsg + '第' + (i + 1) + '行,计划移库数量最多六位小数;'
              } else {
                // console.log(
                //   'this.ifsStockData[i].planMoveQuality',
                //   this.ifsStockData[i].planMoveQuality
                // )
                // console.log(
                //   'this.ifsStockData[i].available',
                //   this.ifsStockData[i].available
                // )
                // console.log(
                //   this.ifsStockData[i].planMoveQuality >
                //   this.ifsStockData[i].available
                // )
                if (
                  this.ifsStockData[i].planMoveQuality >
                  this.ifsStockData[i].available
@@ -280,7 +268,6 @@
              }
            }
          })
          console.log(`output->this.ifsStockData`,this.ifsStockData)
        })
      }
    }
src/views/warehouse/pallettransports/index.vue
@@ -376,7 +376,6 @@
            }
                    })
          this.palletTransportsMaterialSelectionChange([row])
          console.log(row);
            },
    // å·¥è‰ºç±»åž‹ä¸­æ–‡æ ¼å¼åŒ–
    formatStateType(row, column, cellValue) {
@@ -518,12 +517,10 @@
    openLocationDialog() {
      if (this.palletTransportsMaterialMultipleSelection.length > 0) {
        let flag = true
        console.log(this.palletTransportsMaterialMultipleSelection)
        this.palletTransportsMaterialMultipleSelection.forEach((item) => {
          if (item.detailExistState) {
            flag = false
          }
          console.log(item.detailExistState)
        })
        if (flag) {
          this.showLocation = true
@@ -578,8 +575,6 @@
    },
    // èŽ·å–ç§»åº“æ˜Žç»†æ•°æ®åˆ—è¡¨
    getPalletTransportsDetailData() {
      // console.log("对应工单",this.WorkOrder);
      // console.log("选中物料需求",this.palletTransportsMaterialMultipleSelection);
      let transportsDetails =[]
      transportsDetails = this.palletTransportsMaterialMultipleSelection.map(el =>{
        return{
@@ -604,10 +599,8 @@
                this.innerVisible = false
                this.$message.success('添加移库明细成功')
                let materialRow = selectionList[selectionList.length - 1]
                console.log("materialRow-----",materialRow);
                this.palletTransportsMaterialData.forEach(ele=>{
                  if(ele.id==materialRow.id){
                    console.log("ele-------",ele);
                      ele.transferQuantity = materialRow.surplusQuantity
                      ele.surplusQuantity = 0
                  }
@@ -652,7 +645,6 @@
    },
    // æ‰“开单个明细批量更新库位弹框
    openSingleLocationDialog(row) {
      console.log(row);
      if (row.state === '01initial') {
        this.detailList = []
        this.detailList.push(row)
@@ -663,17 +655,15 @@
    },
    // åˆ é™¤ç§»åº“明细
    delDetail(row) {
      /* const delRow = this.palletTransportsDetailData.find((item) => {
       const delRow = this.palletTransportsDetailData.find((item) => {
        return item.id === row.id
      }) */
      })
      delPalletTransportsDetailObj(row.id).then((response) => {
        const resData = response.data
        if (resData.code === 0) {
          // const findRowIndex = this.palletTransportsDetailData.indexOf(delRow)
          // this.palletTransportsDetailData.splice(findRowIndex, 1)
          const findRowIndex = this.palletTransportsDetailData.indexOf(delRow)
          this.palletTransportsDetailData.splice(findRowIndex, 1)
          this.$message.success('移库明细删除成功')
          // this.getPalletTransportsMaterialData()
          const currRow = this.currPalletTransportsRow
          this.getPallettransportsData().then(() => {
            if (currRow) {
@@ -705,6 +695,7 @@
            if (resData.code === 0) {
              this.$message.success('执行成功')
              // this.getPalletTransportsMaterialData()
              this.palletTransportsDetailData=[]
              const currRow = this.currPalletTransportsRow
              this.getPallettransportsData().then(() => {
                if (currRow) {
@@ -739,12 +730,10 @@
    },
    palletTransportsMaterialSelectionChange(val) {
      this.palletTransportsMaterialMultipleSelection = val
      console.log(this.palletTransportsMaterialMultipleSelection);
      if(val && val.length>0){
        let ids =[]
        this.palletTransportsMaterialMultipleSelection.forEach(el =>{ids.push(el.id)})
        let pId = ids[ids.length - 1];
        console.log(pId);
        if(pId!=null){
          selectAll({
              transportsId:this.currPalletTransportsRow.id,
src/views/warehouse/returnstock/ifslocation-form.vue
@@ -183,7 +183,6 @@
          ifsToLocationNo: this.currLocationRow.locationNo
        })
      })
      console.log(transportsMaterials)
      IFSUpdate(transportsMaterials)
        .then((response) => {
          const resData = response.data
src/views/warehouse/returnstock/index.vue
@@ -205,7 +205,6 @@
        idList: ids
      }
      delObj(ids).then((response) => {
        console.log(response)
        this.getData()
      })
    }
src/views/warehouse/returnstock/returnstock-form.vue
@@ -258,7 +258,6 @@
        )
        this.dataList = []
        detailPage(queryParam, this.returnStockId).then((response) => {
          console.log(response)
          const resData = response.data
          if (resData.code === 0) {
            this.dataList = resData.data.records
@@ -298,7 +297,6 @@
    },
    // åº“存物料选中后的回调
    selectPartCallback(rows) {
      console.log(rows)
      if (rows && rows.length > 0) {
        const detailList = []
        for (let i = 0; i < rows.length; i++) {
@@ -319,7 +317,6 @@
            })
          )
        }
        // console.log(detailList)
        addDetail(detailList).then((response) => {
          const resData = response.data
          if (resData.code === 0) {
src/views/warehouse/returnstock/stock-part.vue
@@ -381,7 +381,6 @@
      // èŽ·å–ä¸å¯é€‰ä¸­çš„æ•°æ®
      queryUsingApplyDetail().then((response) => {
        const resData = response.data
        console.log(resData)
        this.paramTemplateSelArr = resData.data
        if (this.$refs.commonPartTable !== undefined) {
          // é»˜è®¤çš„过滤条件
src/views/warehouse/stock/index.vue
@@ -333,7 +333,7 @@
          {
            minWidth: '100',
            prop: 'ifsBatchNo',
            label: 'IFS批次号',
            label: '批次号',
            sort: true,
            isTrue: true,
            isSearch: true,
src/views/warehouse/stock/print-label-form.vue
@@ -227,7 +227,6 @@
            startMeterMark: this.printLabelInfo.startMeterMark,
            endMeterMark: this.printLabelInfo.endMeterMark
          }
          console.log('this.dataForm', this.dataForm)
        })
      }
    }
@@ -256,7 +255,6 @@
    beginPrint(isCheck) {
      this.LODOP = getLodop()
      this.dataForm.lotTrackingIfs = this.partInfo.lotTrackingIfs
      console.log(this.dataForm)
      const qr = {
        part_no: this.dataForm.partNo,
        lot_batch_no: this.dataForm.ifsBatchNo,
src/views/warehouse/stock/small-print-label-form.vue
@@ -109,7 +109,6 @@
            productionPerson: this.printLabelInfo.productionPerson,
            remark: this.printLabelInfo.remark
          }
          console.log('this.dataForm', this.dataForm)
        })
      }
    }
src/views/warehouse/stock/small-warehousing-label-form.vue
@@ -107,7 +107,6 @@
            lotTrackingIfs: this.printLabelInfo.lotTrackingIfs,
            unit: this.printLabelInfo.unit
          }
          console.log('this.dataForm', this.dataForm)
        })
      }
    }
@@ -136,7 +135,6 @@
    beginPrint(isCheck) {
      this.LODOP = getLodop()
      this.dataForm.lotTrackingIfs = this.partInfo.lotTrackingIfs
      console.log(this.dataForm)
      const qr = {
        part_no: this.dataForm.partNo,
        lot_batch_no: this.dataForm.ifsBatchNo,
src/views/warehouse/stock/stock-table.vue
@@ -210,7 +210,6 @@
          for (let i = 0; i < this.dataForm.stock.length; i++) {
            this.dataForm.stock[i].manualInput = true
          }
          // console.log(this.dataForm.stock)
          moveStockNumber(this.dataForm.stock)
            .then((res) => {
              this.$message.success('移库成功')
src/views/warehouse/stock/warehousing-label-form.vue
@@ -152,7 +152,6 @@
            cusMaterialCode: this.printLabelInfo.cusMaterialCode,
            productionTime: this.printLabelInfo.productionTime
          }
          console.log('this.dataForm', this.dataForm)
        })
      }
    }
@@ -181,7 +180,6 @@
    beginPrint(isCheck) {
      this.LODOP = getLodop()
      this.dataForm.lotTrackingIfs = this.partInfo.lotTrackingIfs
      console.log(this.dataForm)
      const qr = {
        part_no: this.dataForm.partNo,
        lot_batch_no: this.dataForm.ifsBatchNo,
src/views/zte/pkgidbind/index.vue
@@ -333,7 +333,6 @@
      this.mesNo = null
      this.ceNo = null
      this.pkgNo = null
      console.log('2')
      this.clearFocus = false
      this.bindFocus = false
      this.$refs.mes_no_input.focus()
vue.config.js
@@ -6,11 +6,13 @@
const url = 'http://192.168.2.7:9999'
// const url = 'http://192.168.32.45:9999'
//const url = 'http://192.168.2.7:9999'
//const url = 'http://192.168.32.45:9999'
// const url = 'http://192.168.0.23:9999'
//  const url = 'http://localhost:9999'
const url = 'http://localhost:9999'
// const url = 'http://ztt-gateway:9999'
const localUrl = 'http://localhost:8089'
//const localUrl = 'http://10.88.15.95:8089'
const CompressionWebpackPlugin = require('compression-webpack-plugin')
@@ -31,26 +33,26 @@
  },
  // eslint-disable-next-line
  configureWebpack: (config) => {
    // if (process.env.NODE_ENV === 'production') {
    //   // ä»…在生产环境下启用该配置
    //   return {
    //     plugins: [
    //       /*new MonacoWebpackPlugin({
    //         languages: ['javascript', 'css', 'html', 'json']
    //       }),*/
    //       new CompressionWebpackPlugin({
    //         filename: '[path].gz[query]',
    //         algorithm: 'gzip',
    //         test: new RegExp(
    //           '\\.(' + productionGzipExtensions.join('|') + ')$'
    //         ),
    //         threshold: 1024, // åªæœ‰å¤§å°å¤§äºŽè¯¥å€¼çš„资源会被处理,当前配置为对于超过1k的数据进行处理,不足1k的可能会越压缩越大
    //         minRatio: 0.99, // åªæœ‰åŽ‹ç¼©çŽ‡å°äºŽè¿™ä¸ªå€¼çš„èµ„æºæ‰ä¼šè¢«å¤„ç†
    //         deleteOriginalAssets: true // åˆ é™¤åŽŸæ–‡ä»¶
    //       })
    //     ]
    //   }
    // }
    if (process.env.NODE_ENV === 'production') {
      // ä»…在生产环境下启用该配置
      return {
        plugins: [
          /*new MonacoWebpackPlugin({
            languages: ['javascript', 'css', 'html', 'json']
          }),*/
          new CompressionWebpackPlugin({
            filename: '[path].gz[query]',
            algorithm: 'gzip',
            test: new RegExp(
              '\\.(' + productionGzipExtensions.join('|') + ')$'
            ),
            threshold: 1024, // åªæœ‰å¤§å°å¤§äºŽè¯¥å€¼çš„资源会被处理,当前配置为对于超过1k的数据进行处理,不足1k的可能会越压缩越大
            minRatio: 0.99, // åªæœ‰åŽ‹ç¼©çŽ‡å°äºŽè¿™ä¸ªå€¼çš„èµ„æºæ‰ä¼šè¢«å¤„ç†
            deleteOriginalAssets: true // åˆ é™¤åŽŸæ–‡ä»¶
          })
        ]
      }
    }
  },
  // é…ç½®è½¬å‘代理
  devServer: {