陶杰
2024-12-10 b07889e22f823fac80a66b503671e170668f4ee6
pages/home/supplier-home.vue
@@ -7,39 +7,88 @@
         我的
      </view> -->
      <!-- 背景图 -->
      <view class="top-bg" :style="{'padding-top':(StatusBar)+'px','line-height':CustomBar+'rpx' }">
      <view class="top-bg" :style="{ 'padding-top': (StatusBar) + 'px', 'line-height': CustomBar + 'rpx' }">
         <view class="title" style="position: relative;">
            首页
         </view>
         <view class="flex user-info" v-if="currentInfo&&(currentInfo.id)">
         <view class="flex user-info" v-if="currentInfo && (currentInfo.id)">
            <image class="user-icon" v-if="
               (currentInfo.customerDTO && currentInfo.customerDTO.cover)
               || (currentInfo.supplierDTO && currentInfo.supplierDTO.cover)
               || (currentInfo.partnerDTO && currentInfo.partnerDTO.cover)
               || currentInfo.picture
            " :src="(currentInfo.customerDTO && currentInfo.customerDTO.cover)
                  || (currentInfo.supplierDTO && currentInfo.supplierDTO.cover)
                  || (currentInfo.partnerDTO && currentInfo.partnerDTO.cover)
                  || currentInfo.picture
                  " mode="scaleToFill"></image>
            <image class="user-icon" v-else
               src='https://youzhen123.oss-cn-huhehaote.aliyuncs.com/WechatOwnerProperty/images/mrtx.png'
               mode="scaleToFill"></image>
            <!-- 头像 -->
            <image class="user-icon" v-if="!currentInfo.picture"
            <!--    <image class="user-icon" v-if="!currentInfo.picture"
               src='https://youzhen123.oss-cn-huhehaote.aliyuncs.com/WechatOwnerProperty/images/mrtx.png'
               mode="aspectFit"></image>
            <image class="user-icon" v-if="currentInfo.picture" :src="currentInfo.picture" mode="aspectFit"></image>
            <image class="user-icon" v-if="currentInfo.picture" :src="currentInfo.picture" mode="aspectFit"></image> -->
            <view class="name">
               <view class="t1">
                  {{ (!!currentInfo.supplierDTO?(currentInfo.supplierDTO.name):"") || currentInfo.nickName || currentInfo.loginName || '-'}}<span
                     v-if="currentInfo.supplierDTO&&currentInfo.supplierDTO.status!=='P'">
                     ({{currentInfo.supplierDTO?currentInfo.supplierDTO.statusStr:''}})</span>
                  <span v-if="currentInfo.partnerDTO&&currentInfo.partnerDTO.status!=='P'">
                     ({{currentInfo.partnerDTO?currentInfo.partnerDTO.statusStr:''}})</span>
                  <span v-if="!currentInfo.partnerDTO&&currentInfo.type==='partner'">(信息待完善)</span>
               <view class="t1 flex" style="align-items: center; justify-content: space-between;">
                  <!-- {{ (!!currentInfo.supplierDTO?(currentInfo.supplierDTO.name):"") || currentInfo.nickName || currentInfo.loginName || '-'}} -->
                  <span v-if="currentInfo.partnerDTO && currentInfo.partnerDTO.name">
                     {{ currentInfo.partnerDTO.name }}
                  </span>
                  <span v-else-if="currentInfo.supplierDTO && currentInfo.supplierDTO.name">
                     {{ currentInfo.supplierDTO.name }}
                  </span>
                  <span v-else-if="currentInfo.customerDTO && currentInfo.customerDTO.name">
                     {{ currentInfo.customerDTO.name }}
                  </span>
                  <span v-else-if="currentInfo.nickName">
                     {{ currentInfo.nickName }}
                  </span>
                  <span v-else-if="currentInfo.loginName">
                     {{ currentInfo.loginName }}
                  </span>
                  <span v-else>-</span>
                  <span v-if="currentInfo.supplierDTO && currentInfo.supplierDTO.status !== 'P'">
                     ({{ currentInfo.supplierDTO ? currentInfo.supplierDTO.statusStr : '' }})</span>
                  <span v-if="currentInfo.partnerDTO && currentInfo.partnerDTO.status !== 'P'">
                     ({{ currentInfo.partnerDTO ? currentInfo.partnerDTO.statusStr : '' }})</span>
                  <span v-if="!currentInfo.partnerDTO && currentInfo.type === 'partner'">(信息待完善)</span>
                  <u--image v-if="selftype === 'supplier' && currentInfo.switchFlag "
                     src="https://hmy-flower.oss-cn-shanghai.aliyuncs.com/fa/fa6585cd52d54156b5d64fa59af58180switch.png"
                     width="10px" height="10px" style="margin-left: 10px; margin-right: 10px;"
                     @click="switchSubAccount"></u--image>
                  <u--text v-if="selftype === 'supplier' && currentInfo.switchFlag " style="color: black;" text="切换账号" @click="switchSubAccount"></u--text>
               </view>
               <view class="t2">{{currentInfo.tel || '暂无电话'}}</view>
               <view class="t2">{{ currentInfo.tel || '暂无电话' }}</view>
               <view class="t2" v-if="currentInfo.partnerDTO && currentInfo.partnerDTO.id">
                  ID: {{ currentInfo.partnerDTO.id }}
               </view>
            </view>
         </view>
      </view>
      <view class="item-container" :class="[selftype?selftype:'']">
      <view class="item-container" :class="[selftype ? selftype : '']"
         v-if="
            (selftype === 'supplier' && $hasPermission('supplier:workbench:mine:profit'))
         ||  (selftype === 'partner' && $hasPermission('partner:workbench:mine:profit'))
         ">
         <view class="title">我的收益</view>
         <view class="flex tj-container" v-if="selftype==='partner'">.
         <view class="flex tj-container" v-if="selftype === 'partner'">
            <view class="tj-each">
               <view class="num total">
                  ¥{{tj.income||'0.00'}}
                  ¥{{ tj.income || '0.00' }}
               </view>
            </view>
            <view class="tj-each" style="flex: 1;">
