xuxueyang
2024-07-15 f09d9ec905b6247b36a394158662fe90d02197a5
fix bug
已修改7个文件
200 ■■■■ 文件已修改
common/global.scss 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
mixin/mixin.js 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
sub_pages/supplier/flower-manage/flower-add.vue 62 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
sub_pages/supplier/supplier-info/supplier-info.vue 71 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
uni_modules/uni-data-picker/components/uni-data-picker/uni-data-picker.vue 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
uni_modules/uni-data-picker/components/uni-data-pickerview/uni-data-picker.js 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
uni_modules/uni-data-picker/components/uni-data-pickerview/uni-data-pickerview.vue 49 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
common/global.scss
@@ -99,10 +99,10 @@
            font-weight: 400;
            font-size: 28rpx;
            line-height: 58rpx;
            padding: 8rpx 30rpx;
            padding: 8rpx 24rpx;
            color: #33a868;
            margin-left: 13rpx;
            margin-right: 13rpx;
            margin-left: 6rpx;
            margin-right: 6rpx;
            border: 2rpx solid #F1F5F2;
        }
        .value-item.cur{
mixin/mixin.js
@@ -24,6 +24,9 @@
            cache_user: state => {
                return state.currentInfo || {}
            },
            sign: state => {
                return state.sign || {}
            },
            // currentEnId: state=>{
            //     // console.log('currentEnId',state.currentInfo.enId,state.currentInfo)
            //     return state.currentInfo.enId || ''
sub_pages/supplier/flower-manage/flower-add.vue
@@ -27,7 +27,7 @@
                </view>
            </view>
            <view class="form-item before-line">
                <view class="label required">商品名称</view>
                <view class="label">商品名称</view>
                <view class="m-l-a m-r-0 flex">
                    <input v-model="dto.name" placeholder="请选择分类" disabled
                        style="margin-top: 16px;text-align: right;"></input>
@@ -35,7 +35,7 @@
                </view>
            </view>
            <view class="form-item before-line">
                <view class="label required">商品单位</view>
                <view class="label">商品单位</view>
                <view class="m-l-a m-r-0 flex">
                    <input v-model="dto.unit" placeholder="请选择分类" disabled
                        style="margin-top: 16px;text-align: right;"></input>
@@ -44,7 +44,7 @@
            </view>
            <view class="form-item before-line">
                <view class="label required">商品颜色</view>
                <view class="label">商品颜色</view>
                <!--     <view class="m-l-a m-r-0 flex " :class="[!dto.color?'desc-gray':'']" @click="()=>{
                    show_select_color=true
                }">
@@ -77,7 +77,7 @@
            </view>
            <view class="form-item before-line bottom-border-no">
                <view class="label required" style="width: 400rpx;">商品轮播图(300*160px)</view>
                <view class="label " style="width: 400rpx;">商品轮播图(300*160px)</view>
                <view class="m-l-a m-r-0 flex">
                    <!-- :style="{'background-image':dto.icon&&`url('${dto.icon}')`||''}" -->
                    <view class="component-button-upload" @click="uploadIcon('bannerList')">
@@ -147,7 +147,7 @@
            <view class="form-item before-line">
                <view class="label required">商品视频</view>
                <view class="label">商品视频</view>
                <view class="m-l-a m-r-0 flex">
                    <!-- :style="{'background-image':dto.icon&&`url('${dto.icon}')`||''}" -->
                    <view class="component-button-upload m-r-15" @click="uploadIcon('video')">
@@ -229,6 +229,16 @@
                    stock: 0,
                    params: [], //id,value
                },
                requireFields: [{
                    name: '商品分类',
                    key: 'category'
                },{
                    name: '列表封面图',
                    key: 'cover'
                },{
                    name: '商品等级',
                    key: 'level'
                }],
                show_select_category: false,
                show_select_level: false,
                columns_categorys: [],
