liuhairui 1 سال پیش
والد
کامیت
94713bbe59
3فایلهای تغییر یافته به همراه731 افزوده شده و 694 حذف شده
  1. 49 3
      src/api/yunyin/yunying.js
  2. 140 140
      src/view/yunyin/shengchanguanli/gongdanshengchan.vue
  3. 542 551
      src/view/yunyin/shengchanguanli/gongdanziliao.vue

+ 49 - 3
src/api/yunyin/yunying.js

@@ -438,7 +438,7 @@ export const capacityList = (params) => {
 //新增工单->客户列表
 export const ClientList  = (params) => {
     return service({
-        url: 'c',
+        url: '/mes_server/work_order/ClientList',
         method: 'get',
         params
     })
@@ -475,7 +475,46 @@ export const ProcessCodeList  = (params) => {
         params
     })
 }
-
+//新增印件资料->印件资料添加
+export const PrintDetailAdd  = (data) => {
+    return service({
+        url: '/mes_server/work_order/PrintDetailAdd',
+        method: 'post',
+        params
+    })
+}
+//新增工艺资料->工艺资料添加
+export const ProcessDetailAdd  = (data) => {
+    return service({
+        url: '/mes_server/work_order/ProcessDetailAdd',
+        method: 'post',
+        params
+    })
+}
+//新增工艺资料->印件编号获取
+export const PrintDetailList  = (params) => {
+    return service({
+        url: '/mes_server/work_order/PrintDetailList',
+        method: 'get',
+        params
+    })
+}
+//印件资料删除
+export const PrintDetailDel  = (params) => {
+    return service({
+        url: '/mes_server/work_order/PrintDetailDel',
+        method: 'get',
+        params
+    })
+}
+//工艺资料删除
+export const ProcessDetailDel  = (params) => {
+    return service({
+        url: '/mes_server/work_order/ProcessDetailDel',
+        method: 'get',
+        params
+    })
+}
 
 /**工单生产排单(排产管理)*/
 //计划中工单
@@ -610,7 +649,14 @@ export const MachineWorkOrderList = (params) => {
         params
     })
 }
-
+//机组调整
+export const MachineTeamEdit = (params) => {
+    return service({
+        url: '/mes_server/Manufacture/MachineTeamEdit',
+        method: 'get',
+        params
+    })
+}
 
 /** 7.设备运行跟踪*/
 //左侧菜单

+ 140 - 140
src/view/yunyin/shengchanguanli/gongdanshengchan.vue

@@ -76,10 +76,10 @@
                       :cell-class-name="gxztgzzCellClass">
               <template v-for="(item, idx) in gxztgzztableColumns">
                 <el-table-column #default="{ row, column, $index }" align="left" :label="item.label" :width="item.width" >
-<!--                  <div v-if="['完工时间'].includes(item.prop)">-->
-<!--                    <el-input v-model="row[item.prop]"-->
-<!--                              :id="`input${idx}${$index}`" @keyup="gxztgzz_handleKeyDown($event, idx, $index, item.prop)"/>-->
-<!--                  </div>-->
+                  <!--                  <div v-if="['完工时间'].includes(item.prop)">-->
+                  <!--                    <el-input v-model="row[item.prop]"-->
+                  <!--                              :id="`input${idx}${$index}`" @keyup="gxztgzz_handleKeyDown($event, idx, $index, item.prop)"/>-->
+                  <!--                  </div>-->
                   <div v-if="['完工时间'].includes(item.prop)">
                     <el-date-picker
                         v-model="row[item.prop]"
@@ -123,32 +123,32 @@
                 </el-form-item>
 
                 <el-form-item label="" prop="" style="margin-left: 25px;">
-                <el-button type="" icon="edit" disabled @click="oneditpcClick">更新排程</el-button>
+                  <el-button type="" icon="edit" disabled @click="oneditpcClick">更新排程</el-button>
                 </el-form-item>
               </div>
 
               <el-table ref="paichengRef"