@@ -50,26 +99,26 @@
         </view>
         <view class="line"></view>
         <view class="flex tj-container" v-if="selftype==='supplier'">
            <view class="tj-each">
         <view class="flex tj-container" v-if="selftype === 'supplier'">
            <view class="tj-each" @click="goto('/sub_pages/supplier/data-statis/data-statis', true)">
               <view class="num">
                  {{tj.dealCountLastMonth||0}}扎
                  {{ tj.dealCountLastMonth || 0 }}扎
               </view>
               <view class="name">
                  上月成交
               </view>
            </view>
            <view class="tj-each">
            <view class="tj-each" @click="goto('/sub_pages/supplier/data-statis/data-statis', true)">
               <view class="num">
                  {{tj.dealCountToday||0}}扎
                  {{ tj.dealCountToday || 0 }}扎
               </view>
               <view class="name">
                  今日成交
               </view>
            </view>
            <view class="tj-each">
            <view class="tj-each" @click="goto('/sub_pages/supplier/data-statis/data-statis', true)">
               <view class="num">
                  {{tj.dealCountDay30||0}}扎
                  {{ tj.dealCountDay30 || 0 }}扎
               </view>
               <view class="name">
                  近30天成交
@@ -77,25 +126,28 @@
            </view>
         </view>
         <view class="flex tj-container">
            <view class="tj-each" @click="selftype=='supplier'&&goto('/pages/order/order-delivery?range=today',true)">
            <view class="tj-each"
               @click="selftype == 'supplier' && goto('/pages/order/order-delivery?range=today', true)">
               <view class="num">
                  {{tj.orderCountToday||0}}单
                  {{ tj.orderCountToday || 0 }}单
               </view>
               <view class="name">
                  今日订单数
               </view>
            </view>
            <view class="tj-each" @click="selftype=='supplier'&&goto('/pages/order/order-delivery?range=yesterday',true)">
            <view class="tj-each"
               @click="selftype == 'supplier' && goto('/pages/order/order-delivery?range=yesterday', true)">
               <view class="num">
                  {{tj.orderCountYesterday||0}}单
                  {{ tj.orderCountYesterday || 0 }}单
               </view>
               <view class="name">
                  昨日订单数
               </view>
            </view>
            <view class="tj-each" @click="selftype=='supplier'&&goto('/pages/order/order-delivery?range=month',true)">
            <view class="tj-each"
               @click="selftype == 'supplier' && goto('/pages/order/order-delivery?range=month', true)">
               <view class="num">
                  {{tj.orderCountMonth||0}}单
                  {{ tj.orderCountMonth || 0 }}单
               </view>
               <view class="name">
                  本月订单数