@@ -276,10 +286,10 @@
            }).then(res => {
                var data = res.data
                this.columns_levels = [data || []]
                this.columns_levels[0].unshift({
                    label: '全部',
                    value: ''
                })
                // this.columns_levels[0].unshift({
                //     label: '全部',
                //     value: ''
                // })
            })
            if (options.id) {
@@ -500,6 +510,16 @@
            },
            async submit() {
                for (var field of this.requireFields) {
                    if (!this.dto[field.key]) {
                        this.$message.showToast(`${field.name}信息未填写`)
                        return
                    }
                }
                if(this.dto.params.length<1){
                    this.$message.showToast('商品参数详情未设置')
                    return
                }
                // if (!this.dto.applicationType) {
                //     this.$message.showToast('未选择类型')
                //     return
@@ -532,6 +552,12 @@
                    this.$store.dispatch('sign_add', 'flower');
                    this.backpage()
                } else {
                    console.log('error re', re)
                    if (re.code === 30000 && Array.isArray(re.msg)) {
                        this.$message.showToast('字段未填写完整')
                    }
                }
            },
            async deleteBanner(index) {
@@ -544,8 +570,15 @@
                const that = this
                if (key == 'video') {
                    uni.chooseVideo({
                        maxDuration: 30,
                        sourceType: ['camera', 'album'],
                        success: function(res) {
                            // console.log('res',res)
                            // size: 11082508
                            if (res.size > 1024 * 1024 * 50) {
                                that.$message.confirm('视频最多支持50M大小,超出大小限制')
                                return
                            }
                            if (res.tempFilePath) {
                                console.log('res.tempFilePath', res.tempFilePath)
                                that.$message.showLoading()
@@ -572,12 +605,15 @@
                        count: 1, // 最多可以选择的图片张数,默认9
                        sizeType: ['compressed'], //original 原图,compressed 压缩图,默认二者都有
                        sourceType: ['camera', 'album'], //album 从相册选图,camera 使用相机,默认二者都有。如需直接开相机或直接选相册,请只使用一个选项
                        success: function({
                            errMsg,
                            tempFiles
                        }) {
                        success: function(res) {
                            let errMsg = res.errMsg
                            let tempFiles = res.tempFiles
                            if (errMsg === 'chooseImage:ok') {
                                // console.log(tempFiles[0])
                                if (tempFiles[0].size > 1024 * 1024 * 5) {
                                    that.$message.confirm('图片最多支持5M大小,超出大小限制')
                                    return
                                }
                                that.$message.showLoading()
                                that.$http.upload(tempFiles[0].path).then(async res => {
                                    console.log('res1', res)
sub_pages/supplier/supplier-info/supplier-info.vue
@@ -94,7 +94,8 @@
                    <u-icon class="m-l-a" name="arrow-right"></u-icon>
                </view> -->
                <view class="m-l-a m-r-0 flex " :class="[!dto['province']?'desc-gray':'']">
                    <uni-data-picker @change="(e)=>{PickArea(dto,e)}" placeholder="" :localdata="regionDataPlus">
                    <uni-data-picker :area="true" @change="(e)=>{PickArea(dto,e)}" placeholder=""
                        :localdata="regionDataPlus">
                        {{ dto['province'] || '请选择' }}{{ dto['city'] && ('/' + dto['city']) || '' }}{{
                                                  dto['region'] && ('/' + dto['region']) || ''
                                                }}
@@ -223,6 +224,43 @@
                    city: '',
                    region: '',
                },
                requireFields: [{
                        name: '店铺类型',
                        key: 'typeId'
                    },
                    {
                        name: '店铺名称',
                        key: 'name'
                    },
                    {
                        name: '店铺头像',
                        key: 'cover'
                    },
                    {
                        name: '联系人姓名',
                        key: 'contactName'
                    },
                    {
                        name: '联系方式',
                        key: 'contactTel'
                    },
                    {
                        name: '集货站',
                        key: 'stationId'
                    },
                    {
                        name: '地区',
                        key: 'province'
                    },
                    {
                        name: '地址',
                        key: 'address'
                    },
                    {
                        name: '店铺简介',
                        key: 'description'
                    },
                ],
                show_select_type: false,
                show_select_station: false,
                columns_types: [],
@@ -328,7 +366,7 @@
                this.regionDataPlus = res.data && JSON.parse(res.data.replaceAll('code', 'value').replaceAll('name',
                    'text')) || []
                    
                console.log('area', this.regionDataPlus)
                // console.log('area', this.regionDataPlus)
            },
@@ -367,6 +405,8 @@
                    if (this.dto.idcardType == '1') {
                        this.dto.idcardType = '身份证'
                    } else {
                        this.dto.idcardType = '营业执照'
                    }
                    this.dto.userId = this.currentInfo.id
@@ -397,6 +437,8 @@
                    }
                    if (this.dto.idcardType == '1') {
                        this.dto.idcardType = '身份证'
                    } else {
                        this.dto.idcardType = '营业执照'
                    }
                }
@@ -404,7 +446,20 @@
            },
            async submit() {
                for (var field of this.requireFields) {
                    if (!this.dto[field.key]) {
                        this.$message.showToast(`${field.name}信息未填写`)
                        return
                    }
                }
                if (this.dto.idcardType == '身份证' && this.dto.idCards.length == 0) {
                    this.$message.showToast(`${this.dto.idcardType}信息未填写`)
                    return
                }
                if (this.dto.idcardType !== '身份证' && this.dto.pictures.length == 0) {
                    this.$message.showToast(`${this.dto.idcardType}信息未填写`)
                    return
                }
                await this.$message.confirm(`是否确定提交/修改店铺信息`)
@@ -424,6 +479,12 @@
                    this.$store.dispatch('getCurrentInfo')
                    this.backpage()
                } else {
                    console.log('error re', re)
                    if (re.code === 30000 && Array.isArray(re.msg)) {
                        this.$message.showToast('字段未填写完整')
                    }
                }
            },
@@ -449,6 +510,10 @@
                    }) {
                        if (errMsg === 'chooseImage:ok') {
                            // console.log(tempFiles[0])
                            if (tempFiles[0].size > 1024 * 1024 * 5) {
                                that.$message.confirm('图片最多支持5M大小,超出大小限制')
                                return
                            }
                            that.$message.showLoading()
                            that.$http.upload(tempFiles[0].path).then(async res => {
                                var pic = res.data && res.data.length > 0 && res.data[
uni_modules/uni-data-picker/components/uni-data-picker/uni-data-picker.vue
@@ -49,6 +49,7 @@
            <data-picker-view class="picker-view" ref="pickerView" v-model="dataValue" :localdata="localdata"
                :preload="preload" :collection="collection" :field="field" :orderby="orderby" :where="where"
                :key="showpicker"
                :area="area"
                :step-searh="stepSearh" :self-field="selfField" :parent-field="parentField" :managed-mode="true"
                :map="map" :ellipsis="ellipsis" @change="onchange" @datachange="ondatachange" @nodeclick="onnodeclick">
            </data-picker-view>
@@ -132,6 +133,10 @@
            ellipsis: {
                type: Boolean,
                default: true
            },
            area:{
                type: Boolean,
                default: false
            }
        },
        data() {
uni_modules/uni-data-picker/components/uni-data-pickerview/uni-data-picker.js
@@ -92,6 +92,10 @@
      type: Boolean,
      default: false
    },
    area:{
        type: Boolean,
        default: false
    },
    map: {
      type: Object,
      default () {
uni_modules/uni-data-picker/components/uni-data-pickerview/uni-data-pickerview.vue
@@ -2,26 +2,29 @@
  <view class="uni-data-pickerview">
    <scroll-view v-if="!isCloudDataList" class="selected-area" scroll-x="true">
      <view class="selected-list">
          <view
            class="selected-item"
            v-for="(item,index) in selected"
            :key="index"
            :class="{
                <view class="selected-item" v-for="(item,index) in selected" :key="index" :class="{
              'selected-item-active':index == selectedIndex
            }"
            @click="handleSelect(index)"
          >
            }" @click="handleSelect(index)">
            <text>{{item.text || ''}}</text>
          </view>
      </view>
    </scroll-view>
    <view class="tab-c">
            <!--     <view>
                selected:{{JSON.stringify(selected)}}
            </view> -->
            <!-- v-if="!area||!selected|| selected.length==0||area&&selected&&selected.length>0&&(item[map.text]!==selected[selected.length-1].text)" -->
      <scroll-view class="list" :scroll-y="true">
        <view class="item" :class="{'is-disabled': !!item.disable}" v-for="(item, j) in dataList[selectedIndex]" :key="j"
                <view v-for="(item, j) in dynamicList" :key="j">
                    <view class="item" :class="{'is-disabled': !!item.disable}" v-show="!item.hide"
          @click="handleNodeClick(item, selectedIndex, j)">
          <text class="item-text">{{item[map.text]}}</text>
          <view class="check" v-if="selected.length > selectedIndex && item[map.value] == selected[selectedIndex].value"></view>
                        <view class="check"
                            v-if="selected.length > selectedIndex && item[map.value] == selected[selectedIndex].value">
        </view>
                    </view>
                </view>
      </scroll-view>
      <view class="loading-cover" v-if="loading">
@@ -64,6 +67,31 @@
      ellipsis: {
        type: Boolean,
        default: true
            }
        },
        computed: {
            dynamicList() {
                var lastnodes = []
                if (this.selected && this.selected.length > 0) {
                    for (var name of this.selected) {
                        lastnodes.push(name.text)
                    }
                    // lastnode = this.selected[this.selectedIndex].text
                }
                var arr = []
                console.log('lastnodes', lastnodes)
                if (this.dataList && this.dataList[this.selectedIndex]) {
                    for (var item of this.dataList[this.selectedIndex]) {
                        if (lastnodes.indexOf(item[this.map.text]) >= 0) {
                            item.hide = true
                            arr.push(item)
                        } else {
                            item.hide = false
                            arr.push(item)
                        }
                    }
                }
                return arr
      }
    },
    created() {
@@ -221,6 +249,7 @@
  .selected-area {
    width: 750rpx;
  }
  /* #endif */
  .selected-list {