Fixiaobai
2023-12-14 c8d7453ef88f52f629272bdd89cab8ff6ba6eb6e
Merge branch 'master' of http://114.132.189.42:9002/r/mes-ocea-before
已修改9个文件
460 ■■■■■ 文件已修改
src/const/crud/customerOrder/customerOrderForm.js 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/basic/customizeparamtemplatetype/templatetype-form.vue 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/basic/location/location-form.vue 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/basic/warehouse/warehouse-form.vue 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/common/ztt-table.vue 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/plan/customerorder/index.vue 42 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/plan/customerorder/sample-customerorder-form.vue 223 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/plan/productionschedul/index.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/technology/structure/single-structure-form.vue 166 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/const/crud/customerOrder/customerOrderForm.js
@@ -97,9 +97,11 @@
    label: '收货地址',
    prop: 'shippingAddress',
    cell: true,
    type: 'input',
    type: 'textarea',
    minWidth: 200,
    span: 24
    span: 24,
    minRows: 1,
    maxRows: 3
  }, {
    label: '产品备注',
    prop: 'remark',
src/views/basic/customizeparamtemplatetype/templatetype-form.vue
@@ -114,6 +114,9 @@
              this.visible = false
              this.isSubmit = false
              this.$emit('refreshDataList')
            }).catch(error=>{
              console.error(error);
              this.isSubmit = false
            })
          } else {
            addObj(this.dataForm).then((data) => {
@@ -121,6 +124,9 @@
              this.visible = false
              this.isSubmit = false
              this.$emit('refreshDataList')
            }).catch(error=>{
              console.error(error);
              this.isSubmit = false
            })
          }
        } else {
src/views/basic/location/location-form.vue
@@ -396,6 +396,9 @@
              this.visible = false
              this.isSubmit = false
              this.$emit('refreshDataList')
            }).catch(error=>{
              console.error(error);
              this.isSubmit = false
            })
          } else {
            addObj(this.dataForm).then((data) => {
@@ -403,6 +406,9 @@
              this.visible = false
              this.isSubmit = false
              this.$emit('refreshDataList')
            }).catch(error=>{
              console.error(error);
              this.isSubmit = false
            })
          }
        } else {
src/views/basic/warehouse/warehouse-form.vue
@@ -322,6 +322,9 @@
              this.visible = false
              this.isSubmit = false
              this.$emit('refreshDataList')
            }).catch(error=>{
              console.error(error);
              this.isSubmit = false
            })
          } else {
            addObj(this.dataForm).then((data) => {
@@ -329,6 +332,9 @@
              this.visible = false
              this.isSubmit = false
              this.$emit('refreshDataList')
            }).catch(error=>{
              console.error(error);
              this.isSubmit = false
            })
          }
        } else {
src/views/common/ztt-table.vue
@@ -245,6 +245,7 @@
            :show-overflow-tooltip="!item.noShowTip"
            :width="inMemoryColWidth[item.prop] || item.width"
            :prop="item.prop"
            align="center"
          >
            <template slot="header" slot-scope="scope">
              <template v-if="item.isSearch">
@@ -324,7 +325,7 @@
                <template v-if="!item.render">
                  <template v-if="item.formatter">
                    <span v-if="item.isTag" style="text-align: center;">
                      <el-tag style="width:50px;margin: 3px;" :type="scope.row[item.prop] == 0 ? 'success' : 'info'">
                      <el-tag style="width:60px;margin: 3px;" :type="scope.row[item.prop] == 0 ? 'success' : 'info'">
                        <span v-html="item.formatter(scope.row, item, scope.row[item.prop])"></span>
                      </el-tag>
                    </span>
src/views/plan/customerorder/index.vue
@@ -12,22 +12,6 @@
        ref="customerOrderTable"
      >
        <template #toolbar>
          <!-- <el-dropdown
            v-if="permissions.customerorder_state_change"
            @command="handleCommand"
          >
            <el-button>
              状态改变<i class="el-icon-arrow-down el-icon--right"></i>
            </el-button>
            <el-dropdown-menu slot="dropdown">
              <el-dropdown-item
                :command="item.command"
                v-for="item in stateTagArr"
                :disabled="item.disabled">
                {{ item.label }}
              </el-dropdown-item>
            </el-dropdown-menu>
          </el-dropdown> -->
          <el-dropdown
            v-if="permissions.customerorder_doc_relate"
            @command="documentHandle"
@@ -65,32 +49,12 @@
              >
            </el-dropdown-menu>
          </el-dropdown>
          <!-- <el-button
            v-if="permissions.customerorder_push_otc"
            style="margin-left:10px;"
            type="primary"
            @click="pushOtc"
            >推送ERP</el-button
          > -->
          <!-- <el-button
            style="margin-left:10px;"
            type="primary"
            @click="importOutPutBatch"
            >导入产出批次</el-button
          > -->
          <el-button
            style="margin-left:10px;"
            type="primary"
            @click="()=>exportDialogVisible=true"
            >导出台账</el-button
          >
          <!-- <el-button
            v-if="permissions.plan_customerorder_return"
            style="margin-left:10px;"
            type="primary"
            @click="returnOrder"
            >订单退回</el-button
          > -->
        </template>
      </ttable>
      <!-- 弹窗, 日期选择 -->
@@ -474,7 +438,7 @@
            searchInfoType: 'text'
          },
          {
            minWidth: '120',
            minWidth: '100',
            prop: 'sourceId',
            label: '添加来源',
            isTag: true,
@@ -769,10 +733,10 @@
      ],
      sourceIdList: [{
        label: '同步',
        value: '0'
        value: "0"
      },{
        label: '手动',
        value: '1'
        value: "1"
      }],
      stockVisible: false,
      partName: null,
