| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013 |
- <template>
- <view>
- <block v-if="loginStyle == 0">
- <view class="login-page">
- <view class="login-hero">
- <image
- class="login-hero-bg"
- :src="constant.hostUrl + '/image//workbench-header-bg.webp'"
- mode="aspectFill"
- />
- <view class="login-hero-scrim"></view>
- <view class="status-space" :style="{ height: statusBarHeight + 'px' }"></view>
- <view class="login-hero-inner">
- <text class="login-hero-title">鑺辨帉鏌?/text>
- <text class="login-hero-desc">鐧诲綍鏌ョ湅鎴戠殑闂ㄥ簵</text>
- </view>
- </view>
- <view class="login-body">
- <!-- #ifdef MP-WEIXIN -->
- <view class="login-card">
- <view class="login-card-top">
- <view class="login-card-icon-wrap login-card-icon-wrap--buy">
- <image class="login-card-icon" :src="iconSrc('bouquet')" mode="aspectFit" />
- </view>
- <view class="login-card-main">
- <text class="login-card-title">涓汉涔拌姳</text>
- <text class="login-card-desc">璐拱鑺辨潗銆佽姳鏉熷拰缁挎</text>
- </view>
- </view>
- <button class="login-card-btn login-card-btn--outline" @click="buyItem">涔拌姳</button>
- </view>
- <!-- #endif -->
- <view class="login-card">
- <view class="login-card-top">
- <view class="login-card-icon-wrap login-card-icon-wrap--supply">
- <image class="login-card-icon" :src="iconSrc('procurement')" mode="aspectFit" />
- </view>
- <view class="login-card-main">
- <text class="login-card-title">鑺卞簵杩涜揣</text>
- <text class="login-card-desc">鑺卞簵涔拌姳鏉愩€侀噰璐拰绠$悊</text>
- </view>
- </view>
- <button
- class="login-card-btn login-card-btn--primary"
- @click="pageTo({ url: '/admin/home/login' })"
- >鐧诲綍</button>
- </view>
- <view class="login-register" @click="pageTo({ url: '/pagesClient/official/apply' })">
- <text class="login-register-tip">杩樻病鏈夎姳搴楄处鍙凤紵</text>
- <text class="login-register-link">鑺卞簵娉ㄥ唽</text>
- </view>
- </view>
- </view>
- </block>
- <block v-else>
- <view class="order-page">
- <view class="ghs_list_page flex-col">
- <view class="profile-section">
- <image class="workbench-header-bg" :src="constant.hostUrl + '/image//workbench-header-bg.webp'" mode="aspectFill"></image>
- <view class="status-safe-area" :style="{ height: statusBarHeight + 'px' }"></view>
- <view class="custom-nav">
- <text class="custom-nav-title">{{ workbenchTitle }}</text>
- </view>
- <!-- <view class="profile-header">
- <view class="avatar-container">
- <button class="avatar-button" open-type="chooseAvatar" @chooseavatar="onChooseAvatar">
- <image class="avatar" :src="shopAvatar()" mode="aspectFill" />
- </button>
- </view>
- <view class="user-info" @click="pageTo({ url: '/admin/home/edit' })">
- <text class="username">{{ (shopInfo && shopInfo.shopName == '棣栧簵') ? (shopInfo.merchantName || '') :
- (((shopInfo && shopInfo.merchantName) ? shopInfo.merchantName : '') + (shopInfo && shopInfo.shopName ?
- (' ' + shopInfo.shopName) : '')) }}</text>
- </view>
- </view> -->
- <view class="function-grid function-grid--overlay">
- <view class="function-item function-item--overlay"
- @click="pageTo({ url: '/admin/shop/add?id=' + loginInfo.shopId })">
- <image class="function-icon" :src="iconSrc('stock-my-address')" mode="aspectFit" />
- <text class="function-text function-text--overlay function-text--sm">鎴戠殑鍦板潃</text>
- </view>
- <view class="function-item function-item--overlay" @click="pageTo({ url: '/admin/stat/cgItem' })">
- <image class="function-icon" :src="iconSrc('stock-purchase-stats')" mode="aspectFit" />
- <text class="function-text function-text--overlay function-text--sm">閲囪喘缁熻</text>
- </view>
- <view class="function-item function-item--overlay" @click="goMore()">
- <image class="function-icon" :src="iconSrc('stock-deleted-wholesaler')" mode="aspectFit" />
- <text class="function-text function-text--overlay function-text--sm">宸插垹闂ㄥ簵</text>
- </view>
- <view class="function-item function-item--overlay" @click="goMore()">
- <image class="function-icon" :src="iconSrc('open-shop')" mode="aspectFit" />
- <text class="function-text function-text--overlay function-text--sm">鐢宠寮€搴?/text>
- </view>
- </view>
- </view>
- <!-- <view class="admin-contact-wrap">
- <view class="admin-contact-inner">
- <text class="admin-contact-name">{{ loginInfo.admin && loginInfo.admin.name ? loginInfo.admin.name : ''
- }}</text>
- <text class="admin-contact-divider">|</text>
- <text class="admin-contact-mobile">{{ loginInfo.admin && loginInfo.admin.mobile ? loginInfo.admin.mobile :
- '' }}</text>
- </view>
- </view> -->
- <view v-if="!$util.isEmpty(data.warning)" class="warning-banner">{{ data.warning }}</view>
- <template v-if="!$util.isEmpty(ad)">
- <block v-for="(adInfo, adIndex) in ad" :key="adIndex">
- <view class="ad-wrap" @click.stop="pageTo({ url: adInfo.url })">
- <image :src="adInfo.banner" mode="widthFix" class="ad-image"></image>
- </view>
- </block>
- </template>
- <template v-if="!$util.isEmpty(supplierList)">
- <view class="ghs_list_area flex-col justify-end">
- <view class="ghs_box flex-col justify-end" v-for="(ghsInfo, index) in supplierList" :key="index">
- <view class="image-text_7 flex-row justify-between">
- <view class="section_1 flex-col">
- <image class="logo" :src="ghsInfo.smallAvatar" />
- </view>
- <view class="text-group_7 flex-col justify-center">
- <text class="text_8">{{ ghsInfo.name }}</text>
- <view class="phone-line"
- v-if="!$util.isEmpty(ghsInfo.telephone) || !$util.isEmpty(ghsInfo.telephone2)"
- @click.stop="callUp(ghsInfo)">
- <image class="phone-icon" :src="iconSrc('stock-phone')" mode="aspectFit" />
- <text class="phone-text">
- <text v-if="!$util.isEmpty(ghsInfo.telephone)">{{ ghsInfo.telephone }}</text>
- </text>
- </view>
- <text class="text_9">
- <block v-if="ghsInfo.cutStyle && ghsInfo.cutStyle == 1">
- <block v-if="ghsInfo.meetNum > 0 || ghsInfo.meetAmount > 0">
- <text class="discount-highlight" v-if="ghsInfo.cutAmount > 0">
- 婊?text v-if="ghsInfo.meetNum > 0">{{ ghsInfo.meetNum ? ghsInfo.meetNum : 0 }}鎵?/text>
- <text v-if="ghsInfo.meetAmount > 0"><text
- v-if="ghsInfo.meetNum > 0">鍜?/text>{{ ghsInfo.meetAmount ? ghsInfo.meetAmount : 0 }}鍏?/text>{{ ghsInfo.cutAmount ? parseFloat(ghsInfo.cutAmount * 100).toString().replace(/0/g, '') : 0 }}鎶? </text>
- </block>
- </block>
- <block v-else>
- <block v-if="ghsInfo.meetNum > 0 || ghsInfo.meetAmount > 0">
- <text class="discount-highlight" v-if="ghsInfo.cutAmount > 0">
- 婊?text v-if="ghsInfo.meetNum > 0">{{ ghsInfo.meetNum ? ghsInfo.meetNum : 0 }}鎵?/text>
- <text v-if="ghsInfo.meetAmount > 0"><text
- v-if="ghsInfo.meetNum > 0">鍜?/text>{{ ghsInfo.meetAmount ? ghsInfo.meetAmount : 0 }}鍏?/text>浼樻儬{{ ghsInfo.cutAmount ? parseFloat(ghsInfo.cutAmount) : 0 }}鍏? </text>
- </block>
- </block>
- </text>
- <text class="text_distance" v-if="ghsInfo.distance && ghsInfo.distance > 0">{{ ghsInfo.distance >
- 1000 ? Math.round(Number(ghsInfo.distance) / 1000) + 'km' : ghsInfo.distance + 'm' }}</text>
- </view>
- </view>
- <view class="box_9">
- <view class="tag_2" @click="pageTo({ url: '/admin/ghs/debtChange?ghsId=' + ghsInfo.id })">
- <image class="tag-icon" :src="iconSrc('stock-debt-change')" mode="aspectFit" />
- <text>鎸傝处鍙樺姩</text>
- </view>
- <view class="tag_2" @click="pageTo({ url: '/admin/clear/list?ghsId=' + ghsInfo.id })">
- <image class="tag-icon" :src="iconSrc('stock-checkout-record')" mode="aspectFit" />
- <text>缁撹处璁板綍</text>
- </view>
- <view class="tag_2 tag_2--bought"
- @click.stop="pageTo({ url: '/pagesPurchase/shopping?ghsId=' + ghsInfo.id + '&ghsName=' + ghsInfo.name })">
- <image class="tag-icon" :src="iconSrc('stock-purchase-record')" mode="aspectFit" />
- <text>璐拱璁板綍</text>
- </view>
- <view class="tag_2 tag_2--share tag_2--highlight">
- <button open-type="share" :data-ghs="ghsInfo" class="share-button-mask"></button>
- <image class="tag-icon" :src="iconSrc('stock-share')" mode="aspectFit" />
- <text>鍒嗕韩鏈簵</text>
- </view>
- <view class="tag_2 tag_2--highlight" @click.stop="getMore(ghsInfo)">
- <image class="tag-icon" :src="iconSrc('stock-more-features')" mode="aspectFit" />
- <text>鏇村鍔熻兘</text>
- </view>
- </view>
- <view class="box_6 flex-row" @click="settleAccounts(ghsInfo)" v-if="Number(ghsInfo.debtAmount) > 0">
- <view class="show_clear_area flex-row justify-between">
- <text class="waite_clear_order">寰呯粨璁㈠崟 {{ ghsInfo.debtNum }}绗?鍚堣楼{{ ghsInfo.debtAmount ? parseFloat(ghsInfo.debtAmount) : 0 }}</text>
- <text class="clear-action" v-if="ghsInfo.remainDebtAmount > 0">閫夎鍗曠粨绠?></text>
- </view>
- </view>
- <block v-if="Number(ghsInfo.balance) > 0">
- <view class="box_6 box_6--blue flex-row" v-if="ghsInfo.remainDebtAmount > 0"
- @click.stop="recharge(ghsInfo)">
- <view class="show_clear_area flex-row justify-between">
- <text class="waite_clear_order waite_clear_order--blue">
- <text v-if="Number(ghsInfo.balance) > 0">鍑忓幓浣欓楼{{ ghsInfo.balance ? parseFloat(ghsInfo.balance) : 0
- }}</text>
- <text v-if="ghsInfo.remainDebtAmount > 0" class="ml-15">瀹炴瑺楼{{ ghsInfo.remainDebtAmount }}</text>
- </text>
- <text class="clear-action clear-action--blue">鎸夐噾棰濈粨绠?></text>
- </view>
- </view>
- <view class="box_6 box_6--blue flex-row" v-if="ghsInfo.remainDebtAmount < 0"
- @click.stop="recharge(ghsInfo)">
- <view class="show_clear_area flex-row justify-between">
- <text class="waite_clear_order waite_clear_order--blue">
- <text>璐︽埛浣欓楼{{ Math.abs(ghsInfo.remainDebtAmount) }}</text>
- </text>
- <text class="clear-action clear-action--blue">宸茬粨娓?/text>
- </view>
- </view>
- </block>
- <block v-if="ghsInfo.live == 1">
- <view class="button_7 flex-col" @click.stop="goKmCg(ghsInfo)"
- v-if="ghsInfo.openKmCg && ghsInfo.openKmCg == 1"><text class="text_13">鏄嗘槑鐩撮噰</text></view>
- <view class="button_4 flex-col" v-if="ghsInfo.isOpen == 1" @click="enterShop(ghsInfo)"><text
- class="text_13">璐拱</text></view>
- <view class="button_5 flex-col" v-else @click="enterShop(ghsInfo)"><text class="text_13">璐拱</text>
- </view>
- </block>
- <block v-else>
- <view class="button_6 flex-col" @click="fillCg(ghsInfo)"><text class="text_13">璐拱</text></view>
- </block>
- </view>
- </view>
- </template>
- <block v-else>
- <!-- 濡傛灉娌℃湁璇锋眰杩囨帴鍙o紝涓嶇‘瀹氳繖涓姳搴楋紝鏈夋病鎵瑰彂搴楋紝鏆傛椂涓嶆樉绀烘壘鎵瑰彂搴楃殑鍏ュ彛锛岄伩鍏嶅紩璧蜂簤璁?-->
- <block v-if="hasRequestApi == 0">
- <view class="location-empty-box">
- <view class="location-empty-title">鏆傛棤鎵瑰彂搴?/view>
- </view>
- </block>
- <block v-else>
- <view v-if="isWithinTwoDays" class="no-supplier-tip">闄勮繎鏆傛棤鎵瑰彂搴?/view>
- <block v-else>
- <view class="location-empty-box">
- <image class="location-empty-icon" :src="iconSrc('general-location')" mode="aspectFit" />
- <view class="location-empty-title">寮€鍚畾浣嶏紝鏌ョ湅闄勮繎鎵瑰彂搴?/view>
- <button class="location-empty-btn" @click="searchGhs()">寮€鍚?/button>
- </view>
- </block>
- </block>
- </block>
- <view class="support-entry" @click="toPhone()">
- <text>鍘﹂棬涓姳姹囨妧鏈敮鎸?<text class="support-divider">|</text> 鑱旂郴鍘﹂棬涓姳姹?/text>
- </view>
- </view>
- </view>
- </block>
- <uni-popup ref="toShowMore" background-color="#fff" type="center" :animation="true" class="class-popup-style">
- <view class="more-popup-list">
- <view class="more-popup-item"><button @click="rechargeChange()">鍏呭€艰褰?/button></view>
- <view class="more-popup-item"><button @click="balanceChange()">浣欓鍙樺姩</button></view>
- <view class="more-popup-item"><button @click="bpSj()">鍒犻櫎</button></view>
- <view class="more-popup-item more-popup-item--cancel"><button @click="closeToShow()">鍙栨秷</button></view>
- </view>
- </uni-popup>
- <!-- 澶氫緵璐у晢鎻愮ず寮规 -->
- <uni-popup ref="supplierNoticePopup" background-color="#fff" type="center" :animation="true"
- class="supplier-notice-popup">
- <view class="supplier-notice-container">
- <!-- 澶撮儴 -->
- <view class="supplier-notice-header">
- <text class="supplier-notice-title">鎮ㄥ凡鏈夊涓壒鍙戝簵</text>
- </view>
- <!-- 涓棿渚涜揣鍟嗗垪琛?-->
- <view class="supplier-notice-content">
- <view class="supplier-list">
- <view class="supplier-item" v-for="(supplier, index) in displayGhsList" :key="index">
- <view class="supplier-icon">馃彧</view>
- <text class="supplier-name">{{ supplier.name }}</text>
- </view>
- </view>
- </view>
- <!-- 搴曢儴鎻愮ず -->
- <view class="supplier-notice-footer">
- <text class="supplier-notice-tip">涔拌姳鏃舵敞鎰忓尯鍒嗭紝閬垮厤涓嬮敊锛侊紒</text>
- <view class="supplier-notice-buttons">
- <button class="admin-button-com default" @click="remindLater">涓嬫鎻愰啋</button>
- <button class="admin-button-com blue" @click="closeSupplierNotice">鐭ラ亾浜?/button>
- </view>
- </view>
- </view>
- </uni-popup>
- </view>
- </template>
- <script>
- import { mapGetters } from "vuex";
- import { getWeixinId } from "@/api/invite";
- import { consoleIndex } from "@/api/workbench";
- import autoUpdateMixins from "@/mixins/autoUpdate";
- import { ghsList } from "@/api/purchase";
- import { changeDelStatus, hasMoreGhs, searchNearbyGhs } from "@/api/ghs";
- import { currentShop, uploadShopAvatar } from "@/api/shop";
- import { hasNotice } from "@/api/admin";
- import { APIHOST } from "@/config";
- import permision from "@/utils/wa-permission_1.1/permission.js";
- import { iconSrc } from "@/utils/iconSrc";
- export default {
- name: "workbench",
- mixins: [autoUpdateMixins],
- data() {
- return {
- constant: this.$constant,
- ad: [],
- getappIdList: {},
- data: {
- admin: {},
- asset: {},
- notice: {},
- todayData: { income: 0.00, order: 0, custom: 0, expend: 0.00, visit: 0 },
- isMini: 0
- },
- supplierList: [],
- //鐧诲綍鐘舵€?0鏈櫥褰?1鐧诲綍浠呯敤鍒颁簡閲囪喘 2鐧诲綍鐢ㄥ埌瀹屾暣鍔熻兘
- loginStyle: 0,
- currentGhs: {},
- displayGhsList: [],// 鐢ㄤ簬鏄剧ず鍦ㄥ脊妗嗕腑鐨勪緵璐у晢鍒楄〃
- shopInfo: [],
- supplierSearchTime: 0, // 鏌ユ壘闄勮繎鎵瑰彂搴楁椂闂? hasRequestApi: 0,
- statusBarHeight: 0
- };
- },
- computed: {
- ...mapGetters({ loginInfo: "getLoginInfo" }),
- workbenchTitle() {
- if (this.shopInfo && this.shopInfo.shopName == '棣栧簵') {
- return this.shopInfo.merchantName || '杩涜揣'
- }
- const merchantName = (this.shopInfo && this.shopInfo.merchantName) ? this.shopInfo.merchantName : ''
- const shopName = (this.shopInfo && this.shopInfo.shopName) ? this.shopInfo.shopName : ''
- const title = merchantName + (shopName ? (' 路 ' + shopName) : '')
- return title || '杩涜揣'
- },
- isWithinTwoDays() {
- if (!this.supplierSearchTime) return false;
- const twoDays = 2 * 24 * 60 * 60 * 1000;
- return (Date.now() - this.supplierSearchTime) < twoDays;
- }
- },
- watch: {
- //鍙渶瑕侀噰璐姳鏉愮殑鑺卞簵涓嶆樉绀哄簳閮ㄨ彍鍗? loginInfo(newVal) {
- if (!this.$util.isEmpty(newVal.admin) && newVal.admin.currentShopId > 0) {
- this.handleLoginStyle()
- }
- }
- },
- onPullDownRefresh() {
- this.init();
- uni.stopPullDownRefresh();
- },
- onLoad() {
- try {
- const systemInfo = uni.getSystemInfoSync()
- this.statusBarHeight = systemInfo.statusBarHeight || 0
- } catch (e) {
- this.statusBarHeight = 0
- }
- getWeixinId().then(res => {
- this.getappIdList = res.data
- })
- },
- onShow() {
- this.supplierSearchTime = uni.getStorageSync('supplier_search_time') || 0;
- this.init();
- // 鍒ゆ柇鏄惁鐧诲綍
- if (!this.$util.isEmpty(this.loginInfo.admin) && this.loginInfo.admin.currentShopId > 0) {
- this.handleLoginStyle()
- //this.showShopName()
- }
- },
- onShareAppMessage(res) {
- if (res.from === 'button') {
- let ghsInfo = res.target.dataset.ghs
- let hdShopAdminId = this.loginInfo && this.loginInfo.shopAdminId ? this.loginInfo.shopAdminId : 0
- let ghsShopAdminId = ghsInfo.shopAdminId || 0
- let shopId = ghsInfo.shopId || 0
- let fromGhsId = ghsInfo.id || 0
- let fromCg = 1
- let path = `/pagesPurchase/ghsProduct?hdShopAdminId=${hdShopAdminId}&ghsShopAdminId=${ghsShopAdminId}&shopId=${shopId}&id=0&fromGhsId=${fromGhsId}&fromCg=${fromCg}`
- return {
- title: ghsInfo.name,
- desc: "",
- path: path,
- imageUrl: ghsInfo.avatar || ghsInfo.smallAvatar || ''
- }
- }
- return { title: "鑺辨帉鏌滐紝鑺卞簵绠″濠?, desc: "", imageUrl: "", path: "admin/home/workbench" }
- },
- methods: {
- iconSrc,
- onChooseAvatar(e) {
- if (this.loginInfo && this.loginInfo.staff && this.loginInfo.staff.founder != 2) {
- this.$msg('闂ㄥ簵LOGO璇疯€佹澘淇敼')
- return
- }
- if (e && e.detail && e.detail.avatarUrl) {
- let avatarUrl = e.detail.avatarUrl
- this.updateShopAvatar(avatarUrl)
- } else {
- this.$msg('鑾峰彇澶村儚澶辫触')
- }
- },
- updateShopAvatar(avatarUrl) {
- let token = uni.getStorageSync('token') || ''
- let url = APIHOST + '/upload/save-file'
- uni.uploadFile({
- url: url,
- filePath: avatarUrl,
- name: 'file',
- header: { token: token },
- formData: {},
- success: (res) => {
- try {
- const ret = JSON.parse(res.data)
- if (ret.code == 1) {
- this.shopInfo.avatar = ret.data.shortUrl
- this.$msg('澶村儚宸叉洿鏂?)
- uni.setStorageSync('shopAvatar', this.shopInfo.avatar)
- //璇峰悗绔紝涓婁紶鏂扮殑澶村儚鍦板潃锛屽悓姝ユ洿鏂皒hGhsCustom閲岄潰鐨勫ご鍍忓湴鍧€
- uploadShopAvatar({ id: this.shopInfo.id, avatar: ret.data.shortUrl }).then(res => {
- if (res.code == 1) {
- // this.$msg('澶村儚涓婁紶鎴愬姛')
- } else {
- // this.$msg(res.msg || '涓婁紶澶辫触')
- console.log(res.msg || '涓婁紶澶辫触')
- }
- })
- } else {
- this.$msg(ret.msg || '涓婁紶澶辫触')
- }
- } catch (err) {
- this.$msg('鏈嶅姟寮傚父')
- }
- },
- fail: () => {
- this.$msg('涓婁紶澶辫触')
- }
- })
- },
- shopAvatar() {
- const avatar = (this.shopInfo && this.shopInfo.avatar) ? this.shopInfo.avatar : '/default_avatar.png?x-oss-process=image/resize,m_fill,h_130,w_130'
- if (!avatar) {
- return ''
- }
- if (/^https?:\/\//i.test(avatar)) {
- return avatar
- }
- return this.$constant.imgUrl + (avatar.indexOf('/') === 0 ? avatar : ('/' + avatar))
- },
- buyItem() {
- let that = this
- // #ifdef MP-WEIXIN
- uni.navigateToMiniProgram({
- //濮滄灚-2021.04.13
- appId: that.getappIdList.mall.miniAppId,
- path: 'pages/home/recent',
- //develop 寮€鍙戠増 trial 浣撻獙鐗?release 姝e紡鐗? envVersion: process.env.NODE_ENV === 'development' ? 'develop' : 'release',
- extraData: {},
- success(res) {
- }
- })
- // #endif
- // #ifdef APP-PLUS
- that.$msg("璇风敤寰俊鎵撳紑")
- // #endif
- },
- init() {
- this.getGHSList()
- // #ifdef MP-WEIXIN
- this.isMini = 1
- // #endif
- consoleIndex({ isMini: this.isMini }).then(res => {
- this.data = res.data
- })
- this.showShopName()
- },
- handleLoginStyle() {
- this.loginStyle = 1
- this.toRemindCustom()
- },
- closeToShow() {
- this.$refs.toShowMore.close()
- },
- // 鏄剧ず渚涜揣鍟嗘彁绀哄脊妗? showSupplierNotice() {
- // 璁剧疆瑕佹樉绀虹殑渚涜揣鍟嗗垪琛紝鏈€澶氭樉绀?涓? this.displayGhsList = this.supplierList.filter(item => item.name).slice(0, 5)
- this.$refs.supplierNoticePopup.open('center')
- },
- // 鍏抽棴渚涜揣鍟嗘彁绀哄脊妗? closeSupplierNotice() {
- this.$refs.supplierNoticePopup.close()
- // 璋冪敤宸叉湁鐨勬帴鍙f爣璁板凡閫氱煡
- hasNotice().then(res => { })
- },
- // 涓嬫鎻愰啋
- remindLater() {
- this.$refs.supplierNoticePopup.close()
- // 涓嶈皟鐢╤asNotice鎺ュ彛锛屼繚鎸佹彁閱掔姸鎬? },
- getMore(info) {
- this.currentGhs = info
- this.$refs.toShowMore.open('center')
- },
- callUp(ghs) {
- let mobileList = []
- if (!this.$util.isEmpty(ghs.telephone)) {
- mobileList.push(ghs.telephone)
- }
- if (!this.$util.isEmpty(ghs.telephone2)) {
- mobileList.push(ghs.telephone2)
- }
- if (this.$util.isEmpty(mobileList)) {
- this.$msg('娌℃湁鑱旂郴鐢佃瘽')
- return false
- }
- uni.showActionSheet({
- itemList: mobileList,
- success: function (respond) {
- let currentIndex = respond.tapIndex
- let mobile = mobileList[currentIndex]
- uni.makePhoneCall({ phoneNumber: mobile })
- }
- })
- },
- toPhone() {
- this.$util.pageTo({ url: '/pagesPurchase/contact' })
- },
- showShopName() {
- currentShop().then(res => {
- if (res.code == 1) {
- this.shopInfo = res.data ? res.data : []
- if (this.shopInfo.avatar) {
- uni.setStorageSync('shopAvatar', this.shopInfo.avatar);
- } else {
- uni.setStorageSync('shopAvatar', '');
- }
- }
- })
- },
- goMore() {
- this.$util.pageTo({ url: '/pagesPurchase/pb' })
- },
- rechargeChange() {
- this.closeToShow()
- this.pageTo({ url: '/admin/ghs/rechargeChange?ghsId=' + this.currentGhs.id })
- },
- balanceChange() {
- this.closeToShow()
- this.pageTo({ url: '/admin/ghs/balanceChange?ghsId=' + this.currentGhs.id })
- },
- bpSj() {
- let that = this
- that.$util.confirmModal({ content: '纭鍒犻櫎锛熷垹闄ゅ悗浣犱笉鑳藉啀璺熸鎵瑰彂搴椾拱鑺憋紒锛侊紒锛?, okText: '纭' }, () => {
- that.confirmPb(that.currentGhs)
- })
- },
- recharge(currentGhs) {
- this.pageTo({ url: '/admin/ghs/pay?id=' + currentGhs.id + '&salt=' + currentGhs.salt })
- },
- confirmPb(ghs) {
- let that = this
- changeDelStatus({ delStatus: 1, ghsId: ghs.id }).then(res => {
- if (res.code == 1) {
- that.closeToShow()
- that.getGHSList()
- }
- })
- },
- fillCg(item) {
- this.pageTo({ url: '/pagesPurchase/addCg?ghsId=' + item.id + '&ghsName=' + item.name })
- },
- goKmCg(currentGhs) {
- let self = this
- // #ifdef MP-WEIXIN
- uni.navigateToMiniProgram({
- appId: currentGhs.kmCgAppId,
- path: currentGhs.kmCgUrl,
- //develop 寮€鍙戠増 trial 浣撻獙鐗?release 姝e紡鐗? envVersion: process.env.NODE_ENV === 'development' ? 'develop' : 'release',
- extraData: {},
- success(res) { }
- })
- // #endif
- // #ifdef APP-PLUS
- self.$msg('寮€鍙戜腑')
- // #endif
- },
- enterShop(item) {
- let that = this
- if (item.isOpen == 0) {
- this.$msg('宸蹭紤搴楋紝璇烽€夋嫨鍏跺畠闂ㄥ簵')
- return false
- }
- that.pageTo({ url: '/pagesPurchase/ghsProduct?id=' + item.id })
- },
- settleAccounts(item) {
- this.pageTo({ url: '/pagesPurchase/gathering?id=' + item.id })
- },
- getGHSList() {
- return ghsList().then(res => {
- this.supplierList = res.data.list
- this.ad = res.data.ad ? res.data.ad : []
- this.hasRequestApi = 1
- })
- },
- toRemindCustom() {
- if (this.loginStyle == 1) {
- hasMoreGhs().then(ret => {
- if (ret.data.needNotice == 1) {
- this.showSupplierNotice()
- }
- })
- }
- },
- async searchGhs() {
- console.log('searchGhs start')
- // #ifdef APP-PLUS
- // App 绔厛鏄惧紡鐢宠鏉冮檺锛岄伩鍏嶉儴鍒嗘満鍨?getLocation 鎸傝捣鏃犲洖璋? if (plus.os.name === 'Android') {
- const permissionRes = await permision.requestAndroidPermission('android.permission.ACCESS_FINE_LOCATION')
- if (permissionRes !== 1) {
- this.$msg('璇峰紑鍚畾浣嶆潈闄愬悗閲嶈瘯')
- if (permissionRes === -1) {
- permision.gotoAppPermissionSetting()
- }
- return
- }
- }
- if (!permision.checkSystemEnableLocation()) {
- this.$msg('璇峰厛寮€鍚郴缁熷畾浣嶆湇鍔?)
- return
- }
- // #endif
- let hasLocationCallback = false
- const timeoutTimer = setTimeout(() => {
- if (!hasLocationCallback) {
- console.log('getLocation timeout')
- this.$msg('瀹氫綅瓒呮椂锛岃纭绯荤粺瀹氫綅宸插紑鍚悗閲嶈瘯')
- }
- }, 5000)
- const handleLocationSuccess = (res, locationType) => {
- hasLocationCallback = true
- clearTimeout(timeoutTimer)
- console.log('getLocation success', locationType, res)
- searchNearbyGhs({
- locationType: locationType,
- lat: res.latitude,
- long: res.longitude
- }).then(ret => {
- if (ret.code == 1) {
- uni.setStorageSync('supplier_search_time', Date.now()) //璁剧疆缂撳瓨鏃堕棿--璁板綍褰撳墠鏌ユ壘闄勮繎鎵瑰彂搴楃殑鏃堕棿
- //閲嶆柊鍒锋柊鍒楄〃
- this.getGHSList()
- this.$msg('鏌ユ壘鎴愬姛')
- } else {
- this.$msg(ret.msg)
- }
- })
- }
- const requestLocation = (locationType) => {
- uni.getLocation({
- type: locationType,
- success: (res) => {
- handleLocationSuccess(res, locationType)
- },
- fail: (err) => {
- console.log('getLocation fail', locationType, err)
- // 閮ㄥ垎瀹夊崜鏈哄瀷涓嶆敮鎸?gcj02锛岃嚜鍔ㄩ檷绾у埌 wgs84 鍐嶈瘯涓€娆? if (locationType === 'gcj02' && (
- err.code == 18 ||
- err.errCode == 18 ||
- (err.errMsg && (
- err.errMsg.indexOf('not support gcj02') > -1 ||
- err.errMsg.indexOf('Not Support CoordsType') > -1
- ))
- )) {
- requestLocation('wgs84')
- return
- }
- hasLocationCallback = true
- clearTimeout(timeoutTimer)
- uni.showToast({ title: '瀹氫綅澶辫触锛岃妫€鏌ュ畾浣嶆潈闄?, icon: 'none' })
- },
- complete: () => {
- console.log('getLocation complete', locationType)
- }
- })
- }
- // iOS 鏈哄瀷鍦ㄩ儴鍒嗚繍琛岀幆澧冧笉鏀寔 gcj02锛岀洿鎺ヤ娇鐢?wgs84
- // #ifdef APP-PLUS
- if (plus.os.name === 'iOS') {
- requestLocation('wgs84')
- return
- }
- // #endif
- requestLocation('gcj02')
- }
- }
- };
- </script>
- <style lang="scss" scoped>
- .login-page {
- min-height: 100vh;
- display: flex;
- flex-direction: column;
- background: #f2f7f4;
- }
- .login-hero {
- position: relative;
- padding: 0 24upx 36upx;
- overflow: hidden;
- background: linear-gradient(180deg, #e8f5ed 0%, #ecf6f0 72%, #f2f7f4 100%);
- }
- .login-hero-bg {
- position: absolute;
- left: 0;
- top: 0;
- width: 100%;
- height: 360upx;
- z-index: 0;
- opacity: 0.55;
- }
- .login-hero-scrim {
- position: absolute;
- left: 0;
- right: 0;
- top: 0;
- height: 360upx;
- z-index: 1;
- background: linear-gradient(
- 180deg,
- rgba(255, 255, 255, 0.78) 0%,
- rgba(237, 248, 242, 0.52) 48%,
- rgba(255, 255, 255, 0) 100%
- );
- pointer-events: none;
- }
- .status-space {
- position: relative;
- z-index: 2;
- width: 100%;
- }
- .login-hero-inner {
- position: relative;
- z-index: 2;
- padding: 56upx 8upx 0;
- }
- .login-hero-title {
- display: block;
- color: #161819;
- font-size: 58upx;
- font-weight: 700;
- line-height: 60upx;
- text-shadow:
- 0 0 12upx rgba(255, 255, 255, 0.92),
- 0 2upx 6upx rgba(255, 255, 255, 0.75);
- }
- .login-hero-desc {
- display: block;
- margin-top: 14upx;
- color: #192129;
- font-size: 34upx;
- line-height: 44upx;
- }
- .login-body {
- flex: 1;
- padding: 28upx 24upx 64upx;
- }
- .login-card {
- display: flex;
- flex-direction: column;
- align-items: stretch;
- padding: 36upx 32upx 32upx;
- background: #fff;
- border-radius: 24upx;
- box-shadow: 0 8upx 24upx rgba(9, 197, 103, 0.08);
- }
- .login-card + .login-card {
- margin-top: 36upx;
- }
- .login-card-top {
- display: flex;
- flex-direction: row;
- align-items: center;
- min-width: 0;
- }
- .login-card-icon-wrap {
- width: 104upx;
- height: 104upx;
- border-radius: 26upx;
- display: flex;
- align-items: center;
- justify-content: center;
- flex-shrink: 0;
- }
- .login-card-icon-wrap--buy {
- background: linear-gradient(135deg, #fff4e8 0%, #ffe8d6 100%);
- }
- .login-card-icon-wrap--supply {
- background: linear-gradient(135deg, #e8f8f0 0%, #d4f0e2 100%);
- }
- .login-card-icon {
- width: 56upx;
- height: 56upx;
- }
- .login-card-main {
- flex: 1;
- min-width: 0;
- margin-left: 24upx;
- }
- .login-card-title {
- display: block;
- color: #161819;
- font-size: 38upx;
- font-weight: 700;
- line-height: 48upx;
- }
- .login-card-desc {
- display: block;
- margin-top: 12upx;
- color: #8a9199;
- font-size: 30upx;
- line-height: 40upx;
- }
- .login-card-btn {
- width: 100%;
- margin: 36upx 0 0;
- padding: 0;
- min-width: 0;
- height: 101upx;
- line-height: 101upx;
- font-size: 38upx;
- font-weight: 600;
- border-radius: 40upx;
- text-align: center;
- border: none;
- color: #fff;
- background: #09c567;
- }
- .login-card-btn::after {
- border: none;
- }
- .login-card-btn--primary,
- .login-card-btn--outline {
- color: #fff;
- background: #09c567;
- }
- .login-register {
- display: flex;
- flex-direction: row;
- align-items: center;
- justify-content: center;
- margin-top: 56upx;
- }
- .login-register-tip {
- color: #8a9199;
- font-size: 40upx;
- line-height: 44upx;
- }
- .login-register-link {
- margin-left: 8upx;
- color: #09c567;
- font-size: 40upx;
- line-height: 44upx;
- font-weight: 600;
- }
- .order-page {
- .ghs_list_page {
- background-color: rgba(255, 255, 255, 1);
- position: relative;
- width: 750upx;
- overflow: hidden;
- .profile-section {
- background-color: #09C567;
- padding: 30upx 30upx 0upx 30upx;
- border-radius: 0;
- .profile-header {
- display: flex;
- align-items: center;
- .avatar-container {
- width: 50upx;
- height: 50upx;
- border-radius: 50upx;
- overflow: hidden;
- background-color: rgba(255, 255, 255, 0.2);
- border: 1upx solid #ffffff;
- display: flex;
- align-items: center;
- justify-content: center;
- .avatar-button {
- background: none !important;
- border: none !important;
- padding: 0 !important;
- margin: 0 !important;
- line-height: 1;
- display: flex;
- align-items: center;
- justify-content: center;
- width: 50upx;
- height: 50upx;
- color: transparent !important;
- &::after {
- border: none !important;
- }
- }
- .avatar {
- width: 50upx;
- height: 50upx;
- border-radius: 50upx;
- }
- }
- .user-info {
- flex: 1;
- margin-left: 10upx;
- display: flex;
- align-items: center;
- .username {
- display: block;
- font-size: 40upx;
- font-weight: bold;
- color: #ffffff;
- line-height: 1;
- }
- .user-id {
- display: block;
- margin-top: 6upx;
- font-size: 26upx;
- color: #ffffff;
- }
- }
- .more-icon {
- margin-left: 12upx;
- width: 60upx;
- height: 60upx;
- border-radius: 30upx;
- align-items: center;
- justify-content: center;
- display: flex;
- }
- }
- }
- .flex-col {
- display: flex;
- flex-direction: column;
- }
- .flex-row {
- display: flex;
- flex-direction: row;
- }
- .justify-end {
- display: flex;
- justify-content: flex-end;
- }
- .justify-between {
- display: flex;
- justify-content: space-between;
- }
- .ghs_list_area {
- width: 750upx;
- background-color: #ece5e5;
- .ghs_box {
- background-color: rgba(255, 255, 255, 1);
- position: relative;
- width: 750upx;
- height: auto;
- margin-bottom: 35upx;
- .more-btn {
- position: absolute;
- top: 20upx;
- right: 20upx;
- width: 40upx;
- height: 40upx;
- display: flex;
- align-items: center;
- justify-content: center;
- border-radius: 20upx;
- background: rgba(0, 0, 0, 0.05);
- .more-icon {
- font-size: 24upx;
- color: #666;
- font-weight: bold;
- }
- }
- .image-text_7 {
- width: 674upx;
- height: 120upx;
- margin: 40upx 0 0 31upx;
- .section_1 {
- width: 120upx;
- height: 120upx;
- .logo {
- width: 120upx;
- height: 120upx;
- border-radius: 10upx;
- }
- }
- .text-group_7 {
- width: 533upx;
- min-height: 99upx;
- height: auto;
- margin-top: 5upx;
- justify-content: center;
- .text_8 {
- display: inline-block;
- width: 550upx;
- height: 38upx;
- color: rgba(51, 51, 51, 1);
- font-size: 36upx;
- font-weight: bold;
- text-align: left;
- white-space: nowrap;
- line-height: 38upx;
- overflow: hidden;
- margin-bottom: 12upx;
- }
- .text_9 {
- width: 533upx;
- height: 25upx;
- overflow-wrap: break-word;
- color: rgba(153, 153, 153, 1);
- font-size: 30upx;
- text-align: left;
- white-space: nowrap;
- line-height: 25upx;
- margin-bottom: 10upx;
- }
- .text_distance {
- font-size: 26upx;
- color: #666;
- line-height: 24upx;
- }
- }
- }
- .box_4 {
- background-color: rgba(238, 238, 238, 1);
- width: 750upx;
- height: 1upx;
- margin-top: 40upx;
- }
- .box_9 {
- width: calc(100% - 30upx);
- height: auto;
- margin: 23upx 15upx 22upx 15upx;
- display: flex;
- flex-wrap: wrap;
- align-items: stretch;
- overflow: visible;
- position: relative;
- .tag_2 {
- background-color: rgba(255, 255, 255, 1);
- border-radius: 8px;
- height: 80upx;
- border: 2px solid rgba(221, 221, 221, 1);
- color: rgba(51, 51, 51, 1);
- font-size: 28upx;
- margin: 0 7upx 15upx 0;
- text-align: center;
- width: calc((100% - 28upx) / 5);
- padding: 0 4upx;
- box-sizing: border-box;
- display: flex;
- align-items: center;
- justify-content: center;
- &:nth-child(5n) {
- margin-right: 0;
- }
- text {
- display: block;
- width: 100%;
- font-size: 28upx;
- line-height: 1.2;
- white-space: nowrap;
- overflow: hidden;
- text-overflow: ellipsis;
- }
- }
- .tag_2--share {
- padding-left: 2upx;
- padding-right: 2upx;
- position: relative;
- }
- .tag_2--highlight {
- color: #09C567;
- border-color: #09C567;
- font-weight: bold;
- }
- .share-button-mask {
- position: absolute;
- top: 0;
- left: 0;
- width: 100%;
- height: 100%;
- opacity: 0;
- z-index: 10;
- }
- }
- .box_6 {
- background-color: rgb(248, 242, 242);
- width: 750upx;
- height: 95upx;
- .show_clear_area {
- width: 247upx;
- height: 29upx;
- margin: 26upx 0 0 30upx;
- .waite_clear_order {
- width: 214upx;
- height: 29upx;
- overflow-wrap: break-word;
- color: rgba(255, 40, 66, 1);
- font-size: 31upx;
- font-weight: bold;
- text-align: left;
- white-space: nowrap;
- line-height: 29upx;
- }
- .waite_clear_order--blue {
- color: #3385ff;
- }
- .ml-15 {
- margin-left: 15upx;
- }
- .ml-30 {
- margin-left: 30upx;
- }
- }
- }
- .button_4 {
- height: 92upx;
- line-height: 92upx;
- text-align: center;
- background-color: #09C567;
- background-size: 137upx 137upx;
- width: 130upx;
- position: absolute;
- left: 570upx;
- top: 110upx;
- border-radius: 39upx;
- .text_13 {
- color: rgba(255, 255, 255, 1);
- font-size: 30upx;
- font-weight: bold;
- }
- }
- .button_5 {
- height: 92upx;
- line-height: 92upx;
- text-align: center;
- background-color: #CCCCCC;
- background-size: 137upx 137upx;
- width: 130upx;
- position: absolute;
- left: 570upx;
- top: 110upx;
- border-radius: 39upx;
- .text_13 {
- color: rgba(255, 255, 255, 1);
- font-size: 30upx;
- font-weight: bold;
- }
- }
- .button_6 {
- height: 92upx;
- line-height: 92upx;
- text-align: center;
- background-color: rgb(152, 153, 197);
- background-size: 137upx 137upx;
- width: 170upx;
- position: absolute;
- left: 540upx;
- top: 110upx;
- border-radius: 39upx;
- .text_13 {
- color: rgba(255, 255, 255, 1);
- font-size: 30upx;
- font-weight: bold;
- }
- }
- .button_7 {
- height: 92upx;
- line-height: 92upx;
- text-align: center;
- background-color: #09C567;
- background-size: 137upx 137upx;
- width: 180upx;
- position: absolute;
- left: 330upx;
- top: 95upx;
- border-radius: 39upx;
- .text_13 {
- color: rgba(255, 255, 255, 1);
- font-size: 30upx;
- font-weight: bold;
- }
- }
- }
- }
- }
- }
- .admin-contact-wrap {
- text-align: center;
- font-size: 28upx;
- color: #666;
- padding: 16upx 30upx;
- margin: 0 20upx;
- background: #fff;
- border-radius: 30upx;
- }
- .admin-contact-inner {
- display: inline-flex;
- align-items: center;
- background: #fff;
- padding: 10upx 25upx;
- border-radius: 20upx;
- box-shadow: 0 2upx 8upx rgba(0, 0, 0, 0.05);
- }
- .admin-contact-name {
- color: #333;
- font-weight: 500;
- font-size: 28upx;
- }
- .admin-contact-divider {
- margin: 0 15upx;
- color: #eee;
- }
- .admin-contact-mobile {
- color: #666;
- font-size: 28upx;
- }
- .ad-wrap {
- text-align: center;
- }
- .ad-image {
- width: 97%;
- margin: 0 auto;
- }
- .discount-highlight {
- color: red;
- font-weight: bold;
- }
- .no-supplier-tip {
- margin: 60upx auto 40upx auto;
- font-weight: bold;
- font-size: 36upx;
- text-align: center;
- color: #999;
- }
- .location-empty-box {
- display: flex;
- flex-direction: column;
- align-items: center;
- margin-top: 100upx;
- margin-bottom: 100upx;
- }
- .location-empty-title {
- font-size: 36upx;
- color: #999;
- font-weight: bold;
- margin-bottom: 40upx;
- }
- .location-empty-btn {
- background-color: #09C567;
- color: #fff;
- width: 240upx;
- border-radius: 10upx;
- }
- .support-entry {
- text-align: center;
- margin-top: 20upx;
- margin-bottom: 50upx;
- color: #827171;
- font-size: 32upx;
- }
- .support-divider {
- margin: 0 20upx 0 20upx;
- }
- .more-popup-list {
- display: flex;
- width: 100vw;
- padding: 20upx 20upx 40upx 20upx;
- height: auto;
- justify-content: space-between;
- align-items: center;
- flex-wrap: wrap;
- max-height: 100vh;
- overflow: auto;
- }
- .more-popup-item {
- width: 100vw;
- margin-top: 8upx;
- }
- .more-popup-item--cancel {
- margin-top: 30upx;
- }
- /* 渚涜揣鍟嗘彁绀哄脊妗嗘牱寮?*/
- .supplier-notice-popup {
- .supplier-notice-container {
- width: 650upx;
- background-color: #fff;
- border-radius: 20upx;
- overflow: hidden;
- .supplier-notice-header {
- padding: 40upx 30upx 20upx;
- text-align: center;
- background-color: #f8f9fa;
- border-bottom: 1upx solid #e9ecef;
- .supplier-notice-title {
- font-size: 36upx;
- font-weight: bold;
- color: #333;
- }
- }
- .supplier-notice-content {
- padding: 20upx 0;
- .supplier-list {
- padding: 0 30upx;
- .supplier-item {
- display: flex;
- align-items: center;
- padding: 20upx 0;
- border-bottom: 1upx solid #f0f0f0;
- &:last-child {
- border-bottom: none;
- }
- .supplier-icon {
- width: 60upx;
- height: 60upx;
- background-color: #e3f2fd;
- border-radius: 50%;
- display: flex;
- align-items: center;
- justify-content: center;
- font-size: 32upx;
- margin-right: 20upx;
- }
- .supplier-name {
- font-size: 32upx;
- color: #333;
- flex: 1;
- font-weight: 500;
- }
- }
- }
- }
- .supplier-notice-footer {
- padding: 30upx;
- text-align: center;
- background-color: #f8f9fa;
- border-top: 1upx solid #e9ecef;
- .supplier-notice-tip {
- display: block;
- font-size: 42upx;
- font-weight: bold;
- color: red;
- margin-bottom: 30upx;
- line-height: 1.4;
- }
- .supplier-notice-buttons {
- display: flex;
- justify-content: space-between;
- .admin-button-com+.admin-button-com {
- margin-left: 20upx;
- }
- .admin-button-com {
- flex: 1;
- margin: 0;
- padding: 20upx 0;
- height: auto;
- line-height: normal;
- font-size: 34upx;
- font-weight: bold;
- }
- }
- }
- }
- }
- .warning-banner {
- background-color: #ff6b6b;
- border-radius: 8upx;
- margin: 0upx 10upx 20upx 10upx;
- padding: 20upx 24upx;
- color: #ffffff;
- font-size: 32upx;
- font-weight: 600;
- text-align: center;
- line-height: 1.4;
- }
- /* New workbench visual style */
- .order-page {
- min-height: 100vh;
- background: #f5f7f6;
- }
- .order-page .ghs_list_page {
- width: 750upx;
- min-height: 100vh;
- overflow: hidden;
- background: #f5f7f6;
- }
- .order-page .ghs_list_page .profile-section {
- position: relative;
- padding: 0 24upx 4upx;
- overflow: hidden;
- background: linear-gradient(180deg, rgba(255, 255, 255, 0.08) 0%, rgba(255, 255, 255, 0.24) 58%, rgba(245, 247, 246, 0.58) 100%);
- }
- .order-page .ghs_list_page .profile-section::before {
- content: "";
- position: absolute;
- left: 0;
- right: 0;
- top: 0;
- height: 280upx;
- z-index: 1;
- background: linear-gradient(
- 180deg,
- rgba(255, 255, 255, 0.78) 0%,
- rgba(237, 248, 242, 0.52) 48%,
- rgba(255, 255, 255, 0) 100%
- );
- pointer-events: none;
- }
- .workbench-header-bg {
- position: absolute;
- left: 0;
- top: 0;
- width: 100%;
- height: 300upx;
- z-index: 0;
- }
- .order-page .ghs_list_page .profile-section::after {
- content: "";
- position: absolute;
- left: 0;
- right: 0;
- top: 252upx;
- height: 150upx;
- z-index: 1;
- background: linear-gradient(180deg, rgba(245, 247, 246, 0) 0%, rgba(245, 247, 246, 0.62) 100%);
- pointer-events: none;
- }
- .status-safe-area,
- .custom-nav,
- .profile-header,
- .function-grid--overlay {
- position: relative;
- z-index: 2;
- }
- .custom-nav {
- position: relative;
- height: 145upx;
- display: flex;
- align-items: center;
- justify-content: center;
- padding-top: 65upx;
- box-sizing: border-box;
- }
- .custom-nav-title {
- max-width: 560upx;
- color: #161819;
- font-size: 50upx;
- font-weight: 700;
- line-height: 48upx;
- text-align: center;
- text-shadow:
- 0 0 12upx rgba(255, 255, 255, 0.92),
- 0 2upx 6upx rgba(255, 255, 255, 0.75);
- overflow: hidden;
- white-space: nowrap;
- text-overflow: ellipsis;
- }
- .order-page .ghs_list_page .profile-section .profile-header {
- min-height: 78upx;
- justify-content: center;
- }
- .order-page .ghs_list_page .profile-section .profile-header .avatar-container {
- width: 72upx;
- height: 72upx;
- border-radius: 50%;
- border: 4upx solid rgba(255, 255, 255, 0.95);
- background: #fff;
- box-shadow: 0 8upx 22upx rgba(9, 197, 103, 0.18);
- }
- .order-page .ghs_list_page .profile-section .profile-header .avatar-container .avatar-button {
- width: 72upx;
- height: 72upx;
- border-radius: 50%;
- }
- .order-page .ghs_list_page .profile-section .profile-header .avatar-container .avatar {
- width: 72upx;
- height: 72upx;
- border-radius: 50%;
- }
- .order-page .ghs_list_page .profile-section .profile-header .user-info {
- flex: 0 1 auto;
- max-width: 540upx;
- margin-left: 18upx;
- }
- .order-page .ghs_list_page .profile-section .profile-header .user-info .username {
- color: #161819;
- font-size: 34upx;
- line-height: 42upx;
- overflow: hidden;
- white-space: nowrap;
- text-overflow: ellipsis;
- }
- .order-page .ghs_list_page .profile-section .function-grid--overlay {
- margin-top: 10upx;
- min-height: 166upx;
- padding: 30upx 12upx 24upx;
- border-radius: 26upx;
- background: #f5f7f6;
- box-shadow: 0 14upx 34upx rgba(42, 75, 55, 0.13);
- display: flex;
- align-items: center;
- justify-content: space-around;
- box-sizing: border-box;
- }
- .order-page .ghs_list_page .profile-section .function-item--overlay {
- flex: 1;
- padding: 0;
- border: 0;
- background: transparent;
- display: flex;
- flex-direction: column;
- align-items: center;
- justify-content: center;
- }
- .order-page .ghs_list_page .profile-section .function-item--overlay+.function-item--overlay {
- margin-left: 0;
- }
- .order-page .ghs_list_page .profile-section .function-text--overlay {
- margin-top: 14upx;
- color: #202325;
- font-size: 29upx;
- line-height: 36upx;
- background-color: transparent;
- }
- .admin-contact-wrap {
- margin: 20upx 24upx 0;
- padding: 18upx 24upx;
- border-radius: 22upx;
- background: #fff;
- box-shadow: 0 10upx 26upx rgba(31, 46, 37, 0.06);
- }
- .admin-contact-inner {
- width: 100%;
- padding: 0;
- box-shadow: none;
- justify-content: center;
- }
- .warning-banner {
- margin: 22upx 24upx 0;
- padding: 22upx 28upx;
- border-radius: 20upx;
- background: linear-gradient(90deg, #ff393f 0%, #ff4d4f 100%);
- box-shadow: 0 10upx 22upx rgba(255, 57, 63, 0.18);
- color: #fff;
- font-size: 30upx;
- font-weight: 700;
- }
- .ad-wrap {
- margin: 22upx 24upx 0;
- overflow: hidden;
- border-radius: 20upx;
- }
- .ad-image {
- display: block;
- width: 100%;
- margin: 0;
- }
- .order-page .ghs_list_page .ghs_list_area {
- width: 750upx;
- padding: 24upx 0 12upx;
- background: #f5f7f6;
- }
- .order-page .ghs_list_page .ghs_list_area .ghs_box {
- width: 702upx;
- margin: 0 24upx 24upx;
- padding: 24upx 24upx 26upx;
- box-sizing: border-box;
- border-radius: 24upx;
- background: #fff;
- box-shadow: 0 10upx 28upx rgba(24, 37, 30, 0.08);
- }
- .order-page .ghs_list_page .ghs_list_area .ghs_box .image-text_7 {
- width: 100%;
- min-height: 116upx;
- height: auto;
- margin: 0;
- align-items: center;
- justify-content: flex-start;
- padding-right: 178upx;
- box-sizing: border-box;
- }
- .order-page .ghs_list_page .ghs_list_area .ghs_box .image-text_7 .section_1 {
- width: 112upx;
- height: 112upx;
- flex-shrink: 0;
- }
- .order-page .ghs_list_page .ghs_list_area .ghs_box .image-text_7 .section_1 .logo {
- width: 112upx;
- height: 112upx;
- border-radius: 50%;
- background: #eaf8ef;
- }
- .order-page .ghs_list_page .ghs_list_area .ghs_box .image-text_7 .text-group_7 {
- flex: 1;
- width: auto;
- min-width: 0;
- min-height: 100upx;
- margin: 0 0 0 24upx;
- }
- .order-page .ghs_list_page .ghs_list_area .ghs_box .image-text_7 .text-group_7 .text_8 {
- width: 100%;
- height: auto;
- margin-bottom: 10upx;
- color: #171a1d;
- font-size: 36upx;
- line-height: 44upx;
- font-weight: 700;
- }
- .phone-line {
- width: 100%;
- min-height: 34upx;
- display: flex;
- align-items: center;
- margin-bottom:10upx;
- }
- .phone-text {
- flex: 1;
- min-width: 0;
- margin-left: 10upx;
- color: #252a2d;
- font-size: 28upx;
- line-height: 32upx;
- white-space: nowrap;
- }
- .order-page .ghs_list_page .ghs_list_area .ghs_box .image-text_7 .text-group_7 .text_9 {
- width: 100%;
- height: auto;
- min-height: 28upx;
- margin-bottom: 6upx;
- color: #7e8782;
- font-size: 24upx;
- line-height: 30upx;
- }
- .order-page .ghs_list_page .ghs_list_area .ghs_box .image-text_7 .text-group_7 .text_distance {
- color: #7e8782;
- font-size: 24upx;
- line-height: 30upx;
- }
- .order-page .ghs_list_page .ghs_list_area .ghs_box .box_4 {
- display: none;
- }
- .order-page .ghs_list_page .ghs_list_area .ghs_box .button_4,
- .order-page .ghs_list_page .ghs_list_area .ghs_box .button_5,
- .order-page .ghs_list_page .ghs_list_area .ghs_box .button_6,
- .order-page .ghs_list_page .ghs_list_area .ghs_box .button_7 {
- top: 48upx;
- left: auto;
- right: 28upx;
- width: 142upx;
- height: 76upx;
- line-height: 76upx;
- border-radius: 999upx;
- box-shadow: 0 8upx 18upx rgba(9, 197, 103, 0.22);
- }
- .order-page .ghs_list_page .ghs_list_area .ghs_box .button_4,
- .order-page .ghs_list_page .ghs_list_area .ghs_box .button_7 {
- background: linear-gradient(135deg, #16d66d 0%, #08b858 100%);
- }
- .order-page .ghs_list_page .ghs_list_area .ghs_box .button_5 {
- background: #c9d0cd;
- box-shadow: none;
- }
- .order-page .ghs_list_page .ghs_list_area .ghs_box .button_6 {
- background: linear-gradient(135deg, #65c690 0%, #35aa69 100%);
- }
- .order-page .ghs_list_page .ghs_list_area .ghs_box .button_7 {
- right: 182upx;
- width: 156upx;
- }
- .order-page .ghs_list_page .ghs_list_area .ghs_box .button_4 .text_13,
- .order-page .ghs_list_page .ghs_list_area .ghs_box .button_5 .text_13,
- .order-page .ghs_list_page .ghs_list_area .ghs_box .button_6 .text_13,
- .order-page .ghs_list_page .ghs_list_area .ghs_box .button_7 .text_13 {
- color: #fff;
- font-size: 28upx;
- font-weight: 700;
- }
- .order-page .ghs_list_page .ghs_list_area .ghs_box .box_9 {
- width: 100%;
- margin: 30upx 0 8upx;
- display: flex;
- flex-wrap: nowrap;
- justify-content: space-between;
- overflow: visible;
- }
- .order-page .ghs_list_page .ghs_list_area .ghs_box .box_9 .tag_2 {
- width: 120upx;
- height: 140upx;
- margin: 0;
- padding: 15upx 4upx;
- border: 1upx solid #dbeee3;
- border-radius: 10upx;
- background: #fbfffd;
- color: #1f2523;
- box-sizing: border-box;
- display: flex;
- flex-direction: column;
- align-items: center;
- justify-content: center;
- }
- .order-page .ghs_list_page .ghs_list_area .ghs_box .box_9 .tag_2 text {
- width: 100%;
- margin-top: 13upx;
- color: #1f2523;
- font-size: 24upx;
- line-height: 30upx;
- text-align: center;
- }
- .order-page .ghs_list_page .ghs_list_area .ghs_box .box_9 .tag_2--highlight {
- color: #09c567;
- border-color: #d2efdd;
- font-weight: 400;
- }
- .order-page .ghs_list_page .ghs_list_area .ghs_box .box_9 .tag_2--highlight text {
- color: #1f2523;
- }
- .order-page .ghs_list_page .ghs_list_area .ghs_box .box_6 {
- width: 100%;
- height: auto;
- min-height: 72upx;
- margin-top: 18upx;
- border-radius: 12upx;
- background: #fff1f1;
- }
- .order-page .ghs_list_page .ghs_list_area .ghs_box .box_6--blue {
- background: #edf6ff;
- }
- .order-page .ghs_list_page .ghs_list_area .ghs_box .box_6 .show_clear_area {
- width: 100%;
- height: auto;
- min-height: 72upx;
- margin: 0;
- padding: 0 18upx;
- box-sizing: border-box;
- align-items: center;
- flex-wrap: nowrap;
- }
- .order-page .ghs_list_page .ghs_list_area .ghs_box .box_6 .show_clear_area .waite_clear_order {
- flex: 1;
- width: auto;
- height: auto;
- color: #f50e24;
- font-size: 30upx;
- line-height: 38upx;
- font-weight: 700;
- white-space: nowrap;
- overflow: hidden;
- text-overflow: ellipsis;
- }
- .clear-action {
- flex-shrink: 0;
- margin-left: 18upx;
- color: #f50e24;
- font-size: 26upx;
- line-height: 34upx;
- font-weight: 700;
- white-space: nowrap;
- }
- .order-page .ghs_list_page .ghs_list_area .ghs_box .box_6 .show_clear_area .waite_clear_order--blue,
- .clear-action--blue {
- color: #1677ff;
- }
- .location-empty-box {
- width: 702upx;
- margin: 40upx 24upx 80upx;
- padding: 70upx 24upx;
- box-sizing: border-box;
- border-radius: 24upx;
- background: #fff;
- box-shadow: 0 10upx 28upx rgba(24, 37, 30, 0.06);
- }
- .location-empty-title {
- color: #77817c;
- font-size: 32upx;
- }
- .location-empty-btn {
- margin-top: 22upx;
- background: #09c567;
- color: #fff;
- border-radius: 999upx;
- }
- .no-supplier-tip {
- width: 702upx;
- margin: 40upx 24upx 80upx;
- padding: 70upx 24upx;
- box-sizing: border-box;
- border-radius: 24upx;
- background: #fff;
- color: #77817c;
- font-size: 32upx;
- box-shadow: 0 10upx 28upx rgba(24, 37, 30, 0.06);
- }
- .function-icon,
- .phone-icon,
- .tag-icon,
- .location-empty-icon {
- display: block;
- flex-shrink: 0;
- }
- .function-icon {
- width: 58upx;
- height: 58upx;
- }
- .phone-icon {
- width: 28upx;
- height: 28upx;
- }
- .tag-icon {
- width: 50upx;
- height: 50upx;
- }
- .location-empty-icon {
- width: 40upx;
- height: 40upx;
- margin-bottom: 24upx;
- }
- </style>
|