11
xuxy
2024-06-26 6dafb32ab46ff04e1131dfd52abd6067aeda0da0
pages/farmer/flower-manage/flower-add.vue
@@ -2,9 +2,10 @@
   <view class="container-page" style="padding: 0rpx;">
      <view>
         <view class="form-item">
            <view class="label required">商品分类todo</view>
            <view class="label required">商品分类</view>
            <view class="m-l-a m-r-0 flex " :class="[!dto.category?'desc-gray':'']" @click="()=>{
               show_select_category=true
               // show_select_category=true
               $refs.picker_category.showPicker()
            }">
               <view>{{dto.categoryStr||dto.category || '请选择'}}</view>
               <u-icon class="m-l-a" name="arrow-right"></u-icon>
@@ -101,7 +102,7 @@
                  
               }
            }">
               <view>{{ '去设置'}}</view>
               <view>{{ paramstr || '去设置'}}</view>
               <u-icon class="m-l-a" name="arrow-right"></u-icon>
            </view>
@@ -143,10 +144,10 @@
            修改
         </view>
      </view>
      <!--
      <u-picker @confirm="select_category" keyName="name" @cancel="show_select_category=false"
         :show="show_select_category" :columns="columns_categorys"></u-picker>
         :show="show_select_category" :columns="columns_categorys"></u-picker> -->
      <u-picker @confirm="select_level" keyName="label" @cancel="show_select_level=false" :show="show_select_level"
         :columns="columns_levels"></u-picker>
@@ -172,12 +173,14 @@
            <view class="button-green" @click="closeParamPop">返回</view>
         </view>
      </uni-popup>
      <dying318picker :picker-list="columns_categorys" ref="picker_category" @confirm="confirmPickerCategory">
      </dying318picker>
   </view>
</template>
<script>
   import environments from '@/environments'
   import dying318picker from '@/components/dying318-picker/Picker.vue'
   import {
      mapState
@@ -207,9 +210,48 @@
            columns_categorys: [],
            columns_levels: [],
            //    columns_params: [], //弹窗选择具体的值
            cancel: {
               color: '#999',
            },
            confirm: {
               color: '#20613D',
            },
            // column: [
            //     {flex: 1},
            //     {flex: 1},
            //     {flex: 3},
            // ]
         }
      },
      async onLoad(options) {
         //tree
         this.$http.request('get', '/api/flower/category/tree', {}).then(res => {
            var data = res.data
            this.columns_categorys = data || []
            console.log('columns_categorys', this.columns_categorys)
            // this.columns_categorys = [data || []]
            // this.columns_categorys[0].unshift({
            //    label: '全部',
            //    value: '',
            //    children: []
            // })
         })
         this.$http.request('get', '/api/code/value', {
            params: {
               typeCode: 'FLOWER_LEVEL'
            }
         }).then(res => {
            var data = res.data
            this.columns_levels = [data || []]
            this.columns_levels[0].unshift({
               label: '全部',
               value: ''
            })
         })
         if (options.id) {
            this.id = options.id
            uni.setNavigationBarTitle({
@@ -231,57 +273,31 @@
               })
            }
            //tree
            this.$http.request('get', '/api/flower/category/tree', {}).then(res => {
               var data = res.data
               this.columns_categorys = [data || []]
               this.columns_categorys[0].unshift({
                  label: '全部',
                  value: '',
                  children: []
               })
            })
            this.$http.request('get', '/api/code/value', {
               params: {
                  typeCode: 'FLOWER_LEVEL'
               }
            }).then(res => {
               var data = res.data
               this.columns_levels = [data || []]
               this.columns_levels[0].unshift({
                  label: '全部',
                  value: ''
               })
            })
         }
      },
      methods: {
         async confirmPickerCategory(picker) {
            console.log('confirmPickerCategory', picker)
            var id = picker.value
            var name = picker.label
            if (id !== this.dto.category) {
               if (this.dto.category) {
                  await this.$message.confirm('修改分类将清空商品参数,确定修改吗')
               }
               this.dto.categoryStr = name
               this.dto.category = id
               this.$message.showLoading()
               await this.refresh_category()
               this.$message.hideLoading()
            }
         },
         closeParamPop() {
            this.$refs.popup_param.close()
         },
         async select_category(e) {
            if (e.value[0].id !== this.dto.category) {
               if (this.dto.category) {
                  await this.$message.confirm('修改分类将清空商品参数,确定修改吗')
               }
               console.log('select_category', e)
               this.show_select_category = false
               this.dto.categoryStr = e.value[0].name
               this.dto.category = e.value[0].id
               this.$message.showLoading()
               await this.refresh_category()
               this.$message.hideLoading()
            } else {
            }
         },
         async refresh_category() {
            // this.columns_params = []
            this.dto.params = []
@@ -436,10 +452,22 @@
      },
      computed: {
         ...mapState(['currentInfo'])
         ...mapState(['currentInfo']),
         paramstr() {
            if (this.dto && this.dto.params) {
               var strs = []
               for (var i of this.dto.params) {
                  if (i.value) {
                     strs.push(i.value)
                  }
               }
               return strs.join(',')
            }
            return ''
         }
      },
      components: {
         dying318picker
      }
   }
</script>