xuxueyang
2024-07-30 badafedccb814258fa54156b558458fa04191f8d
update
已修改13个文件
已添加1个文件
457 ■■■■■ 文件已修改
manifest.json 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages.json 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/home/home.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/login/supplier-reg.vue 5 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/user/supplier-user.vue 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/user/user-pwd/user-pwd.vue 40 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
store/index.js 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
sub_pages/customer/self/collect.vue 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
sub_pages/customer/self/history.vue 252 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
sub_pages/customer/shop/shop.vue 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
sub_pages/customer/trade/detail.vue 30 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
sub_pages/customer/trade/list.vue 13 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
sub_pages/customer/trade/trade.vue 55 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
sub_pages/partner/markup-config/markup-config.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
manifest.json
@@ -49,7 +49,7 @@
    "quickapp" : {},
    /* 快应用特有相关 */
    "mp-weixin" : {
        "appid" : "wx1441324401626290",
        "appid" : "wx6d0ecc4e18710458",
        "setting" : {
            "urlCheck" : false,
            "es6" : true,
pages.json
@@ -304,6 +304,13 @@
                        "navigationBarTitleText": "我的关注",
                        "enablePullDownRefresh": true
                    }
                },
                {
                    "path": "self/history",
                    "style": {
                        "navigationBarTitleText": "浏览记录",
                        "enablePullDownRefresh": true
                    }
                },
                {
                    "path": "self/collect",
pages/home/home.vue
@@ -23,7 +23,7 @@
            <view class="flex1 input">
                <u-input placeholder="请输入花名" v-model="search_flow">
                    <template slot="suffix">
                        <uni-icons color="#20613D" type="search" size="24" @tap="buttonSearchFlow"></uni-icons>
                        <uni-icons color="#20613D" type="search" size="24" @click="buttonSearchFlow"></uni-icons>
                    </template>
                </u-input>
            </view>
pages/login/supplier-reg.vue
@@ -35,6 +35,9 @@
                        <view class="t-a titles-top">
                            <view class="title-1">HELLO</view>
                            <view class="title-2">欢迎入驻<span class="title-3">花满芫</span></view>
                            <!-- #ifdef PUB_CUSTOMER -->
                            <view class="title-2">{{!partnerId?'未绑定合伙人':`已绑定${partnerName}`}}</view>
                            <!-- #endif -->
                        </view>
@@ -72,7 +75,7 @@
                        <!-- #ifdef PUB_CUSTOMER -->
                        <!--            open-type="getUserInfo"-->
                        <button @tap="wxreg('')"
                            class="bottom-button">注册,{{!partnerId?'未绑定合伙人':`已绑定${partnerName}`}}</button>
                            class="bottom-button">注 册</button>
                        <!-- #endif -->
pages/user/supplier-user.vue
@@ -22,10 +22,10 @@
                    ||currentInfo.supplierDTO&&currentInfo.supplierDTO.cover
                    " :src="currentInfo.picture
                    ||currentInfo.customerDTO&&currentInfo.customerDTO.cover
                    ||currentInfo.supplierDTO&&currentInfo.supplierDTO.cover" mode="aspectFit"></image>
                    ||currentInfo.supplierDTO&&currentInfo.supplierDTO.cover" mode="scaleToFill"></image>
                <image class="user-icon" v-else
                    src='https://youzhen123.oss-cn-huhehaote.aliyuncs.com/WechatOwnerProperty/images/mrtx.png'
                    mode="aspectFit"></image>
                    mode="scaleToFill"></image>
                <view class="name" v-if="currentInfo.id">
                    <view class="t1">
@@ -49,19 +49,19 @@
            </view>
            <!-- #ifdef PUB_CUSTOMER -->
            <view class="customer-info-records">
                <view class="item">
                    <view class="num" @click="goto('/sub_pages/customer/self/collect',true)">{{ tj.collectNum || 0 }}
                <view class="item" @click="goto('/sub_pages/customer/self/collect',true)">
                    <view class="num">{{ tj.collectNum || 0 }}
                    </view>
                    <view class="name">我的收藏</view>
                </view>
                <view class="line"></view>
                <view class="item">
                    <view class="num" @click="goto('/sub_pages/customer/self/follow',true)">{{ tj.followNum || 0 }}
                <view class="item" @click="goto('/sub_pages/customer/self/follow',true)">
                    <view class="num">{{ tj.followNum || 0 }}
                    </view>
                    <view class="name">关注店铺</view>
                </view>
                <view class="line"></view>
                <view class="item">
                <view class="item" @click="goto('/sub_pages/customer/self/history',true)">
                    <view class="num">{{ tj.browseNum || 0 }}</view>
                    <view class="name">浏览记录</view>
                </view>
@@ -187,6 +187,13 @@
                    <uni-icons type="right"></uni-icons>
                </view>
            </view>
            <view class="user-util m-t-12 flex" v-if="selftype==='customer'" @click="clearlogout">
                <view class="title">退出登录</view>
                <view class="right-icon">
                    <uni-icons type="right"></uni-icons>
                </view>
            </view>
            <view class="user-util m-t-12 " v-if="selftype==='supplier'||selftype==='customer' || !selftype">
                <view class="title">我的客服</view>
                <view class="flex">
pages/user/user-pwd/user-pwd.vue
@@ -4,18 +4,29 @@
            <!--         <u-form-item :label-position="labelPosition" label="原始密码" label-width="150" prop="oldpassword">
                <u-input :border="border" type="password" v-model="model.oldpassword" placeholder="请确认密码"></u-input>
            </u-form-item> -->
<!--             <u-form-item :label-position="labelPosition" label="旧密码" prop="oldpassword" label-width="150">
            <!--             <u-form-item :label-position="labelPosition" label="旧密码" prop="oldpassword" label-width="150">
                <u-input :password-icon="true" :border="border" type="password" v-model="model.oldpassword"
                    placeholder="请输入旧密码"></u-input>
            </u-form-item>
            <u-divider></u-divider> -->
            <u-form-item :label-position="labelPosition" label="新密码" prop="password" label-width="150">
                <u-input :password-icon="true" :border="border" type="password" v-model="model.password"
                    placeholder="请输入新密码"></u-input>
                <u-input :password-icon="true" :border="border" :type="showPassword1?'text':'password'"
                    v-model="model.password" placeholder="请输入新密码">
                    <template slot="suffix">
                        <uni-icons color="#20613D" :type="showPassword1 ? 'eye-slash-filled' : 'eye-filled'" size="24"
                            @click="showPassword1=!showPassword1"></uni-icons>
                    </template>
                </u-input>
            </u-form-item>
            <u-divider></u-divider>
            <u-form-item :label-position="labelPosition" label="确认密码" label-width="150" prop="rePassword">
                <u-input :border="border" type="password" v-model="model.rePassword" placeholder="请确认密码"></u-input>
                <u-input :password-icon="true" :border="border" :type="showPassword2?'text':'password'" v-model="model.rePassword"
                    placeholder="请确认密码">
                    <template slot="suffix">
                        <uni-icons color="#20613D" :type="showPassword2 ? 'eye-slash-filled' : 'eye-filled'" size="24"
                            @click="showPassword2=!showPassword2"></uni-icons>
                    </template>
                </u-input>
            </u-form-item>
        </u-form>
        <!-- <u-button @click="submit">提交</u-button> -->
@@ -36,7 +47,8 @@
                    password: '',
                    rePassword: ''
                },
                showPassword1: false,
                showPassword2:false,
                rules: {
                    // oldpassword: [
                    //     {
@@ -52,17 +64,15 @@
                    //     // }
                    // ],
                    oldpassword: [{
                            required: true,
                            message: '请输入旧密码',
                            trigger: ['change', 'blur']
                        }
                    ],
                        required: true,
                        message: '请输入旧密码',
                        trigger: ['change', 'blur']
                    }],
                    password: [{
                            required: true,
                            message: '请输入密码',
                            trigger: ['change', 'blur']
                        }
                    ],
                        required: true,
                        message: '请输入密码',
                        trigger: ['change', 'blur']
                    }],
                    rePassword: [{
                            required: true,
                            message: '请重新输入密码',
store/index.js
@@ -415,6 +415,22 @@
            }
            return resp
        },
        countShopping: async function({
            commit,
            dispatch,
            state
        }, data) {
            if(state.currentInfo.id){
                const resp = await http.request('get', '/api/customer/flower/cart/flower/count', {})
                if (resp && resp.code === 0) {
                    return resp.data || 0
                } else {
                    return 0
                }
            }
            return 0
        },
    }
})
sub_pages/customer/self/collect.vue
@@ -97,7 +97,7 @@
                <view class="flex1 input">
                    <u-input placeholder="请输入花名" v-model="query.name">
                        <template slot="suffix">
                            <uni-icons color="#20613D" type="search" size="24" @tap="refreshList"></uni-icons>
                            <uni-icons color="#20613D" type="search" size="24" @click="refreshList"></uni-icons>
                        </template>
                    </u-input>
                </view>
