chenlu
2024-02-22 41631eec06251ec8f858765af6a0858b180e720d
north-glass-erp/northglass-erp/src/views/sd/product/CreateProduct.vue
@@ -1,4 +1,8 @@
<script setup>
import request from "@/utils/request"
import deepClone from "@/utils/deepClone";
import {ElMessage} from "element-plus";
import {ref} from "vue";
const disposeList = $ref([
  '彩釉',
  '蒙砂',
@@ -23,7 +27,41 @@
    '中空',
    '包装'
])
let BasicData = ref({
  stuffColor:null,
  stuffCraft:null,
  stuffLowE:null,
  stuffPosition:null,
  stuffThickness:null,
  InterlayerType:null,
  InterlayerThickness:null,
  InterlayerColor:null
})
let stuff = ref({
  thickness:'',
  color:'',
  craft:'',
  position:'',
  lowE:''
})
let processChecked = ref([])
request.get(`/basicData/BasicDataByType/product`).then((res) => {
  if(res.code==200){
    console.log(res.data)
    BasicData.value = res.data
  }else{
    ElMessage.warning(res.msg)
  }
})
const reset = () => {
  processChecked.value=[]
  Object.keys(stuff.value).forEach((item,index)=>{
    stuff.value[item]=''
  })
}
</script>
<template>
@@ -39,27 +77,57 @@
<!--          <el-col :span="6"></el-col>-->
          <el-col :span="4">
            <div class="grid-content ep-bg-purple" >
              <el-select size="small" clearable placeholder="*厚度:" />
              <el-select v-model="stuff.thickness" size="small" clearable placeholder="*厚度:" >
                <el-option v-for="item in BasicData.stuffThickness"
                           :key="item.id"
                           :label="item.basicName"
                           :value="item.basicName"
                />
              </el-select>
            </div>
          </el-col>
          <el-col :span="5">
            <div class="grid-content ep-bg-purple" >
              <el-select v-model="stuff.color" size="small" clearable placeholder="*颜色:"  filterable>
                <el-option v-for="item in BasicData.stuffColor"
                           :key="item.id"
                           :label="item.basicName"
                           :value="item.basicName"
                />
              </el-select>
            </div>
          </el-col>
          <el-col :span="4">
            <div class="grid-content ep-bg-purple" >
              <el-select size="small" clearable placeholder="*颜色:" />
            </div>
          </el-col>
          <el-col :span="6">
            <div class="grid-content ep-bg-purple" >
              <el-select size="small" clearable placeholder="*工艺属性:" />
              <el-select v-model="stuff.craft" size="small" clearable placeholder="*工艺属性:" >
                <el-option v-for="item in BasicData.stuffCraft"
                           :key="item.id"
                           :label="item.basicName"
                           :value="item.basicName"
                />
              </el-select>
            </div>
          </el-col>
          <el-col :span="4">
            <div class="grid-content ep-bg-purple" >
              <el-select size="small"  clearable placeholder="位置:" />
              <el-select v-model="stuff.position" size="small"  clearable placeholder="位置:" >
                <el-option v-for="item in BasicData.stuffPosition"
                           :key="item.id"
                           :label="item.basicName"
                           :value="item.basicName"
                />
              </el-select>
            </div>
          </el-col>
          <el-col :span="6">
            <div class="grid-content ep-bg-purple" >
              <el-select size="small"  clearable placeholder="LOW-E面:" />
              <el-select v-model="stuff.lowE" size="small"  clearable placeholder="LOW-E面:" >
                <el-option v-for="item in BasicData.stuffLowE"
                           :key="item.id"
                           :label="item.basicName"
                           :value="item.basicName"
                />
              </el-select>
            </div>
          </el-col>
        </el-row>
@@ -90,8 +158,9 @@
      </div>
      <div class="line"/>
      <div class="glass-process">
        <h5>材料属性</h5>
        <h5>工艺属性</h5>
        <el-checkbox
            v-model="processChecked"
            v-for="item in processList"
            :label="item"
            class="glass-process-checkbox"
@@ -126,15 +195,33 @@
          <el-select
              size="small"
              style="width: 100px"
              clearable placeholder="*夹层厚度:" />
              clearable placeholder="*夹层厚度:" >
            <el-option v-for="item in BasicData.InterlayerThickness"
                       :key="item.id"
                       :label="item.basicName"
                       :value="item.basicName"
            />
          </el-select>
          <el-select
              size="small"
              style="width: 100px"
              clearable placeholder="*类型:" />
              clearable placeholder="*类型:" >
            <el-option v-for="item in BasicData.InterlayerType"
                       :key="item.id"
                       :label="item.basicName"
                       :value="item.basicName"
            />
          </el-select>
          <el-select
              size="small"
              style="width: 100px"
              clearable placeholder="*颜色:" />
              clearable placeholder="*颜色:" >
            <el-option v-for="item in BasicData.InterlayerColor"
                       :key="item.id"
                       :label="item.basicName"
                       :value="item.basicName"
            />
          </el-select>
          <el-button
              size="small"
              type="primary"
@@ -153,12 +240,13 @@
            </el-col>
            <el-col :span="13">
              <div class="grid-content ep-bg-purple" >
                <el-input size="small" disabled  />
                <el-input :value="stuff.thickness+stuff.color+stuff.craft+stuff.position+stuff.lowE" size="small" disabled  />
              </div>
            </el-col>
            <el-col :span="3">
              <div class="grid-content ep-bg-purple" >
                <el-button
                    @click="reset"
                    size="small"
                    type="primary"
                    round>重置</el-button>
@@ -175,7 +263,7 @@
            </el-col>
            <el-col :span="13">
              <div class="grid-content ep-bg-purple" >
                <el-input size="small" disabled  />
                <el-input :value="processChecked.join('->')" size="small" disabled  />
              </div>
            </el-col>
            <el-col :span="3">