-                :show-overflow-tooltip="true"
-                :row-style="{ height: '0px' }"
-                :cell-style="{ padding: '0px' }" :header-row-style="{ height: '0px' }"
-                :header-cell-style="{ padding: '0px' }"
-                style="width: 100%;height: 74vh" border tooltip-effect="dark"
-                highlight-current-row="true"
-                @row-click="cjpc_tableRowClick"
-                :data="paichengData" row-key="ID"
-                :cell-class-name="cjzcCellClass"
+                        :show-overflow-tooltip="true"
+                        :row-style="{ height: '0px' }"
+                        :cell-style="{ padding: '0px' }" :header-row-style="{ height: '0px' }"
+                        :header-cell-style="{ padding: '0px' }"
+                        style="width: 100%;height: 74vh" border tooltip-effect="dark"
+                        highlight-current-row="true"
+                        @row-click="cjpc_tableRowClick"
+                        :data="paichengData" row-key="ID"
+                        :cell-class-name="cjzcCellClass"
               >
                 <template v-for="(item, idx) in paichengColumns">
                   <el-table-column #default="{ row, column, $index }" align="left" :label="item.label" :width="item.width" >
                     <div v-if="['优先次序', '生产工时', '辅助工时', '班次安排', '排单备注','最早开工时间', '计划开工时间'].includes(item.prop)">
                       <el-input v-model="row[item.prop]" :clearable="false"
-                        :id="`input${idx}${$index}`"
-                        @keyup="handleKeyDown($event, idx, $index, item.prop)"
+                                :id="`input${idx}${$index}`"
+                                @keyup="handleKeyDown($event, idx, $index, item.prop)"
                       />
-<!--                      <el-date-picker v-model="row[item.prop]" v-if="['最早开工时间', '计划开工时间'].includes(item.prop)" type="datetime" :clearable="false"-->
-<!--                        :id="`input${idx}${$index}`"-->
-<!--                        @keyup="handleKeyDown($event, idx, $index , item.prop)"-->
-<!--                      />-->
+                      <!--                      <el-date-picker v-model="row[item.prop]" v-if="['最早开工时间', '计划开工时间'].includes(item.prop)" type="datetime" :clearable="false"-->
+                      <!--                        :id="`input${idx}${$index}`"-->
+                      <!--                        @keyup="handleKeyDown($event, idx, $index , item.prop)"-->
+                      <!--                      />-->
                     </div>
                     <div v-else>
                       {{ row[item.prop] }}
@@ -163,42 +163,42 @@
           <el-dialog v-model="print_gdlist" title="生产工单打印" style="width: 700px;height: 400px;">
 
             <div style="border: 1px black solid;width: 600px;">
-            <el-row>
+              <el-row>
                 <el-form-item label="工单编号:" prop="currentProcess" class="mab">
                   <el-input v-model="print_formData['gdbh']"  @keyup.enter="print_ProductValue" placeholder="" />
                 </el-form-item>
-            </el-row>
-            <el-row>
-              <el-form-item label="印件号:" prop="currentProcess" class="mab" label-width="70">
-                <el-input v-model="print_formData['yjh']"  @keyup.enter="print_ProductValue" placeholder="" />
-              </el-form-item>
-              <el-form-item label="终止工序号:" prop="currentProcess" class="mab">
-                <el-input v-model="print_formData['zzgxh']"  @keyup.enter="print_ProductValue" placeholder="" />
-              </el-form-item>
-            </el-row>
+              </el-row>
+              <el-row>
+                <el-form-item label="印件号:" prop="currentProcess" class="mab" label-width="70">
+                  <el-input v-model="print_formData['yjh']"  @keyup.enter="print_ProductValue" placeholder="" />
+                </el-form-item>
+                <el-form-item label="终止工序号:" prop="currentProcess" class="mab">
+                  <el-input v-model="print_formData['zzgxh']"  @keyup.enter="print_ProductValue" placeholder="" />
+                </el-form-item>
+              </el-row>
               <el-row>
                 <el-form-item label="印件名称:" prop="currentProcess" class="mab">
                   <el-input v-model="print_formData['yjmc']"  @keyup.enter="print_ProductValue" placeholder="" />
                 </el-form-item>
               </el-row>
