chenlu
2024-03-22 bd8f3a15f17facd2f77521da844eaf76dca22bad
north-glass-erp/northglass-erp/src/views/mm/mainIngredient/CreateIngredients.vue
@@ -1,7 +1,18 @@
<!-- 物料资料新增原片 -->
<script lang="ts" setup>
import {ref} from "vue";
import request from "@/utils/request"
import deepClone from "@/utils/deepClone"
import {ElMessage} from "element-plus"
import {computed, onMounted, ref} from "vue"
import {useRoute, useRouter} from "vue-router"
import  useUserInfo from "@/stores/userInfo"
import GlassType from "@/components/sd/product/GlassType.vue"
import useProductGlassTypeStore from "@/stores/sd/product/productGlassType"
const router = useRouter()
const route = useRoute()
const value = ref('')
const options = [
  {
@@ -13,6 +24,113 @@
    label: '辅料',
  }
]
let BasicData = ref([])
let ruleForm = ref({
  id:0,
  type: '',
  json: ''
})
const userinfo=[]
const getWork = () => {
  //页面加载请求
  request.get(`/BasicWarehouse/BasicWarehouseType/${value.value}`).then((res) => {
    if(res.code==200){
      BasicData.value = res.data
      for (let i=0;i<BasicData.value.length;i++){
        BasicData.value[i].Type=userinfo[i]
      }
    }else{
      ElMessage.warning(res.msg)
    }
  })
}
const resetForm = () => {
  BasicData.value.forEach((item)=>{
    item.Type=""
  })
}
const submitForm = () => {
  let filterData = {}
  let isBool=true
  let index = 0
  let productName = "{"
  BasicData.value.forEach((item)=>{
    filterData[item.OperateType]=item.Type
    const customerName = item.Type
    if(customerName === null || customerName === undefined || customerName === ''){
      ElMessage.error('请输入'+item.OperateTypeName)
      isBool=false
      return
    }
    if(index == BasicData.value.length - 1){
      productName+='"'+item.OperateType+'":"'+item.Type+'"'
    }else {
      productName+='"'+item.OperateType+'":"'+item.Type+'",'
    }
    index++;
  })
  productName+="}"
  let materialStore={
    id:ruleForm.value.id,
    type:value.value,
    json:productName
  }
  console.log(materialStore)
  if(isBool){
    request.post("/Material/saveMaterialStore", materialStore).then((res) => {
      if(res.code==200){
        resetForm()
        ElMessage.success('保存成功')
      }else{
        ElMessage.warning(res.msg)
      }
    })
  }
}
onMounted(()=>{
  //获取传过来的数据进行判断
  const str = route.query.id
  if (typeof str != 'undefined' && str != null && str !== '' && str !== '\n' && str !== '\r'){
    ruleForm.value.id = Number(str)
    request.post(`/Material/getSelectMaterialStore/1/100`,ruleForm.value).then((res) => {
      if(res.code==200){
        ruleForm.value=deepClone(res.data.data[0])
        value.value=ruleForm.value.type
        const cc= JSON.parse(ruleForm.value.json);
        for (let i in cc){
          userinfo.push(cc[i])
        }
        getWork()
      }else{
        ElMessage.warning(res.msg)
        router.push("/login")
      }
    })
  }
})
</script>
<template>
@@ -22,7 +140,7 @@
<div>
  <el-row>
  <el-col :span="4">
    <el-select v-model="value" placeholder="请选择类别">
    <el-select v-model="value" placeholder="请选择类别" @change="getWork">
      <el-option
          v-for="item in options"
          :key="item.value"
@@ -36,156 +154,23 @@
     <el-divider ></el-divider> <!-- 添加分隔线 -->
     <el-row gutter="5" v-show="value=='原片'" >
       <el-col :span="4.5">
        长度 <el-input v-show="value=='原片'" v-model="name" placeholder="请输入长度" style="width: 150px; height: 30px;" />
     <el-row gutter="5"
             v-for="item in BasicData" >
       <el-col :span="4.5" >
         {{item.OperateTypeName}}:<el-input v-model="item.Type"  placeholder="请输入数据" style="width: 150px; height: 30px;" />
       </el-col>
       <el-col :span="4.5">
         厚度 <el-input v-show="value=='原片'"  v-model="name" placeholder="请输入厚度" style="width: 150px; height: 30px;" />
       </el-col>
       <el-col :span="4.5">
         宽度 <el-input v-show="value=='原片'" v-model="name" placeholder="请输入宽度" style="width: 150px; height: 30px;" />
       </el-col>
