From ed6c6350015d52ea1cb033c7558f72b721ece84a Mon Sep 17 00:00:00 2001
From: WangHan <wwh_work@126,com>
Date: 星期四, 19 十二月 2024 19:58:55 +0800
Subject: [PATCH] 打包名称修改,去除错误输出

---
 admin-web/src/views/foundation/material/edit.vue |  133 ++++++++++++++++++++++++++++---------------
 1 files changed, 86 insertions(+), 47 deletions(-)

diff --git a/admin-web/src/views/foundation/material/edit.vue b/admin-web/src/views/foundation/material/edit.vue
index 9b014dd..7ea95fd 100644
--- a/admin-web/src/views/foundation/material/edit.vue
+++ b/admin-web/src/views/foundation/material/edit.vue
@@ -1,27 +1,41 @@
 <template>
-  <win-md :title="setting.title" @close="close" :width="'800px'">
+  <win-md :title="setting.title" @close="close" :width="'800px'" :loading="loading">
     <el-form ref="ruleForm" :model="formData" :rules="rules" class="demo-ruleForm" label-width="100px">
-      <el-form-item label="鐗╁搧缂栧彿">
-        <el-input v-model="formData.goodsCode" disabled clearable maxlength="20" show-word-limit style="width: 100%"/>
-      </el-form-item>
+      <!--      <el-form-item label="鐗╁搧缂栧彿">
+              <el-input v-model="formData.goodsCode" disabled clearable maxlength="20" show-word-limit style="width: 100%"/>
+            </el-form-item>-->
       <el-form-item label="鐗╁搧鍚嶇О" prop="goodsName">
-        <el-input v-model="formData.goodsName" clearable maxlength="20" show-word-limit style="width: 100%"/>
+        <el-input v-model="formData.goodsName" placeholder="璇疯緭鍏ョ墿鍝佸悕绉�" clearable maxlength="20" show-word-limit
+                  style="width: 100%"/>
       </el-form-item>
-      <el-form-item label="鍒嗙被" prop="categoryId">
-        <el-select v-model="formData.categoryId" clearable placeholder="璇烽�夋嫨"  style="width: 100%">
-          <el-option v-for="item in categoryList" :key="item.id" :label="item.categoryName" :value="item.id"></el-option>
-        </el-select>
+      <el-form-item label="鐗╁搧鍒嗙被" prop="categoryId">
+        <el-cascader
+            clearable
+            filterable
+            placeholder="璇烽�夋嫨鐗╁搧鍒嗙被"
+            v-model="formData.categoryId"
+            :options="categoryList"
+            :props="{emitPath: false,value: 'id'}"
+            style="width: 100%"/>
       </el-form-item>
-      <el-form-item style="margin-left: -100px;" v-for="(m, i) in formData.models">
-        <el-form-item label="瑙勬牸鍨嬪彿" prop="modelName" style="float: left;">
-          <el-input v-model="m.modelName" clearable maxlength="20" show-word-limit style="width: 100%"/>
-        </el-form-item>
-        <el-form-item label="鍗曚綅" prop="unit" style="float: left;">
-          <el-input v-model="m.unit" clearable maxlength="20" show-word-limit style="width: 100%"/>
-        </el-form-item>
-        <my-button name="鏂板鍨嬪彿" type="" @click="addCode"/>
-        <my-button name="鍒犻櫎" type="" @click="delCode(i)"/>
-      </el-form-item>
+      <el-row :gutter="20" v-for="(m, i) in formData.models">
+        <el-col :span="9">
+          <el-form-item label="瑙勬牸鍨嬪彿" :prop="`models.${i}.modelName`" :rules="rules.modelName">
+            <el-input :disabled="!!setting.id" v-model="m.modelName" placeholder="璇疯緭鍏ヨ鏍煎瀷鍙峰悕绉�" clearable maxlength="20" show-word-limit
+                      style="width: 100%"/>
+          </el-form-item>
+        </el-col>
+        <el-col :span="9">
+          <el-form-item label="鍗曚綅" :prop="`models.${i}.unit`" :rules="rules.unit">
+            <el-input v-model="m.unit" placeholder="璇疯緭鍏ュ崟浣�" clearable maxlength="20" show-word-limit
+                      style="width: 100%"/>
+          </el-form-item>
+        </el-col>
+        <el-col :span="6">
+          <my-button :key="'d'+i" v-if="formData.models.length>1" name="鍒犻櫎" type="danger" @click="delCode(i)"/>
+          <my-button :key="'a'+i" v-if="i===formData.models.length-1" name="鏂板鍨嬪彿" type="" @click="addCode"/>
+        </el-col>
+      </el-row>
       <el-form-item label="鐘舵��" prop="states">
         <el-radio-group v-model="formData.states">
           <el-radio :label="1" border>鍚敤</el-radio>
