| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942294329442945294629472948294929502951295229532954295529562957295829592960296129622963296429652966296729682969297029712972297329742975297629772978297929802981298229832984298529862987298829892990299129922993299429952996299729982999300030013002300330043005300630073008300930103011301230133014301530163017301830193020302130223023302430253026302730283029303030313032303330343035303630373038303930403041304230433044304530463047304830493050305130523053305430553056305730583059306030613062306330643065306630673068306930703071307230733074307530763077307830793080308130823083308430853086308730883089309030913092309330943095309630973098309931003101310231033104310531063107310831093110311131123113311431153116311731183119312031213122 |
- import 'dart:convert';
- import 'dart:io';
- import 'dart:math' as math;
- import 'package:amap_flutter_base/amap_flutter_base.dart';
- import 'package:bbyyy/beans/ad_bean_entity.dart';
- import 'package:bbyyy/beans/android_app_version_bean_entity.dart';
- import 'package:bbyyy/beans/flow_bean_entity.dart';
- import 'package:bbyyy/beans/goods_bean_entity.dart';
- import 'package:bbyyy/beans/my_shop_bean_entity.dart';
- import 'package:bbyyy/beans/smart_order_bean_entity.dart';
- import 'package:bbyyy/beans/store_bean_entity.dart';
- import 'package:bbyyy/beans/user_bean_entity.dart';
- import 'package:bbyyy/beans/user_vp_bean_entity.dart';
- import 'package:bbyyy/https/MyDio.dart';
- import 'package:bbyyy/https/my_request.dart';
- import 'package:bbyyy/https/url.dart';
- import 'package:bbyyy/my_tools/easy_loading/easy_loading.dart';
- import 'package:bbyyy/my_tools/event_bus.dart';
- import 'package:bbyyy/my_tools/global.dart';
- import 'package:bbyyy/my_tools/my_colors.dart';
- import 'package:bbyyy/my_tools/my_cookie.dart';
- import 'package:bbyyy/my_tools/my_tools.dart';
- import 'package:bbyyy/my_tools/providers.dart';
- import 'package:bbyyy/my_tools/role_permissions.dart';
- import 'package:bbyyy/paegs/gang_page/application_details_page/application_details_page.dart';
- import 'package:bbyyy/paegs/gang_page/gang_in_page/gang_in_page.dart';
- import 'package:bbyyy/paegs/mine_page/order_page/apply_for_compensation_page/apply_for_compensation_page.dart';
- import 'package:bbyyy/paegs/mine_page/privacy_protection_props_page/privacy_protection_props_page.dart';
- import 'package:bbyyy/paegs/pay_page/order_information_page.dart';
- import 'package:bbyyy/paegs/product_details_page/product_details_page.dart';
- import 'package:bbyyy/paegs/release_goods_page/release_goods_page.dart';
- import 'package:cached_network_image/cached_network_image.dart';
- import 'package:dio/dio.dart';
- import 'package:flustars/flustars.dart';
- import 'package:flutter/cupertino.dart';
- import 'package:flutter/material.dart';
- import 'package:flutter/services.dart';
- import 'package:flutter_svg/svg.dart';
- import 'package:install_plugin/install_plugin.dart';
- import 'package:launch_review/launch_review.dart';
- import 'package:lpinyin/lpinyin.dart';
- import 'package:path_provider/path_provider.dart';
- import 'package:provider/provider.dart';
- import '../beans/complain_bean_entity.dart';
- import '../paegs/ad_details_page/ad_details_page.dart';
- import '../paegs/other_people_s_turnover_page/other_people_s_turnover_page.dart';
- import 'const.dart';
- import 'dims.dart';
- import 'map_util.dart';
- class MyViews {
- Widget netImg(String path, double h, double w,
- {String placeholder = 'images/svg/缺省头像.svg'}) {
- return CachedNetworkImage(
- imageUrl: path,
- height: h,
- width: w,
- memCacheHeight: (h.floor())*2,
- memCacheWidth: (w.floor())*2,
- fit: BoxFit.cover,
- placeholder: (context, url) => SvgPicture.asset(
- placeholder,
- fit: BoxFit.cover,
- height: h,
- width: w,
- ),
- errorWidget: (context, url, error) => SvgPicture.asset(
- placeholder,
- height: h,
- fit: BoxFit.cover,
- width: w,
- ),
- );
- }
- Widget myText(String content, Color color, double fs, {double height = 1.4}) {
- return Text(
- content,
- style: TextStyle(color: color, fontSize: fs, height: height),
- );
- }
- Widget myAppBar(String title, BuildContext context, List<Widget> rW) {
- return Container(
- color: Colors.white,
- child: SafeArea(
- bottom: false,
- child: Container(
- height: 45,
- width: double.infinity,
- color: Colors.white,
- child: Stack(
- children: [
- Text(
- title,
- style: TextStyle(color: MyColors.c333333, fontSize: 16),
- ),
- Positioned(
- left: 0,
- child: GestureDetector(
- onTap: () {
- Navigator.pop(context);
- },
- behavior: HitTestBehavior.translucent,
- child: Transform.rotate(
- angle: math.pi,
- child: Padding(
- padding: EdgeInsets.only(
- left: 16, right: 16, top: 8, bottom: 8),
- child: SvgPicture.asset(
- 'images/svg/箭头.svg',
- color: MyColors.c333333,
- height: 14,
- ),
- ),
- ),
- ),
- ),
- Row(
- children: rW,
- mainAxisAlignment: MainAxisAlignment.end,
- )
- ],
- alignment: Alignment.center,
- ),
- ),
- ),
- );
- }
- Widget getGoodsItem(var data, BuildContext context) {
- double w = (MediaQuery.of(context).size.width - 28 - 8) / 2;
- if (data is GoodsBeanDataData) {
- return GestureDetector(
- onTap: () {
- MyTools().toPage(context, ProductDetailsPage(data), (then) {});
- },
- behavior: HitTestBehavior.translucent,
- child: Card(
- elevation: 2,
- shadowColor: MyColors.c21333333,
- child: Column(
- children: [
- Padding(
- padding: EdgeInsets.only(left: 6, top: 6, bottom: 3),
- child: Row(
- children: [
- ClipRRect(
- child: MyViews().netImg(imgURL(data.shopPic), 20, 20),
- borderRadius: BorderRadius.all(Radius.circular(10)),
- ),
- Expanded(
- child: Container(
- margin: EdgeInsets.only(right: 5, left: 5),
- child: Text(
- data.shopName,
- style: TextStyle(
- color: MyColors.c999999,
- fontSize: 10,
- ),
- maxLines: 1,
- overflow: TextOverflow.ellipsis,
- softWrap: true,
- ),
- ),
- ),
- // Container(
- // decoration: BoxDecoration(
- // borderRadius: BorderRadius.only(
- // topLeft: Radius.circular(7),
- // bottomLeft: Radius.circular(7),
- // ),
- // color: data.onSale ? MyColors.cFF4233 : MyColors.cADD358,
- // ),
- // height: 14,
- // width: 28,
- // child: Text(
- // data.onSale ? '找货' : '有货',
- // style: TextStyle(color: Colors.white, fontSize: 8),
- // ),
- // alignment: Alignment.center,
- // padding: EdgeInsets.only(bottom: 0.8),
- // )
- ],
- ),
- ),
- MyViews().netImg(imgURL(data.coverPath), w, w,
- placeholder: 'images/svg/goodsDefImg.svg'),
- Container(
- padding: EdgeInsets.only(right: 6, left: 6, top: 8),
- child: Text(
- '${data.title}\n${data.description}',
- style: TextStyle(color: Colors.black, fontSize: 12),
- maxLines: 1,
- overflow: TextOverflow.ellipsis,
- softWrap: true,
- ),
- ),
- Container(
- padding: EdgeInsets.only(right: 6, left: 6, top: 7),
- child: Row(
- children: [
- Expanded(
- child: Text(
- '¥${data.price}',
- style: TextStyle(color: MyColors.cFF4233, fontSize: 15),
- ),
- ),
- Container(
- child: Text(
- '详情',
- style: TextStyle(color: MyColors.cFF4233, fontSize: 12),
- ),
- alignment: Alignment.center,
- padding: EdgeInsets.only(bottom: 2),
- decoration: BoxDecoration(
- border: Border.all(color: MyColors.cFF4233, width: 1),
- borderRadius: BorderRadius.all(Radius.circular(10))),
- height: 20,
- width: 50,
- )
- ],
- ),
- )
- ],
- crossAxisAlignment: CrossAxisAlignment.start,
- ),
- ),
- );
- } else if (data is AdBeanDataData) {
- return GestureDetector(
- onTap: () {
- MyTools().toPage(context, AdDetailsPage(data), (then) {});
- },
- behavior: HitTestBehavior.translucent,
- child: Card(
- elevation: 2,
- shadowColor: MyColors.c21333333,
- child: Column(
- children: [
- Padding(
- padding: EdgeInsets.only(left: 6, top: 6, bottom: 3),
- child: Row(
- children: [
- ClipRRect(
- child: Container(
- height: 20,
- ),
- borderRadius: BorderRadius.all(Radius.circular(10)),
- ),
- Expanded(
- child: Container(
- margin: EdgeInsets.only(right: 5, left: 5),
- child: Text(
- '',
- style: TextStyle(
- color: MyColors.c999999,
- fontSize: 10,
- ),
- maxLines: 1,
- overflow: TextOverflow.ellipsis,
- softWrap: true,
- ),
- ),
- ),
- ],
- ),
- ),
- MyViews().netImg(imgURL(data.coverPath), w, w,
- placeholder: 'images/svg/goodsDefImg.svg'),
- Container(
- padding: EdgeInsets.only(right: 6, left: 6, top: 8),
- child: Text(
- '${data.title}\n${data.description}',
- style: TextStyle(color: Colors.black, fontSize: 12),
- maxLines: 1,
- overflow: TextOverflow.ellipsis,
- softWrap: true,
- ),
- ),
- Container(
- padding: EdgeInsets.only(right: 6, top: 7),
- child: Row(
- children: [
- Container(
- decoration: BoxDecoration(
- color: MyColors.cADD358,
- borderRadius: BorderRadius.only(
- topRight: Radius.circular(8),
- bottomRight: Radius.circular(8),
- ),
- ),
- height: 16,
- width: 32,
- child: myText('推广', Colors.white, 9),
- alignment: Alignment.center,
- ),
- Container(
- child: Text(
- '详情',
- style: TextStyle(color: MyColors.cFF4233, fontSize: 12),
- ),
- alignment: Alignment.center,
- padding: EdgeInsets.only(bottom: 2),
- decoration: BoxDecoration(
- border: Border.all(color: MyColors.cFF4233, width: 1),
- borderRadius: BorderRadius.all(Radius.circular(10))),
- height: 20,
- width: 50,
- )
- ],
- mainAxisAlignment: MainAxisAlignment.spaceBetween,
- ),
- )
- ],
- crossAxisAlignment: CrossAxisAlignment.start,
- ),
- ),
- );
- }
- }
- //我的订单、店铺订单item
- Widget getNoPayGoodsItem(SmartOrderBeanDataData data, BuildContext context,
- int ownerUid, int role) {
- return Container(
- margin: EdgeInsets.only(bottom: 10),
- decoration: BoxDecoration(
- color: Colors.white,
- borderRadius: BorderRadius.all(
- Radius.circular(4),
- ),
- ),
- child: Column(
- children: [
- Container(
- margin: EdgeInsets.only(left: 10, top: 16),
- child: Row(
- children: [
- ClipRRect(
- child: data.type == orderTypeAnnualFee || data.sellerUid == 0
- ? Image.asset(
- 'images/app_logo.png',
- height: 25,
- width: 25,
- )
- : MyViews().netImg(imgURL(data.sellerPic), 25, 25),
- borderRadius: BorderRadius.all(Radius.circular(12.5)),
- ),
- Container(
- margin: EdgeInsets.only(right: 5, left: 5),
- child: Text(
- data.type == orderTypeAnnualFee || data.sellerUid == 0
- ? '$appName'
- : '${data.sellerName}(${hideUID(data.sellerUid.toString())})',
- style: TextStyle(
- color: MyColors.c333333,
- fontSize: 14,
- ),
- maxLines: 1,
- overflow: TextOverflow.ellipsis,
- softWrap: true,
- ),
- ),
- ],
- ),
- ),
- Container(
- height: 0.5,
- color: MyColors.cE7E7E7,
- margin: EdgeInsets.only(left: 10, right: 10, top: 11, bottom: 11),
- ),
- orderStyle(data),
- Container(
- height: 0.5,
- color: MyColors.cE7E7E7,
- margin: EdgeInsets.only(left: 10, right: 10, top: 11, bottom: 11),
- ),
- Container(
- padding: EdgeInsets.only(left: 10, right: 10, bottom: 11),
- child: Row(
- children: [
- Text(
- '下单时间:${data.createTime}',
- style: TextStyle(color: MyColors.c666666, fontSize: 11),
- ),
- GestureDetector(
- onTap: () {
- if (data.buyerName.contains(MyCookie().getName()) ||
- MyCookie().getName().contains(data.buyerName) ||
- paymentAuthority(role)) {
- MyTools().toPage(
- context,
- OrderInformationPage(
- false,
- orderType: data.type,
- amount: data.amount,
- uid: data.uid,
- buyerUid: data.buyerUid,
- buyerName: data.buyerName,
- buyerPic: data.buyerPic,
- commodityCount: data.commodityCount,
- commodityTitle: data.commodityTitle,
- commodityCover: data.commodityCover,
- sellName: data.sellerName,
- sellPic: data.sellerPic,
- sellUid: data.sellerUid,
- ), (then) {
- if (then is int) {
- EventBus().emit('刷新未付订单');
- }
- });
- // showPayDialog(data, context, () {
- // Navigator.pop(context);
- //
- // // MyTools().toPage(context,
- // // PayPage(data.uid, false, data.amount), (then) {});
- // });
- } else {
- showToast('该订单与你无关');
- }
- },
- behavior: HitTestBehavior.translucent,
- child: Visibility(
- visible: data.state == orderStateUnpaid &&
- data.sellerUid != MyCookie().getUID(),
- child: Container(
- height: 26,
- width: 70,
- decoration: BoxDecoration(
- color: MyColors.cFF4233,
- borderRadius: BorderRadius.all(Radius.circular(13))),
- child: Text(
- '去支付',
- style: TextStyle(color: Colors.white, fontSize: 12),
- ),
- alignment: Alignment.center,
- padding: EdgeInsets.only(bottom: 2),
- ),
- ),
- )
- ],
- mainAxisAlignment: MainAxisAlignment.spaceBetween,
- ),
- )
- ],
- ),
- );
- }
- Widget getMembersItem(MyShopBeanDataData data, BuildContext context) {
- return Column(
- children: [
- ClipRRect(
- child: netImg(imgURL(data.userPic), 40, 40),
- borderRadius: BorderRadius.all(Radius.circular(20)),
- ),
- Container(
- child: Text(
- data.userName,
- style: TextStyle(
- color: MyColors.c666666,
- fontSize: 12,
- ),
- maxLines: 1,
- overflow: TextOverflow.ellipsis,
- softWrap: true,
- ),
- margin: EdgeInsets.only(top: 8),
- )
- ],
- );
- }
- Widget getUserItem(UserBeanDataData data, BuildContext context) {
- return Container(
- padding: EdgeInsets.only(left: 15, right: 15),
- color: Colors.white,
- child: Column(
- children: [
- Container(
- margin: EdgeInsets.only(top: 8, bottom: 6),
- child: Row(
- children: [
- Container(
- margin: EdgeInsets.only(right: 6),
- child: ClipRRect(
- child: netImg(imgURL(data.picture), 42, 42),
- borderRadius: BorderRadius.circular(21),
- ),
- ),
- myText('${data.name} (${data.uid})', MyColors.c333333, 15),
- Expanded(
- child: Container(
- child: GestureDetector(
- onTap: () {
- EventBus().emit('addMember', data);
- },
- behavior: HitTestBehavior.translucent,
- child: Container(
- decoration: BoxDecoration(
- border: Border.all(color: MyColors.cFF4233, width: 1),
- borderRadius: BorderRadius.circular(14),
- ),
- height: 28,
- width: 70,
- child: myText('邀请入帮', MyColors.cFF4233, 12),
- alignment: Alignment.center,
- ),
- ),
- alignment: Alignment.centerRight,
- ),
- ),
- ],
- ),
- ),
- Container(
- height: 0.5,
- color: MyColors.cE7E7E7,
- )
- ],
- ),
- );
- }
- Widget getRemoveMemberItem(MyShopBeanDataData data, BuildContext context) {
- return Container(
- padding: EdgeInsets.only(left: 15, right: 15),
- color: Colors.white,
- child: Column(
- children: [
- Container(
- margin: EdgeInsets.only(top: 8, bottom: 6),
- child: Row(
- children: [
- Container(
- margin: EdgeInsets.only(right: 6),
- child: ClipRRect(
- child: netImg(imgURL(data.userPic), 42, 42),
- borderRadius: BorderRadius.circular(21),
- ),
- ),
- myText(
- '${data.userName} (${data.userUid})', MyColors.c333333, 15),
- Expanded(
- child: Container(
- child: GestureDetector(
- onTap: () {
- EventBus().emit('removeMember', data);
- },
- behavior: HitTestBehavior.translucent,
- child: Container(
- decoration: BoxDecoration(
- border: Border.all(color: MyColors.cFF4233, width: 1),
- borderRadius: BorderRadius.circular(14),
- ),
- height: 28,
- width: 70,
- child: myText('移除成员', MyColors.cFF4233, 12),
- alignment: Alignment.center,
- ),
- ),
- alignment: Alignment.centerRight,
- ),
- ),
- ],
- ),
- ),
- Container(
- height: 0.5,
- color: MyColors.cE7E7E7,
- )
- ],
- ),
- );
- }
- Widget getWalletItem(FlowBeanDataDataRecords flow, BuildContext context) {
- return Container(
- padding: EdgeInsets.symmetric(horizontal: 15),
- child: Column(
- children: [
- Row(
- children: [
- Container(
- child: ClipRRect(
- child: flow.traderUid == 0
- ? Image.asset(
- 'images/app_logo.png',
- width: 50,
- height: 50,
- )
- : MyViews().netImg(imgURL(flow.traderPic), 50, 50),
- borderRadius: BorderRadius.all(Radius.circular(25)),
- ),
- margin: EdgeInsets.only(right: 12),
- ),
- Expanded(
- child: Column(
- children: [
- Row(
- children: [
- Expanded(
- child: Text(
- flow.traderUid == 0 ? '平台' : flow.traderName,
- style: TextStyle(
- color: MyColors.c333333, fontSize: 14),
- maxLines: 1,
- overflow: TextOverflow.ellipsis,
- softWrap: true,
- ),
- ),
- Text(
- '${flow.paidAmount.toStringAsFixed(2)}',
- style: TextStyle(
- color: flow.paidAmount > 0
- ? MyColors.cff3646
- : MyColors.c237C02,
- fontSize: 15,
- fontWeight: FontWeight.bold),
- ),
- ],
- mainAxisAlignment: MainAxisAlignment.spaceBetween,
- ),
- Row(
- children: [
- Text(
- flow.traderUid == 0
- ? ""
- : 'ID:${hideUID(flow.traderUid.toString())}',
- style:
- TextStyle(color: MyColors.c666666, fontSize: 12),
- ),
- Text(
- flow.payTime,
- style:
- TextStyle(color: MyColors.c666666, fontSize: 11),
- ),
- ],
- mainAxisAlignment: MainAxisAlignment.spaceBetween,
- ),
- Row(
- children: [
- Text(
- // '${flowType(flow.type)}${flow.type==flowTypeWithdraw?'(${flow.remark})':''}',
- '${flow.remark}',
- style:
- TextStyle(color: MyColors.c666666, fontSize: 12),
- ),
- Text(
- '${flow.userBalance.toStringAsFixed(2)}',
- style:
- TextStyle(color: MyColors.c666666, fontSize: 11),
- ),
- ],
- mainAxisAlignment: MainAxisAlignment.spaceBetween,
- )
- ],
- ),
- )
- ],
- ),
- Container(
- color: MyColors.cE7E7E7,
- height: 0.5,
- margin: EdgeInsets.only(top: 14, bottom: 12),
- )
- ],
- ),
- );
- }
- Widget getMyGoodsItem(GoodsBeanDataData data, BuildContext context) {
- return Container(
- padding: EdgeInsets.only(left: 8, right: 8, bottom: 7, top: 18),
- decoration: BoxDecoration(
- color: Colors.white,
- borderRadius: BorderRadius.all(
- Radius.circular(4),
- ),
- ),
- margin: EdgeInsets.only(left: 10, right: 10, bottom: 10),
- child: Column(
- children: [
- Row(
- children: [
- ClipRRect(
- child: MyViews().netImg(imgURL(data.shopPic), 25, 25),
- borderRadius: BorderRadius.circular(12.5),
- ),
- Container(
- margin: EdgeInsets.only(left: 10),
- child: Text(
- data.shopName,
- style: TextStyle(color: MyColors.c333333, fontSize: 14),
- ),
- ),
- ],
- ),
- Container(
- height: 0.5,
- color: MyColors.cE7E7E7,
- margin: EdgeInsets.only(top: 14),
- ),
- Row(
- children: [
- Container(
- child: MyViews().netImg(imgURL(data.coverPath), 84, 82,
- placeholder: 'images/svg/goodsDefImg.svg'),
- margin: EdgeInsets.only(right: 8, top: 11, bottom: 11),
- ),
- Expanded(
- child: Container(
- child: Column(
- children: [
- Text(
- '${data.title}\n${data.description}',
- style: TextStyle(color: MyColors.c333333, fontSize: 13),
- ),
- Row(
- children: [
- Text(
- '¥${data.price}',
- style: TextStyle(
- color: MyColors.cFF4233, fontSize: 12),
- ),
- Row(
- children: [
- GestureDetector(
- onTap: () {
- MyDio().update({
- 'key': 'commodity',
- 'values': {
- 'id': data.id,
- 'on_sale': !data.onSale,
- }
- }, (response, hasError) {
- if (!hasError) {
- EventBus().emit('updateProduct');
- }
- }, (error) {});
- },
- behavior: HitTestBehavior.translucent,
- child: Container(
- margin: EdgeInsets.only(left: 10),
- child: Text(
- data.onSale ? '下架' : '上架',
- style: TextStyle(
- color: data.onSale
- ? MyColors.c999999
- : MyColors.cFF4233,
- fontSize: 12),
- ),
- alignment: Alignment.center,
- decoration: BoxDecoration(
- color: Colors.white,
- borderRadius: BorderRadius.circular(13),
- border: Border.all(
- color: data.onSale
- ? MyColors.c999999
- : MyColors.cFF4233,
- width: 1)),
- height: 26,
- width: 70,
- ),
- ),
- GestureDetector(
- onTap: () {
- MyTools().toPage(
- context, ReleaseGoodsPage(data, ''),
- (then) {
- EventBus().emit('updateProduct');
- });
- },
- behavior: HitTestBehavior.translucent,
- child: Container(
- margin: EdgeInsets.only(left: 10),
- child: Text(
- '修改',
- style: TextStyle(
- color: Colors.white, fontSize: 12),
- ),
- alignment: Alignment.center,
- decoration: BoxDecoration(
- color: MyColors.cFF4233,
- borderRadius: BorderRadius.circular(13)),
- height: 26,
- width: 70,
- ),
- ),
- ],
- )
- ],
- mainAxisAlignment: MainAxisAlignment.spaceBetween,
- )
- ],
- mainAxisAlignment: MainAxisAlignment.spaceBetween,
- crossAxisAlignment: CrossAxisAlignment.start,
- ),
- height: 84,
- ),
- )
- ],
- ),
- ],
- ),
- );
- }
- Widget getCompensateItem(int index, BuildContext context) {
- return Container(
- decoration: BoxDecoration(
- color: Colors.white,
- borderRadius: BorderRadius.circular(4),
- ),
- margin: EdgeInsets.only(bottom: 10, left: 10, right: 10),
- padding: EdgeInsets.only(left: 8, right: 8, top: 14, bottom: 8),
- child: Column(
- children: [
- Row(
- children: [
- ClipRRect(
- child: MyViews().netImg('path', 25, 25),
- borderRadius: BorderRadius.circular(12.5),
- ),
- Container(
- child: Text(
- '一颗带货达人小星星(21548679)',
- style: TextStyle(color: MyColors.c333333, fontSize: 14),
- ),
- margin: EdgeInsets.only(left: 7),
- )
- ],
- ),
- Container(
- color: MyColors.cE7E7E7,
- height: 0.5,
- margin: EdgeInsets.only(top: 13, bottom: 9),
- ),
- Text(
- '所属货帮:全球顶尖带货达人团',
- style: TextStyle(color: MyColors.c333333, fontSize: 13),
- ),
- Container(
- color: MyColors.cE7E7E7,
- height: 0.5,
- margin: EdgeInsets.only(top: 9, bottom: 9),
- ),
- Text(
- '订单金额:¥200.00',
- style: TextStyle(color: MyColors.c333333, fontSize: 13),
- ),
- Container(
- color: MyColors.cE7E7E7,
- height: 0.5,
- margin: EdgeInsets.only(top: 9, bottom: 9),
- ),
- Text(
- '申请时间:2020-08-24 10:00:00',
- style: TextStyle(color: MyColors.c333333, fontSize: 13),
- ),
- Container(
- color: MyColors.cE7E7E7,
- height: 0.5,
- margin: EdgeInsets.only(top: 9, bottom: 9),
- ),
- Text(
- '申请理由',
- style: TextStyle(color: MyColors.c333333, fontSize: 13),
- ),
- Container(
- margin: EdgeInsets.only(top: 6),
- decoration: BoxDecoration(
- color: MyColors.c19FF4233,
- borderRadius: BorderRadius.circular(4)),
- constraints: BoxConstraints(minHeight: 60),
- child: Text(
- '产品质量有问题,希望获得一定的金额的赔付',
- style: TextStyle(color: MyColors.c333333, fontSize: 13),
- ),
- padding: EdgeInsets.symmetric(vertical: 8, horizontal: 7),
- alignment: Alignment.topLeft,
- ),
- Container(
- color: MyColors.cE7E7E7,
- height: 0.5,
- margin: EdgeInsets.only(top: 9, bottom: 9),
- ),
- Row(
- children: [
- Text(
- '处理结果:',
- style: TextStyle(color: MyColors.c333333, fontSize: 13),
- ),
- Text(
- '已处理',
- style: TextStyle(color: MyColors.c2B9C77, fontSize: 13),
- ),
- Text(
- '/',
- style: TextStyle(color: MyColors.c333333, fontSize: 13),
- ),
- Text(
- '处理中',
- style: TextStyle(color: MyColors.c3D6CD5, fontSize: 13),
- ),
- Text(
- '/',
- style: TextStyle(color: MyColors.c333333, fontSize: 13),
- ),
- Text(
- '已处理',
- style: TextStyle(color: MyColors.cFF4233, fontSize: 13),
- ),
- ],
- ),
- Container(
- margin: EdgeInsets.only(top: 6),
- decoration: BoxDecoration(
- color: MyColors.c19FF6700,
- borderRadius: BorderRadius.circular(4)),
- constraints: BoxConstraints(minHeight: 60),
- child: Text(
- '赔偿买家20元现金(赔付成功/失败结果 )',
- style: TextStyle(color: MyColors.cFF9249, fontSize: 13),
- ),
- padding: EdgeInsets.symmetric(vertical: 8, horizontal: 7),
- alignment: Alignment.topLeft,
- ),
- Container(
- color: MyColors.cE7E7E7,
- height: 0.5,
- margin: EdgeInsets.only(top: 9, bottom: 9),
- ),
- Text(
- '处理时间:2020-08-25 10:00:00',
- style: TextStyle(color: MyColors.c333333, fontSize: 13),
- ),
- Container(
- color: MyColors.cE7E7E7,
- height: 0.5,
- margin: EdgeInsets.only(top: 9, bottom: 9),
- ),
- Row(
- children: [
- Container(
- decoration: BoxDecoration(
- border: Border.all(color: MyColors.cFF4233, width: 1),
- borderRadius: BorderRadius.circular(13)),
- height: 26,
- width: 70,
- child: Text(
- '查看申请',
- style: TextStyle(color: MyColors.cFF4233, fontSize: 12),
- ),
- alignment: Alignment.center,
- ),
- Container(
- margin: EdgeInsets.only(left: 10),
- decoration: BoxDecoration(
- color: MyColors.cFF4233,
- borderRadius: BorderRadius.circular(13)),
- height: 26,
- width: 70,
- child: Text(
- '查看订单',
- style: TextStyle(color: Colors.white, fontSize: 12),
- ),
- alignment: Alignment.center,
- )
- ],
- mainAxisAlignment: MainAxisAlignment.end,
- )
- ],
- crossAxisAlignment: CrossAxisAlignment.start,
- ),
- );
- }
- List<String> states = ['未支付', '已支付', '支付中', '支付失败', '已代付', '已取消'];
- //暂时没有用
- Widget getOrdersItem(SmartOrderBeanDataData data, BuildContext context) {
- return Container(
- decoration: BoxDecoration(
- color: Colors.white, borderRadius: BorderRadius.circular(4)),
- margin: EdgeInsets.only(bottom: 10, left: 10, right: 10),
- padding: EdgeInsets.only(left: 10, right: 10, top: 16, bottom: 7),
- child: Column(
- children: [
- Row(
- children: [
- Row(
- children: [
- ClipRRect(
- borderRadius: BorderRadius.circular(12.5),
- child: MyViews().netImg(imgURL(data.sellerPic), 25, 25),
- ),
- Container(
- margin: EdgeInsets.only(left: 7, right: 7),
- child: Text(
- data.sellerName,
- style: TextStyle(color: MyColors.c333333, fontSize: 14),
- ),
- ),
- // Container(
- // decoration: BoxDecoration(
- // border: Border.all(color: MyColors.cFF4233, width: 1),
- // borderRadius: BorderRadius.circular(2),
- // ),
- // width: 26,
- // height: 14,
- // child: Text(
- // '卖家',
- // style: TextStyle(
- // color: MyColors.cFF4233, fontSize: 10, height: 1.0),
- // ),
- // alignment: Alignment.center,
- // padding: EdgeInsets.only(top: 1),
- // ),
- ],
- ),
- Text(
- states[data.state],
- style: TextStyle(
- color:
- data.state == 1 ? MyColors.c2B9C77 : MyColors.cFF4233),
- )
- ],
- mainAxisAlignment: MainAxisAlignment.spaceBetween,
- ),
- Container(
- height: 0.5,
- color: MyColors.cE7E7E7,
- margin: EdgeInsets.only(top: 11, bottom: 11),
- ),
- data.type == orderTypeThirdPlatform
- ? Container(
- child: Row(
- children: [
- Container(
- child: SvgPicture.asset(
- 'images/svg/第三方.svg',
- height: 45,
- width: 45,
- ),
- margin: EdgeInsets.only(right: 8),
- height: 60,
- width: 60,
- decoration: BoxDecoration(
- border:
- Border.all(color: MyColors.cEBEBEB, width: 1)),
- alignment: Alignment.center,
- ),
- Expanded(
- child: Container(
- height: 60,
- child: Column(
- children: [
- MyViews().myText(
- '第三方订单(${data.uid})', MyColors.c333333, 13),
- MyViews().myText('付款人:${data.buyerName}',
- MyColors.c333333, 13),
- Row(
- children: [
- MyViews().myText(
- '¥${data.amount}', MyColors.cFF4233, 12),
- MyViews().myText('x${data.commodityCount}',
- MyColors.c999999, 12),
- ],
- mainAxisAlignment:
- MainAxisAlignment.spaceBetween,
- crossAxisAlignment: CrossAxisAlignment.start,
- )
- ],
- mainAxisAlignment: MainAxisAlignment.spaceBetween,
- crossAxisAlignment: CrossAxisAlignment.start,
- ),
- ),
- ),
- ],
- ),
- )
- : Row(
- children: [
- Container(
- child: MyViews().netImg(
- imgURL(data.commodityCover), 84, 82,
- placeholder: 'images/svg/goodsDefImg.svg'),
- margin: EdgeInsets.only(right: 8),
- ),
- Expanded(
- child: Container(
- height: 84,
- child: Column(
- children: [
- Text(
- data.commodityTitle,
- style: TextStyle(
- color: MyColors.c333333, fontSize: 13),
- maxLines: 2,
- overflow: TextOverflow.ellipsis,
- softWrap: true,
- ),
- Row(
- children: [
- Text(
- '¥${data.amount}',
- style: TextStyle(
- color: MyColors.cFF4233, fontSize: 12),
- ),
- Text(
- 'x1',
- style: TextStyle(
- color: MyColors.c999999, fontSize: 12),
- )
- ],
- mainAxisAlignment: MainAxisAlignment.spaceBetween,
- crossAxisAlignment: CrossAxisAlignment.start,
- ),
- Row(
- children: [
- ClipRRect(
- borderRadius: BorderRadius.circular(12.5),
- child: MyViews().netImg('path', 25, 25),
- ),
- Container(
- child: Text(
- data.buyerName,
- style: TextStyle(
- color: MyColors.c333333, fontSize: 13),
- ),
- margin: EdgeInsets.only(left: 8, right: 8),
- ),
- // Container(
- // decoration: BoxDecoration(
- // border: Border.all(
- // color: MyColors.cFF4233, width: 1),
- // borderRadius: BorderRadius.circular(2),
- // ),
- // width: 26,
- // height: 14,
- // child: Text(
- // '买家',
- // style: TextStyle(
- // color: MyColors.cFF4233,
- // fontSize: 10,
- // height: 1.0),
- // ),
- // alignment: Alignment.center,
- // padding: EdgeInsets.only(top: 1),
- // ),
- ],
- ),
- ],
- mainAxisAlignment: MainAxisAlignment.spaceBetween,
- ),
- ),
- )
- ],
- ),
- Container(
- height: 0.5,
- color: MyColors.cE7E7E7,
- margin: EdgeInsets.only(top: 11, bottom: 7),
- ),
- Row(
- children: [
- Text(
- '下单时间:${data.createTime}',
- style: TextStyle(color: MyColors.c666666, fontSize: 11),
- ),
- GestureDetector(
- onTap: () {
- if (data.state == 0) {
- MyTools()
- .toPage(context, ApplyForCompensationPage(), (then) {});
- }
- },
- behavior: HitTestBehavior.translucent,
- child: Container(
- decoration: BoxDecoration(
- color:
- data.state == 1 ? MyColors.cFFCD00 : MyColors.cFF4233,
- borderRadius: BorderRadius.circular(13),
- ),
- height: 26,
- width: 70,
- child: Text(
- data.state == 1 ? '申请赔付' : '立即支付',
- style: TextStyle(color: Colors.white, fontSize: 12),
- ),
- alignment: Alignment.center,
- ),
- )
- ],
- mainAxisAlignment: MainAxisAlignment.spaceBetween,
- )
- ],
- ),
- );
- }
- getPunishItem(BuildContext context, ComplainBeanDataData data) {
- return Container(
- decoration: BoxDecoration(
- color: Colors.white,
- borderRadius: BorderRadius.circular(4),
- ),
- margin: EdgeInsets.only(left: 10, right: 10, bottom: 10),
- padding: EdgeInsets.only(left: 6, right: 6, bottom: 8, top: 12),
- child: Column(
- children: [
- Row(
- children: [
- Row(
- children: [
- Container(
- child: ClipRRect(
- child: netImg(imgURL(data.shopPic), 25, 25),
- borderRadius: BorderRadius.circular(12.5),
- ),
- margin: EdgeInsets.only(right: 7),
- ),
- myText('${data.shopName}(${data.shopUid})', MyColors.c333333,
- 14),
- ],
- ),
- myText(data.handled ? '已处理' : '正在处理',
- data.handled ? MyColors.cADD358 : MyColors.c3D6CD5, 11)
- ],
- mainAxisAlignment: MainAxisAlignment.spaceBetween,
- ),
- Container(
- decoration: BoxDecoration(
- color: MyColors.c19FF4233,
- borderRadius: BorderRadius.circular(4),
- ),
- constraints: BoxConstraints(minHeight: 97),
- width: double.infinity,
- padding: EdgeInsets.only(left: 11, right: 11, top: 8, bottom: 8),
- margin: EdgeInsets.only(top: 12, bottom: 0),
- child: Column(
- children: [
- myText(data.content, MyColors.c333333, 13),
- Visibility(
- visible: data.handled,
- child: Container(
- child: myText(
- '处罚结果:${data.handleResult}', MyColors.c333333, 11),
- margin: EdgeInsets.only(top: 3, bottom: 3),
- ),
- ),
- myText('投诉时间:${data.complainTime}', MyColors.c333333, 11),
- myText('处理时间:${data.handled ? data.handleTime : '正在处理'}',
- MyColors.c333333, 11),
- ],
- crossAxisAlignment: CrossAxisAlignment.start,
- mainAxisAlignment: MainAxisAlignment.spaceBetween,
- ),
- ),
- ],
- crossAxisAlignment: CrossAxisAlignment.start,
- ),
- );
- }
- Widget getApplicationItems(MyShopBeanDataData data, BuildContext context) {
- return Container(
- padding: EdgeInsets.only(left: 15, right: 15),
- color: Colors.white,
- child: Column(
- children: [
- Container(
- margin: EdgeInsets.only(top: 8, bottom: 6),
- child: Row(
- children: [
- Container(
- margin: EdgeInsets.only(right: 6),
- child: ClipRRect(
- child: netImg(imgURL(data.userPic), 42, 42),
- borderRadius: BorderRadius.circular(21),
- ),
- ),
- Expanded(
- child: Text(
- '${data.userName} 申请加入你的货帮',
- style: TextStyle(color: MyColors.c333333, fontSize: 15),
- overflow: TextOverflow.ellipsis,
- softWrap: true,
- maxLines: 1,
- ),
- ),
- Container(
- child: GestureDetector(
- onTap: () {
- MyTools().toPage(context, ApplicationDetailsPage(data),
- (then) {
- EventBus().emit('申请页面返回');
- });
- },
- behavior: HitTestBehavior.translucent,
- child: Container(
- decoration: BoxDecoration(
- border: Border.all(color: MyColors.cFF4233, width: 1),
- borderRadius: BorderRadius.circular(14),
- ),
- height: 28,
- width: 70,
- child: myText('前往验证', MyColors.cFF4233, 12),
- alignment: Alignment.center,
- ),
- ),
- alignment: Alignment.centerRight,
- ),
- ],
- ),
- ),
- Container(
- height: 0.5,
- color: MyColors.cE7E7E7,
- )
- ],
- ),
- );
- }
- Widget getAddAssistantItems(
- MyShopBeanDataData data, BuildContext context, bool checked) {
- return Container(
- padding: EdgeInsets.only(left: 15, right: 15),
- color: Colors.white,
- child: Column(
- children: [
- Container(
- margin: EdgeInsets.only(top: 8, bottom: 6),
- child: Row(
- children: [
- Checkbox(
- activeColor: MyColors.cFF4233,
- checkColor: Colors.white,
- value: checked,
- onChanged: (v) {
- EventBus().emit('selectChanges', [data, v]);
- }),
- Container(
- margin: EdgeInsets.only(right: 6),
- child: ClipRRect(
- child: netImg(imgURL(data.userPic), 42, 42),
- borderRadius: BorderRadius.circular(21),
- ),
- ),
- myText(
- '${data.userName} (${data.userUid})', MyColors.c333333, 15),
- // Expanded(
- // child: Container(
- // child: GestureDetector(
- // onTap: () {},
- // behavior: HitTestBehavior.translucent,
- // child: Container(
- // decoration: BoxDecoration(
- // border: Border.all(color: MyColors.cFF4233, width: 1),
- // borderRadius: BorderRadius.circular(14),
- // ),
- // height: 28,
- // width: 70,
- // child: myText('设为助手', MyColors.cFF4233, 12),
- // alignment: Alignment.center,
- // ),
- // ),
- // alignment: Alignment.centerRight,
- // ),
- // ),
- ],
- ),
- ),
- Container(
- height: 0.5,
- color: MyColors.cE7E7E7,
- )
- ],
- ),
- );
- }
- Widget getGangTransferItems(
- MyShopBeanDataData data, BuildContext context, bool checked) {
- return Container(
- padding: EdgeInsets.only(left: 15, right: 15),
- color: Colors.white,
- child: Column(
- children: [
- Container(
- margin: EdgeInsets.only(top: 8, bottom: 6),
- child: Row(
- children: [
- Checkbox(
- value: checked,
- activeColor: MyColors.cFF4233,
- checkColor: Colors.white,
- onChanged: (v) {
- EventBus().emit('GangTransfer', [data, v]);
- }),
- Container(
- margin: EdgeInsets.only(right: 6),
- child: ClipRRect(
- child: netImg(imgURL(data.userPic), 42, 42),
- borderRadius: BorderRadius.circular(21),
- ),
- ),
- myText(
- '${data.userName} (${data.userUid})', MyColors.c333333, 15),
- // Expanded(
- // child: Container(
- // child: GestureDetector(
- // onTap: () {},
- // behavior: HitTestBehavior.translucent,
- // child: Container(
- // decoration: BoxDecoration(
- // border: Border.all(color: MyColors.cFF4233, width: 1),
- // borderRadius: BorderRadius.circular(14),
- // ),
- // height: 28,
- // width: 70,
- // child: myText('设为助手', MyColors.cFF4233, 12),
- // alignment: Alignment.center,
- // ),
- // ),
- // alignment: Alignment.centerRight,
- // ),
- // ),
- ],
- ),
- ),
- Container(
- height: 0.5,
- color: MyColors.cE7E7E7,
- )
- ],
- ),
- );
- }
- Widget getMemberListItems(
- StoreBeanDataData store, MyShopBeanDataData data, BuildContext context) {
- return Container(
- padding: EdgeInsets.only(left: 15, right: 15),
- color: Colors.white,
- child: Column(
- children: [
- Container(
- margin: EdgeInsets.only(top: 8, bottom: 6),
- child: Row(
- children: [
- Row(
- children: [
- Container(
- margin: EdgeInsets.only(right: 6),
- child: ClipRRect(
- child: netImg(imgURL(data.userPic), 42, 42),
- borderRadius: BorderRadius.circular(21),
- ),
- ),
- myText(
- '${data.userName} ${store.ownerUid == MyCookie().getUID() ? '(${data.userUid})' : ''}',
- MyColors.c333333,
- 15),
- Visibility(
- visible: data.role != shopUserMember,
- child: Container(
- decoration: BoxDecoration(
- color: MyColors.cFFCD00,
- borderRadius: BorderRadius.circular(8)),
- height: 16,
- padding: EdgeInsets.symmetric(horizontal: 4),
- child: myText(roleText(data.role), Colors.white, 10),
- alignment: Alignment.center,
- margin: EdgeInsets.only(left: 5),
- ),
- )
- ],
- ),
- Visibility(
- // visible: data.role != shopUserOwner &&
- // data.userUid != MyCookie().getUID(),
- visible: false,
- child: GestureDetector(
- child: Container(
- margin: EdgeInsets.only(right: 10),
- child: SvgPicture.asset(
- 'images/svg/透视.svg',
- height: 25,
- width: 25,
- ),
- ),
- onTap: () {
- queryWhetherThereIsANumberOfPerspectives(
- data, store, context);
- },
- behavior: HitTestBehavior.translucent,
- ),
- ),
- ],
- mainAxisAlignment: MainAxisAlignment.spaceBetween,
- ),
- ),
- Container(
- height: 0.5,
- color: MyColors.cE7E7E7,
- )
- ],
- ),
- );
- }
- Widget getGangsItem(StoreBeanDataData data, BuildContext context) {
- return Column(
- children: [
- Container(
- margin: EdgeInsets.only(left: 15, right: 15, top: 7),
- child: Row(
- children: [
- Container(
- margin: EdgeInsets.only(right: 6),
- child: ClipRRect(
- child: netImg(imgURL(data.picture), 40, 40),
- borderRadius: BorderRadius.circular(20),
- ),
- ),
- myText('${data.name}(${data.uid})', MyColors.c333333, 15),
- Expanded(
- child: GestureDetector(
- onTap: () {
- if(data.state==shopStateNormal){
- submitApplication(data);
- }else{
- showToast('该货帮暂不可加入');
- }
- },
- behavior: HitTestBehavior.translucent,
- child: Container(
- alignment: Alignment.centerRight,
- child: Container(
- decoration: BoxDecoration(
- border: Border.all(color: MyColors.cFF4233, width: 1),
- borderRadius: BorderRadius.circular(14)),
- height: 28,
- width: 70,
- child: myText('申请加入', MyColors.cFF4233, 12),
- alignment: Alignment.center,
- ),
- ),
- ),
- )
- ],
- ),
- ),
- Container(
- height: 0.5,
- color: MyColors.cF7F7F7,
- margin: EdgeInsets.only(left: 15, right: 15, top: 6),
- )
- ],
- );
- }
- orderStyle(SmartOrderBeanDataData data) {
- if (data.type == orderTypeThirdPlatform) {
- //第三方平台订单
- return Container(
- margin: EdgeInsets.symmetric(horizontal: 12),
- child: Row(
- children: [
- Container(
- child: SvgPicture.asset(
- 'images/svg/第三方.svg',
- height: 45,
- width: 45,
- ),
- margin: EdgeInsets.only(right: 8),
- height: 60,
- width: 60,
- decoration: BoxDecoration(
- border: Border.all(color: MyColors.cEBEBEB, width: 1)),
- alignment: Alignment.center,
- ),
- Expanded(
- child: Container(
- height: 60,
- child: Column(
- children: [
- MyViews()
- .myText('第三方订单(${data.uid})', MyColors.c333333, 13),
- MyViews()
- .myText('付款人:${data.buyerName}', MyColors.c333333, 13),
- Row(
- children: [
- MyViews()
- .myText('¥${data.amount}', MyColors.cFF4233, 12),
- MyViews().myText(
- 'x${data.commodityCount}', MyColors.c999999, 12),
- ],
- mainAxisAlignment: MainAxisAlignment.spaceBetween,
- )
- ],
- mainAxisAlignment: MainAxisAlignment.spaceBetween,
- crossAxisAlignment: CrossAxisAlignment.start,
- ),
- ),
- ),
- ],
- ),
- );
- } else if (data.type == orderTypeAnnualFee) {
- //平台年费
- return Container(
- margin: EdgeInsets.symmetric(horizontal: 12),
- child: Row(
- children: [
- Container(
- child: Image.asset(
- 'images/app_logo.png',
- height: 45,
- width: 45,
- ),
- margin: EdgeInsets.only(right: 8),
- height: 60,
- width: 60,
- decoration: BoxDecoration(
- border: Border.all(color: MyColors.cEBEBEB, width: 1)),
- alignment: Alignment.center,
- ),
- Expanded(
- child: Container(
- height: 60,
- child: Column(
- children: [
- MyViews().myText('平台服务费', MyColors.c333333, 13),
- MyViews().myText(
- '付款人:${data.buyerName}(${hideUID(data.buyerUid.toString())})',
- MyColors.c333333,
- 13),
- Row(
- children: [
- MyViews()
- .myText('¥${data.amount}', MyColors.cFF4233, 12),
- MyViews().myText(
- 'x${data.commodityCount}', MyColors.c999999, 12),
- ],
- mainAxisAlignment: MainAxisAlignment.spaceBetween,
- )
- ],
- mainAxisAlignment: MainAxisAlignment.spaceBetween,
- crossAxisAlignment: CrossAxisAlignment.start,
- ),
- ),
- ),
- ],
- ),
- );
- } else if (data.type == orderTypeAdvertise) {
- //平台广告订单
- return Container(
- margin: EdgeInsets.symmetric(horizontal: 12),
- child: Row(
- children: [
- Container(
- child: SvgPicture.asset(
- 'images/svg/平台广告.svg',
- height: 45,
- width: 45,
- ),
- margin: EdgeInsets.only(right: 8),
- height: 60,
- width: 60,
- decoration: BoxDecoration(
- border: Border.all(color: MyColors.cEBEBEB, width: 1)),
- alignment: Alignment.center,
- ),
- Expanded(
- child: Container(
- height: 60,
- child: Column(
- children: [
- MyViews().myText('广告费', MyColors.c333333, 13),
- MyViews().myText(
- '付款人:${data.buyerName}(${hideUID(data.buyerUid.toString())})',
- MyColors.c333333,
- 13),
- Row(
- children: [
- MyViews()
- .myText('¥${data.amount}', MyColors.cFF4233, 12),
- MyViews().myText(
- 'x${data.commodityCount}', MyColors.c999999, 12),
- ],
- mainAxisAlignment: MainAxisAlignment.spaceBetween,
- )
- ],
- mainAxisAlignment: MainAxisAlignment.spaceBetween,
- crossAxisAlignment: CrossAxisAlignment.start,
- ),
- ),
- ),
- ],
- ),
- );
- } else if (data.type == orderTypeCommodity) {
- //商品订单
- return Container(
- margin: EdgeInsets.only(left: 10, right: 10),
- child: Row(
- children: [
- MyViews().netImg(imgURL(data.commodityCover), 60, 60,
- placeholder: 'images/svg/goodsDefImg.svg'),
- Expanded(
- child: Container(
- padding: EdgeInsets.only(left: 8),
- height: 60,
- child: Column(
- children: [
- Text(
- '${data.commodityTitle}',
- style: TextStyle(color: MyColors.c333333, fontSize: 13),
- maxLines: 2,
- overflow: TextOverflow.ellipsis,
- softWrap: true,
- ),
- Row(
- children: [
- Text(
- '¥${double.parse('${data.amount}').toStringAsFixed(2)}',
- style:
- TextStyle(color: MyColors.cFF4233, fontSize: 12),
- ),
- Text(
- 'x${data.commodityCount}',
- style:
- TextStyle(color: MyColors.c999999, fontSize: 12),
- ),
- ],
- mainAxisAlignment: MainAxisAlignment.spaceBetween,
- crossAxisAlignment: CrossAxisAlignment.start,
- ),
- Row(
- children: [
- ClipRRect(
- child: MyViews()
- .netImg(imgURL('${data.buyerPic}'), 25, 25),
- borderRadius: BorderRadius.all(Radius.circular(12.5)),
- ),
- Container(
- margin: EdgeInsets.only(right: 5, left: 5),
- child: Text(
- '${data.buyerName}(${hideUID(data.buyerUid.toString())})',
- style: TextStyle(
- color: MyColors.c333333,
- fontSize: 13,
- ),
- maxLines: 1,
- overflow: TextOverflow.ellipsis,
- softWrap: true,
- ),
- ),
- // Container(
- // decoration: BoxDecoration(
- // border:
- // Border.all(color: MyColors.cFF4233, width: 1),
- // borderRadius: BorderRadius.all(
- // Radius.circular(2),
- // ),
- // ),
- // child: Text(
- // '买家',
- // style: TextStyle(
- // color: MyColors.cFF4233,
- // fontSize: 10,
- // ),
- // ),
- // alignment: Alignment.center,
- // padding:
- // EdgeInsets.only(bottom: 2, left: 3, right: 3),
- // )
- ],
- ),
- ],
- crossAxisAlignment: CrossAxisAlignment.start,
- mainAxisAlignment: MainAxisAlignment.spaceBetween,
- ),
- ),
- )
- ],
- ),
- );
- } else if (data.type == orderTypeVirtualProduct) {
- //虚拟物品
- return Container(
- margin: EdgeInsets.only(left: 10, right: 10),
- child: Row(
- children: [
- Container(
- child: SvgPicture.asset(
- 'images/svg/虚拟物品.svg',
- height: 45,
- width: 45,
- ),
- margin: EdgeInsets.only(right: 8),
- height: 60,
- width: 60,
- decoration: BoxDecoration(
- border: Border.all(color: MyColors.cEBEBEB, width: 1)),
- alignment: Alignment.center,
- ),
- Expanded(
- child: Container(
- padding: EdgeInsets.only(left: 8),
- height: 60,
- child: Column(
- children: [
- Text(
- '虚拟道具',
- style: TextStyle(color: MyColors.c333333, fontSize: 13),
- maxLines: 2,
- overflow: TextOverflow.ellipsis,
- softWrap: true,
- ),
- Row(
- children: [
- Text(
- '¥${double.parse('${data.amount}').toStringAsFixed(2)}',
- style:
- TextStyle(color: MyColors.cFF4233, fontSize: 12),
- ),
- Text(
- 'x${data.commodityCount}',
- style:
- TextStyle(color: MyColors.c999999, fontSize: 12),
- ),
- ],
- mainAxisAlignment: MainAxisAlignment.spaceBetween,
- crossAxisAlignment: CrossAxisAlignment.start,
- ),
- Row(
- children: [
- ClipRRect(
- child: MyViews()
- .netImg(imgURL('${data.buyerPic}'), 25, 25),
- borderRadius: BorderRadius.all(Radius.circular(12.5)),
- ),
- Container(
- margin: EdgeInsets.only(right: 5, left: 5),
- child: Text(
- '${data.buyerName}(${hideUID(data.buyerUid.toString())})',
- style: TextStyle(
- color: MyColors.c333333,
- fontSize: 13,
- ),
- maxLines: 1,
- overflow: TextOverflow.ellipsis,
- softWrap: true,
- ),
- ),
- // Container(
- // decoration: BoxDecoration(
- // border:
- // Border.all(color: MyColors.cFF4233, width: 1),
- // borderRadius: BorderRadius.all(
- // Radius.circular(2),
- // ),
- // ),
- // child: Text(
- // '买家',
- // style: TextStyle(
- // color: MyColors.cFF4233,
- // fontSize: 10,
- // ),
- // ),
- // alignment: Alignment.center,
- // padding:
- // EdgeInsets.only(bottom: 2, left: 3, right: 3),
- // )
- ],
- ),
- ],
- crossAxisAlignment: CrossAxisAlignment.start,
- mainAxisAlignment: MainAxisAlignment.spaceBetween,
- ),
- ),
- )
- ],
- ),
- );
- } else if (data.type == orderTypeScancodeAilyPay) {
- //扫码收款
- return Container(
- margin: EdgeInsets.only(left: 10, right: 10),
- child: Row(
- children: [
- Container(
- child: Icon(
- Icons.qr_code_outlined,
- color: Colors.white,
- ),
- margin: EdgeInsets.only(right: 8),
- height: 60,
- width: 60,
- decoration: BoxDecoration(
- color: MyColors.cFF4233,
- border: Border.all(color: MyColors.cEBEBEB, width: 1)),
- alignment: Alignment.center,
- ),
- Expanded(
- child: Container(
- padding: EdgeInsets.only(left: 8),
- height: 60,
- child: Column(
- children: [
- Text(
- '收款码收款',
- style: TextStyle(color: MyColors.c333333, fontSize: 13),
- maxLines: 2,
- overflow: TextOverflow.ellipsis,
- softWrap: true,
- ),
- Text(
- '¥${double.parse('${data.amount}').toStringAsFixed(2)}',
- style: TextStyle(color: MyColors.cFF4233, fontSize: 12),
- ),
- ],
- crossAxisAlignment: CrossAxisAlignment.start,
- mainAxisAlignment: MainAxisAlignment.spaceBetween,
- ),
- ),
- )
- ],
- ),
- );
- } else if (data.type == orderTypeOfflineTransfer ||
- data.type == orderTypeOfflinePay) {
- //线下付款
- return Container(
- margin: EdgeInsets.only(left: 10, right: 10),
- child: Row(
- children: [
- Container(
- child: SvgPicture.asset(
- 'images/svg/线下付款.svg',
- height: 45,
- width: 45,
- ),
- margin: EdgeInsets.only(right: 8),
- height: 60,
- width: 60,
- decoration: BoxDecoration(
- border: Border.all(color: MyColors.cEBEBEB, width: 1)),
- alignment: Alignment.center,
- ),
- Expanded(
- child: Container(
- padding: EdgeInsets.only(left: 8),
- height: 60,
- child: Column(
- children: [
- Text(
- data.type == orderTypeOfflineTransfer ? '到店付款' : '线下收款',
- style: TextStyle(color: MyColors.c333333, fontSize: 13),
- maxLines: 2,
- overflow: TextOverflow.ellipsis,
- softWrap: true,
- ),
- Row(
- children: [
- Text(
- '¥${double.parse('${data.amount}').toStringAsFixed(2)}',
- style:
- TextStyle(color: MyColors.cFF4233, fontSize: 12),
- ),
- Text(
- 'x${data.commodityCount}',
- style:
- TextStyle(color: MyColors.c999999, fontSize: 12),
- ),
- ],
- mainAxisAlignment: MainAxisAlignment.spaceBetween,
- crossAxisAlignment: CrossAxisAlignment.start,
- ),
- Row(
- children: [
- ClipRRect(
- child: MyViews()
- .netImg(imgURL('${data.buyerPic}'), 20, 20),
- borderRadius: BorderRadius.all(Radius.circular(10)),
- ),
- Container(
- margin: EdgeInsets.only(right: 5, left: 5),
- child: Text(
- '${data.buyerName}(${hideUID(data.buyerUid.toString())})',
- style: TextStyle(
- color: MyColors.c333333,
- fontSize: 13,
- ),
- maxLines: 1,
- overflow: TextOverflow.ellipsis,
- softWrap: true,
- ),
- ),
- // Container(
- // decoration: BoxDecoration(
- // border:
- // Border.all(color: MyColors.cFF4233, width: 1),
- // borderRadius: BorderRadius.all(
- // Radius.circular(2),
- // ),
- // ),
- // child: Text(
- // '买家',
- // style: TextStyle(
- // color: MyColors.cFF4233,
- // fontSize: 10,
- // ),
- // ),
- // alignment: Alignment.center,
- // padding:
- // EdgeInsets.only(bottom: 2, left: 3, right: 3),
- // )
- ],
- ),
- ],
- crossAxisAlignment: CrossAxisAlignment.start,
- mainAxisAlignment: MainAxisAlignment.spaceBetween,
- ),
- ),
- )
- ],
- ),
- );
- } else {
- return Container(
- margin: EdgeInsets.only(left: 10, right: 10),
- child: Row(
- children: [
- MyViews().netImg(imgURL(data.commodityCover), 82, 84,
- placeholder: 'images/svg/goodsDefImg.svg'),
- Expanded(
- child: Container(
- padding: EdgeInsets.only(left: 8),
- height: 82,
- child: Column(
- children: [
- Text(
- '${data.commodityTitle}',
- style: TextStyle(color: MyColors.c333333, fontSize: 13),
- maxLines: 2,
- overflow: TextOverflow.ellipsis,
- softWrap: true,
- ),
- Row(
- children: [
- Text(
- '¥${double.parse('${data.amount}').toStringAsFixed(2)}',
- style:
- TextStyle(color: MyColors.cFF4233, fontSize: 12),
- ),
- Text(
- 'x${data.commodityCount}',
- style:
- TextStyle(color: MyColors.c999999, fontSize: 12),
- ),
- ],
- mainAxisAlignment: MainAxisAlignment.spaceBetween,
- crossAxisAlignment: CrossAxisAlignment.start,
- ),
- Row(
- children: [
- ClipRRect(
- child: MyViews()
- .netImg(imgURL('${data.buyerPic}'), 25, 25),
- borderRadius: BorderRadius.all(Radius.circular(12.5)),
- ),
- Container(
- margin: EdgeInsets.only(right: 5, left: 5),
- child: Text(
- '${data.buyerName}(${hideUID(data.buyerUid.toString())})',
- style: TextStyle(
- color: MyColors.c333333,
- fontSize: 13,
- ),
- maxLines: 1,
- overflow: TextOverflow.ellipsis,
- softWrap: true,
- ),
- ),
- // Container(
- // decoration: BoxDecoration(
- // border:
- // Border.all(color: MyColors.cFF4233, width: 1),
- // borderRadius: BorderRadius.all(
- // Radius.circular(2),
- // ),
- // ),
- // child: Text(
- // '买家',
- // style: TextStyle(
- // color: MyColors.cFF4233,
- // fontSize: 10,
- // ),
- // ),
- // alignment: Alignment.center,
- // padding:
- // EdgeInsets.only(bottom: 2, left: 3, right: 3),
- // )
- ],
- ),
- ],
- crossAxisAlignment: CrossAxisAlignment.start,
- mainAxisAlignment: MainAxisAlignment.spaceBetween,
- ),
- ),
- )
- ],
- ),
- );
- }
- }
- void queryWhetherThereIsANumberOfPerspectives(
- MyShopBeanDataData data, StoreBeanDataData store, BuildContext context) {
- MyDio().query({
- "key": "user_vp",
- "filters": {
- "conditions": [
- "user_uid == ${MyCookie().getUID()}",
- "vp_key == $vpKeyXRay"
- ]
- },
- "dims": userVpDims,
- "paging": [1, 2000]
- }, (response, hasError) {
- UserVpBeanEntity entity =
- UserVpBeanEntity().fromJson(json.decode(response.data.toString()));
- if (entity.data.data.length != 0) {
- MyTools().toPage(context, OtherPeopleSTurnoverPage(data), (then) {});
- } else {
- // showSimpleDialog('你还未获取透视道具或道具用完,请先购买次数再查看。', context, () {
- // Navigator.pop(context);
- // MyShopBeanDataData shop = MyShopBeanDataData();
- // shop.shopUid = store.uid;
- // shop.shopName = store.name;
- // shop.shopPic = store.picture;
- // MyTools().toPage(
- // context, PrivacyProtectionPropsPage(shop, vpKeyXRay), (then) {});
- // });
- MyShopBeanDataData shop = MyShopBeanDataData();
- shop.shopUid = store.uid;
- shop.shopName = store.name;
- shop.shopPic = store.picture;
- MyTools().toPage(
- context, PrivacyProtectionPropsPage(shop, vpKeyXRay), (then) {});
- }
- }, (error) {});
- }
- Widget pubShopItem(var data, BuildContext context) {
- if (data is StoreBeanDataData) {
- return GestureDetector(
- onTap: () {
- MyShopBeanDataData sBean = MyShopBeanDataData();
- sBean.shopName = data.name;
- sBean.shopPic = data.picture;
- sBean.shopUid = data.uid;
- sBean.ownerUid = data.ownerUid;
- sBean.ownerName = data.ownerName;
- sBean.ownerPic = data.ownerPic;
- sBean.privateShop = data.private;
- sBean.innerTrade = data.innerTrade;
- sBean.shopState = data.state;
- navigatorKey.currentState.push(
- MaterialPageRoute(builder: (context) => GangInPage(sBean, null)));
- },
- behavior: HitTestBehavior.translucent,
- child: Container(
- decoration: BoxDecoration(
- boxShadow: [
- BoxShadow(
- color: MyColors.c7FE1E1E1,
- blurRadius: 5.0,
- ),
- ],
- color: Colors.white,
- borderRadius: BorderRadius.circular(4),
- ),
- margin: EdgeInsets.only(bottom: 6.5, left: 16, right: 16, top: 6.5),
- child: Padding(
- padding: const EdgeInsets.all(10),
- child: Row(
- children: [
- ClipRRect(
- child: MyViews().netImg(imgURL(data.picture), 70, 70,
- placeholder: 'images/svg/goodsDefImg.svg'),
- borderRadius: BorderRadius.circular(4),
- ),
- Expanded(
- child: Container(
- height: 70,
- margin: EdgeInsets.only(left: 10),
- child: Column(
- children: [
- myText(
- '${data.name}(${data.uid})', MyColors.c333333, 14),
- Text(
- '货帮介绍:${data.introduction}',
- style:
- TextStyle(color: MyColors.c666666, fontSize: 11),
- maxLines: 1,
- overflow: TextOverflow.ellipsis,
- softWrap: true,
- ),
- Row(
- children: [
- Expanded(
- child: GestureDetector(
- onTap: () {
- if (data.latitude == 0) {
- showToast('该店坐标有误');
- return;
- }
- mapNavigationPopup(
- data.latitude, data.longitude, context);
- },
- behavior: HitTestBehavior.translucent,
- child: Row(
- children: [
- Icon(
- Icons.location_on_outlined,
- size: 15,
- color: MyColors.c666666,
- ),
- Expanded(
- child: Text(
- '${data.address}',
- style: TextStyle(
- color: MyColors.c666666,
- fontSize: 10),
- maxLines: 1,
- overflow: TextOverflow.ellipsis,
- softWrap: true,
- ),
- ),
- ],
- ),
- ),
- ),
- if (data.longitude != 0 &&
- context.watch<MyLocationProvider>().myLatLng !=
- null)
- Text(
- '${(AMapTools.distanceBetween(LatLng(data.latitude, data.longitude), LatLng(MyCookie().location.latitude, MyCookie().location.longitude)) / 1000).toStringAsFixed(3)}km',
- style: TextStyle(
- fontSize: 10, color: MyColors.c666666),
- )
- ],
- ),
- ],
- mainAxisAlignment: MainAxisAlignment.spaceBetween,
- crossAxisAlignment: CrossAxisAlignment.start,
- ),
- ),
- )
- ],
- ),
- ),
- ),
- );
- } else if (data is AdBeanDataData) {
- return GestureDetector(
- onTap: () {
- MyTools().toPage(context, AdDetailsPage(data), (then) {});
- },
- behavior: HitTestBehavior.translucent,
- child: Container(
- margin: EdgeInsets.only(bottom: 6.5, left: 16, right: 16, top: 6.5),
- decoration: BoxDecoration(
- boxShadow: [
- BoxShadow(
- color: MyColors.c7FE1E1E1,
- blurRadius: 5.0,
- ),
- ],
- color: Colors.white,
- borderRadius: BorderRadius.circular(4),
- ),
- child: Padding(
- padding: const EdgeInsets.only(top: 10, bottom: 10, left: 10),
- child: Row(
- children: [
- ClipRRect(
- child: MyViews().netImg(imgURL(data.coverPath), 70, 70,
- placeholder: 'images/svg/goodsDefImg.svg'),
- borderRadius: BorderRadius.circular(4),
- ),
- Expanded(
- child: Container(
- height: 70,
- margin: EdgeInsets.only(left: 10),
- child: Column(
- children: [
- Row(
- children: [
- Expanded(
- child: myText(
- '${data.title}', MyColors.c333333, 14)),
- Container(
- decoration: BoxDecoration(
- color: MyColors.cADD358,
- borderRadius: BorderRadius.only(
- topLeft: Radius.circular(8),
- bottomLeft: Radius.circular(8),
- ),
- ),
- height: 16,
- width: 32,
- child: myText('推广', Colors.white, 9),
- alignment: Alignment.center,
- ),
- ],
- ),
- Visibility(
- visible: data.mobile.isNotEmpty,
- child: Container(
- margin: EdgeInsets.only(right: 10),
- child: Text(
- '联系电话:${data.mobile}',
- style: TextStyle(
- color: MyColors.c666666, fontSize: 11),
- maxLines: 2,
- overflow: TextOverflow.ellipsis,
- softWrap: true,
- ),
- ),
- ),
- Container(
- margin: EdgeInsets.only(right: 10),
- child: Text(
- '${data.description}',
- style: TextStyle(
- color: MyColors.c666666, fontSize: 11),
- maxLines: 2,
- overflow: TextOverflow.ellipsis,
- softWrap: true,
- ),
- ),
- ],
- mainAxisAlignment: MainAxisAlignment.spaceBetween,
- crossAxisAlignment: CrossAxisAlignment.start,
- ),
- ),
- )
- ],
- ),
- ),
- ),
- );
- }
- }
- void mapNavigationPopup(
- double latitude,
- double longitude,
- BuildContext context,
- ) {
- showModalBottomSheet(
- isScrollControlled: true,
- shape: RoundedRectangleBorder(
- //圆角
- borderRadius: BorderRadius.vertical(top: Radius.circular(15)),
- ),
- builder: (BuildContext context) {
- return AnimatedPadding(
- //showModalBottomSheet 键盘弹出时自适应
- padding: MediaQuery.of(context).viewInsets, //边距(必要)
- duration: const Duration(milliseconds: 100), //时常 (必要)
- child: Container(
- // height: 180,
- constraints: BoxConstraints(
- minHeight: 90, //设置最小高度(必要)
- maxHeight:
- MediaQuery.of(context).size.height / 1.5, //设置最大高度(必要)
- ),
- padding: EdgeInsets.only(top: 20, bottom: 20),
- decoration: BoxDecoration(
- borderRadius: BorderRadius.vertical(top: Radius.circular(15)),
- color: Colors.white), //圆角
- child: ListView(
- padding: EdgeInsets.all(0),
- shrinkWrap: true,
- children: <Widget>[
- Column(
- mainAxisSize: MainAxisSize.min,
- mainAxisAlignment: MainAxisAlignment.start,
- crossAxisAlignment: CrossAxisAlignment.center,
- children: <Widget>[
- GestureDetector(
- onTap: () {
- MapUtil.gotoAMap(longitude, latitude);
- },
- behavior: HitTestBehavior.translucent,
- child: Container(
- height: 50,
- child: Column(
- children: [
- Text(
- '高德地图',
- style: TextStyle(
- color: MyColors.c333333, fontSize: 16),
- ),
- Container(
- height: 0.5,
- color: Colors.grey[200],
- )
- ],
- mainAxisAlignment: MainAxisAlignment.spaceAround,
- ),
- ),
- ),
- GestureDetector(
- onTap: () {
- MapUtil.gotoBaiduMap(longitude, latitude);
- },
- behavior: HitTestBehavior.translucent,
- child: Container(
- height: 50,
- child: Column(
- children: [
- Text(
- '百度地图',
- style: TextStyle(
- color: MyColors.c333333, fontSize: 16),
- ),
- Container(
- height: 0.5,
- color: Colors.grey[200],
- )
- ],
- mainAxisAlignment: MainAxisAlignment.spaceAround,
- ),
- ),
- ),
- GestureDetector(
- onTap: () {
- MapUtil.gotoTencentMap(longitude, latitude);
- },
- behavior: HitTestBehavior.translucent,
- child: Container(
- height: 50,
- child: Column(
- children: [
- Text(
- '腾讯地图',
- style: TextStyle(
- color: MyColors.c333333, fontSize: 16),
- ),
- Container(
- height: 0.5,
- color: Colors.grey[200],
- )
- ],
- mainAxisAlignment: MainAxisAlignment.spaceAround,
- ),
- ),
- ),
- if (Platform.isIOS)
- GestureDetector(
- onTap: () {
- MapUtil.gotoAppleMap(longitude, latitude);
- },
- behavior: HitTestBehavior.translucent,
- child: Container(
- height: 50,
- child: Column(
- children: [
- Text(
- '苹果地图',
- style: TextStyle(
- color: MyColors.c333333, fontSize: 16),
- ),
- Container(
- height: 0.5,
- color: Colors.grey[200],
- )
- ],
- mainAxisAlignment: MainAxisAlignment.spaceAround,
- ),
- ),
- ),
- ],
- )
- ],
- ),
- ),
- );
- },
- context: context);
- }
- }
- Widget noData() {
- return Center(
- child: Column(
- children: [
- Container(
- child: Image.asset('images/no_data.png'),
- alignment: Alignment.center,
- margin: EdgeInsets.only(top: 40),
- ),
- Container(
- child: MyViews().myText('暂无信息', MyColors.c999999, 16),
- height: 100,
- alignment: Alignment.topCenter,
- )
- ],
- mainAxisAlignment: MainAxisAlignment.center,
- ),
- );
- }
- showPayDialog(SmartOrderBeanDataData data, BuildContext context, onTap) {
- showDialog(
- context: context,
- builder: (BuildContext context) {
- return Material(
- color: Colors.black12,
- child: Center(
- child: Container(
- decoration: BoxDecoration(
- borderRadius: BorderRadius.circular(16),
- color: Colors.white,
- ),
- height: 207,
- margin: EdgeInsets.symmetric(horizontal: 18),
- padding: EdgeInsets.symmetric(horizontal: 8, vertical: 12),
- child: Column(
- children: [
- Row(
- children: [
- Container(
- decoration: BoxDecoration(
- border: Border.all(color: MyColors.cEBEBEB, width: 1),
- ),
- child: SvgPicture.asset(
- 'images/svg/支付商品.svg',
- height: 28,
- width: 28,
- ),
- height: 45,
- width: 45,
- alignment: Alignment.center,
- ),
- Container(
- height: 45,
- child: Column(
- children: [
- MyViews().myText(
- '确认支付订单(${data.uid})', MyColors.c333333, 13),
- MyViews()
- .myText('¥${data.amount}', MyColors.cFF4233, 12),
- ],
- crossAxisAlignment: CrossAxisAlignment.start,
- mainAxisAlignment: MainAxisAlignment.spaceBetween,
- ),
- margin: EdgeInsets.only(left: 10),
- )
- ],
- ),
- Container(
- height: 0.5,
- color: MyColors.cE7E7E7,
- ),
- Row(
- children: [
- MyViews().myText('付款人:', MyColors.c333333, 13),
- Container(
- child: ClipRRect(
- child: MyViews().netImg(imgURL(data.buyerPic), 23, 23),
- borderRadius: BorderRadius.circular(23),
- ),
- margin: EdgeInsets.symmetric(horizontal: 8),
- ),
- MyViews().myText(
- '${data.buyerName}${data.buyerUid == 0 ? '' : "(${hideUID(data.buyerUid.toString())})"}',
- MyColors.c333333,
- 13),
- ],
- ),
- Container(
- height: 0.5,
- color: MyColors.cE7E7E7,
- ),
- Row(
- children: [
- MyViews().myText('收款人:', MyColors.c333333, 13),
- Container(
- child: ClipRRect(
- child: MyViews().netImg(imgURL(data.sellerPic), 23, 23),
- borderRadius: BorderRadius.circular(23),
- ),
- margin: EdgeInsets.symmetric(horizontal: 8),
- ),
- MyViews().myText(
- '${data.sellerName}${data.sellerUid == 0 ? '' : '(${hideUID(data.sellerUid.toString())})'}',
- MyColors.c333333,
- 13),
- ],
- ),
- Container(
- height: 0.5,
- color: MyColors.cE7E7E7,
- ),
- Container(
- margin: EdgeInsets.symmetric(horizontal: 10),
- child: Row(
- children: [
- Expanded(
- child: GestureDetector(
- onTap: () {
- Navigator.pop(context);
- },
- behavior: HitTestBehavior.translucent,
- child: Container(
- decoration: BoxDecoration(
- borderRadius: BorderRadius.only(
- topLeft: Radius.circular(20),
- bottomLeft: Radius.circular(20),
- ),
- border: Border.all(
- color: MyColors.cFF4233, width: 1.1),
- color: Colors.white),
- child: MyViews().myText('取消', MyColors.cFF4233, 14),
- height: 40,
- alignment: Alignment.center,
- ),
- ),
- ),
- Expanded(
- child: GestureDetector(
- behavior: HitTestBehavior.translucent,
- onTap: onTap,
- child: Container(
- decoration: BoxDecoration(
- borderRadius: BorderRadius.only(
- topRight: Radius.circular(20),
- bottomRight: Radius.circular(20),
- ),
- color: MyColors.cFF4233),
- height: 40,
- child: MyViews().myText('确定', Colors.white, 14),
- alignment: Alignment.center,
- ),
- ),
- )
- ],
- ),
- )
- ],
- mainAxisAlignment: MainAxisAlignment.spaceBetween,
- ),
- ),
- ),
- );
- },
- );
- }
- showSimpleDialog(String content, BuildContext context, onTap) {
- showDialog(
- context: context,
- builder: (BuildContext context) {
- return Material(
- color: Colors.black12,
- child: Center(
- child: Container(
- decoration: BoxDecoration(
- borderRadius: BorderRadius.circular(16),
- color: Colors.white,
- ),
- height: 180,
- margin: EdgeInsets.symmetric(horizontal: 18),
- padding: EdgeInsets.symmetric(horizontal: 8, vertical: 12),
- child: Column(
- children: [
- Expanded(
- child: Center(
- child: Container(
- child: MyViews().myText(content, MyColors.c333333, 14),
- margin: EdgeInsets.symmetric(horizontal: 20),
- ),
- ),
- ),
- Container(
- height: 0.5,
- color: MyColors.cE7E7E7,
- margin: EdgeInsets.only(bottom: 12),
- ),
- Container(
- margin: EdgeInsets.symmetric(horizontal: 10),
- child: Row(
- children: [
- Expanded(
- child: GestureDetector(
- onTap: () {
- Navigator.pop(context);
- },
- behavior: HitTestBehavior.translucent,
- child: Container(
- decoration: BoxDecoration(
- borderRadius: BorderRadius.only(
- topLeft: Radius.circular(20),
- bottomLeft: Radius.circular(20),
- ),
- border: Border.all(
- color: MyColors.cFF4233, width: 1.1),
- color: Colors.white),
- child: MyViews().myText('取消', MyColors.cFF4233, 14),
- height: 40,
- alignment: Alignment.center,
- ),
- ),
- ),
- Expanded(
- child: GestureDetector(
- behavior: HitTestBehavior.translucent,
- onTap: onTap,
- child: Container(
- decoration: BoxDecoration(
- borderRadius: BorderRadius.only(
- topRight: Radius.circular(20),
- bottomRight: Radius.circular(20),
- ),
- color: MyColors.cFF4233),
- height: 40,
- child: MyViews().myText('确定', Colors.white, 14),
- alignment: Alignment.center,
- ),
- ),
- )
- ],
- ),
- )
- ],
- mainAxisAlignment: MainAxisAlignment.spaceBetween,
- ),
- ),
- ),
- );
- },
- );
- }
- updateDialog(AndroidAppVersionBeanData data, BuildContext context) {
- bool startUpdate = false;
- bool downloadCompleted = false;
- String filePath = '';
- int p = 0;
- EventBus().off('允许安装');
- EventBus().off('更新进度条');
- showDialog(
- context: context,
- builder: (BuildContext context) {
- return WillPopScope(
- onWillPop: () {
- return Future.value(false);
- },
- child: StreamBuilder<Object>(builder: (context, snapshot) {
- return Material(
- color: Colors.black12,
- child: Center(
- child: Container(
- decoration: BoxDecoration(
- borderRadius: BorderRadius.circular(16),
- color: Colors.white,
- ),
- height: 165,
- margin: EdgeInsets.symmetric(horizontal: 18),
- padding: EdgeInsets.symmetric(horizontal: 8, vertical: 12),
- child: StatefulBuilder(
- builder: (BuildContext context,
- void Function(void Function()) setState) {
- EventBus().on('更新进度条', (arg) {
- p = arg;
- setState(() {});
- });
- EventBus().on('允许安装', (arg) {
- downloadCompleted = true;
- filePath = arg;
- setState(() {});
- });
- if (startUpdate) {
- return Column(
- children: [
- Container(
- height: 88,
- child: Column(
- children: [
- Container(
- child: MyViews()
- .myText('更新中...', MyColors.c333333, 16),
- ),
- SizedBox(
- height: 15,
- child: ClipRRect(
- borderRadius: BorderRadius.circular(7.5),
- child: LinearProgressIndicator(
- backgroundColor: Colors.grey[200],
- valueColor: AlwaysStoppedAnimation(
- MyColors.cFF4233),
- value: downloadCompleted
- ? 1
- : NumUtil.divide(p, 100),
- ),
- ),
- ),
- ],
- mainAxisAlignment: MainAxisAlignment.spaceAround,
- ),
- ),
- Container(
- height: 0.5,
- color: MyColors.cE7E7E7,
- margin: EdgeInsets.only(bottom: 12),
- ),
- Container(
- margin: EdgeInsets.symmetric(horizontal: 20),
- child: GestureDetector(
- behavior: HitTestBehavior.translucent,
- onTap: () {
- if (downloadCompleted) {
- installApk(filePath);
- }
- },
- child: Container(
- decoration: BoxDecoration(
- borderRadius: BorderRadius.circular(20),
- color: downloadCompleted
- ? MyColors.cFF4233
- : MyColors.c999999),
- height: 40,
- child: MyViews().myText('安装', Colors.white, 14),
- alignment: Alignment.center,
- ),
- ),
- )
- ],
- mainAxisAlignment: MainAxisAlignment.center,
- );
- } else {
- return Column(
- children: [
- Container(
- height: 88,
- child: MyViews().myText(
- data.force
- ? '检查到新版本(v${data.version}),本次属于强制更新,如不同意更新,将退出APP'
- : '检查到新版本(v${data.version}),请问是否更新',
- MyColors.c333333,
- 14),
- margin: EdgeInsets.symmetric(horizontal: 20),
- alignment: Alignment.center,
- ),
- Container(
- height: 0.5,
- color: MyColors.cE7E7E7,
- margin: EdgeInsets.only(bottom: 12),
- ),
- data.force
- ? Expanded(
- child: GestureDetector(
- behavior: HitTestBehavior.translucent,
- onTap: () {
- if (Platform.isAndroid) {
- downloadAPK(data, context);
- startUpdate = true;
- setState(() {});
- } else if (Platform.isIOS) {
- LaunchReview.launch(
- writeReview: false,
- iOSAppId: appStoreID);
- } else {
- Navigator.pop(context);
- }
- },
- child: Container(
- margin:
- EdgeInsets.symmetric(horizontal: 10),
- decoration: BoxDecoration(
- borderRadius:
- BorderRadius.circular(20),
- color: MyColors.cFF4233),
- height: 40,
- child: MyViews()
- .myText('立即更新', Colors.white, 14),
- alignment: Alignment.center,
- ),
- ),
- )
- : Row(
- children: [
- Expanded(
- child: GestureDetector(
- onTap: () {
- if (data.force) {
- EventBus().off('允许安装');
- EventBus().off('更新进度条');
- SystemNavigator.pop();
- } else {
- EventBus().off('允许安装');
- EventBus().off('更新进度条');
- Navigator.pop(context);
- }
- },
- behavior: HitTestBehavior.translucent,
- child: Container(
- margin: EdgeInsets.only(left: 10),
- decoration: BoxDecoration(
- borderRadius: BorderRadius.only(
- topLeft: Radius.circular(20),
- bottomLeft: Radius.circular(20),
- ),
- border: Border.all(
- color: MyColors.cFF4233,
- width: 1.1),
- color: Colors.white),
- child: MyViews().myText(
- '暂不更新', MyColors.cFF4233, 14),
- height: 40,
- alignment: Alignment.center,
- ),
- ),
- ),
- Expanded(
- child: GestureDetector(
- behavior: HitTestBehavior.translucent,
- onTap: () {
- if (Platform.isAndroid) {
- downloadAPK(data, context);
- startUpdate = true;
- setState(() {});
- } else if (Platform.isIOS) {
- LaunchReview.launch(
- writeReview: false,
- iOSAppId: appStoreID);
- } else {
- Navigator.pop(context);
- }
- },
- child: Container(
- margin: EdgeInsets.only(right: 10),
- decoration: BoxDecoration(
- borderRadius: BorderRadius.only(
- topRight: Radius.circular(20),
- bottomRight:
- Radius.circular(20),
- ),
- color: MyColors.cFF4233),
- height: 40,
- child: MyViews()
- .myText('立即更新', Colors.white, 14),
- alignment: Alignment.center,
- ),
- ),
- )
- ],
- )
- ],
- mainAxisAlignment: MainAxisAlignment.spaceBetween,
- );
- }
- },
- ),
- ),
- ),
- );
- }),
- );
- },
- );
- }
- downloadAPK(AndroidAppVersionBeanData data, BuildContext context) async {
- Directory storageDir = await getExternalStorageDirectory();
- String storagePath = storageDir.path;
- File file = new File(
- '$storagePath/${PinyinHelper.getShortPinyin(MyCookie().packageInfo.appName)}.apk');
- if (!file.existsSync()) {
- file.createSync();
- }
- print(apkURL(data.download));
- Dio().download(apkURL(data.download), file.path,
- onReceiveProgress: (int count, int total) {
- EventBus().emit('更新进度条', ((count / (data.size)) * 100).floor());
- }).then((value) {
- print('下载完成');
- EventBus().emit('允许安装', file.path);
- }).catchError((e) {
- print(e);
- Navigator.pop(context);
- EventBus().off('允许安装');
- EventBus().off('更新进度条');
- EasyLoading.showToast('下载失败');
- });
- }
- Widget advertisingItems(BuildContext context, AdBeanDataData data) {
- double w = (MediaQuery.of(context).size.width - 47) / 2;
- List<Color> colors = [
- MyColors.cADD358,
- MyColors.cFF4233,
- MyColors.cFF88B4,
- MyColors.cFFCD00
- ];
- List<String> types = ['投放中', '未付费', '已结束', '未投放'];
- int typeIndex;
- if (data.paid == false) {
- typeIndex = 1;
- } else {
- var sT = DateTime.parse(data.startDate);
- var eT = sT.add(Duration(days: data.days));
- if (sT.isBefore(DateTime.now()) && eT.isAfter(DateTime.now())) {
- typeIndex = 0;
- } else if (sT.isAfter(DateTime.now())) {
- typeIndex = 3;
- } else if (eT.isBefore(DateTime.now())) {
- typeIndex = 2;
- }
- }
- return Card(
- child: Column(
- children: [
- ClipRRect(
- child: Container(
- child: Stack(
- children: [
- MyViews().netImg(imgURL(data.coverPath), w, w,
- placeholder: 'images/svg/goodsDefImg.svg'),
- Positioned(
- right: 0,
- top: 5,
- child: Container(
- decoration: BoxDecoration(
- color: colors[typeIndex],
- borderRadius: BorderRadius.only(
- topLeft: Radius.circular(7),
- bottomLeft: Radius.circular(7),
- ),
- ),
- height: 14,
- width: 32,
- child: MyViews().myText(types[typeIndex], Colors.white, 8),
- alignment: Alignment.center,
- ),
- )
- ],
- ),
- height: w,
- width: w,
- ),
- borderRadius: BorderRadius.only(
- topRight: Radius.circular(4), topLeft: Radius.circular(4)),
- ),
- Expanded(
- child: Padding(
- padding: const EdgeInsets.symmetric(horizontal: 5, vertical: 10),
- child: Column(
- children: [
- Text(
- data.title,
- style: TextStyle(color: MyColors.c333333, fontSize: 12),
- maxLines: 1,
- overflow: TextOverflow.ellipsis,
- softWrap: true,
- ),
- Text(
- '发布时间:${data.createTime}',
- style: TextStyle(color: MyColors.c999999, fontSize: 9),
- maxLines: 1,
- overflow: TextOverflow.ellipsis,
- softWrap: true,
- ),
- Text(
- '开始时间:${data.startDate}',
- style: TextStyle(color: MyColors.c999999, fontSize: 9),
- maxLines: 1,
- overflow: TextOverflow.ellipsis,
- softWrap: true,
- ),
- Text(
- '结束时间:${DateTime.parse(data.startDate).add(Duration(days: data.days)).toString().substring(0, 10)}',
- style: TextStyle(color: MyColors.c999999, fontSize: 9),
- maxLines: 1,
- overflow: TextOverflow.ellipsis,
- softWrap: true,
- ),
- ],
- crossAxisAlignment: CrossAxisAlignment.start,
- mainAxisAlignment: MainAxisAlignment.spaceBetween,
- ),
- ),
- )
- ],
- crossAxisAlignment: CrossAxisAlignment.start,
- ),
- );
- }
- Future<Null> installApk(String url) async {
- InstallPlugin.installApk(url, MyCookie().packageInfo.packageName)
- .then((result) {
- print('install apk $result');
- }).catchError((error) {
- print('install apk error: $error');
- });
- }
|