src/views/plan/customerorder/sample-customerorder-form.vue
@@ -51,14 +51,6 @@
              <el-input v-model="dataForm.entityName" placeholder=""></el-input>
            </el-form-item>
          </el-col>
          <!-- <el-col :span="6">
            <el-form-item label="事业部" prop="salesDepartment">
              <el-input
                v-model="dataForm.salesDepartment"
                placeholder=""
              ></el-input>
            </el-form-item>
          </el-col> -->
          <el-col :span="6">
            <el-form-item label="省份" prop="province">
              <el-input v-model="dataForm.province" placeholder=""></el-input>
@@ -156,6 +148,7 @@
    </el-divider>
    <div>
      <avue-crud ref="crud"
        class="l-mes"
        show-hide="false"
        :option="option"
        :data="tableData">
@@ -175,196 +168,6 @@
          </template>
      </avue-crud>
    </div>
    <!-- <div class="l-mes normal-form">
      <el-row :gutter="20">
        <el-col :span="2">
          <span>零件号</span>
        </el-col>
        <el-col :span="6">
          <el-input
            v-model="dataForm.customerOrder.partNo"
            placeholder=""
            readonly
          >
            <el-button
              slot="append"
              icon="el-icon-search"
              @click="openPartDialog()"
            ></el-button>
          </el-input>
        </el-col>
        <el-col :span="2">
          <span>单位</span>
        </el-col>
        <el-col :span="6">
          <el-select
            v-model="dataForm.customerOrder.unit"
            placeholder=""
            style="width: 100%"
          >
            <el-option
              v-for="item in units"
              :key="item.value"
              :label="item.label"
              :value="item.value"
            />
          </el-select>
        </el-col>
        <el-col :span="2">
          <span>数量</span>
        </el-col>
        <el-col :span="6">
          <el-input
            v-model="dataForm.customerOrder.buyQtyDue"
            placeholder=""
          ></el-input>
        </el-col>
      </el-row>
      <el-row :gutter="20">
        <el-col :span="2">
          <span>电压等级</span>
        </el-col>
        <el-col :span="6">
          <el-input
            v-model="dataForm.customerOrder.voltAgeClass"
            placeholder=""
          ></el-input>
        </el-col>
        <el-col :span="2">
          <span>产品名称</span>
        </el-col>
        <el-col :span="6">
          <el-input
            v-model="dataForm.customerOrder.productName"
            placeholder=""
          ></el-input>
        </el-col>
        <el-col :span="2">
          <span>制造属性</span>
        </el-col>
        <el-col :span="6">
          <el-select
            v-model="dataForm.customerOrder.manufactureAttr"
            placeholder=""
            style="width: 100%"
            disabled
          >
            <el-option
              v-for="item in manufactureAttrs"
              :key="item.value"
              :label="item.label"
              :value="item.value"
            />
          </el-select>
        </el-col>
      </el-row>
      <el-row :gutter="20">
        <el-col :span="2">
          <span>外护颜色</span>
        </el-col>
        <el-col :span="6">
          <el-input
            v-model="dataForm.customerOrder.outerColor"
            placeholder=""
          ></el-input>
        </el-col>
        <el-col :span="2">
          <span>零件规格</span>
        </el-col>
        <el-col :span="6">
          <el-input
            v-model="dataForm.customerOrder.customerPartSpec"
            placeholder=""
          ></el-input>
        </el-col>
        <el-col :span="2">
          <span>包装要求</span>
        </el-col>
        <el-col :span="6">
          <el-input
            v-model="dataForm.customerOrder.packageRequire"
            placeholder=""
          ></el-input>
        </el-col>
      </el-row>
      <el-row :gutter="20">
        <el-col :span="2">
          <span>质量要求</span>
        </el-col>
        <el-col :span="6">
          <el-input
            v-model="dataForm.customerOrder.qualityRequire"
            placeholder=""
          ></el-input>
        </el-col>
        <el-col :span="2">
          <span>生产需求说明</span>
        </el-col>
        <el-col :span="6">
          <el-input
            v-model="dataForm.customerOrder.otherProductRequire"
            placeholder=""
          ></el-input>
        </el-col>
        <el-col :span="2">
          <span>系统</span>
        </el-col>
        <el-col :span="6">
          <el-input
            v-model="dataForm.customerOrder.divisionSystem"
            placeholder=""
          ></el-input>
        </el-col>
      </el-row>
      <el-row :gutter="20">
        <el-col :span="2">
          <span>收货地址</span>
        </el-col>
        <el-col :span="6">
          <el-input
            v-model="dataForm.customerOrder.shippingAddress"
            placeholder=""
          ></el-input>
        </el-col>
        <el-col :span="2">
          <span>业务员</span>
        </el-col>
        <el-col :span="6">
          <el-select v-model="dataForm.customerOrder.salesmanName" style="width:100%">
                <el-option v-for="(item,index) in staffOptions" :key="index" :value="item.staff_no" :label="item.staffName"/>
          </el-select>
        </el-col>
        <el-col :span="2">
          <span>盘长要求</span>
        </el-col>
        <el-col :span="6">
          <el-input
            v-model="dataForm.customerOrder.lengthRequirement"
            placeholder=""
          ></el-input>
        </el-col>
      </el-row>
      <el-row :gutter="20">
        <el-col :span="2">
          <span>备注</span>
        </el-col>
        <el-col :span="6">
          <el-input
            v-model="dataForm.customerOrder.remark"
            placeholder=""
          ></el-input>
        </el-col>
        <el-col :span="2">
          <span>产品类型</span>
        </el-col>
        <el-col :span="6">
          <el-input
            v-model="dataForm.customerOrder.productType"
            placeholder=""
          ></el-input>
        </el-col>
      </el-row>
    </div> -->
    <span slot="footer" class="dialog-footer">
      <el-button @click="visible = false">取消</el-button>