<!--       <el-col :span="4">-->
<!--         <el-dropdown>-->
<!--           <el-button type="primary">-->
<!--             膜系<el-icon class="el-icon&#45;&#45;right" style="width: 66px;"><arrow-down /></el-icon>-->
<!--           </el-button>-->
<!--           <template #dropdown>-->
<!--             <el-dropdown-menu>-->
<!--               <el-dropdown-item>非镀膜</el-dropdown-item>-->
<!--               <el-dropdown-item>在线LOW-E</el-dropdown-item>-->
<!--               <el-dropdown-item>SUPPER-I</el-dropdown-item>-->
<!--               <el-dropdown-item>SUPPER-I+</el-dropdown-item>-->
<!--               <el-dropdown-item>SUPPER-II</el-dropdown-item>-->
<!--               <el-dropdown-item>SUPPER-III</el-dropdown-item>-->
<!--               <el-dropdown-item>SUPPER-V</el-dropdown-item>-->
<!--               <el-dropdown-item>SUPPER-IA</el-dropdown-item>-->
<!--               <el-dropdown-item>SUNLITE LOWE</el-dropdown-item>-->
<!--               <el-dropdown-item>LOW-E40</el-dropdown-item>-->
<!--               <el-dropdown-item>LOW-E40A</el-dropdown-item>-->
<!--               <el-dropdown-item>LOW-E50</el-dropdown-item>-->
<!--               <el-dropdown-item>LOW-E55N</el-dropdown-item>-->
<!--             </el-dropdown-menu>-->
<!--           </template>-->
<!--         </el-dropdown>-->
<!--       </el-col>-->
     </el-row>
     <el-divider ></el-divider> <!-- 添加分隔线 -->
       <el-row gutter="5" v-show="value=='原片'|| value=='辅料'">
       <el-col :span="4.5">
         名称 <el-input  v-show="value=='原片' || value=='辅料'" v-model="productName" placeholder="请输入名称" style="width: 150px; height: 30px;" />
       </el-col>
         <el-col :span="4.5">
           数量 <el-input v-show="value=='原片' || value=='辅料'"  v-model="salId" placeholder="请输入数量" style="width: 150px; height: 30px;" />
         </el-col>
         <el-col :span="4.5">
           单位 <el-input v-model="name" placeholder="请输入单位" style="width: 150px; height: 30px;" />
         </el-col>
         <el-col :span="4.5">
           型号<el-input v-model="name" placeholder="请输入型号" style="width: 150px; height: 30px;" />
         </el-col>
       </el-row>
     <el-divider v-show="false" ></el-divider> <!-- 添加分隔线 -->
<!--         <el-row gutter="5">-->
<!--           <el-col span="4.5">-->
<!--           <el-input v-model="name" placeholder="请输入换算单位" style="width: 150px; height: 30px;" />-->
<!--           </el-col>-->
<!--           <el-col :span="4.5">-->
<!--             <el-input v-model="name" placeholder="请输入换算率" style="width: 150px; height: 30px;" />-->
<!--           </el-col>-->
<!--     </el-row>-->
     <el-divider ></el-divider> <!-- 添加分隔线 -->
     <el-row gutter="5">
       <el-divider ></el-divider> <!-- 添加分隔线 -->
     </el-row>