@@ -130,9 +130,9 @@
                    <view class="flex">
                        <view class="title">
                            <span class="m-r-5" style="display: inline-block;"
                                v-if="item.categoryStr">{{item.categoryStr||''}}</span>
                            <span v-if="item.levelStr" class="m-r-5"
                                style="display: inline-block;">{{ item.levelStr || '' }}</span>
                                v-if="dto.categoryStr">{{dto.categoryStr||''}}</span>
                            <span v-if="dto.levelStr" class="m-r-5"
                                style="display: inline-block;">{{ dto.levelStr || '' }}</span>
                            {{ dto.name || '-' }}
                        </view>
                        <view class="price m-l-a m-r-0">
sub_pages/customer/self/history.vue
对比新文件
@@ -0,0 +1,252 @@
<script>
    export default {
        async onPullDownRefresh() {
            await this.refreshList()
            uni.stopPullDownRefresh()
        },
        data() {
            return {
                query: {
                    name: '',
                    levelStr: '',
                    level: '',
                    column: '',
                    columnStr: '',
                },
                level_show: false,
                level_columns: [
                    []
                ],
                order_show: false,
                order_columns: [
                    []
                ]
            }
        },
        onLoad() {
            this.listApi = '/api/browse/history/list'
            this.getList()
            this.$http.request('get', '/api/code/value', {
                params: {
                    type: 'FLOWER_LEVEL'
                }
            }).then(res => {
                var data = res.data
                this.level_columns = [data || []]
                this.level_columns[0].unshift({
                    label: '全部',
                    value: ''
                })
            })
            this.$http.request('get', '/api/code/value', {
                params: {
                    type: 'FLOWER_ORDER_BY'
                }
            }).then(res => {
                var data = res.data
                this.order_columns = [data || []]
                this.order_columns[0].unshift({
                    label: '默认',
                    value: ''
                })
            })
        },
        methods: {
            toDetail(item) {
                if (item.status == 'UP') {
                } else {
                    this.$message.showToast('已失效,无法查看详情')
                    return
                }
                uni.navigateTo({
                    url: `/sub_pages/customer/trade/detail?id=${item.id}`
                })
            },
            async submitShopping(dto) {
                //提交到购物车中
                this.$message.showLoading()
                await this.$store.dispatch('submitShopping', dto);
                this.$message.hideLoading()
            },
            select_level(e) {
                this.level_show = false
                this.query.levelStr = e.value[0].label
                this.query.level = e.value[0].value
                this.refreshList()
            },
            select_order(e) {
                this.order_show = false
                this.query.columnStr = e.value[0].label
                this.query.column = e.value[0].value
                this.refreshList()
            },
        }
    }