@@ -401,6 +204,30 @@
  color: #c0c4cc;
  margin: -1px 0;
}
.l-mes .el-input-group__append,
.l-mes .el-input-group__prepend {
  padding: 0;
  border-top: none;
  border-right: none;
  border-left: none;
  border-radius: 0;
  background-color: transparent;
}
.l-mes .el-input-group__append .el-button,
.l-mes .el-input-group__prepend .el-button {
  padding: 0;
  width: 25px;
  border: none !important;
  line-height: 28px;
  color: #c0c4cc;
  margin: -1px 0;
}
.l-mes .el-input-group__append .el-button i,
.l-mes .el-input-group__prepend .el-button i {
  vertical-align: middle;
}
</style>
<script>
import { addObj } from '@/api/plan/customer'
src/views/plan/productionschedul/index.vue
@@ -573,7 +573,7 @@
}
</script>
<style>
.el-tag--small{
.avue-crud__tip{
  display: none;
}
.basic-template-table .el-table__body .el-table__row td:first-child .cell {
src/views/technology/structure/single-structure-form.vue
@@ -2,11 +2,11 @@
  <div style="height: 100%">
    <div class="page-header">
      <div class="header-left">
        <a @click="$router.go(-1)"><i class="icon-btn-back"></i></a>
        <a @click="goBack"><i class="icon-btn-back"></i></a>
        <h2>编辑-产品结构</h2>
      </div>
      <div class="btn-group header-right">
        <el-button title="保存" :disabled="isSubmit" v-thinclick="`save`"
        <el-button title="保存" type="primary" :disabled="isSubmit" v-thinclick="`save`"
          >保存</el-button
        >
      </div>
@@ -47,34 +47,6 @@
                >
                </el-input>
              </el-form-item>
              <!-- <el-form-item label="结构类型" prop="bomTypeDb">
                <el-select
                  v-model="dataForm.bomTypeDb"
                  placeholder="请选择结构类型"
                  style="width:100%"
                >
                  <el-option
                    v-for="(item, index) in bomTypeDbOptions"
                    :label="item.label"
                    :value="item.value"
                    :key="index"
                  >
                  </el-option>
                </el-select>
              </el-form-item> -->
              <!-- <el-form-item label="替代" prop="alternativeNo">
                <el-input v-model="dataForm.alternativeNo"></el-input>
              </el-form-item>
              <el-form-item label="替代描述" prop="alternativeDesc">
                <el-input
                  type="textarea"
                  :autosize="{ minRows: 1, maxRows: 3 }"
                  v-model="dataForm.alternativeDesc"
                ></el-input>
              </el-form-item> -->
              <!-- <el-form-item label="版本号" prop="version">
                <el-input v-model="dataForm.version" disabled></el-input>
              </el-form-item> -->
              <el-form-item label="备注" prop="remark">
                <el-input
                  type="textarea"
@@ -82,15 +54,6 @@
                  v-model="dataForm.remark"
                ></el-input>
              </el-form-item>
              <!-- <el-form-item label="已同步至IFS" prop="ifsSync">
                <span
                  style="width: 146px;display: inline-block;font-size:12px;font-weight:bold;"
                  >{{ dataForm.ifsSync ? '是' : '否' }}</span
                >
              </el-form-item> -->
              <!-- <el-form-item label="默认结构" prop="master">
                <el-checkbox v-model="dataForm.master"></el-checkbox>
              </el-form-item> -->
            </el-col>
          </el-row>
        </el-form>
@@ -110,7 +73,7 @@
                size="medium"
                class="blue-but"
                @click="addNode()"
                >添加
                >添加行
              </el-button>
            </div>
          </div>
@@ -120,12 +83,14 @@
            :data="nodeList"
            :default-sort="{ prop: 'lineItemNo' }"
            height="650"
            :header-cell-style="{ color: '#999' }"
            border
            :header-cell-style="{ color: '#000' }"
            :row-class-name="structureComponentRowClass"
            class="l-mes"
          >
            <el-table-column
              prop="lineItemNo"
              label="行项号"
              label="序号"
              align="center"
              width="70"
            >
@@ -135,11 +100,13 @@
              prop="operationName"
              align="center"
            >
              <template scope="scope">
              <template scope="scope" >
                <el-input
                  v-model="scope.row.operationName"
                  placeholder="请选择消耗工序"
                  v-if="scope.row.isUpdate"
                style="width:90%"
                v-model="scope.row.operationName"
                placeholder="请选择消耗工序"
                readonly
                v-if="scope.row.isUpdate"
                >
                  <el-button
                    slot="append"
@@ -155,6 +122,7 @@
            <el-table-column label="零件号" prop="partNo" align="center">
              <template scope="scope">
                <el-input
                  style="width:90%"
                  :class="customClass[scope.$index]"
                  v-model="scope.row.partNo"
                  placeholder="请选择零件"
@@ -184,6 +152,8 @@
            <el-table-column label="数量" prop="qpa" align="center">
              <template slot-scope="scope">
                <el-input
                  style="width:90%"
                  clearable
                  size="small"
                  v-model="scope.row.qpa"
                  placeholder="请填写数量"
@@ -193,31 +163,15 @@
                <span v-show="!scope.row.isUpdate">{{ scope.row.qpa }}</span>
              </template>
            </el-table-column>
            <el-table-column label="单位" prop="unit" align="center">
            </el-table-column>
            <!-- <el-table-column label="盘数(盘)" prop="discNum" align="center">
              <template slot-scope="scope">
                <el-input
                  size="small"
                  v-model="scope.row.discNum"
                  placeholder="请填写盘数"
                  v-show="scope.row.isUpdate"
                ></el-input>
                <span v-show="!scope.row.isUpdate">{{
                  scope.row.discNum
                }}</span>
              </template>
            </el-table-column> -->
            <!-- <el-table-column label="图号" prop="drawingNumber" align="center">
            </el-table-column> -->
            <el-table-column align="center" label="操作" width="85px">
              <template slot-scope="scope">
                <el-button
                  type="text"
                  size="small"
                  class="blue-but"
                  v-if="!scope.row.isUpdate"
                  v-if="!scope.row.isUpdate && scope.row.id!=null"
                  @click="editNode(scope.$index, scope.row)"
                  >编辑</el-button
                >
@@ -225,7 +179,7 @@
                  type="text"
                  size="small"
                  class="blue-but"
                  v-if="scope.row.isUpdate"
                  v-if="scope.row.isUpdate && scope.row.id!=null"
                  :loading="nodeSaveLoading"
                  @click="addOrUpdateNode(scope.$index, scope.row)"
                  >保存</el-button
@@ -346,6 +300,26 @@
    this.getBomTypeDbOptions()
  },
  methods: {
    goBack(){
      let isUnSave = false
      const _than = this
      _than.nodeList.forEach(e=>{
        if(e.isUpdate || e.id==null){
          isUnSave = true
        }
      })
      if(isUnSave){
        _than.$confirm('您还有未保存的子节点,确认离开吗?', '提示', {
          confirmButtonText: '仍要离开',
          cancelButtonText: '取消',
          type: 'warning'
        }).then(() => {
          _than.$router.go(-1)
        }).catch(() => {});
      }else{
        _than.$router.go(-1)
      }
    },
    // 查询结构类型字典
    getBomTypeDbOptions() {
      remote('bom_type_db').then((response) => {
@@ -424,41 +398,49 @@
      this.currRow = null
    },
    save() {
      const _than = this
      this.isSubmit = true
      this.$refs.dataForm.validate((valid) => {
       _than.nodeList.forEach(e=>{
        e.version = _than.dataForm.version
      })
      _than.dataForm.components = _than.nodeList
      _than.$refs.dataForm.validate((valid) => {
        if (valid) {
          if (this.dataForm.id) {
            putObj(this.dataForm)
          if (_than.dataForm.id) {
            putObj(_than.dataForm)
              .then((response) => {
                var data = response.data
                if (data.code === 0) {
                  this.$message.success('保存成功')
                  _than.$message.success('保存成功')
                  _than.$nextTick(()=>{
                    _than.init(_than.dataForm.id)
                  })
                } else {
                  this.$message.error('保存失败')
                  _than.$message.error('保存失败')
                }
                this.isSubmit = false
                _than.isSubmit = false
              })
              .catch(() => {
                this.isSubmit = false
                _than.isSubmit = false
              })
          } else {
            addObj(this.dataForm)
            addObj(_than.dataForm)
              .then((response) => {
                var data = response.data
                if (data.code === 0) {
                  this.dataForm.id = data.data
                  this.$message.success('保存成功')
                  _than.dataForm.id = data.data
                  _than.$message.success('保存成功')
                } else {
                  this.$message.error('保存失败')
                  _than.$message.error('保存失败')
                }
                this.isSubmit = false
                _than.isSubmit = false
              })
              .catch(() => {
                this.isSubmit = false
                _than.isSubmit = false
              })
          }
        } else {
          this.isSubmit = false
          _than.isSubmit = false
        }
      })
    },
@@ -635,6 +617,10 @@
      }
    },
    delNode(index, row) {
      if(row.id==null){
        this.nodeList.splice(index,1)
        return
      }
      this.$confirm('是否确认删除零件号为' + row.partNo, '提示', {
        confirmButtonText: '确定',
        cancelButtonText: '取消',
@@ -826,4 +812,28 @@
.el-input__red {
  border: 1px solid red;
}
.l-mes .el-input-group__append,
.l-mes .el-input-group__prepend {
  padding: 0;
  border-top: none;
  border-right: none;
  border-left: none;
  border-radius: 0;
  background-color: transparent;
}
.l-mes .el-input-group__append .el-button,
.l-mes .el-input-group__prepend .el-button {
  padding: 0;
  width: 25px;
  border: none !important;
  line-height: 28px;
  color: #c0c4cc;
  margin: -1px 0;
}
.l-mes .el-input-group__append .el-button i,
.l-mes .el-input-group__prepend .el-button i {
  vertical-align: middle;
}
</style>