소스 검색

排产新增“计划完成时间”字段

damon227 2 년 전
부모
커밋
67291ef727
3개의 변경된 파일61개의 추가작업 그리고 12개의 파일을 삭제
  1. 34 6
      src/components/work-flow/node-edit.vue
  2. 24 5
      src/views/modules/home/admin.vue
  3. 3 1
      src/views/modules/production/scheduling-details.vue

+ 34 - 6
src/components/work-flow/node-edit.vue

@@ -4,7 +4,7 @@
       :model="form"
       ref="form"
       :rules="rules"
-      label-width="80px"
+      label-width="100px"
       v-if="node.type !== 't-check'"
     >
       <el-form-item label="节点名称" prop="nodeName">
@@ -38,7 +38,7 @@
         <el-input
           v-model="form.quotedPrice"
           placeholder="工时单价"
-          :disabled="disabled || isEdit"
+          :disabled="disabled || !isEdit"
         ></el-input>
       </el-form-item>
       <el-form-item label="备注" prop="notes">
@@ -72,6 +72,19 @@
           <i slot="suffix" style="font-style: normal; margin-right: 10px">h</i>
         </el-input>
       </el-form-item>
+      <el-form-item
+        label="计划完成工时"
+        prop="planCompletionTime"
+        v-if="node.type !== 'end'"
+      >
+        <el-input
+          v-model="form.planCompletionTime"
+          :disabled="disabled || !isEdit"
+          oninput="value=value.replace(/[^0-9.]/g,'')"
+        >
+          <i slot="suffix" style="font-style: normal; margin-right: 10px">h</i>
+        </el-input>
+      </el-form-item>
       <el-form-item label="操作人" v-if="form.operatorName && !selectOperator">
         <el-input
           :disabled="disabled && selectOperator || !isEdit"
@@ -85,7 +98,7 @@
       >
         <el-select
           v-model="form.operatorId"
-          :disabled="disabled && selectOperator || isEdit"
+          :disabled="disabled && selectOperator || !isEdit"
           multiple
           placeholder="请选择"
           style="width: 100%"
@@ -122,7 +135,7 @@
       :model="form"
       ref="form"
       :rules="rules"
-      label-width="80px"
+      label-width="100px"
       v-if="node.type == 't-check'"
     >
       <el-row>
@@ -211,13 +224,28 @@
         </el-col>
       </el-row>
       <el-row>
+        <el-col :span="8">
+          <el-form-item
+            label="计划完成工时"
+            prop="planCompletionTime"
+            v-if="node.type !== 'end'"
+          >
+            <el-input
+              v-model="form.planCompletionTime"
+              :disabled="disabled || !isEdit"
+              oninput="value=value.replace(/[^0-9.]/g,'')"
+            >
+              <i slot="suffix" style="font-style: normal; margin-right: 10px">h</i>
+            </el-input>
+          </el-form-item>
+        </el-col>
         <el-col :span="8">
           <el-form-item
             label="操作人"
             v-if="disabled"
           >
             <el-input
-              :disabled="disabled || isEdit"
+              :disabled="disabled || !isEdit"
               v-model="form.operatorName"
             ></el-input>
           </el-form-item>
@@ -228,7 +256,7 @@
           >
             <el-select
               v-model="form.operatorId"
-              :disabled="disabled && selectOperator || isEdit"
+              :disabled="disabled && selectOperator || !isEdit"
               multiple
               placeholder="请选择"
               style="width: 100%"

+ 24 - 5
src/views/modules/home/admin.vue

@@ -62,7 +62,7 @@
                 ref="contractProdTable"
                 :data="contractProdList"
                 height="100%"
-                row-class-name="custom-ranking-table-row"
+                :row-class-name="contractProdListAddClass"
                 style="width: 100%"
               >
                 <el-table-column type="index" label="序号"></el-table-column>
@@ -541,6 +541,17 @@ export default {
         }
       })
     },
+    contractProdListAddClass({row, rowIndex}){
+      if(row.warningState == '3'){
+        return 'custom-ranking-table-row overdue-row';
+      }
+
+      if(row.warningState == '2'){
+        return 'custom-ranking-table-row warning-row';
+      }
+
+      return 'custom-ranking-table-row';
+    },
     // 报工列表
     getSubmittedRecordList () {
       let params = {
@@ -667,6 +678,18 @@ body,
 .el-card__body {
   height: 100%;
 }
+
+.custom-ranking-table-row {
+  font-size: 8px;
+}
+
+.el-table .warning-row {
+  color: yellow;
+}
+
+.el-table .overdue-row {
+  color: red;
+}
 </style>
 <style scoped>
 
@@ -937,10 +960,6 @@ body,
   width: 100%;
 }
 
-.custom-ranking-table-row {
-  font-size: 8px;
-}
-
 .bg2-3-1 {
   height: 10%;
   padding: 5px 10px;

+ 3 - 1
src/views/modules/production/scheduling-details.vue

@@ -22,6 +22,7 @@
             ref="workFlow"
             :nodeData="workFlowData"
             :selectOperator="true"
+            :isEdit="true"
           ></work-flow>
         </el-row>
       </el-form>
@@ -126,7 +127,8 @@ export default {
             }
             productionPlanNodes.push({
               nodeId: node.id,
-              operatorId: node.operatorId
+              operatorId: node.operatorId,
+              planCompletionTime: node.planCompletionTime
             })
           }