</script>
<template>
    <view class="page-collect " style="background: #E1F0E7;">
        <view style="padding-bottom: 0rpx;" class="p20">
            <view class="search-container flex">
                <view class="flex1 input">
                    <u-input placeholder="请输入花名" v-model="query.name">
                        <template slot="suffix">
                            <uni-icons color="#20613D" type="search" size="24" @click="refreshList"></uni-icons>
                        </template>
                    </u-input>
                </view>
            </view>
            <view class="component-filter-container p10">
                <view class="flex1" @click.stop="order_show=true">
                    {{ this.query.columnStr || '排序' }}
                    <image src="../../../static/common/icon-arrow-down.png" class="icon-arrow-down"></image>
                </view>
                <view class="flex1" @click.stop="level_show=true">
                    {{ this.query.levelStr || '级别' }}
                    <image src="../../../static/common/icon-arrow-down.png" class="icon-arrow-down"></image>
                </view>
            </view>
        </view>
        <no-data v-if="!list||list.length===0" style="width: 100%;"></no-data>
        <u-picker :show="level_show" @confirm="select_level" keyName="label" :columns="level_columns"
            @cancel="level_show=false"></u-picker>
        <u-picker :show="order_show" @confirm="select_order" keyName="label" :columns="order_columns"
            @cancel="order_show=false"></u-picker>
        <view class="trade-list-container">
            <view class="trade-info-container flex" v-for="(dto,index) of list" :key="index"
                @click.stop="toDetail(dto)">
                <image class="img img100 br-4 m-r-10" :src="dto.url||dto.cover"></image>
                <view class="flex1">
                    <view class="flex">
                        <view class="title">
                            <span class="m-r-5" style="display: inline-block;"
                                v-if="dto.categoryStr">{{dto.categoryStr||''}}</span>
                            <span v-if="dto.levelStr" class="m-r-5"
                                style="display: inline-block;">{{ dto.levelStr || '' }}</span>
                            {{ dto.name || '-' }}
                        </view>
                        <view class="price m-l-a m-r-0">
                            ¥{{ dto.price || '-' }}/扎
                        </view>
                    </view>
                    <view class="flex">
                        <view class="desc m-t-12 flex">
                            <view class="m-r-15">剩余:{{ dto.stock || 0 }}</view>
                            <view class="m-r-15">颜色:{{ dto.color || '-' }}</view>
                        </view>
                        <view class="button-icons flex m-l-a m-r-0 m-t-20" v-if="dto.status=='UP'">
                            <view class="m-r-0 gwc" @click.stop="submitShopping(dto)">
                                + 购物车
                            </view>
                        </view>
                    </view>
                </view>
            </view>
        </view>
    </view>