-            <el-row>
-              <el-form-item label="报表输出到:" prop="currentProcess">
-                <el-radio-group v-model="status" style="margin-left: 10px;">
-                  <el-radio label="显示器">显示器</el-radio>
-                  <el-radio label="打印机">打印机</el-radio>
-                </el-radio-group>
-              </el-form-item>
-            </el-row>
-            <el-row>
-              <el-form-item label="制单:" prop="currentProcess" class="mab" label-width="70">
-                <el-input v-model="print_formData['zd']"  @keyup.enter="print_ProductValue" placeholder="" />
-              </el-form-item>
-            </el-row>
-            <el-row>
-              <el-form-item label="审核:" prop="currentProcess" class="mab" label-width="70">
-                <el-input v-model="print_formData['sh']"  @keyup.enter="print_ProductValue" placeholder="" />
-              </el-form-item>
-            </el-row>
+              <el-row>
+                <el-form-item label="报表输出到:" prop="currentProcess">
+                  <el-radio-group v-model="status" style="margin-left: 10px;">
+                    <el-radio label="显示器">显示器</el-radio>
+                    <el-radio label="打印机">打印机</el-radio>
+                  </el-radio-group>
+                </el-form-item>
+              </el-row>
+              <el-row>
+                <el-form-item label="制单:" prop="currentProcess" class="mab" label-width="70">
+                  <el-input v-model="print_formData['zd']"  @keyup.enter="print_ProductValue" placeholder="" />
+                </el-form-item>
+              </el-row>
+              <el-row>
+                <el-form-item label="审核:" prop="currentProcess" class="mab" label-width="70">
+                  <el-input v-model="print_formData['sh']"  @keyup.enter="print_ProductValue" placeholder="" />
+                </el-form-item>
+              </el-row>
             </div>
             <div class="dialog-footer" style="text-align: right; margin-top: 40px;">
               <el-button @click="print_handleCancel">取消</el-button>
