From 1eefd113e28e802348a9cae69a41945c1dc48b0f Mon Sep 17 00:00:00 2001 From: zhanghua <314079846@qq.com> Date: 星期三, 11 六月 2025 21:05:26 +0800 Subject: [PATCH] Merge branch 'dev' of http://42.193.1.25:9521/r/lmk-shop-wx into dev --- pages/goods-manager/addGoods/addGoods.vue | 89 ++++++++++++++++++++++++++++---------------- 1 files changed, 57 insertions(+), 32 deletions(-) diff --git a/pages/goods-manager/addGoods/addGoods.vue b/pages/goods-manager/addGoods/addGoods.vue index bcc7e93..877de76 100644 --- a/pages/goods-manager/addGoods/addGoods.vue +++ b/pages/goods-manager/addGoods/addGoods.vue @@ -4,36 +4,45 @@ <u-form :border-bottom="false" :model="form" ref="uForm" :error-type="['toast']" :rule="rules"> <u-form-item label="鍟嗗搧鍒嗙被" label-width="130" prop=""> - <picker @change="bindCategoryChange" :value="index" :range="categoryArray"> - <view class="uni-input">{{categoryArray[index]}}</view> + <picker @change="bindCategoryChange" :value="c_index" :range="categoryArray" :range-key="'name'"> + <view class="uni-input">{{ categoryArray[c_index].name }}</view> </picker> </u-form-item> - <u-form-item class="border" label="鍟嗗搧鍚嶇О" label-width="130" prop="name"> - <u-input v-model="form.name" clearable placeholder="璇疯緭鍏ュ晢鍝佸悕绉�" /> + <u-form-item class="border" label="鍟嗗搧鍚嶇О" label-width="130" prop="goodsName"> + <u-input v-model="form.goodsName" clearable placeholder="璇疯緭鍏ュ晢鍝佸悕绉�" /> </u-form-item> - <u-form-item label="鍟嗗搧浠锋牸" label-width="130" prop="mobile"> - <u-input v-model="form.mobile" type="number" maxlength="11" placeholder="璇疯緭鍏ュ晢鍝佷环鏍�" /> + <u-form-item label="鍟嗗搧浠锋牸" label-width="130" prop="price"> + <u-input v-model="form.price" type="number" placeholder="璇疯緭鍏ュ晢鍝佷环鏍�" /> </u-form-item> - <u-form-item class="detailgoods" label="璇︾粏鍦板潃" label-width="130" prop="detail"> - <u-input type="textarea" v-model="form.detail" maxlength="100" height="150" placeholder="琛楅亾妤肩墝鍙风瓑" /> - </u-form-item> + <u-form-item label="鍟嗗搧鍗栫偣" label-width="130"> - <u-input type="textarea" v-model="form.alias" placeholder="璇疯緭鍏ュ晢鍝佸崠鐐�" /> + <u-input type="textarea" v-model="form.sellingPoint" placeholder="璇疯緭鍏ュ晢鍝佸崠鐐�" /> </u-form-item> <u-form-item label="鍟嗗搧鍝佺墝" label-width="130" prop=""> - <div @click="showBrands"> - {{ form.___path || '璇烽�夋嫨鍝佺墝' }} - </div> + <picker @change="bindBrandsChange" :value="b_index" :range="brandsArray" :range-key="'name'"> + <view class="uni-input">{{ brandsArray[b_index].name }}</view> + </picker> </u-form-item> <u-form-item label="璁¢噺鍗曚綅" label-width="130" prop="___path"> - <div @click="showUnit"> - {{ form.___path || '璇烽�夋嫨鎵�鍦ㄥ湴鍖�' }} - </div> + <picker @change="bindUnitChange" :value="u_index" :range="unitArray" :range-key="'name'"> + <view class="uni-input">{{ unitArray[u_index].name }}</view> + </picker> </u-form-item> + <u-form-item label="閿�鍞ā寮�" label-width="130" prop="___path"> + <radio-group name="radio"> + <label> + <radio value="radio1" /><text>闆跺敭鍨�</text> + </label> + <label> + <radio value="radio2" /><text>鎵瑰彂鍨�</text> + </label> + </radio-group> + </u-form-item> + <view class="opt-view"> @@ -61,22 +70,25 @@ import UFormItem from '@/uview-components/uview-ui/components/u-form-item/u-form-item.vue'; import UInput from '@/uview-components/uview-ui/components/u-input/u-input.vue'; import UUpload from '@/uview-components/uview-ui/components/u-upload/u-upload.vue'; -import UCheckboxGroup from '@/uview-components/uview-ui/components/u-checkbox-group/u-checkbox-group.vue'; -import UCheckbox from '@/uview-components/uview-ui/components/u-checkbox/u-checkbox.vue'; +// import UCheckboxGroup from '@/uview-components/uview-ui/components/u-checkbox-group/u-checkbox-group.vue'; +// import UCheckbox from '@/uview-components/uview-ui/components/u-checkbox/u-checkbox.vue'; import UIcon from '@/uview-components/uview-ui/components/u-icon/u-icon.vue'; import storage from "@/utils/storage.js"; import * as API_GOODS from "@/api/goods.js"; export default { - components: { UForm, UFormItem, UInput, UUpload, UCheckboxGroup, UCheckbox, UIcon }, + components: { UForm, UFormItem, UInput, UUpload, UIcon }, data() { return { + c_index: 0, + b_index: 0, + u_index: 0, storage, form: {}, - categoryArray:[], - brandsArray:[], - unitArray:[] + categoryArray: [], + brandsArray: [], + unitArray: [] } }, methods: { @@ -89,27 +101,40 @@ }); this.form.images = images; }, - bindCategoryChange(){}, - bindBrandsChange(){}, - bindUnitChange(){}, - initCategory(){ + bindCategoryChange(e) { + this.c_index = e.detail.value + console.log('this.c_index', this.c_index); + + this.initBrands(this.categoryArray[this.c_index].id) + }, + bindBrandsChange(e) { + this.b_index = e.detail.value + this.form.brandId = this.brandsArray[this.b_index].id + }, + bindUnitChange(e) { + this.u_index = e.detail.value + this.form.goodsUnit = this.unitArray[this.u_index].name + }, + initCategory() { API_GOODS.getStoreGoodsCategory().then((res) => { const params = res.data.result; this.categoryArray = params - if(params.length>0){ + if (params && params.length > 0) { this.initBrands(params[0].id) } }); }, - initBrands(categoryId){ + initBrands(categoryId) { + this.brandsArray = [] API_GOODS.getStoreGoodsBrands(categoryId).then((res) => { - const params = res.data.result; + const params = res.data; this.brandsArray = params }); }, - initGoods(){ + initGoods() { API_GOODS.getgoodsUnit().then((res) => { - const params = res.data.result; + const params = res.data.result.records; + this.unitArray = params }); }, @@ -117,7 +142,7 @@ onShow() { this.initGoods() this.initCategory() - + }, onLoad(option) { uni.showLoading({ -- Gitblit v1.8.0