</template>
<style lang="scss" scoped>
    .page-collect {
        min-height: 99vh;
        .search-container {
            display: flex;
            margin: 12rpx 0rpx 20rpx 0rpx;
            position: relative;
            z-index: 1;
            .input {
                background-color: #fff !important;
                border-radius: 8rpx;
            }
            .button {
                min-width: 120rpx;
                max-width: 120rpx;
                margin-left: auto;
                margin-right: 0rpx;
                text-align: right;
                line-height: 70rpx !important;
            }
        }
        .trade-info-container {
            background-color: #fff;
            border-top-right-radius: 40rpx;
            border-top-left-radius: 40rpx;
            padding: 30rpx;
            overflow: hidden;
            min-height: calc(100vh - 300rpx);
            overflow-y: scroll;
            .img {
                width: 124rpx;
                height: 124rpx;
            }
            .title {
                font-weight: 600;
                font-size: 28rpx;
                color: #000000;
                line-height: 40rpx;
                .level {
                    color: #20613D;
                }
            }
            .price {
                font-weight: 400;
                font-size: 28rpx;
                color: #CF0000;
                line-height: 40rpx;
            }
            .desc {
                font-weight: 400;
                font-size: 24rpx;
                color: #666666;
                line-height: 34rpx;
            }
            .button-icons {
                //position: absolute;
                //z-index: 10;
                line-height: 40rpx;
                .curnums {
                    margin-left: 10rpx;
                    margin-right: 10rpx;
                }
            }
            .gwc {
                width: 168rpx;
                height: 48rpx;
                border-radius: 30rpx;
                border: 2rpx solid #20613D;
                font-size: 24rpx;
                color: #20613D;
                line-height: 48rpx;
                text-align: center;
            }
        }
    }
</style>
sub_pages/customer/shop/shop.vue
@@ -339,9 +339,9 @@
                })
                this.$message.hideLoading()
                if (code === 0) {
                    item.shopnum += addnum
                    item.shopnum += addnum
                    this.$forceUpdate()
                }
                this.$forceUpdate()
            },
        }
sub_pages/customer/trade/detail.vue
@@ -13,6 +13,7 @@
            </view>
            <view class="icon-container">
                <image src="../../../static/common/icon-shop.png" @click="toShopping(dto)" class="icon-shop">
                    <view class="image-shop-number">{{shopnum||'1'}}</view>
                </image>
            </view>