@@ -39,7 +53,9 @@
 <script>
 import winMd from '@/components/win/win-md'
 import myButton from '@/components/myButton/myButton'
-import * as finsystenant from '@/api/baseSetting/finsystenant'
+import {addGoods,editGoods,goodsDetail} from "@/api/foudation/material";
+import {getTree} from '@/api/foudation/classification';
+import {mapGetters} from 'vuex'
 
 export default {
   components: {winMd, myButton},
@@ -52,57 +68,76 @@
   },
   data() {
     return {
-      categoryList:[],
+      loading: true,
+      categoryList: [],
       checkAll: false,
       checkedList: [],
       formData: {
-        radio1: '',
-        code: '',
-        name: '',
-        states: '',
+        goodsName: '',
+        states: 1,
         summary: '',
         categoryId: null,
-        models:[
+        agencyId: '',
+        agencyName: '',
+        models: [
           {
-            modelName:'',
-            unit:''
+            modelName: '',
+            unit: ''
           }
         ]
       },
       rules: {
-        name: [
+        goodsName: [
           {required: true, message: '璇疯緭鍏ョ墿鍝佸悕绉�', trigger: 'blur'}
+        ],
+        categoryId: [
+          {required: true, message: '璇烽�夋嫨鐗╁搧鍒嗙被', trigger: 'blur'}
+        ],
+        modelName: [
+          {required: true, message: '璇疯緭鍏ヨ鏍煎悕绉�', trigger: 'blur'}
+        ],
+        unit: [
+          {required: true, message: '璇疯緭鍏ュ崟浣�', trigger: 'blur'}
         ]
       }
     }
   },
-  created() {
-    this.tree_List()
-    if(this.setting.info){
-      this.formData = Object.assign({},JSON.parse(this.setting.info))
+  computed: {
+    ...mapGetters(['userInfo'])
+  },
+  async created() {
+    if (this.setting.id) {
+      await goodsDetail(this.setting.id).then(res => {
+        this.formData = res
+        if (!this.formData.agencyId) {
+          this.formData.agencyId = this.userInfo.tenantId
+          this.formData.agencyName = this.userInfo.tenantName
+        }
+      })
     }
+    await this.tree_List()
+    this.loading = false
   },
   methods: {
-    tree_List (){
-      finsystenant.treeList().then(res => {
+    async tree_List() {
+      await getTree().then(res => {
         if (res) {
-          console.log(res,'res');
           this.categoryList = res
         }
       })
     },
-    addCode(){
+    addCode() {
       this.formData.models.push(
-        {
-          modelName:'',
-          unit:''
-        }
+          {
+            modelName: '',
+            unit: ''
+          }
       )
     },
-    delCode(index){
+    delCode(index) {
       this.formData.models.splice(index, 1)
     },
-    getEditInfo(id){
+    getEditInfo(id) {
 
     },
     close() {
@@ -112,9 +147,12 @@
       this.$refs.ruleForm.validate((valid) => {
         if (valid) {
           const params = Object.assign({}, this.formData)
-          if(this.setting.id){
+          if (this.loading) return
+          this.loading = true
+          if (this.setting.id) {
             // 缂栬緫鎺ュ彛
-            finsystenant.editcode(params).then(res => {
+            editGoods(params).then(res => {
+              this.loading = false
               if (res) {
                 this.$message.success('淇濆瓨鎴愬姛锛�')
                 this.close()
@@ -123,9 +161,10 @@
                 this.$message.error('淇濆瓨澶辫触')
               }
             })
-          }else{
+          } else {
             params.orgId = this.setting.orgId
-            finsystenant.addcode(params).then(res => {
+            addGoods(params).then(res => {
+              this.loading = false
               if (res) {
                 this.$message.success('淇濆瓨鎴愬姛锛�')
                 this.close()

--
Gitblit v1.9.1