@@ -103,84 +155,132 @@
            </view>
         </view>
      </view>
      <view class="item-container flex m-t-12" style="padding: 34rpx 44rpx;" v-if="selftype=='supplier'">
      <view class="item-container flex m-t-12" style="padding: 34rpx 44rpx;"
         v-if="(selftype == 'supplier' && $hasPermission('supplier:workbench:after:sale'))">
         <view class="rate-view flex1" style="max-width: 140rpx;">
            <view class="title">售后率</view>
            <view class="title" style="color: red;">{{((tj.salesRate||0)*100).toFixed(2)}}%</view>
            <view class="title" style="color: red;">{{ ((tj.salesRate || 0) * 100).toFixed(2) }}%</view>
         </view>
         <view class="tj-panel  pink flex1"
            @click="goto('/pages/order/order-delivery?status=PENDING&range=today',true)">
            @click="goto('/pages/order/order-delivery?status=PENDING&range=today', true)">
            <view class="name">今日待配送</view>
            <view class="title">{{tj.deliverCount||0}}单</view>
            <view class="title">{{ tj.deliverCount || 0 }}扎</view>
         </view>
         <view class="tj-panel green flex1"
            @click="goto('/pages/order/order-delivery?range=today',true)">
            @click="goto('/pages/order/order-delivery?status=ARRIVED&range=today', true)">
            <view class="name green">今日配送汇总</view>
            <view class="title">{{tj.deliverTotal||0}}单</view>
            <view class="title">{{ tj.deliverTotal || 0 }}扎</view>
         </view>
      </view>
      <view class="m-t-12" @click="getNoticeMore">
      <view v-if="
            (selftype === 'supplier' && $hasPermission('supplier:workbench:notice') )
         ||  (selftype === 'partner' && $hasPermission('partner:workbench:notice'))
         "
         class="m-t-12" @click="getNoticeMore">
         <uni-notice-bar class="notice-bar" color="#333" background-color="#fff" show-get-more show-icon
            :scrollable="scrollable" :text="currentNotice.title||'暂无公告'" :key="currentNotice.id" />
         <span v-if="!currentNotice||!currentNotice.id">&nbsp;</span>
            :scrollable="scrollable" :text="currentNotice.title || '暂无公告'" :key="currentNotice.id" />
         <span v-if="!currentNotice || !currentNotice.id">&nbsp;</span>
      </view>
      <view class="item-container">
      <view class="item-container  m-t-12"
         v-if="
         (selftype === 'supplier' && $hasPermission('supplier:workbench:common:functions') )
         ||  (selftype === 'partner' && $hasPermission('partner:workbench:common:functions'))
         ">
         <view class="title">常用功能</view>
         <view class="flex order-icons m-t-12">
            <view class="nav row margin-tb" v-if="selftype==='partner'"
               @click="goto('/sub_pages/partner/order-manage/order-manage',true)">
         <view class="flex order-icons m-t-12 function-container ">
            <view class="nav row margin-tb function-item "
            v-if="(selftype === 'partner' && $hasPermission('partner:workbench:common:functions:order:management'))"
               @click="goto('/sub_pages/partner/order-manage/order-manage', true)">
               <view class="img-c">
                  <image class="icon margin-bottom order-icon ddgl"
                     src="/static/images/partner/user/user-icon-ddgl.png" mode="scaleToFill" />
                     src="https://hmy-flower.oss-cn-shanghai.aliyuncs.com/23/23a7ad86e00c4ba28cd962dc4910433cuser-icon-ddgl.png"
                     mode="scaleToFill" />
               </view>
               <view class="order-desc tg">订单管理</view>
            </view>
      <!--       <view class="nav row margin-tb" v-if="selftype==='supplier'"
               @click="goto('/sub_pages/supplier/order-manage/order-manage',true)">
            <view class="nav row margin-tb function-item "
               v-if="(selftype === 'supplier' && $hasPermission('supplier:workbench:common:functions:order:statistics'))"
               @click="goto('/sub_pages/supplier/order-manage/order-manage', true)">
               <view class="img-c">
                  <image class="icon margin-bottom order-icon ddgl"
                     src="/static/images/partner/user/user-icon-ddgl.png" mode="scaleToFill" />
                     src="https://hmy-flower.oss-cn-shanghai.aliyuncs.com/23/23a7ad86e00c4ba28cd962dc4910433cuser-icon-ddgl.png"
                     mode="scaleToFill" />
               </view>
               <view class="order-desc tg">订单统计</view>
            </view> -->
            </view>
            <view class="nav row margin-tb"
            <view
               v-if="(selftype==='partner' && $hasPermission('partner:workbench:common:functions:bill:settlement'))"
               class="nav row margin-tb function-item "
               @click="goto('/sub_pages/supplier/order-settlement/order-settlement',true)">
               <view class="img-c">
                  <image class="icon margin-bottom order-icon zdjs"
                     src="/static/images/supplier/user/user-icon-zdjs.png" mode="scaleToFill" />
                     src="https://hmy-flower.oss-cn-shanghai.aliyuncs.com/7b/7b7ed1488fd64f6fa9bc6b557f141f37user-icon-zdjs.png" mode="scaleToFill" />
               </view>
               <view class="order-desc tg">账单结算</view>
            </view>
            <view class="nav row margin-tb" @click="toFlowManage" v-if="selftype==='supplier'">
            <view class="nav row margin-tb function-item " @click="toFlowManage"
               v-if="selftype === 'supplier' && $hasPermission('supplier:workbench:common:functions:product:management')">
               <view class="img-c">
                  <image class="icon margin-bottom order-icon spgl"
                     src="/static/images/supplier/user/user-icon-spgl.png" mode="scaleToFill" />
                     src="https://hmy-flower.oss-cn-shanghai.aliyuncs.com/47/478e007ad07a43ea9f40a962d83cedb4user-icon-spgl.png"
                     mode="scaleToFill" />
               </view>
               <view class="order-desc cqw">商品管理</view>
            </view>
            <view class="nav row margin-tb" v-if="selftype==='partner'"
               @click="goto('/sub_pages/partner/markup-config/markup-config',true)">
            <view class="nav row margin-tb function-item "
            v-if="(selftype === 'partner' && $hasPermission('partner:workbench:common:functions:markup:configuration'))"
               @click="goto('/sub_pages/partner/markup-config/markup-config', true)">
               <view class="img-c">
                  <image class="icon margin-bottom order-icon jjpz"
                     src="/static/images/partner/user/user-icon-jjpz.png" mode="scaleToFill" />
                     src="https://hmy-flower.oss-cn-shanghai.aliyuncs.com/93/93356ec339074b49b04c1a3a37146f22user-icon-jjpz.png"
                     mode="scaleToFill" />
               </view>
               <view class="order-desc tg">加价配置</view>
            </view>
            <view class="nav row margin-tb" @click="goto('/sub_pages/supplier/order-sale/order-sale',true)">
            <view class="nav row margin-tb function-item "
               v-if="(selftype === 'supplier' && $hasPermission('supplier:workbench:common:functions:after:sale:claim')) ||
               (selftype === 'partner' && $hasPermission('partner:workbench:common:functions:after:sale:claim') )"
               @click="goto('/pages/order/order-sale/order-sale', true)">
               <view class="img-c">
                  <image class="icon margin-bottom order-icon shlp"
                     src="/static/images/supplier/user/user-icon-shlp.png" mode="scaleToFill" />
                     src="https://hmy-flower.oss-cn-shanghai.aliyuncs.com/47/47b54c52e4c2430c8f9e91645fbf9ebduser-icon-shlp.png"
                     mode="scaleToFill" />
               </view>
               <view class="order-desc syst">售后理赔</view>
            </view>
            <!-- <view class="nav row margin-tb" @click="printDeliveryOrder">
            <!-- <view class="nav row margin-tb function-item " @click="printDeliveryOrder">
               <view class="img-c">
                  <image class="icon margin-bottom order-icon kkjl"
                     src="/static/images/supplier/user/user-icon-kkjl.png" mode="scaleToFill" />
                     src="https://hmy-flower.oss-cn-shanghai.aliyuncs.com/22/22db478554ec436a8c7e6e89c346767duser-icon-kkjl.png" mode="scaleToFill" />
               </view>
               <view class="order-desc wbsp">测试蓝牙</view>
            </view> -->
         <!-- </view>
         <view class="flex order-icons m-t-12"> -->
            <view class="nav row margin-tb function-item "
               v-if="(selftype === 'supplier' && $hasPermission('supplier:workbench:common:functions:my:wallet'))" @click="goto('/sub_pages/supplier/wallet/my-wallet', true)">
               <view class="img-c">
                  <image class="icon margin-bottom order-icon shlp"
                     src="https://hmy-flower.oss-cn-shanghai.aliyuncs.com/8d/8d72f2df8a4348ac90bfbfb553a9cc71qianbao.png"
                     mode="scaleToFill" />
               </view>
               <view class="order-desc syst">我的钱包</view>
            </view>
            <view class="nav row margin-tb function-item "
               v-if="(selftype === 'supplier' && $hasPermission('supplier:workbench:common:functions:sub:account'))"
               @click="goto('/sub_pages/supplier/sub-account/sub-account-list', true)">
               <view class="img-c">
                  <image class="icon margin-bottom order-icon shlp"
                     src="https://hmy-flower.oss-cn-shanghai.aliyuncs.com/56/56d1a93862a4470e9b4481b970fd6fc9子账号管理.png"
                     mode="scaleToFill" />
               </view>
               <view class="order-desc syst">子账号</view>
            </view>
            <!-- <view class="nav row margin-tb function-item "></view> -->
         </view>
      </view>