<!--     <el-divider ></el-divider> &lt;!&ndash; 添加分隔线 &ndash;&gt;-->
<!--     <el-row gutter="5">-->
<!--       <el-col :span="4.5">-->
<!--         <el-input v-model="name" placeholder="请输入型号" style="width: 150px; height: 30px;" />-->
<!--       </el-col>-->
<!--       <el-col :span="4.5">-->
<!--         <el-input v-model="name" placeholder="请输入单位" style="width: 150px; height: 30px;" />-->
<!--       </el-col>-->
<!--       <el-col :span="4">-->
<!--         <el-dropdown>-->
<!--           <el-button type="primary">-->
<!--             产地<el-icon class="el-icon&#45;&#45;right" style="width: 66px;"><arrow-down /></el-icon>-->
<!--           </el-button>-->
<!--           <template #dropdown>-->
<!--             <el-dropdown-menu>-->
<!--               <el-dropdown-item>暂无</el-dropdown-item>-->
<!--             </el-dropdown-menu>-->
<!--           </template>-->
<!--         </el-dropdown>-->
<!--       </el-col>-->
<!--       <el-col :span="4">-->
<!--         <el-dropdown>-->
<!--           <el-button type="primary">-->
<!--             中类<el-icon class="el-icon&#45;&#45;right" style="width: 66px;"><arrow-down /></el-icon>-->
<!--           </el-button>-->
<!--           <template #dropdown>-->
<!--             <el-dropdown-menu>-->
<!--               <el-dropdown-item>0</el-dropdown-item>-->
<!--             </el-dropdown-menu>-->
<!--           </template>-->
<!--         </el-dropdown>-->
<!--       </el-col>-->
<!--     </el-row>-->
<!--     <el-divider ></el-divider> &lt;!&ndash; 添加分隔线 &ndash;&gt;-->
<!--     <el-row gutter="5">-->
<!--       <el-col :span="4.5">-->
<!--         <el-input v-model="name" placeholder="请输入备注" style="width: 150px; height: 30px;" />-->
<!--       </el-col>-->
<!--       <el-col :span="4">-->
<!--         <el-dropdown>-->
<!--           <el-button type="primary">-->
<!--             小类<el-icon class="el-icon&#45;&#45;right" style="width: 66px;"><arrow-down /></el-icon>-->
<!--           </el-button>-->
<!--           <template #dropdown>-->
<!--             <el-dropdown-menu>-->
<!--               <el-dropdown-item>0</el-dropdown-item>-->
<!--             </el-dropdown-menu>-->
<!--           </template>-->
<!--         </el-dropdown>-->
<!--       </el-col>-->
<!--     </el-row>-->
<!--     <el-divider ></el-divider> &lt;!&ndash; 添加分隔线 &ndash;&gt;-->
<!--     <el-row gutter="5">-->
<!--&lt;!&ndash;       <el-col :span="4.5">&ndash;&gt;-->
<!--&lt;!&ndash;         <el-input v-model="name" placeholder="请输入保质期" style="width: 150px; height: 30px;" />&ndash;&gt;-->
<!--&lt;!&ndash;       </el-col>&ndash;&gt;-->
<!--&lt;!&ndash;       <el-col :span="4.5">&ndash;&gt;-->
<!--&lt;!&ndash;         <el-input v-model="name" placeholder="请输入最高预警" style="width: 150px; height: 30px;" />&ndash;&gt;-->
<!--&lt;!&ndash;       </el-col>&ndash;&gt;-->
<!--&lt;!&ndash;       <el-col :span="4.5">&ndash;&gt;-->
<!--&lt;!&ndash;         <el-input v-model="name" placeholder="请输入拆包预警" style="width: 150px; height: 30px;" />&ndash;&gt;-->
<!--&lt;!&ndash;       </el-col>&ndash;&gt;-->
<!--     </el-row>-->
<!--     <el-divider ></el-divider> &lt;!&ndash; 添加分隔线 &ndash;&gt;-->
     <el-row  gutter="10" justify="center" >
       <el-col span="4">
         <el-button id="searchButton" type="primary" :icon="Search">查询</el-button>
         <el-button id="searchButton" type="primary" @click="resetForm" >重置</el-button>
       </el-col>
       <el-col span="4">
         <el-button id="searchButton" type="primary" :icon="Search">确定</el-button>
         <el-button id="searchButton" type="primary" @click="submitForm" >保存</el-button>
       </el-col>
     </el-row>
   </el-form>