@@ -522,76 +522,76 @@ const sctreeData = ref([
 //上方表格
 const tableFields = ref({
   "计划中": [
-      { title:'获取状态', prop: 'statusColumn', width: 80, align:'center'},
-      { title:'生产分类', prop: '生产分类', width: 80, align:'left', },
-      { title: '工单编号', prop: '工单编号', width: 80, align:'center', },
-      { title: '产品代号', prop: '产品代号', width: 90, align:'center', },
-      { title: '产品名称', prop: '产品名称', width: 280, align:'left', },
-      { title: '接单日期', prop: '接单日期', width: 110, align:'left', },
-      { title: '交货日期', prop: '交货日期', width: 110, align:'left', },
-      { title: '订单数量', prop: '订单数量', width: 80, align:'left', },
-      { title: '计量单位', prop: '计量单位', width: 80, align:'center', },
-      { title: '客户名称', prop: '客户名称', width: 200, align:'left', },
-      { title: '客户编号', prop: '客户编号', width: 80, align:'center', },
-      { title: '备注', prop: '备注', width: 230, align:'left', },
-      { title: '客户料号', prop: '客户料号', width: 120, align:'left', },
-      { title: '创建用户', prop: '创建用户', width: 110, align:'left', },
-      { title: '创建时间', prop: '创建时间', width: 110, align:'left', },
-      { title: '修改时间', prop: '修改时间', width: 110, align:'left', },
-      { title: 'UNIQID', prop: 'UNIQID', width: 80  , align:'left', },
-      { title: '投料率', prop: '投料率', width: 100, align:'left', },
-      { title: '销售订单号', prop: '销售订单号', width: 120, align:'left', },
-      ],
+    { title:'获取状态', prop: 'statusColumn', width: 80, align:'center'},
+    { title:'生产分类', prop: '生产分类', width: 80, align:'left', },
+    { title: '工单编号', prop: '工单编号', width: 80, align:'center', },
+    { title: '产品代号', prop: '产品代号', width: 90, align:'center', },
+    { title: '产品名称', prop: '产品名称', width: 280, align:'left', },
+    { title: '接单日期', prop: '接单日期', width: 110, align:'left', },
+    { title: '交货日期', prop: '交货日期', width: 110, align:'left', },
+    { title: '订单数量', prop: '订单数量', width: 80, align:'left', },
+    { title: '计量单位', prop: '计量单位', width: 80, align:'center', },
+    { title: '客户名称', prop: '客户名称', width: 200, align:'left', },
+    { title: '客户编号', prop: '客户编号', width: 80, align:'center', },
+    { title: '备注', prop: '备注', width: 230, align:'left', },
+    { title: '客户料号', prop: '客户料号', width: 120, align:'left', },
+    { title: '创建用户', prop: '创建用户', width: 110, align:'left', },
+    { title: '创建时间', prop: '创建时间', width: 110, align:'left', },
+    { title: '修改时间', prop: '修改时间', width: 110, align:'left', },
+    { title: 'UNIQID', prop: 'UNIQID', width: 80  , align:'left', },
+    { title: '投料率', prop: '投料率', width: 100, align:'left', },
+    { title: '销售订单号', prop: '销售订单号', width: 120, align:'left', },
+  ],
   "排程中": [
-      // { title: '最早开工时间', prop: '最早开工时间', width: 120, align:'left', },
-      { title: '工单编号', prop: '工单编号', width: 80, align:'left', },
-      { title: '产品代号', prop: '产品代号', width: 90, align:'left', },
-      { title: '产品名称', prop: '产品名称', width: 340, align:'left', },
-      { title: '接单日期', prop: '接单日期', width: 110, align:'left', },
-      { title: '交货日期', prop: '交货日期', width: 110, align:'left', },
-      { title: '订单数量', prop: '订单数量', width: 80, align:'left', },
-      { title: '计量单位', prop: '计量单位', width: 80, align:'left', },
-      { title: '销售订单号', prop: '销售订单号', width: 200, align:'left', },
-      // { title: '排程类型', prop: '排程类型', width: 120, align:'left', },
-      { title: '客户编号', prop: '客户编号', width: 120, align:'left', },
-      { title: '客户名称', prop: '客户名称', width: 230, align:'left', },
-      { title: '创建用户', prop: '创建用户', width: 120, align:'left', },
-      // { title: 'GDUID', prop: 'GDUID', width: 120, align:'left', },
-      { title: 'GYUID', prop: 'GYUID', width: 100, align:'left', },
-      ],
+    // { title: '最早开工时间', prop: '最早开工时间', width: 120, align:'left', },
+    { title: '工单编号', prop: '工单编号', width: 80, align:'left', },
+    { title: '产品代号', prop: '产品代号', width: 90, align:'left', },
+    { title: '产品名称', prop: '产品名称', width: 340, align:'left', },
+    { title: '接单日期', prop: '接单日期', width: 110, align:'left', },
+    { title: '交货日期', prop: '交货日期', width: 110, align:'left', },
+    { title: '订单数量', prop: '订单数量', width: 80, align:'left', },
+    { title: '计量单位', prop: '计量单位', width: 80, align:'left', },
+    { title: '销售订单号', prop: '销售订单号', width: 200, align:'left', },
+    // { title: '排程类型', prop: '排程类型', width: 120, align:'left', },
+    { title: '客户编号', prop: '客户编号', width: 120, align:'left', },
+    { title: '客户名称', prop: '客户名称', width: 230, align:'left', },
+    { title: '创建用户', prop: '创建用户', width: 120, align:'left', },
+    // { title: 'GDUID', prop: 'GDUID', width: 120, align:'left', },
+    { title: 'GYUID', prop: 'GYUID', width: 100, align:'left', },
+  ],
   "制程中": [
-        // { title: '最早开工时间', prop: '最早开工时间', width: 120, align:'left', },
-        { title: '工单编号', prop: '工单编号', width: 80, align:'left', },
-        { title: '产品代号', prop: '产品代号', width: 90, align:'left', },
-        { title: '产品名称', prop: '产品名称', width: 340, align:'left', },
-        { title: '接单日期', prop: '接单日期', width: 110, align:'left', },
-        { title: '交货日期', prop: '交货日期', width: 110, align:'left', },
-        { title: '订单数量', prop: '订单数量', width: 80, align:'left', },
-        { title: '计量单位', prop: '计量单位', width: 80, align:'left', },
-        { title: '销售订单号', prop: '销售订单号', width: 200, align:'left', },
-        // { title: '排程类型', prop: '排程类型', width: 120, align:'left', },
-        { title: '客户编号', prop: '客户编号', width: 120, align:'left', },
-        { title: '客户名称', prop: '客户名称', width: 120, align:'left', },
-        { title: '客户料号', prop: '客户料号', width: 160, align:'left', },
-        // { title: 'GDUID', prop: 'GDUID', width: 120, align:'left', },
-        { title: 'GYUID', prop: 'GYUID', width: 100, align:'left', },
-      ],
+    // { title: '最早开工时间', prop: '最早开工时间', width: 120, align:'left', },
+    { title: '工单编号', prop: '工单编号', width: 80, align:'left', },
+    { title: '产品代号', prop: '产品代号', width: 90, align:'left', },
+    { title: '产品名称', prop: '产品名称', width: 340, align:'left', },
+    { title: '接单日期', prop: '接单日期', width: 110, align:'left', },
+    { title: '交货日期', prop: '交货日期', width: 110, align:'left', },
+    { title: '订单数量', prop: '订单数量', width: 80, align:'left', },
+    { title: '计量单位', prop: '计量单位', width: 80, align:'left', },
+    { title: '销售订单号', prop: '销售订单号', width: 200, align:'left', },
+    // { title: '排程类型', prop: '排程类型', width: 120, align:'left', },
+    { title: '客户编号', prop: '客户编号', width: 120, align:'left', },
+    { title: '客户名称', prop: '客户名称', width: 120, align:'left', },
+    { title: '客户料号', prop: '客户料号', width: 160, align:'left', },
+    // { title: 'GDUID', prop: 'GDUID', width: 120, align:'left', },
+    { title: 'GYUID', prop: 'GYUID', width: 100, align:'left', },
+  ],
   "已完工": [
-        { title: '工单编号', prop: '工单编号', width: 80, align:'left', },
-        { title: '产品代号', prop: '产品代号', width: 110, align:'left', },
-        { title: '产品名称', prop: '产品名称', width: 340, align:'left', },
-        { title: '接单日期', prop: '接单日期', width: 110, align:'left', },
-        { title: '交货日期', prop: '交货日期', width: 110, align:'left', },
-        { title: '订单数量', prop: '订单数量', width: 80, align:'left', },
-        { title: '计量单位', prop: '计量单位', width: 80, align:'left', },
-        { title: '销售订单号', prop: '销售订单号', width: 120, align:'left', },
-        { title: '客户编号', prop: '客户编号', width: 80, align:'left', },
-        { title: '客户名称', prop: '客户名称', width: 120, align:'left', },
-        { title: '客户料号', prop: '客户料号', width: 120, align:'left', },
-        // { title: '排程类型', prop: '排程类型', width: 120, align:'left', },
-        { title: 'GDUID', prop: 'GDUID', width: 80, align:'left', },
-      ]
-    })
+    { title: '工单编号', prop: '工单编号', width: 80, align:'left', },
+    { title: '产品代号', prop: '产品代号', width: 110, align:'left', },
+    { title: '产品名称', prop: '产品名称', width: 340, align:'left', },
+    { title: '接单日期', prop: '接单日期', width: 110, align:'left', },
+    { title: '交货日期', prop: '交货日期', width: 110, align:'left', },
+    { title: '订单数量', prop: '订单数量', width: 80, align:'left', },
+    { title: '计量单位', prop: '计量单位', width: 80, align:'left', },
+    { title: '销售订单号', prop: '销售订单号', width: 120, align:'left', },
+    { title: '客户编号', prop: '客户编号', width: 80, align:'left', },
+    { title: '客户名称', prop: '客户名称', width: 120, align:'left', },
+    { title: '客户料号', prop: '客户料号', width: 120, align:'left', },
+    // { title: '排程类型', prop: '排程类型', width: 120, align:'left', },
+    { title: 'GDUID', prop: 'GDUID', width: 80, align:'left', },
+  ]
+})
 //排程中、制程中下方表格列表
 const bottomTableF = ref({
   "排程中": [
@@ -635,7 +635,7 @@ const bottomTableF = ref({
     { title:'排单备注', prop: '排单备注', width: 120, align:'left', },
     { title:'工序完工', prop: '工序完工', width: 160, align:'left', },
     { title:'UNIQID', prop: 'UNIQID', width: 120, align:'left', },
-      ],
+  ],
 })
 //左侧左边栏
 const treeData = ref([]);
@@ -835,13 +835,13 @@ const onSubmit = () => {
     return false;
   }
   if(!_machine.value){
-      if (currentNode.value === '计划中' || currentNode.value === '已完工') {
-        _Project();
-      } else if (currentNode.value === '排程中' || currentNode.value === '制程中') {
-        _Schedule();
-      } else {
-        ElMessage({ type: 'warning', message: '查询不到具体条件的工单' });
-      }
+    if (currentNode.value === '计划中' || currentNode.value === '已完工') {
+      _Project();
+    } else if (currentNode.value === '排程中' || currentNode.value === '制程中') {
+      _Schedule();
+    } else {
+      ElMessage({ type: 'warning', message: '查询不到具体条件的工单' });
+    }
   }else{
     _MachineWorkOrderList();
   }
@@ -918,20 +918,20 @@ const onztwgClick = async () => {
   if(_ZC_gdbh.value == null || _ZC_gdbh.value == ''){
     ElMessage({type: 'warning', message: '请勾选制程中工单'})
   }else{
-      let params = {}
-      params.workOrder = _ZC_gdbh.value;
-      params.machine = _machine.value;
-      params.printCode = _ZC_yjno.value;
-      params.processCode =  _ZC_gxh.value;
-      const ProductionSchedulingAdd_stop = await ProductionSchedulingPause(params);
-      if (ProductionSchedulingAdd_stop.code === 0) {
-        const pc_zc_table = await MachineWorkOrderList({machine:_machine.value});
-        chejianData.value = pc_zc_table.data['排程'];
-        chejianfuData.value = pc_zc_table.data['制程'];
-        ElMessage({type: 'success',message: '暂停排产 更新成功'});
-      } else {
-        ElMessage({ type: 'error',message: '更新失败'})
-      }
+    let params = {}
+    params.workOrder = _ZC_gdbh.value;
+    params.machine = _machine.value;
+    params.printCode = _ZC_yjno.value;
+    params.processCode =  _ZC_gxh.value;
+    const ProductionSchedulingAdd_stop = await ProductionSchedulingPause(params);
+    if (ProductionSchedulingAdd_stop.code === 0) {
+      const pc_zc_table = await MachineWorkOrderList({machine:_machine.value});
+      chejianData.value = pc_zc_table.data['排程'];
+      chejianfuData.value = pc_zc_table.data['制程'];
+      ElMessage({type: 'success',message: '暂停排产 更新成功'});
+    } else {
+      ElMessage({ type: 'error',message: '更新失败'})
+    }
   }
 };
 //工序完工按钮
@@ -1077,9 +1077,9 @@ const _getOrderProcessCount = async () => {
   const getOrderProcessCount_list = await getOrderProcessCount({order:order});
   const concatenatedData = getOrderProcessCount_list.data.map(item => {
     // 优化后的代码,使用模板字符串连接字段值并在单个数字前添加零
-      const formattedYjno = item.Gy0_yjno.length === 1 ? `0${item.Gy0_yjno}` : item.Gy0_yjno;
-      const formattedGxh = item.Gy0_gxh.length === 1 ? `0${item.Gy0_gxh}` : item.Gy0_gxh;
-      const concatenatedValue = `${formattedYjno}-${formattedGxh} ${item.Gy0_gxmc}`;
+    const formattedYjno = item.Gy0_yjno.length === 1 ? `0${item.Gy0_yjno}` : item.Gy0_yjno;
+    const formattedGxh = item.Gy0_gxh.length === 1 ? `0${item.Gy0_gxh}` : item.Gy0_gxh;
+    const concatenatedValue = `${formattedYjno}-${formattedGxh} ${item.Gy0_gxmc}`;
     return {
       ...item,
       concatenatedData: concatenatedValue, // 使用新属性名

تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 542 - 551
src/view/yunyin/shengchanguanli/gongdanziliao.vue


برخی فایل ها در این مقایسه diff نمایش داده نمی شوند زیرا تعداد فایل ها بسیار زیاد است