@@ -193,319 +293,340 @@
</template>
<script>
   export default {
      data() {
         return {
            CustomBar: uni.getStorageSync('CustomBar'),
            StatusBar: uni.getStorageSync('StatusBar'),
            tcode: '',
            inviterName: '',
            // StatusBar:0,
export default {
   data() {
      return {
         CustomBar: uni.getStorageSync('CustomBar'),
         StatusBar: uni.getStorageSync('StatusBar'),
         tcode: '',
         inviterName: '',
         // StatusBar:0,
            //公告的
            noticeList: [],
            currentNoticeIndex: 0,
            currentNotice: {
         //公告的
         noticeList: [],
         currentNoticeIndex: 0,
         currentNotice: {
            },
            scrollable: false,
            cacheUserId: '',
            tj: {}
         },
         scrollable: false,
         cacheUserId: '',
         tj: {}
         };
      },
      onShareAppMessage() {
         let that = this;
         var name = that.currentInfo.customerDTO && that.currentInfo.customerDTO.name || that.currentInfo.supplierDTO &&
            that.currentInfo.supplierDTO.name || that.currentInfo.partnerDTO && that.currentInfo.partnerDTO.name || ''
         var url =
            `/pages/login/supplier-login?shareId=${this.currentInfo&&this.currentInfo.id||''}&shareName=${name||''}`; //你的转发页面路径拼接参数
         return {
            title: "花满芫",
            path: url,
      };
   },
   onShareAppMessage() {
      let that = this;
      var name = that.currentInfo.customerDTO && that.currentInfo.customerDTO.name || that.currentInfo.supplierDTO &&
         that.currentInfo.supplierDTO.name || that.currentInfo.partnerDTO && that.currentInfo.partnerDTO.name || ''
      var url =
         `/pages/login/supplier-login?shareId=${this.currentInfo && this.currentInfo.id || ''}&shareName=${name || ''}`; //你的转发页面路径拼接参数
      return {
         title: "花满芫",
         path: url,
      }
   },
   onShareTimeline() {
      let that = this;
      var name = that.currentInfo.customerDTO && that.currentInfo.customerDTO.name || that.currentInfo.supplierDTO &&
         that.currentInfo.supplierDTO.name || that.currentInfo.partnerDTO && that.currentInfo.partnerDTO.name || ''
      var url =
         `/pages/login/supplier-login?shareId=${this.currentInfo && this.currentInfo.id || ''}&shareName=${name || ''}`; //你的转发页面路径拼接参数
      return {
         title: "花满芫",
         path: url,
      }
   },
   async onPullDownRefresh() {
      await this.$store.dispatch('getCurrentInfo')
      await this.getTj(true)
      uni.stopPullDownRefresh()
   },
   onLoad(options) {
      const url = options.q ? decodeURIComponent(options.q) : '';
      const urlcode = options.url && decodeURIComponent(options.url) || ''
   },
   onShow() {
      this.getTj(true)
   },
   created() {
      //公告
      var type = ''
      // #ifdef PUB_CUSTOMER
      type = 'customer'
      // #endif
      // #ifdef PUB_SUPPLIER
      type = 'supplier'
      // #endif
      // #ifdef PUB_PARTNER
      type = 'partner'
      // #endif
      this.$http.request('get', '/api/pub/announcement/list/' + type, {
         params: {
            size: 5,
            status: 'A'
         }
      },
      onShareTimeline() {
         let that = this;
         var name = that.currentInfo.customerDTO && that.currentInfo.customerDTO.name || that.currentInfo.supplierDTO &&
            that.currentInfo.supplierDTO.name || that.currentInfo.partnerDTO && that.currentInfo.partnerDTO.name || ''
         var url =
            `/pages/login/supplier-login?shareId=${this.currentInfo&&this.currentInfo.id||''}&shareName=${name||''}`; //你的转发页面路径拼接参数
         return {
            title: "花满芫",
            path: url,
         }
      },
      async onPullDownRefresh() {
         await this.$store.dispatch('getCurrentInfo')
         uni.stopPullDownRefresh()
      },
      onLoad(options) {
         const url = options.q ? decodeURIComponent(options.q) : '';
         const urlcode = options.url && decodeURIComponent(options.url) || ''
      },
      onShow() {
         this.getTj()
      },
      created() {
         //公告
         var type = ''
         // #ifdef PUB_CUSTOMER
         type = 'customer'
         // #endif
         // #ifdef PUB_SUPPLIER
         type = 'supplier'
         // #endif
         // #ifdef PUB_PARTNER
         type = 'partner'
         // #endif
         this.$http.request('get', '/api/pub/announcement/list/'+type, {
            params: {
               size: 5,
               status: 'A'
      }).then(res => {
         if (res.code == 0) {
            this.noticeList = (res.data && res.data || [])
            console.log('this.noticeList', this.noticeList)
            if (this.noticeList.length > 0) {
               this.currentNotice = this.noticeList[0]
               if (this.currentNotice.title && this.currentNotice.title.length >= 30) {
                  this.scrollable = true
               } else {
                  this.scrollable = false
               }
               let that = this
               // if (this.noticeList.length >= 1) {
               //    setInterval(() => {
               //       console.log('interval,1')
               //       that.currentNoticeIndex += 1
               //       that.currentNoticeIndex %= that.noticeList.length
               //       that.currentNotice = that.noticeList[that.currentNoticeIndex]
               //       that.scrollable = false
               //       that.$nextTick(() => {
               //          if (that.currentNotice.title && that.currentNotice.title
               //             .length >= 30) {
               //             that.scrollable = true
               //          } else {
               //             that.scrollable = false
               //          }
               //       })
               //    }, 8000)
               // }
            }
         }).then(res => {
            if (res.code == 0) {
               this.noticeList = (res.data && res.data.records || [])
               console.log('this.noticeList', this.noticeList)
               if (this.noticeList.length > 0) {
                  this.currentNotice = this.noticeList[0]
                  if (this.currentNotice.title && this.currentNotice.title.length >= 30) {
                     this.scrollable = true
                  } else {
                     this.scrollable = false
                  }
                  let that = this
                  // if (this.noticeList.length >= 1) {
                  //    setInterval(() => {
                  //       console.log('interval,1')
                  //       that.currentNoticeIndex += 1
                  //       that.currentNoticeIndex %= that.noticeList.length
                  //       that.currentNotice = that.noticeList[that.currentNoticeIndex]
                  //       that.scrollable = false
                  //       that.$nextTick(() => {
                  //          if (that.currentNotice.title && that.currentNotice.title
                  //             .length >= 30) {
                  //             that.scrollable = true
                  //          } else {
                  //             that.scrollable = false
                  //          }
                  //       })
         }
      })
                  //    }, 8000)
                  // }
   },
   methods: {
      switchSubAccount() {
         uni.navigateTo({
            url: '/sub_pages/supplier/sub-account/sub-account-switch-list'
         })
      },
      printDeliveryOrder(item) {
         //蓝牙打印
         var that = this;
         wx.getBluetoothAdapterState({
            success: (result) => {
               console.log('b s', result)
               console.log("蓝牙状态:\n" + result.errMsg)
               if (result.adapterState.available) {
                  if (result.adapterState.discovering) {
                     that.blueSearchDeviceCheck()
                  } else {
                     that.blueSearchDevice()
                  }
               } else {
                  //打开蓝牙
                  wx.openBluetoothAdapter({
                     success: function (res) {
                        console.log("蓝牙已打开")
                        that.blueSearchDevice()
                     },
                     fail: function (res) {
                        console.log('res', res)
                        that.$message.showToast('蓝牙未打开')
                     }
                  })
               }
            },
            fail: (res) => {
               console.log("蓝牙状态", res)
               that.$message.showToast('获取蓝牙状态失败')
            }
         })
      },
      blueSearchDevice() {
         var that = this;
         wx.startBluetoothDevicesDiscovery({
            success: (res) => {
               //打印调试日志
               console.log("搜索设备返回" + JSON.stringify(res))
               that.blueSearchDeviceCheck()
            },
            fail: (res) => {
               console.log('error search', res)
               that.$message.showToast('打开蓝牙搜索设备失败')
            }
         })
      },
      methods: {
         printDeliveryOrder(item) {
            //蓝牙打印
            var that = this;
            wx.getBluetoothAdapterState({
               success: (result) => {
                  console.log('b s', result)
                  console.log("蓝牙状态:\n" + result.errMsg)
                  if (result.adapterState.available) {
                     if (result.adapterState.discovering) {
                        that.blueSearchDeviceCheck()
                     } else {
                        that.blueSearchDevice()
                     }
      blueSearchDeviceCheck() {
         let that = this
         wx.getBluetoothDevices({
            success: (res) => {
               var printDevice = undefined
               for (var device of res.devices) {
                  if (device.name.indexOf('GP-M') >= 0) {
                     printDevice = device
                     // RSSI: -57
                     // advertisServiceUUIDs: Array(2)
                     // 0: "000018f0-0000-1000-8000-00805f9b34fb"
                     // 1: "e7810a71-73ae-499d-8c15-faa9aef0c3f2"
                     // length: 2
                     // nv_length: (...)
                     // __proto__: Array(0)
                     // deviceId: "89:E2:AF:33:46:2B"
                     // name: "GP-M322-5565_BLE"
                     break
                  } else {
                     //打开蓝牙
                     wx.openBluetoothAdapter({
                        success: function(res) {
                           console.log("蓝牙已打开")
                           that.blueSearchDevice()
                        },
                        fail: function(res) {
                           console.log('res', res)
                           that.$message.showToast('蓝牙未打开')
                        }
                     })
                  }
               },
               fail: (res) => {
                  console.log("蓝牙状态", res)
                  that.$message.showToast('获取蓝牙状态失败')
               }
            })
         },
         blueSearchDevice() {
            var that = this;
            wx.startBluetoothDevicesDiscovery({
               success: (res) => {
                  //打印调试日志
                  console.log("搜索设备返回" + JSON.stringify(res))
                  that.blueSearchDeviceCheck()
               },
               fail: (res) => {
                  console.log('error search', res)
                  that.$message.showToast('打开蓝牙搜索设备失败')
               }
            })
         },
         blueSearchDeviceCheck() {
            let that = this
            wx.getBluetoothDevices({
               success: (res) => {
                  var printDevice = undefined
                  for (var device of res.devices) {
                     if (device.name.indexOf('GP-M') >= 0) {
                        printDevice = device
                        // RSSI: -57
                        // advertisServiceUUIDs: Array(2)
                        // 0: "000018f0-0000-1000-8000-00805f9b34fb"
                        // 1: "e7810a71-73ae-499d-8c15-faa9aef0c3f2"
                        // length: 2
                        // nv_length: (...)
                        // __proto__: Array(0)
                        // deviceId: "89:E2:AF:33:46:2B"
                        // name: "GP-M322-5565_BLE"
                        break
                     } else {
                     }
                  }
                  if (!printDevice) {
                     that.$message.showToast('未找到可用打印机,请联系客服')
                     that.stopBluetoothDevicesDiscovery()
                  } else {
                     wx.createBLEConnection({
                        deviceId: printDevice.deviceId,
                        success: function(res) {
                           // https: //blog.csdn.net/weixin_51375107/article/details/116009436
                           console.log('连接设备返回:' + res.errMsg);
                           that.$message.showToast('连接设备返回:' + res.errMsg)
                           // escpos怎么来 →点击查看智谱清言的回答https://chatglm.cn/share/FEXaC
                        },
                        fail: function(res) {
                           console.log('createBLEConnection fail', res)
                           that.$message.showToast('连接打印机失败')
                        },
                        complete() {
                           that.stopBluetoothDevicesDiscovery()
                        }
                     })
                  }
                  // res.devices.forEach((device, i) => {
                  //    console.log('device',
                  //       device)
                  //    // if (device.deviceId == that.data
                  //    //    .deviceId) {
                  //    //    console.log("物联网设备已找到")
                  //    //    that.$message.showToast(
                  //    //       '打印设备已找到')
                  //    //    return;
                  //    // }
                  // })
               },
               fail: (res) => {
                  console.log('getBluetoothDevices',
                     res)
                  that.$message.showToast('获取蓝牙设备失败')
               }
            })
         },
         stopBluetoothDevicesDiscovery() {
            var that = this;
            wx.stopBluetoothDevicesDiscovery({
               success: (res) => {
                  console.log("停止扫描设备")
               },
            })
         },
         getTj() {
            // /api/supplier/delivery
            if (this.currentInfo.id && this.currentInfo.id !== this.cacheUserId) {
               this.cacheUserId = this.currentInfo.id
               let that = this
               setTimeout(() => {
                  //其他统计
                  // #ifdef PUB_SUPPLIER
                  this.$http.request('get', '/api/supplier/delivery/statistics', {}).then(res => {
                     if (res.code === 0) {
                        that.tj = res.data || {}
                     }
                  })
                  // #endif
                  // #ifdef PUB_PARTNER
                  this.$http.request('get', '/api/partner/order/statistics', {}).then(res => {
                     if (res.code === 0) {
                        that.tj = res.data || {}
                     }
                  })
                  // #endif
               }, 200)
            }
         },
         async toFlowManage() {
            if (!this.currentInfo.supplierDTO) {
               await this.$message.confirm('尚未入驻店铺信息,是否前往入驻?')
               this.goto('/sub_pages/supplier/supplier-info/supplier-info', true)
               return
            }
            if (this.currentInfo.supplierDTO) {
               //需要刷新一下当前用户信息
               this.$message.showLoading()
               await this.$store.dispatch('getCurrentInfo')
               this.$message.hideLoading()
               if (this.currentInfo.supplierDTO.status == 'P') {
               if (!printDevice) {
                  that.$message.showToast('未找到可用打印机,请联系客服')
                  that.stopBluetoothDevicesDiscovery()
               } else {
                  if (this.currentInfo.supplierDTO.status == 'R') {
                     await this.$message.confirm('店铺信息审核不通过,是否前往修改信息?')
                     this.goto('/sub_pages/supplier/supplier-info/supplier-info', true)
                     return
                  } else {
                     this.$message.showToast('审核中请耐心等待')
                     return
                  }
                  wx.createBLEConnection({
                     deviceId: printDevice.deviceId,
                     success: function (res) {
                        // https: //blog.csdn.net/weixin_51375107/article/details/116009436
                        console.log('连接设备返回:' + res.errMsg);
                        that.$message.showToast('连接设备返回:' + res.errMsg)
                        // escpos怎么来 →点击查看智谱清言的回答https://chatglm.cn/share/FEXaC
                     },
                     fail: function (res) {
                        console.log('createBLEConnection fail', res)
                        that.$message.showToast('连接打印机失败')
                     },
                     complete() {
                        that.stopBluetoothDevicesDiscovery()
                     }
                  })
               }
               // res.devices.forEach((device, i) => {
               //    console.log('device',
               //       device)
               //    // if (device.deviceId == that.data
               //    //    .deviceId) {
               //    //    console.log("物联网设备已找到")
               //    //    that.$message.showToast(
               //    //       '打印设备已找到')
               //    //    return;
               //    // }
               // })
            },
            fail: (res) => {
               console.log('getBluetoothDevices',
                  res)
               that.$message.showToast('获取蓝牙设备失败')
            }
            console.log('goto')
            this.goto('/sub_pages/supplier/flower-manage/flower-manage', true)
         },
         getNoticeMore() {
            uni.navigateTo({
               url: '/pages/notice/list?id=' + this.currentNotice.id
            })
         },
         })
      },
      stopBluetoothDevicesDiscovery() {
         var that = this;
         wx.stopBluetoothDevicesDiscovery({
            success: (res) => {
               console.log("停止扫描设备")
            },
         })
      },
      getTj(refresh = false) {
         // /api/supplier/delivery
         if (this.currentInfo.id && (this.currentInfo.id !== this.cacheUserId || refresh)) {
            this.cacheUserId = this.currentInfo.id
            let that = this
            setTimeout(() => {
               //其他统计
               // #ifdef PUB_SUPPLIER
               this.$http.request('get', '/api/supplier/delivery/statistics', {}).then(res => {
                  if (res.code === 0) {
                     that.tj = res.data || {}
                  }
               })
               // #endif
               // #ifdef PUB_PARTNER
               this.$http.request('get', '/api/partner/order/statistics', {}).then(res => {
                  if (res.code === 0) {
                     that.tj = res.data || {}
                  }
               })
               // #endif
            }, 200)
         }
      },
      async toFlowManage() {
         if (!this.currentInfo.supplierDTO) {
            await this.$message.confirm('尚未入驻店铺信息,是否前往入驻?')
            this.goto('/sub_pages/supplier/supplier-info/supplier-info', true)
            return
         }
         if (this.currentInfo.supplierDTO) {
            //需要刷新一下当前用户信息
            this.$message.showLoading()
            await this.$store.dispatch('getCurrentInfo')
            this.$message.hideLoading()
            if (this.currentInfo.supplierDTO.status == 'P') {
            } else {
               if (this.currentInfo.supplierDTO.status == 'R') {
                  await this.$message.confirm('店铺信息审核不通过,是否前往修改信息?')
                  this.goto('/sub_pages/supplier/supplier-info/supplier-info', true)
                  return
               } else {
                  this.$message.showToast('审核中请耐心等待')
                  return
               }
            }
         }
         console.log('goto')
         this.goto('/sub_pages/supplier/flower-manage/flower-manage', true)
      },
      getNoticeMore() {
         uni.navigateTo({
            url: '/pages/notice/list?id=' + this.currentNotice.id
         })
      },
      }
   }
}
</script>
<style lang="scss" scoped>
   @import "../user/user.scss";
@import "../user/user.scss";
   @import "./home.scss";
@import "./home.scss";
</style>
<style lang="scss" scoped>
<style lang="css" scoped>
.function-container {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-start;
}
.function-item {
  min-width: 25%;
  max-width: 25%;
  text-align: center;
  padding: 10px;
  box-sizing: border-box;
  margin-bottom: 10px;
}
</style>