licp
2024-05-13 7b5549dd6115d42eda331916fdb38ac806169c9b
src/views/plan/operationtask/operationtask-form.vue
@@ -145,21 +145,11 @@
                          </el-select>
                        </el-form-item>
                      </el-col>
                      <el-col :span="7">
                      <el-col :span="10">
                        <el-form-item label="工作中心" prop="workCenter">
                          <el-select v-model="dataForm.workCenter" :disabled="!editable" filterable placeholder="请选择工作中心"
                            style="width:100%" @change="changeWorkCenter">
                            <el-option v-for="(item, index) in workCenterOptions" :label="item.label" :value="item.value"
                              :key="index">
                            </el-option>
                          </el-select>
                        </el-form-item>
                      </el-col>
                      <el-col :span="6">
                        <el-form-item label="工作站" prop="workstationId">
                          <el-select v-model="dataForm.workstationId" :disabled="!editable" filterable
                            placeholder="请选择工作站" style="width:100%" clearable @change="selectLocationByWorkstation">
                            <el-option v-for="(item, index) in workstations" :label="item.name" :value="item.id"
                              :key="index">
                            </el-option>
                          </el-select>
@@ -175,29 +165,46 @@
                          </el-date-picker>
                        </el-form-item>
                      </el-col>
                      <el-col :span="6">
                        <el-form-item label="工作站" prop="workstationId">
                          <el-select v-model="dataForm.workstationId" :disabled="!editable" filterable
                            placeholder="请选择工作站" style="width:100%" clearable @change="selectLocationByWorkstation">
                            <el-option v-for="(item, index) in workstations" :label="item.name" :value="item.id"
                              :key="index">
                            </el-option>
                          </el-select>
                        </el-form-item>
                      </el-col>
                    </el-row>
                    <el-row :gutter="10">
                      <el-col :span="10">
                        <el-form-item label="计划数量" prop="plannedQuantity">
                          <el-input v-model="dataForm.plannedQuantity" :disabled="!editable" placeholder="计划数量"
                            style="width:calc(100% - 30px)"></el-input>
                          <span>{{ dataForm.unit }}</span>
                        </el-form-item>
                      </el-col></el-row>
                    <el-row :gutter="10">
                      <el-col :span="12">
                        <el-form-item label="零件" prop="partName">
                          <el-input v-model="dataForm.partName" placeholder="零件" disabled></el-input>
                        </el-form-item>
                      </el-col>
                      <el-col :span="6">
                        <el-form-item label="零件号" prop="partNo">
                          <el-input v-model="dataForm.partNo" placeholder="零件号" disabled></el-input>
                        </el-form-item>
                      </el-col>
                      <el-col :span="6">
                      <el-col :span="10">
                        <el-form-item label="工单所需时间" prop="taskTheoreticalTime">
                          <el-input v-model="dataForm.taskTheoreticalTime" placeholder="工单所需时间"
                            style="width:calc(100% - 30px)"></el-input>
                          <span>min</span>
                        </el-form-item>
                      </el-col>
                      </el-row>
                    <el-row :gutter="10">
                      <el-col :span="12">
                        <el-form-item label="零件" prop="partName">
                          <el-tooltip class="item" effect="dark" :content="dataForm.partName" >
                          <el-input v-model="dataForm.partName" placeholder="零件" disabled></el-input>
                          </el-tooltip>
                        </el-form-item>
                      </el-col>
                      <el-col :span="10">
                        <el-form-item label="零件号" prop="partNo">
                          <el-tooltip class="item" effect="dark" :content="dataForm.partNo" >
                          <el-input v-model="dataForm.partNo" placeholder="零件号" disabled></el-input>
                          </el-tooltip>
                        </el-form-item>
                      </el-col>
                    </el-row>
@@ -391,13 +398,13 @@
      <!--            </el-table>-->
      <!--          </el-card>-->
      <!--        </el-tab-pane>-->
      <el-tab-pane label="工单供应表" v-if="this.dataForm.id">
      <!-- <el-tab-pane label="工单供应表" v-if="this.dataForm.id">
        <manufacturing-order :operationId="this.dataForm.id" ref="manufacturing"></manufacturing-order>
      </el-tab-pane>
      <el-tab-pane label="工单所需物料" v-if="this.dataForm.id">
      </el-tab-pane> -->
      <!-- <el-tab-pane label="工单所需物料" v-if="this.dataForm.id">
        <operation-supply :operationId="this.dataForm.id" :routingOperationId="this.dataForm.moRoutingOperationId"
          ref="manufacturing"></operation-supply>
      </el-tab-pane>
      </el-tab-pane> -->
    </el-tabs>
    <span slot="footer" class="dialog-footer">
@@ -514,7 +521,7 @@
  },
  data() {
    return {
      routingList: [],
      routingList: {},
      routingOptions: [],
      locationOptions: [],
      workstationOption: [],
@@ -584,6 +591,9 @@
        ],
        workCenter: [
          { required: true, message: '工作中心不能为空', trigger: 'change' }
        ],
        workstationId: [
          { required: true, message: '工作站不能为空', trigger: 'change' }
        ],
        plannedQuantity: [
          { required: true, message: '接收数量不能为空', trigger: 'blur' },
@@ -664,7 +674,7 @@
        }
      })
    },
    changeWorkCenter() {
    changeWorkCenter(opName) {
      this.workstations = []
      this.dataForm.workstationId = null
      this.locationOptions = []
@@ -674,9 +684,9 @@
        this.$refs.ganttIndex.init(this.workCenter)
      })
      this.changeWorkCenterAction()
      this.changeWorkCenterAction(opName)
    },
    changeWorkCenterAction() {
    changeWorkCenterAction(opName) {
      if (this.dataForm.workCenter) {
        const queryParamStation = Object.assign({
          workCenter: this.dataForm.workCenter
@@ -685,6 +695,15 @@
        getAllWorkstationList(queryParamStation).then((response) => {
          const resData = response.data.data
          if (resData && resData.length > 0) {
            let obj = null
            resData.forEach((ele)=>{
              if(ele.name.indexOf(opName)>-1){
                obj = ele
              }
            })
            if(obj){
              this.dataForm.workstationId = obj.id
            }
            this.workstations = resData
          }
        })
@@ -830,7 +849,7 @@
            this.$refs.ganttIndex.init(this.dataForm.workCenter, 1)
          })
        }
      })
      })
    },
    // 表单提交
    dataFormSubmit() {
@@ -938,11 +957,10 @@
      this.dataForm.operationName = routingOperation.operationName
      this.dataForm.workCenter = routingOperation.workCenter
      this.changeWorkCenter()
      this.changeWorkCenter(routingOperation.operationName)
      this.dataForm.routingOperationId =
        routingOperation.technologyRoutingOperationId
    },
    // 根据工作站切换库位
    selectLocationByWorkstation() {
      this.locationOptions = []