xuxueyang
2024-07-26 480a7eb5fa89aa602167a7b5f42df5c6d79053b2
fix bug 接口对接和样式调整
已修改8个文件
1884 ■■■■ 文件已修改
common/self.scss 1512 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
components/top-tabs.vue 125 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/login/supplier-reg.vue 53 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
store/index.js 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
sub_pages/customer/shop/shop.vue 65 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
sub_pages/customer/shopping/confirm.vue 97 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
sub_pages/customer/trade/detail.vue 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
sub_pages/customer/trade/list.vue 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
common/self.scss
@@ -1,419 +1,467 @@
/* $self-gray: #9a9da2; */
:root,page {
    --selfgray: #9a9da2;
    --self_light_gray: #dce3e9;
    --title_font_size: 60rpx;
    --title_font_size2: 40rpx;
    --selfblue: #3140A2;
    --selfbluebg: #3140A2;
    /* --selfblue: #1E79F7; */
    --selforg: #F7A01E;
    --topicolor:#20613D;
    --topicgray: #999999;
    --topicdarkgray: #936E32;
:root, page {
  --selfgray: #9a9da2;
  --self_light_gray: #dce3e9;
  --title_font_size: 60rpx;
  --title_font_size2: 40rpx;
  --selfblue: #3140A2;
  --selfbluebg: #3140A2;
  /* --selfblue: #1E79F7; */
  --selforg: #F7A01E;
  --topicolor: #20613D;
  --topicgray: #999999;
  --topicdarkgray: #936E32;
}
$u-main-color: #20613D;
$main-color: #20613D;
$u-primary: #20613D;
body{
    --tcolor: #3140A2;
    font-family: PingFangSC-Regular, PingFang SC;
body {
  --tcolor: #3140A2;
  font-family: PingFangSC-Regular, PingFang SC;
}
.topic-font{
    color: var(--topicolor) !important;
.topic-font {
  color: var(--topicolor) !important;
}
.flex-wrap-normal{
    flex-wrap: nowrap !important;
.flex-wrap-normal {
  flex-wrap: nowrap !important;
}
.topic-gray{
    color: var(--topicgray);
.topic-gray {
  color: var(--topicgray);
}
.relative{
    position: relative;
.relative {
  position: relative;
}
.t-red{
    color: #CE3C39 !important;
.t-red {
  color: #CE3C39 !important;
}
.t-green{
    color: #04BA97 !important;
.t-green {
  color: #04BA97 !important;
}
.uni-section .uni-section-header__decoration {
    background-color: #04BA97 !important;
  background-color: #04BA97 !important;
}
.f-32 {
    font-size: 32rpx;
  font-size: 32rpx;
}
.f-14 {
    font-size: 28rpx;
  font-size: 28rpx;
}
.f-12 {
    font-size: 24rpx;
  font-size: 24rpx;
}
.scroll-container {
    max-height: 80vh;
    overflow: scroll;
  max-height: 80vh;
  overflow: scroll;
}
.m-t-8 {
    margin-top: 16rpx;
  margin-top: 16rpx;
}
.m-20{
    margin: 20rpx;
.m-20 {
  margin: 20rpx;
}
.m-b-24{
    margin-bottom: 24rpx;
.m-b-24 {
  margin-bottom: 24rpx;
}
.border-button-blue {
    border: 2rpx solid #3140A2;
    /* padding: 14rpx; */
  border: 2rpx solid #3140A2;
  /* padding: 14rpx; */
    border-radius: 16rpx;
    padding-left: 40rpx;
    padding-right: 40rpx;
    padding-top:8rpx;
    padding-bottom:8rpx;
    text-align:center;
  border-radius: 16rpx;
  padding-left: 40rpx;
  padding-right: 40rpx;
  padding-top: 8rpx;
  padding-bottom: 8rpx;
  text-align: center;
}
.bg-button-blue {
    background-color: #3140A2;
    border-radius: 8rpx;
    padding-left: 40rpx;
    padding-right: 40rpx;
  background-color: #3140A2;
  border-radius: 8rpx;
  padding-left: 40rpx;
  padding-right: 40rpx;
}
.border-button-org {
    border: 2rpx solid #3140A2;
    /* padding: 14rpx; */
  border: 2rpx solid #3140A2;
  /* padding: 14rpx; */
    border-radius: 8rpx;
    padding-left: 40rpx;
    padding-right: 40rpx;
  border-radius: 8rpx;
  padding-left: 40rpx;
  padding-right: 40rpx;
}
.white {
    background-color: #FFFFFF;
  background-color: #FFFFFF;
}
.bg-white {
    background-color: #FFFFFF;
  background-color: #FFFFFF;
}
.br-4{
    border-radius: 8rpx;
.br-4 {
  border-radius: 8rpx;
}
.bg-app-white {
    background-color: #FFFFFF;
    min-height: 800rpx;
  background-color: #FFFFFF;
  min-height: 800rpx;
}
.bg-grey {
    background-color: #f3f2f2;
  background-color: #f3f2f2;
}
.flex {
    display: flex;
    flex-wrap: wrap;
  display: flex;
  flex-wrap: wrap;
}
.title-before-blue {
    padding-top: 40rpx;
    padding-bottom: 40rpx;
    font-size: var(--title_font_size2);
  padding-top: 40rpx;
  padding-bottom: 40rpx;
  font-size: var(--title_font_size2);
}
.title-before-blue:before {
    content: "|";
    color: #3140A2;
    margin-right: 20rpx;
  content: "|";
  color: #3140A2;
  margin-right: 20rpx;
}
.blue {
    color: #3140A2
  color: #3140A2
}
.org {
    color: #3140A2
  color: #3140A2
}
.tab {
    cursor: pointer;
  cursor: pointer;
}
/* 谷歌浏览器,最小字体是12px,需要自己配置 */
.font-small {
    font-size: 6px;
  font-size: 6px;
}
.text-blue{
    color: #3140A2
.text-blue {
  color: #3140A2
}
.image-s {
    background-size: 100% 100%;
  background-size: 100% 100%;
}
.w-fit {
    width: fit-content;
  width: fit-content;
}
.h-fit {
    height: fit-content;
  height: fit-content;
}
.m-auto {
    margin: 0 auto;
  margin: 0 auto;
}
.m-l-a {
    margin-left: auto !important;
  margin-left: auto !important;
}
.m-r-0{
    margin-right: 0px;
.m-r-0 {
  margin-right: 0px;
}
.m-l-40 {
    margin-left: 80rpx;
  margin-left: 80rpx;
}
.m-l-5{
    margin-left: 10rpx;
.m-l-5 {
  margin-left: 10rpx;
}
.m-l-12{
    margin-left: 24rpx;
.m-l-12 {
  margin-left: 24rpx;
}
.m-r-a {
    margin-right: auto;
  margin-right: auto;
}
.m-r-15{
    margin-right: 30rpx;
.m-r-15 {
  margin-right: 30rpx;
}
.m-l-0 {
    margin-left: 0px;
  margin-left: 0px;
}
.m-t-2{
    margin-top: 4rpx;
.m-t-2 {
  margin-top: 4rpx;
}
.m-r-2 {
    margin-right: 4rpx;
  margin-right: 4rpx;
}
.m-r-5{
    margin-right: 10rpx;
.m-r-5 {
  margin-right: 10rpx;
}
.m-r-10 {
    margin-right: 20rpx;
  margin-right: 20rpx;
}
.m-l-10 {
    margin-left: 20rpx;
  margin-left: 20rpx;
}
.flex1{
    flex:1;
.flex1 {
  flex: 1;
}
.m-r-20 {
    margin-right: 40rpx;
  margin-right: 40rpx;
}
.m-t-20 {
    margin-top: 40rpx;
  margin-top: 40rpx;
}
.m-t-12 {
    margin-top: 24rpx;
  margin-top: 24rpx;
}
.m-r-40 {
    margin-right: 80rpx;
  margin-right: 80rpx;
}
.m-r-6{
    margin-right: 12rpx;
.m-r-6 {
  margin-right: 12rpx;
}
.m-r-80 {
    margin-right: 160rpx;
  margin-right: 160rpx;
}
.m-b-12{
    margin-bottom: 24rpx;
.m-b-12 {
  margin-bottom: 24rpx;
}
.m-b-20 {
    margin-bottom: 40rpx;
  margin-bottom: 40rpx;
}
.m-b-40{
    margin-bottom: 40rpx;
.m-b-40 {
  margin-bottom: 40rpx;
}
.m-b-5 {
    margin-bottom: 10rpx;
  margin-bottom: 10rpx;
}
.m-t-4 {
    margin-top: 8rpx;
  margin-top: 8rpx;
}
.m-t-15{
    margin-top:30rpx;
.m-t-15 {
  margin-top: 30rpx;
}
.m-t-icon {
    margin-top: 8rpx;
  margin-top: 8rpx;
}
.m-t-icon-h2 {
    margin-top: 16rpx;
  margin-top: 16rpx;
}
.p9-12{
    padding: 18rpx 24rpx;
.p9-12 {
  padding: 18rpx 24rpx;
}
.p15{
    padding: 30rpx;
.p15 {
  padding: 30rpx;
}
.p10 {
    padding: 20rpx;
  padding: 20rpx;
}
.p20 {
    padding: 40rpx;
  padding: 40rpx;
}
.p40 {
    padding: 80rpx;
  padding: 80rpx;
}
.m-l-15{
    margin-left: 30rpx;
.m-l-15 {
  margin-left: 30rpx;
}
.p-t-5 {
    padding-top: 5px;
  padding-top: 5px;
}
.p-l-10 {
    padding-left: 20rpx !important;
  padding-left: 20rpx !important;
}
.p-b-0{
    padding-bottom: 0px;
.p-b-0 {
  padding-bottom: 0px;
}
.p-r-10 {
    padding-right: 20rpx !important;
  padding-right: 20rpx !important;
}
.l-h-2 {
    line-height: 1.2;
  line-height: 1.2;
}
.desc-gray {
    color: #9a9da2;
  color: #9a9da2;
}
.border {
    border: 1px solid var(--self_light_gray);
  border: 1px solid var(--self_light_gray);
}
.t-white {
    color: #FFFFFF;
  color: #FFFFFF;
}
.button-blue {
    color: #3140A2 !important;
  color: #3140A2 !important;
}
.button-common{
    padding: 10rpx 20rpx;
    /* padding-left: 40rpx; */
    /* padding-right: 40rpx; */
    text-align: center;
    color: #3140A2 !important;
    cursor: pointer;
.button-common {
  padding: 10rpx 20rpx;
  /* padding-left: 40rpx; */
  /* padding-right: 40rpx; */
  text-align: center;
  color: #3140A2 !important;
  cursor: pointer;
}
.button-submit{
    text-align: center;
    height: 80rpx;
    background: #3140A2;
    border-radius: 88rpx;
    line-height: 80rpx;
    color: #FFFFFF;
    cursor: pointer;
.button-submit {
  text-align: center;
  height: 80rpx;
  background: #3140A2;
  border-radius: 88rpx;
  line-height: 80rpx;
  color: #FFFFFF;
  cursor: pointer;
}
.radius-44{
    border-radius: 44rpx;
.radius-44 {
  border-radius: 44rpx;
}
.button-red {
    color: #CE3C39 !important;
  color: #CE3C39 !important;
}
.title-blue {
    color: #0052a4;
    font-size: 60rpx;
  color: #0052a4;
  font-size: 60rpx;
}
.text-center {
    text-align: center;
  text-align: center;
}
.text-right {
    text-align: right;
  text-align: right;
}
.f1 {
    flex: 1;
  flex: 1;
}
.f2 {
    flex: 1;
  flex: 1;
}
.h1 {
    font-size: var(--title_font_size)
  font-size: var(--title_font_size)
}
.h2 {
    font-size: var(--title_font_size2);
  font-size: var(--title_font_size2);
}
.title-more {
    color: var(--selfgray);
  color: var(--selfgray);
}
.title-bold {
    font-weight: 600;
  font-weight: 600;
}
.image-size-30 {
    width: 60rpx;
    height: 60rpx;
  width: 60rpx;
  height: 60rpx;
}
.b-r-20{
    border-radius: 40rpx;
.b-r-20 {
  border-radius: 40rpx;
}
.b-r-10{
    border-radius: 20rpx;
.b-r-10 {
  border-radius: 20rpx;
}
.line-gray {
    background-color: var(--self_light_gray);
    height: 2rpx;
    width: 100%;
    margin-top: 18rpx;
    margin-bottom: 20rpx;
  background-color: var(--self_light_gray);
  height: 2rpx;
  width: 100%;
  margin-top: 18rpx;
  margin-bottom: 20rpx;
}
.line-gray-big {
    background-color: #f3f3f3;
    height: 40rpx;
    width: 100%;
  background-color: #f3f3f3;
  height: 40rpx;
  width: 100%;
}
.line-v {
    width: 2rpx;
    /* height: 80%; */
    height: auto;
    /* margin-top: 10%; */
    background-color: var(--self_light_gray);
    margin-left: 20rpx;
    margin-right: 20rpx;
  width: 2rpx;
  /* height: 80%; */
  height: auto;
  /* margin-top: 10%; */
  background-color: var(--self_light_gray);
  margin-left: 20rpx;
  margin-right: 20rpx;
}
/* .title-more:after{
@@ -421,604 +469,668 @@
} */
.image-icon {
    width: 120rpx;
    height: 120rpx;
    border-radius: 50%;
  width: 120rpx;
  height: 120rpx;
  border-radius: 50%;
}
.icon-small {
    width: 32rpx;
    height: 36rpx;
  width: 32rpx;
  height: 36rpx;
}
.price-orange {
    /* color: #d26600; */
    color: #ebb360;
    text-align: right;
  /* color: #d26600; */
  color: #ebb360;
  text-align: right;
}
.nav-current {
    background-color: #3140A2;
    position: relative;
    color: #FFFFFF;
  background-color: #3140A2;
  position: relative;
  color: #FFFFFF;
}
.pointer {
    cursor: pointer;
  cursor: pointer;
}
.nav-current:before {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    height: 2px;
    content: '';
    -webkit-transform: scaleY(.5);
    transform: scaleY(.5);
    background-color: #3140A2;
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 2px;
  content: '';
  -webkit-transform: scaleY(.5);
  transform: scaleY(.5);
  background-color: #3140A2;
}
.calendar {
    border-radius: 10rpx;
    padding-left: 20rpx;
    padding-top: 4rpx;
    padding-bottom: 4rpx;
    padding-right: 20rpx;
    min-width: 400rpx;
    cursor: pointer;
  border-radius: 10rpx;
  padding-left: 20rpx;
  padding-top: 4rpx;
  padding-bottom: 4rpx;
  padding-right: 20rpx;
  min-width: 400rpx;
  cursor: pointer;
}
/* special */
.tips {
    margin-top: 20rpx;
  margin-top: 20rpx;
}
.tips .button-blue {
    border: 1px solid #3140A2;
    padding: 10rpx;
    width: 200rpx;
    line-height: 28rpx;
    text-align: center;
    padding-left: 20rpx;
    padding-right: 20rpx;
    border-radius: 40rpx;
    margin-right: 20rpx;
  border: 1px solid #3140A2;
  padding: 10rpx;
  width: 200rpx;
  line-height: 28rpx;
  text-align: center;
  padding-left: 20rpx;
  padding-right: 20rpx;
  border-radius: 40rpx;
  margin-right: 20rpx;
}
.el-dropdown-link {
    cursor: pointer;
    color: #409EFF;
  cursor: pointer;
  color: #409EFF;
}
.el-icon-arrow-down {
    font-size: 12px;
  font-size: 12px;
}
.icon-arrow-down {
    width: 24rpx;
    height: 24rpx;
  width: 24rpx;
  height: 24rpx;
}
.app-tips {}
.app-tips {
}
.app-tips .app-tip {
    background-color: #F3F3F3;
    text-align: center;
    border-radius: 10rpx;
    width: 102rpx;
    color: #999999
  background-color: #F3F3F3;
  text-align: center;
  border-radius: 10rpx;
  width: 102rpx;
  color: #999999
}
.p-b-5 {
    padding-bottom: 10rpx;
  padding-bottom: 10rpx;
}
.word-e {
    display: block;
    overflow: hidden;
    white-space: nowrap;
    -o-text-overflow: ellipsis;
    text-overflow: ellipsis;
}
.m5{
    margin: 10rpx;
  display: block;
  overflow: hidden;
  white-space: nowrap;
  -o-text-overflow: ellipsis;
  text-overflow: ellipsis;
}
.high-line{
    background-color: #6dfaff77;
}
.icon-arrow-right{
    width: 32rpx;
    height: 32rpx;
}
.w-m-300 .uni-section{
    min-width: 600rpx;
.m5 {
  margin: 10rpx;
}
.w-180{
    width: 360rpx;
}
.img-d{
    background-size: 100% 100%;
}
.m-t-36{
    margin-top: 36rpx;
.high-line {
  background-color: #6dfaff77;
}
.button-green-1{
    height: 80rpx;
    background: var(--topicolor);
    border-radius: 44rpx;
    line-height: 80rpx;
    text-align: center;
    color: #FFFFFF;
    font-size: 32rpx;
.icon-arrow-right {
  width: 32rpx;
  height: 32rpx;
}
.button-green-border{
    height: 80rpx;
    border: 1px solid  var(--topicolor);
    border-radius: 44rpx;
    line-height: 80rpx;
    text-align: center;
    color:  #04BA97;
    font-size: 32rpx;
.w-m-300 .uni-section {
  min-width: 600rpx;
}
.w-180 {
  width: 360rpx;
}
.img-d {
  background-size: 100% 100%;
}
.m-t-36 {
  margin-top: 36rpx;
}
.button-green-1 {
  height: 80rpx;
  background: var(--topicolor);
  border-radius: 44rpx;
  line-height: 80rpx;
  text-align: center;
  color: #FFFFFF;
  font-size: 32rpx;
}
.button-green-border {
  height: 80rpx;
  border: 1px solid var(--topicolor);
  border-radius: 44rpx;
  line-height: 80rpx;
  text-align: center;
  color: #04BA97;
  font-size: 32rpx;
}
.button-circle {
    width: 100rpx;
    position: fixed;
    right: 60rpx;
    height: 100rpx;
    color: #ffffff;
    font-size: 36rpx;
    cursor: pointer;
    text-align: center;
    font-weight: 400;
    line-height: 100rpx;
    margin: 0 auto;
    bottom: 160rpx;
    // background:radial-gradient(#FFFFFF, #4ce531);
    border-radius: 50%;
    background-color: #04BA97;
  width: 100rpx;
  position: fixed;
  right: 60rpx;
  height: 100rpx;
  color: #ffffff;
  font-size: 36rpx;
  cursor: pointer;
  text-align: center;
  font-weight: 400;
  line-height: 100rpx;
  margin: 0 auto;
  bottom: 160rpx;
  // background:radial-gradient(#FFFFFF, #4ce531);
  border-radius: 50%;
  background-color: #04BA97;
}
// #ifdef APP || H5
.button-circle.app{
    background-color: unset;
    background-size: 100% 100%;
    width: 136rpx;
    height: 136rpx;
.button-circle.app {
  background-color: unset;
  background-size: 100% 100%;
  width: 136rpx;
  height: 136rpx;
}
// #endif
.flex-w100{
    min-width: 100%;
}
.p-b-20{
    padding-bottom: 40rpx;
}
.app-container{
    min-height: calc(100vh - 100rpx);
    height: 100%;
    background-color: rgba(247, 247, 247, 1);
}
.msg-tip{
    font-size: 24rpx;
    font-family: PingFangSC, PingFang SC;
    font-weight: 400;
    color: #999999;
    line-height: 34rpx;
}
.top-search-button{
    color: #fff;
    text-align: center;
    line-height: 80rpx;
    height: 80rpx;
}
.form-item .required::before{
    content: "*";
    color: red;
}
.self-form-item .required::before{
    content: "*";
    color: red;
}
.file-text{
    color:#3140A2;
        word-break: break-all;
}
.v-center{
    align-items: center;
}
.t-grey{
    color: #999999;
}
.button-text{
    text-align: center;
    color: #3140A2;
    width: 100rpx;
    font-size: 36rpx;
    cursor: pointer;
    text-align: center;
    font-weight: 400;
    line-height: 100rpx;
    border:2rpx solid #3140A2;
}
.button-bind{
    text-align: center;
    color: #3140A2;
    width: 160rpx;
    font-size: 28rpx;
    cursor: pointer;
    text-align: center;
    font-weight: 400;
    line-height: 60rpx;
    border:2rpx solid #3140A2;
    border-radius: 40rpx;
    background-color: rgb(244, 247, 254);
}
.button-bind-1{
    background-color: #3140A2;
    color: #fff;
}
.button-fixed-bottom{
    position: fixed;
    bottom: 60rpx;
    left: 40rpx;
    right: 40rpx;
    z-index: 1;
.flex-w100 {
  min-width: 100%;
}
.close-parent{
    position: relative;
    font-weight: 600;
    font-size: 32rpx;
    color: #000000;
    text-align: center;
    .close{
        position: absolute;
        right: 40rpx;
        top: calc(50% - 24rpx);
    }
}
.common-select-items{
    .common-select-item{
    }
.p-b-20 {
  padding-bottom: 40rpx;
}
.uni-noticebar{
    border-radius: 10rpx;
    height: 82rpx;
    .self-uni-notice-bar-icon-left{
        width: 38rpx;
        height: 38rpx;
        margin-right: 16rpx;
    }
    .self-uni-notice-bar-icon{
        width: 16rpx;
        height: 24rpx;
    }
.app-container {
  min-height: calc(100vh - 100rpx);
  height: 100%;
  background-color: rgba(247, 247, 247, 1);
}
.button-green{
    width: 302rpx;
    height: 80rpx;
    background: var(--topicolor);
    border-radius: 62rpx;
    font-size: 32rpx;
    font-family: PingFangSC, PingFang SC;
    font-weight: 600;
    color: #FFFFFF;
    line-height: 80rpx;
    text-align: center;
    // margin: 0 auto;
    margin-left:auto;
    margin-right:auto;
    display: block;
.msg-tip {
  font-size: 24rpx;
  font-family: PingFangSC, PingFang SC;
  font-weight: 400;
  color: #999999;
  line-height: 34rpx;
}
.button-grey{
    width: 440rpx;
    height: 92rpx;
    border-radius: 62rpx;
    border: 2rpx solid #666666;
    font-size: 32rpx;
    font-family: PingFangSC, PingFang SC;
    font-weight: 400;
    color: #666666;
    line-height: 92rpx;
    display: block;
    margin: 0 auto;
.top-search-button {
  color: #fff;
  text-align: center;
  line-height: 80rpx;
  height: 80rpx;
}
.close-parent{
    position: relative;
    font-size: 28rpx;
    font-family: PingFangSC, PingFang SC;
    font-weight: 600;
    color: #000000;
    line-height: 40rpx;
    // margin-bottom: 34rpx;
    text-align: center;
    .close{
        position: absolute;
        right: 0rpx;
    }
.form-item .required::before {
  content: "*";
  color: red;
}
.self-form-item .required::before {
  content: "*";
  color: red;
}
.file-text {
  color: #3140A2;
  word-break: break-all;
}
.v-center {
  align-items: center;
}
.t-grey {
  color: #999999;
}
.button-text {
  text-align: center;
  color: #3140A2;
  width: 100rpx;
  font-size: 36rpx;
  cursor: pointer;
  text-align: center;
  font-weight: 400;
  line-height: 100rpx;
  border: 2rpx solid #3140A2;
}
.button-bind {
  text-align: center;
  color: #3140A2;
  width: 160rpx;
  font-size: 28rpx;
  cursor: pointer;
  text-align: center;
  font-weight: 400;
  line-height: 60rpx;
  border: 2rpx solid #3140A2;
  border-radius: 40rpx;
  background-color: rgb(244, 247, 254);
}
.button-bind-1 {
  background-color: #3140A2;
  color: #fff;
}
.button-fixed-bottom {
  position: fixed;
  bottom: 60rpx;
  left: 40rpx;
  right: 40rpx;
  z-index: 1;
}
.close-parent {
  position: relative;
  font-weight: 600;
  font-size: 32rpx;
  color: #000000;
  text-align: center;
  .close {
    position: absolute;
    right: 40rpx;
    top: calc(50% - 24rpx);
  }
}
.common-select-items {
  .common-select-item {
  }
}
.uni-noticebar {
  border-radius: 10rpx;
  height: 82rpx;
  .self-uni-notice-bar-icon-left {
    width: 38rpx;
    height: 38rpx;
    margin-right: 16rpx;
  }
  .self-uni-notice-bar-icon {
    width: 16rpx;
    height: 24rpx;
  }
}
.button-green {
  width: 302rpx;
  height: 80rpx;
  background: var(--topicolor);
  border-radius: 62rpx;
  font-size: 32rpx;
  font-family: PingFangSC, PingFang SC;
  font-weight: 600;
  color: #FFFFFF;
  line-height: 80rpx;
  text-align: center;
  // margin: 0 auto;
  margin-left: auto;
  margin-right: auto;
  display: block;
}
.button-grey {
  width: 440rpx;
  height: 92rpx;
  border-radius: 62rpx;
  border: 2rpx solid #666666;
  font-size: 32rpx;
  font-family: PingFangSC, PingFang SC;
  font-weight: 400;
  color: #666666;
  line-height: 92rpx;
  display: block;
  margin: 0 auto;
}
.close-parent {
  position: relative;
  font-size: 28rpx;
  font-family: PingFangSC, PingFang SC;
  font-weight: 600;
  color: #000000;
  line-height: 40rpx;
  // margin-bottom: 34rpx;
  text-align: center;
  .close {
    position: absolute;
    right: 0rpx;
  }
}
.form {
    .form-item{
        display:flex;
        border-bottom: 2rpx solid #EEEEEE;
        height: 36rpx;
        line-height:36rpx;
        padding-top:30rpx;
        padding-bottom:30rpx;
        position: relative;
        .require::before{
            content:'*';
            color:red;
        }
        .form-item-label{
            position:absolue;
            width: 160rpx;
            font-size: 28rpx;
            color: #000000;
            line-height: 40rpx;
            font-weight:600;
            text-align: left;
            font-style: normal;
        }
        .form-item-value{
            font-size: 28rpx;
        }
    }
  .form-item {
    display: flex;
    border-bottom: 2rpx solid #EEEEEE;
    height: 36rpx;
    line-height: 36rpx;
    padding-top: 30rpx;
    padding-bottom: 30rpx;
    position: relative;
    .require::before {
      content: '*';
      color: red;
    }
    .form-item-label {
      position: absolue;
      width: 160rpx;
      font-size: 28rpx;
      color: #000000;
      line-height: 40rpx;
      font-weight: 600;
      text-align: left;
      font-style: normal;
    }
    .form-item-value {
      font-size: 28rpx;
    }
  }
}
    .footer-shop{
            width: 690rpx;
            height: 92rpx;
            line-height: 92rpx;
            background: #04BA97;
            border-radius: 62rpx;
            .total{
                margin-left: 40rpx;
                width: 104rpx;
                font-size: 28rpx;
                color: #FFFFFF;
            }
            .price{
                margin-left: 8rpx;
                font-weight: 600;
                font-size: 50rpx;
                color: #FFFFFF;
                line-height: 84rpx;
            }
            .txt{
                font-weight: 600;
                font-size: 32rpx;
                color: #FFFFFF;
                margin-right: 72rpx;
                margin-left: auto;
            }
        }
.radio{
    width: 22rpx;
    height: 22rpx;
    border-radius: 50%;
    border:1rpx solid #999999
.footer-shop {
  width: 690rpx;
  height: 92rpx;
  line-height: 92rpx;
  background: #04BA97;
  border-radius: 62rpx;
  .total {
    margin-left: 40rpx;
    width: 104rpx;
    font-size: 28rpx;
    color: #FFFFFF;
  }
  .price {
    margin-left: 8rpx;
    font-weight: 600;
    font-size: 50rpx;
    color: #FFFFFF;
    line-height: 84rpx;
  }
  .txt {
    font-weight: 600;
    font-size: 32rpx;
    color: #FFFFFF;
    margin-right: 72rpx;
    margin-left: auto;
  }
}
.radio.select{
    background: #04BA97;
    border:1rpx solid #04BA97
.radio {
  width: 22rpx;
  height: 22rpx;
  border-radius: 50%;
  border: 1rpx solid #999999
}
.radio.select {
  background: #04BA97;
  border: 1rpx solid #04BA97
}
    // 表单的
    .popup-form{
        background-color: #FFFFFF;
        padding: 30rpx;
        .form-vars{
            margin-top: 36rpx;
            margin-bottom: 56rpx;
            .title{
                font-weight: 600;
                font-size: 40rpx;
                color: #000000;
                line-height: 56rpx;
            }
            .var-title{
                font-weight: 600;
                font-size: 32rpx;
                color: #000000;
                line-height: 44rpx;
                margin-top: 38rpx;
            }
            .var-items{
                display: flex;
                flex-wrap: wrap;
                .var-item{
                    min-width: 82rpx;
                    padding-left: 10rpx;
                    padding-right: 10rpx;
                    height: 56rpx;
                    line-height: 56rpx;
                    border-radius: 8rpx;
                    border: 2rpx solid #CECECE;
                    font-size: 24rpx;
                    color: #000000;
                    text-align: center;
                    margin-right: 16rpx;
                    margin-top: 8rpx;
                }
                .var-item.cur{
                    border: 2rpx solid #fff;
                    background-color: #04BA97;
                    color: #fff;
                    font-weight: 600;
                }
            }
        }
        .cover-img{
            width: 690rpx;
            height: 394rpx;
        }
    }
.v-line{
    height: 4rpx;
    // border: 2rpx solid #EEEEEE;
    background: #EEEEEE;
    margin-top: 22rpx;
    margin-bottom: 22rpx;
// 表单的
.popup-form {
  background-color: #FFFFFF;
  padding: 30rpx;
  .form-vars {
    margin-top: 36rpx;
    margin-bottom: 56rpx;
    .title {
      font-weight: 600;
      font-size: 40rpx;
      color: #000000;
      line-height: 56rpx;
    }
    .var-title {
      font-weight: 600;
      font-size: 32rpx;
      color: #000000;
      line-height: 44rpx;
      margin-top: 38rpx;
    }
    .var-items {
      display: flex;
      flex-wrap: wrap;
      .var-item {
        min-width: 82rpx;
        padding-left: 10rpx;
        padding-right: 10rpx;
        height: 56rpx;
        line-height: 56rpx;
        border-radius: 8rpx;
        border: 2rpx solid #CECECE;
        font-size: 24rpx;
        color: #000000;
        text-align: center;
        margin-right: 16rpx;
        margin-top: 8rpx;
      }
      .var-item.cur {
        border: 2rpx solid #fff;
        background-color: #04BA97;
        color: #fff;
        font-weight: 600;
      }
    }
  }
  .cover-img {
    width: 690rpx;
    height: 394rpx;
  }
}
.icon-down{
    transform: rotate(90deg);
.v-line {
  height: 4rpx;
  // border: 2rpx solid #EEEEEE;
  background: #EEEEEE;
  margin-top: 22rpx;
  margin-bottom: 22rpx;
}
.icon-down {
  transform: rotate(90deg);
}
.info-brand {
    padding: 20rpx 30rpx;
    background: #fff;
  padding: 20rpx 30rpx;
  //padding: 10rpx;
  background: #fff;
    .name {
        margin-bottom: 22rpx;
        font-weight: 600;
    }
  .name {
    margin-bottom: 22rpx;
    font-weight: 600;
  }
    .store-logo {
        width: 96rpx;
        height: 96rpx;
        border-radius: 50%;
        margin-right: 20rpx;
    }
  .store-logo {
    width: 96rpx;
    height: 96rpx;
    border-radius: 50%;
    margin-right: 20rpx;
  }
    .store-name {
        font-weight: 600;
        font-size: 28rpx;
        color: #000000;
        line-height: 40rpx;
    }
    .store-address{
        font-weight: 400;
        font-size: 24rpx;
        color: #666666;
        line-height: 34rpx;
    }
    .store-to{
        width: 172rpx;
        height: 52rpx;
        background: #E1F0E7;
        border-radius: 4rpx;
        font-weight: 400;
        font-size: 24rpx;
        color: #5B8C71;
        line-height: 52rpx;
        text-align: center;
    }
    .store-sc{
        width: 176rpx;
        height: 64rpx;
        background: #39AF6E;
        border-radius: 32rpx;
        font-weight: 400;
        font-size: 32rpx;
        color: #FFFFFF;
        line-height: 64rpx;
        .icon{
            width: 36rpx;
            height: 36rpx;
        }
    }
  .store-name {
    font-weight: 600;
    font-size: 28rpx;
    color: #000000;
    line-height: 40rpx;
  }
  .store-address {
    font-weight: 400;
    font-size: 24rpx;
    color: #666666;
    line-height: 34rpx;
  }
  .store-to {
    width: 172rpx;
    height: 52rpx;
    background: #E1F0E7;
    border-radius: 4rpx;
    font-weight: 400;
    font-size: 24rpx;
    color: #5B8C71;
    line-height: 52rpx;
    text-align: center;
  }
  .store-sc {
    width: 176rpx;
    height: 64rpx;
    background: #39AF6E;
    border-radius: 32rpx;
    font-weight: 400;
    font-size: 32rpx;
    color: #FFFFFF;
    line-height: 64rpx;
    display: flex;
    .icon-view {
      margin-top: 4rpx;
      margin-left: 30rpx;
      margin-right: 10rpx;
    }
    .icon {
      width: 36rpx;
      height: 36rpx;
      display: inline-block;
    }
  }
}
.text-left{
    text-align: left;
.text-left {
  text-align: left;
}
.img100{
    background-size: 100% 100%;
.img100 {
  background-size: 100% 100%;
}
    .infocontainar {
        width: 100vw;
        height: calc(100vh - 300rpx);
        background: #fff;
        box-sizing: border-box;
        padding: 0 30rpx;
        .avatarUrl {
            padding: 80rpx 0 40rpx;
            background: #fff;
.infocontainar {
  width: 100vw;
  height: calc(100vh - 300rpx);
  background: #fff;
  box-sizing: border-box;
  padding: 0 30rpx;
            button {
                background: #fff;
                line-height: 80rpx;
                height: auto;
                border: none !important;
                width: auto;
                // padding: 20rpx 30rpx;
                margin: 0;
                display: flex;
                border: none;
                justify-content: center;
                align-items: center;
  .avatarUrl {
    padding: 80rpx 0 40rpx;
    background: #fff;
                &::after {
                    border: none;
                }
    button {
      background: #fff;
      line-height: 80rpx;
      height: auto;
      border: none !important;
      width: auto;
      // padding: 20rpx 30rpx;
      margin: 0;
      display: flex;
      border: none;
      justify-content: center;
      align-items: center;
                .refreshIcon {
                    width: 160rpx;
                    height: 160rpx;
                    border-radius: 50%;
                    background-color: #ccc;
                    border: 1px solid #e0dfdf;
                }
      &::after {
        border: none;
      }
                .jt {
                    width: 14rpx;
                    height: 28rpx;
                }
            }
        }
      .refreshIcon {
        width: 160rpx;
        height: 160rpx;
        border-radius: 50%;
        background-color: #ccc;
        border: 1px solid #e0dfdf;
      }
        .userName {
            background: #fff;
            padding: 20rpx 30rpx 80rpx;
            display: flex;
            align-items: center;
            justify-content: center;
      .jt {
        width: 14rpx;
        height: 28rpx;
      }
    }
  }
            .weui-input {
                padding-left: 60rpx;
                padding-bottom: 20rpx;
                border-bottom: 1px solid darkgray;
            }
        }
  .userName {
    background: #fff;
    padding: 20rpx 30rpx 80rpx;
    display: flex;
    align-items: center;
    justify-content: center;
        .btn {
            margin-top: 30rpx;
        }
    }
    .weui-input {
      padding-left: 60rpx;
      padding-bottom: 20rpx;
      border-bottom: 1px solid darkgray;
    }
  }
.img100{
    background-size: 100% 100%;
  .btn {
    margin-top: 30rpx;
  }
}
uni-image>img{
    opacity: 1 !important;
.img100 {
  background-size: 100% 100%;
}
.component-radio{
    width: 26rpx;
    height: 26rpx;
    min-width: 26rpx;
    min-height: 26rpx;
    border-radius: 50%;
    border: 2rpx solid #20613D;
    &.cur{
        background-color:#20613D;
    }
uni-image > img {
  opacity: 1 !important;
}
.component-radio {
  width: 26rpx;
  height: 26rpx;
  min-width: 26rpx;
  min-height: 26rpx;
  border-radius: 50%;
  border: 2rpx solid #20613D;
  &.cur {
    background-color: #20613D;
  }
}
components/top-tabs.vue
@@ -1,76 +1,75 @@
<template>
    <view class="flex top-tabs">
        <view class="top-tab t-grey p10" v-for="(item,index) of tabs" @tap="changeIndex(index)"
            :class="[''+index==flg?'active':'']">
            {{item.name || item.label || ''}}
        </view>
    </view>
  <view class="flex top-tabs">
    <view class="top-tab t-grey p10" v-for="(item,index) of tabs" @tap="changeIndex(index)"
          :class="[''+index==flg?'active':'']">
      {{ item.name || item.label || '' }}
    </view>
  </view>
</template>
<script>
    export default {
        name: "top-tabs",
        data() {
            return {
export default {
  name: "top-tabs",
  data() {
    return {};
  },
  props: {
    tabs: {
      type: Array,
      default: []
    },
    flg: ""
  },
  methods: {
    changeIndex(index) {
      if (index == this.flg) {
            };
        },
        props: {
            tabs: {
                type: Array,
                default: []
            },
            flg: ""
        },
        methods: {
            changeIndex(index) {
                if(index==this.flg){
                }else{
                    this.$emit('update:flg', index)
                    this.$emit('change', index)
                }
      } else {
        this.$emit('update:flg', index)
        this.$emit('change', index)
      }
            }
        }
    }
    }
  }
}
</script>
<style lang="scss">
    .top-tabs {
        .top-tab {
            color: #000000;
            // flex: 1;
        }
.top-tabs {
  .top-tab {
    color: #ffffff;
    flex: 1;
    text-align: center;
  }
        .top-tab.active {
            color: #000;
            font-weight: 600;
            // border-bottom: 8rpx solid #000;
            // 底部的线条
  .top-tab.active {
    color: #ffffff;
    font-weight: 600;
    // border-bottom: 8rpx solid #000;
    // 底部的线条
            font-family: PingFangSC, PingFang SC;
            font-weight: 600;
            font-size: 36rpx;
            color: #000000;
            line-height: 32rpx;
            text-align: left;
            font-style: normal;
            // padding: 0rpx;
            width: fit-content;
            position: relative;
        }
    font-family: PingFangSC, PingFang SC;
    font-weight: 600;
    font-size: 36rpx;
    color: #ffffff;
    line-height: 32rpx;
    text-align: left;
    font-style: normal;
    // padding: 0rpx;
    width: fit-content;
    position: relative;
  }
        .top-tab.active::before {
            position: absolute;
            content: " ";
            left: 16rpx;
            right: 16rpx;
            bottom: 8rpx;
            // width: 110rpx;
            height: 8rpx;
            background: #04BA97;
            border-radius: 4rpx;
        }
    }
  .top-tab.active::before {
    position: absolute;
    content: " ";
    left: 16rpx;
    right: 16rpx;
    bottom: 8rpx;
    // width: 110rpx;
    height: 8rpx;
    background: #04BA97;
    border-radius: 4rpx;
  }
}
</style>
pages/login/supplier-reg.vue
@@ -66,10 +66,19 @@
              <u-input :password="true" :border="false" placeholder="请输入密码" v-model="password"></u-input>
            </view>
            <button @tap="login()" class="bottom-button">注 册</button>
            <!-- #ifndef PUB_CUSTOMER -->
            <button @tap="reg('')" class="bottom-button">注 册</button>
            <!-- #endif -->
            <!-- #ifdef PUB_CUSTOMER -->
            <!--            open-type="getUserInfo"-->
            <button @tap="wxreg('')" class="bottom-button">注 册</button>
            <!-- #endif -->
            <view class="flex">
              <view class="topic-font m-l-0 m-r-a" @click="backInfoPage" v-if="source==='step'">返回上一步</view>
              <view class="topic-font m-l-0 m-r-a" @click="backInfoPage" v-if="source==='step'">返回上一步
              </view>
              <view class="topic-font m-l-a m-r-0" @click="toLogin">前往登录</view>
            </view>
@@ -213,7 +222,44 @@
    changeAll(e) {
      this.pcfvalue = e.detail.value[0]
    },
    async login() {
    // async wxreg(e) {
    //   wx.login({
    //     success: async res => {
    //       if (res.code) {
    //
    //       }
    //     },
    //     fail() {
    //       this.$message.showToast('获取微信信息失败')
    //     }
    //   })
    // },
    wxreg(e) {
      let tmp = this
      wx.login({
        success: async res => {
          console.log(res)
          if (res.code) {
            tmp.reg(res.code)
          } else {
            tmp.$message.showToast('微信登录失败');
          }
        },
        error: res => {
          console.log('wx.login error', res)
          tmp.$message.showToast('获取微信信息失败:' + res);
        }
      });
    },
    async reg(wxcode) {
      // console.log('e', e)
      // this.$message.showLoading()
      // const res = await wx.getUserProfile({
      //   desc: '用于完善会员资料',
      // });
      // console.log(res);
      // this.$message.hideLoading()
      uni.showLoading({
        title: '登陆中'
      });
@@ -266,6 +312,7 @@
        var dto = JSON.parse(tjson)
        post.dto = dto
      }
      post.wxcode = wxcode
      // const {
      // code
store/index.js
@@ -220,7 +220,8 @@
                        password: data.password,
                        tel: data.phoneNumber || data.tel,
                        smsCode: data.smsCode || '',
                        dto: data.dto || undefined
                        dto: data.dto || undefined,
                        wxcode: data.wxcode || undefined
                    },
                    params: {
                        clientType: data.clientType || 'app'
sub_pages/customer/shop/shop.vue
@@ -18,12 +18,14 @@
            <view class="store-name">花仙子</view>
            <view class="store-address">云南省-昆明市-官渡区</view>
          </view>
          <view class="store-sc m-l-a m-r-0">
            <image src="../../../static/icon-gz-1.png" class="icon" v-if="dto.followed"
                   @click="updateGz(false)"></image>
            <image src="../../../static/icon-gz-0.png" class="icon" v-if="!dto.followed"
                   @click="updateGz(true)"></image>
            关注
          <view class="store-sc m-l-a m-r-0" @click="updateGz(!dto.followed)">
            <view class="icon-view">
              <image src="../../../static/icon-gz-1.png" class="icon" v-if="dto.followed"
                     ></image>
              <image src="../../../static/icon-gz-0.png" class="icon" v-if="!dto.followed"
                     ></image>
            </view>
            <view>关注</view>
          </view>
        </view>
      </view>
@@ -69,7 +71,7 @@
          报价已包含打包费、材料费、交易佣金
        </view>
        <view class="component-shop-item flex" v-for="(item,index) of list" :key="index"
              @click="toDetail(item)">
              @click.stop="toDetail(item)">
          <view class="img">
            <image class="img img100"
                   src="https://hmy-flower.oss-cn-shanghai.aliyuncs.com/ff/fff3027bd0a146478fd1f0aae816a028%E5%BE%AE%E4%BF%A1%E6%88%AA%E5%9B%BE_20240710224139.png">
@@ -104,10 +106,10 @@
              <view class="icons flex">
                <uni-icons v-if="item.shopnum&&item.shopnum>=1" type="minus" size="32"
                           @click.stop="mulnum(item)"></uni-icons>
                           @click.stop="addnum(item,-1)"></uni-icons>
                <view class="curnums" v-if="item.shopnum&&item.shopnum>=1">{{ item.shopnum }}</view>
                <uni-icons v-if="!item.shopnum||item.shopnum<=99" type="plus-filled" size="32"
                           @click.stop="addnum(item)"></uni-icons>
                           @click.stop="addnum(item,1)"></uni-icons>
              </view>
            </view>
          </view>
@@ -139,6 +141,7 @@
<script>
import trade from '@/sub_pages/customer/trade/trade.vue'
import http from "../../../plugins/http";
export default {
  components: {
@@ -217,23 +220,38 @@
    buttonSearchFlow() {
    },
    mulnum(item) {
      if (item.shopnum > 0) {
        item.shopnum -= 1
      }
      this.shoptotal -= 1
      this.$forceUpdate()
    },
    addnum(item) {
      if (item.shopnum) {
        item.shopnum += 1
      } else {
        item.shopnum = 1
    async addnum(item, addnum) {
      if (!this.currentInfo.id) {
        await this.$message.confirm('请前往登录')
        uni.navigateTo({
          url: '/pages/user/supplier-user'
        })
        return
      }
      this.shoptotal += 1
      if (!item.shopnum) {
        item.shopnum = 0
      }
      if (item.shopnum + addnum >= 0) {
      } else {
        return
      }
      this.$message.showLoading()
      const {code} = await http.request('post', '/api/customer/flower/cart/change-num', {
            data: {
              id: item.id,
              num: addnum
            }
          }
      )
      this.$message.hideLoading()
      if (code === 0) {
        item.shopnum += addnum
      }
      this.$forceUpdate()
    },
  }
}
</script>
@@ -247,12 +265,13 @@
    .brand-info-0 {
      .top-title {
        height: 54rpx;
        height: 80rpx;
        background: #E4ECE8;
        border-radius: 4rpx;
        font-weight: 400;
        font-size: 24rpx;
        color: #779787;
        margin-top: 10rpx;
        line-height: 80rpx;
      }
    }
sub_pages/customer/shopping/confirm.vue
@@ -89,48 +89,60 @@
        return
      }
      this.dto.addressId = this.address.id
      this.$message.showLoading()
      const {code, data} = await this.$http.request('post', '/api/customer/flower/order/commit', {
        data: {
          ...this.dto
        }
      })
      this.$message.hideLoading()
      if (code === 0) {
        //提交信息
        console.log('pay,', data)
        if (data && data['_testOrderId']) {
          //回调
          this.$message.showLoading()
          const {code, data} = await this.$http.request('get', '/api/customer/flower/order/callback/tmp', {
            params: {
              id: data['_testOrderId']
            }
          })
          this.$message.hideLoading()
        } else if (data) {
          //微信接口
          let that = this
          wx.requestPayment({
            ...data,
            async success(res) {
              console.log('pay success', res)
              this.$message.showToast('支付成功')
              //返回上一页
              await this.$store.dispatch('sign_add', 'shopping')
              uni.navigateBack()
              // uni.navigateTo({
              //   url: '/pages/canteen/canteen-success/canteen-success'
              // })
            },
            fail(err) {
              console.error('pay fail', err)
              that.$message.showToast('支付失败')
            }
          })
      let tmp = this
      wx.login({
        success: async res => {
          console.log(res)
          if (res.code) {
            tmp.$message.showLoading()
            const {code, data} = await tmp.$http.request('post', '/api/customer/flower/order/commit', {
              data: {
                ...tmp.dto,
                wxcode: res.code
              }
            })
            tmp.$message.hideLoading()
            if (code === 0) {
              //提交信息
              console.log('pay,', data)
              if (data && data['_testOrderId']) {
                //回调
                tmp.$message.showLoading()
                const res2 = await tmp.$http.request('get', '/api/customer/flower/order/callback/tmp', {
                  params: {
                    id: res2.data['_testOrderId']
                  }
                })
                tmp.$message.hideLoading()
              } else if (data) {
                wx.requestPayment({
                  ...data,
                  async success(res) {
                    console.log('pay success', res)
                    tmp.$message.showToast('支付成功')
                    //返回上一页
                    await tmp.$store.dispatch('sign_add', 'shopping')
                    uni.navigateBack()
                  },
                  fail(err) {
                    console.error('pay fail', err)
                    tmp.$message.showToast('支付失败')
                  }
                })
              }
            }
          } else {
            tmp.$message.showToast('获取微信信息失败');
          }
        },
        error: res => {
          tmp.$message.showToast('获取微信信息失败:' + res);
        }
      }
      });
    }
  }
@@ -143,7 +155,7 @@
      <common-address-select ref="addressselect"></common-address-select>
    </view>
    <view>
      <view class="flower-container br-4 p10">
      <view class="flower-container m-t-12 br-4 p10">
        <view class="shopping-item m-b-20" v-for="(item,index) of dto.flowers" :key="index">
          <u-divider v-if="index>0"></u-divider>
          <view class="sup-title flex">
@@ -170,7 +182,7 @@
        </view>
      </view>
      <!--    查看商品列表,和选择运费 -->
      <view class="br-4 transform-container p10">
      <view class="br-4 transform-container p10" style="padding-top: 0rpx">
        <view class="title">
          <view>运输方式:</view>
          <view class="flex transform-list">
@@ -257,6 +269,7 @@
<style scoped lang="scss">
.page-confirm {
  padding: 20rpx 30rpx;
  .bottom-price {
    position: fixed;
    background-color: #ffffff;
sub_pages/customer/trade/detail.vue
@@ -1,18 +1,18 @@
<template>
  <view class="trade-detail">
    <view class="top-img-container">
      <image :src="dto.cover" class="top-img"></image>
      <image :src="dto.cover" class="top-img" mode="aspectFill"></image>
      <view class="icon-container">
        <image src="../../../static/common/icon-sc.png" class="icon-sc"></image>
        <view class="num">12</view>
<!--        <view class="num">12</view>-->
      </view>
      <view class="icon-container">
        <image src="../../../static/common/icon-shop.png" class="icon-shop"></image>
        <image src="../../../static/common/icon-shop.png" @click="submitShopping(dto)" class="icon-shop"></image>
      </view>
    </view>
    <view class="trade-info-container">
      <view class="title">
      <view class="title flex">
        <view class="level m-r-15">{{ dto.levelStr || '-' }}级</view>
        <view class="">
          {{ dto.name || '-' }}
@@ -21,7 +21,7 @@
      <view class="desc m-t-12">
        <view class="m-r-15">已售:{{ dto.sales || 0 }}</view>
        <view class="m-r-15">剩余:{{ dto.stock || 0 }}</view>
        <view class=" ">{{ dto.unit || '-' }}支/扎</view>
        <view class=" ">{{ dto.unit || '-' }}</view>
      </view>
      <view class="flex m-t-12">
        <view class="price m-r-a">
@@ -61,7 +61,7 @@
    <view class="info-brand m-t-12" @click.stop="openbrand">
      <view class="title-before-blue" style="padding-top: 0rpx;padding-bottom: 0rpx;">店铺</view>
      <view class="flex">
      <view class="flex m-t-12">
        <image class="store-logo"></image>
        <view>
          <view class="store-name">{{dto.supplierName||'-'}}</view>
@@ -328,13 +328,14 @@
      top: 20rpx;
      width: 80rpx;
      height: 80rpx;
      background: rgba(0, 0, 0, 0.42);
      background: rgba(0, 0, 0, 0);
      .icon-sc {
        width: 54rpx;
        height: 54rpx;
        margin: 0 auto;
        margin-top: 12rpx;
        display: inline-block;
      }
      .icon-shop {
@@ -342,6 +343,8 @@
        height: 54rpx;
        margin: 0 auto;
        margin-top: 12rpx;
        display: inline-block;
      }
      .num {
@@ -356,11 +359,11 @@
    }
    .icon-container:last-child {
      left: 120rpx;
      left: 140rpx;
    }
    .icon-container:first-child {
      left: 20rpx;
      left: 40rpx;
    }
  }
sub_pages/customer/trade/list.vue
@@ -292,7 +292,7 @@
      if (!this.currentInfo.id) {
        await this.$message.confirm('请前往登录')
        uni.navigateTo({
          url: '//pages/user/supplier-user'
          url: '/pages/user/supplier-user'
        })
        return
      }
@@ -316,12 +316,6 @@
      if (code === 0) {
        item.shopnum += addnum
      }
      // if (item.shopnum) {
      //   item.shopnum += 1
      // } else {
      //   item.shopnum = 1
      // }
      // this.shoptotal += 1
      this.$forceUpdate()
    },
  }