@@ -128,7 +129,8 @@
        data() {
            return {
                id: '',
                dto: {}
                dto: {},
                shopnum: 0,
            }
        },
        onLoad(options) {
@@ -136,8 +138,12 @@
            if (this.id) {
                this.getDetail()
            }
            this.refreshShopNum()
        },
        methods: {
            async refreshShopNum() {
                this.shopnum = await this.$store.dispatch('submitShopping', dto);
            },
            async collectItem(dto) {
                await this.$message.confirm(`是否${dto.collection?'移除':'添加到'}收藏`)
                this.$message.showLoading()
@@ -166,6 +172,7 @@
                this.$message.showLoading()
                await this.$store.dispatch('submitShopping', dto);
                this.$message.hideLoading()
                this.refreshShopNum()
            },
            async getDetail() {
                this.$message.showLoading()
@@ -202,7 +209,20 @@
<style lang="scss" scoped>
    .trade-detail {
        background-color: #FFFFFF;
        background-color: #FFFFFF;
        .image-shop-number {
            width: 30rpx;
            height: 30rpx;
            background: #F20000;
            line-height: 30rpx;
            text-align: center;
            position: absolute;
            right: 0rpx;
            top: -6rpx;
            color: #FFFFFF;
            border-radius: 50%;
            font-size: 24rpx;
        }
        .trade-info-container {
            padding: 46rpx 30rpx;
@@ -388,8 +408,10 @@
                    height: 54rpx;
                    margin: 0 auto;
                    margin-top: 12rpx;
                    display: inline-block;
                    display: inline-block;
                    margin-left: 12rpx;
                    position: relative;
                }
                .num {
sub_pages/customer/trade/list.vue
@@ -224,6 +224,7 @@
            if (this.query.category) {
                await this.getDetail()
            }
            this.refreshShopNum()
            // await this.getList('post')
            // this.
@@ -237,7 +238,10 @@
            await this.getList('post')
            uni.stopPullDownRefresh()
        },
        methods: {
        methods: {
            async refreshShopNum() {
                this.shoptotal = await this.$store.dispatch('submitShopping', dto);
            },
            async getDetail() {
                this.$message.showLoading()
                //获取到分类的详情信息
@@ -355,9 +359,12 @@
                })
                this.$message.hideLoading()
                if (code === 0) {
                    item.shopnum += addnum
                    item.shopnum += addnum
                    this.$forceUpdate()
                    this.refreshShopNum()
                }
                this.$forceUpdate()
            },
        }
    }
sub_pages/customer/trade/trade.vue
@@ -44,10 +44,10 @@
                            </view>
                            <view class="cateen_infos list">
                                <view class="title">{{item.name}}</view>
                                <view class="price">¥29.01-30.01</view>
                                <view class="price">¥{{minWeightPrice(item)}}-{{maxWeightPrice(item)}}</view>
                                <view class="desc">在售14410扎</view>
                                <view class="desc">在售 {{item.stock||'-'}} 扎</view>
                            </view>
                        </view>
@@ -138,6 +138,53 @@
            })
        },
        methods: {
            maxWeightPrice(item) {
                var p = 0
                if (item.weightA && item.weightA > p) {
                    p = item.weightA
                }
                if (item.weightB && item.weightB > p) {
                    p = item.weightB
                }
                if (item.weightC && item.weightC > p) {
                    p = item.weightC
                }
                if (item.weightD && item.weightD > p) {
                    p = item.weightD
                }
                if (item.weightE && item.weightE > p) {
                    p = item.weightE
                }
                if (item.weightO && item.weightO > p) {
                    p = item.weightO
                }
                return p
            },
            minWeightPrice(item) {
                var p = -1
                if (item.weightA && item.weightA < p) {
                    p = item.weightA
                }
                if (item.weightB && item.weightB < p) {
                    p = item.weightB
                }
                if (item.weightC && item.weightC < p) {
                    p = item.weightC
                }
                if (item.weightD && item.weightD < p) {
                    p = item.weightD
                }
                if (item.weightE && item.weightE < p) {
                    p = item.weightE
                }
                if (item.weightO && item.weightO < p) {
                    p = item.weightO
                }
                if (p < 0) {
                    p = 0
                }
                return p
            },
            refInit(catgoryTree) {
                this.list = catgoryTree || []
                if (this.list.length > 0) {
@@ -329,7 +376,7 @@
                    font-size: 24rpx;
                    color: #CF0000;
                    line-height: 34rpx;
                    text-align: center;
                    text-align: left;
                }
sub_pages/partner/markup-config/markup-config.vue
@@ -4,7 +4,7 @@
            <view class="flex1 input">
                <u-input placeholder="请输入分类名称" v-model="query.name" clearable>
                    <template slot="suffix">
                        <uni-icons color="#20613D" type="search" size="24" @tap="refreshList"></uni-icons>
                        <uni-icons color="#20613D" type="search" size="24" @click="refreshList"></uni-icons>
                    </template>
                </u-input>
            </view>