diff --git a/assets/icons/environment.png b/assets/icons/environment.png index 2aa9b711..83f00c76 100644 Binary files a/assets/icons/environment.png and b/assets/icons/environment.png differ diff --git a/assets/icons/watch.png b/assets/icons/watch.png new file mode 100644 index 00000000..cbac68e5 Binary files /dev/null and b/assets/icons/watch.png differ diff --git a/lib/gen/assets.gen.dart b/lib/gen/assets.gen.dart index f8d801c1..2baf7494 100644 --- a/lib/gen/assets.gen.dart +++ b/lib/gen/assets.gen.dart @@ -3,123 +3,65 @@ /// FlutterGen /// ***************************************************** -// ignore_for_file: directives_ordering,unnecessary_import - import 'package:flutter/widgets.dart'; class $AssetsApplicationsGen { const $AssetsApplicationsGen(); - /// File path: assets/applications/advice.png AssetGenImage get advice => const AssetGenImage('assets/applications/advice.png'); - - /// File path: assets/applications/all_app.png AssetGenImage get allApp => const AssetGenImage('assets/applications/all_app.png'); - - /// File path: assets/applications/borrow.png AssetGenImage get borrow => const AssetGenImage('assets/applications/borrow.png'); - - /// File path: assets/applications/box.png AssetGenImage get box => const AssetGenImage('assets/applications/box.png'); - - /// File path: assets/applications/committee.png AssetGenImage get committee => const AssetGenImage('assets/applications/committee.png'); - - /// File path: assets/applications/community_phone.png AssetGenImage get communityPhone => const AssetGenImage('assets/applications/community_phone.png'); - - /// File path: assets/applications/complaint.png AssetGenImage get complaint => const AssetGenImage('assets/applications/complaint.png'); - - /// File path: assets/applications/decoration.png AssetGenImage get decoration => const AssetGenImage('assets/applications/decoration.png'); - - /// File path: assets/applications/digital.png AssetGenImage get digital => const AssetGenImage('assets/applications/digital.png'); - - /// File path: assets/applications/door_code.png AssetGenImage get doorCode => const AssetGenImage('assets/applications/door_code.png'); - - /// File path: assets/applications/fix.png AssetGenImage get fix => const AssetGenImage('assets/applications/fix.png'); - - /// File path: assets/applications/goods_out.png AssetGenImage get goodsOut => const AssetGenImage('assets/applications/goods_out.png'); - - /// File path: assets/applications/home_live.png AssetGenImage get homeLive => const AssetGenImage('assets/applications/home_live.png'); - - /// File path: assets/applications/hospital.png AssetGenImage get hospital => const AssetGenImage('assets/applications/hospital.png'); - - /// File path: assets/applications/makeup.png AssetGenImage get makeup => const AssetGenImage('assets/applications/makeup.png'); - - /// File path: assets/applications/oepn_door.png AssetGenImage get oepnDoor => const AssetGenImage('assets/applications/oepn_door.png'); - - /// File path: assets/applications/payment.png AssetGenImage get payment => const AssetGenImage('assets/applications/payment.png'); - - /// File path: assets/applications/police.png AssetGenImage get police => const AssetGenImage('assets/applications/police.png'); - - /// File path: assets/applications/question.png AssetGenImage get question => const AssetGenImage('assets/applications/question.png'); - - /// File path: assets/applications/snack.png AssetGenImage get snack => const AssetGenImage('assets/applications/snack.png'); - - /// File path: assets/applications/tool_bmts.png AssetGenImage get toolBmts => const AssetGenImage('assets/applications/tool_bmts.png'); - - /// File path: assets/applications/toy.png AssetGenImage get toy => const AssetGenImage('assets/applications/toy.png'); - - /// File path: assets/applications/transfer.png AssetGenImage get transfer => const AssetGenImage('assets/applications/transfer.png'); - - /// File path: assets/applications/visitor_invite.png AssetGenImage get visitorInvite => const AssetGenImage('assets/applications/visitor_invite.png'); - - /// File path: assets/applications/vote.png AssetGenImage get vote => const AssetGenImage('assets/applications/vote.png'); - - /// File path: assets/applications/wine.png AssetGenImage get wine => const AssetGenImage('assets/applications/wine.png'); } class $AssetsBraceletGen { const $AssetsBraceletGen(); - /// File path: assets/bracelet/x5.png AssetGenImage get x5 => const AssetGenImage('assets/bracelet/x5.png'); - - /// File path: assets/bracelet/x8.png AssetGenImage get x8 => const AssetGenImage('assets/bracelet/x8.png'); - - /// File path: assets/bracelet/xiaomi6.png AssetGenImage get xiaomi6 => const AssetGenImage('assets/bracelet/xiaomi6.png'); } @@ -127,1114 +69,543 @@ class $AssetsBraceletGen { class $AssetsIconsGen { const $AssetsIconsGen(); - /// File path: assets/icons/add.png AssetGenImage get add => const AssetGenImage('assets/icons/add.png'); - - /// File path: assets/icons/alarm.png AssetGenImage get alarm => const AssetGenImage('assets/icons/alarm.png'); - - /// File path: assets/icons/alipay_round.png AssetGenImage get alipayRound => const AssetGenImage('assets/icons/alipay_round.png'); - - /// File path: assets/icons/app_add.png AssetGenImage get appAdd => const AssetGenImage('assets/icons/app_add.png'); - - /// File path: assets/icons/app_alarm.png AssetGenImage get appAlarm => const AssetGenImage('assets/icons/app_alarm.png'); - - /// File path: assets/icons/app_reduce.png AssetGenImage get appReduce => const AssetGenImage('assets/icons/app_reduce.png'); - - /// File path: assets/icons/appointment-address.png AssetGenImage get appointmentAddress => const AssetGenImage('assets/icons/appointment-address.png'); - - /// File path: assets/icons/appointment-code.png AssetGenImage get appointmentCode => const AssetGenImage('assets/icons/appointment-code.png'); - - /// File path: assets/icons/appointment_date.png AssetGenImage get appointmentDate => const AssetGenImage('assets/icons/appointment_date.png'); - - /// File path: assets/icons/article_count.png AssetGenImage get articleCount => const AssetGenImage('assets/icons/article_count.png'); - - /// File path: assets/icons/article_name.png AssetGenImage get articleName => const AssetGenImage('assets/icons/article_name.png'); - - /// File path: assets/icons/bee_task.png AssetGenImage get beeTask => const AssetGenImage('assets/icons/bee_task.png'); - - /// File path: assets/icons/blood_ressure.png AssetGenImage get bloodRessure => const AssetGenImage('assets/icons/blood_ressure.png'); - - /// File path: assets/icons/borrow_failure.png AssetGenImage get borrowFailure => const AssetGenImage('assets/icons/borrow_failure.png'); - - /// File path: assets/icons/borrow_status.png AssetGenImage get borrowStatus => const AssetGenImage('assets/icons/borrow_status.png'); - - /// File path: assets/icons/borrow_success.png AssetGenImage get borrowSuccess => const AssetGenImage('assets/icons/borrow_success.png'); - - /// File path: assets/icons/change.png AssetGenImage get change => const AssetGenImage('assets/icons/change.png'); - - /// File path: assets/icons/clock_circle.png AssetGenImage get clockCircle => const AssetGenImage('assets/icons/clock_circle.png'); - - /// File path: assets/icons/clock_success.png AssetGenImage get clockSuccess => const AssetGenImage('assets/icons/clock_success.png'); - - /// File path: assets/icons/collect.png AssetGenImage get collect => const AssetGenImage('assets/icons/collect.png'); - - /// File path: assets/icons/collection_setting.png AssetGenImage get collectionSetting => const AssetGenImage('assets/icons/collection_setting.png'); - - /// File path: assets/icons/collection_share.png AssetGenImage get collectionShare => const AssetGenImage('assets/icons/collection_share.png'); - - /// File path: assets/icons/comment_notice.png AssetGenImage get commentNotice => const AssetGenImage('assets/icons/comment_notice.png'); - - /// File path: assets/icons/commerc.png AssetGenImage get commerc => const AssetGenImage('assets/icons/commerc.png'); - - /// File path: assets/icons/community_comment.png AssetGenImage get communityComment => const AssetGenImage('assets/icons/community_comment.png'); - - /// File path: assets/icons/community_comment_is.png AssetGenImage get communityCommentIs => const AssetGenImage('assets/icons/community_comment_is.png'); - - /// File path: assets/icons/community_like.png AssetGenImage get communityLike => const AssetGenImage('assets/icons/community_like.png'); - - /// File path: assets/icons/community_like_is.png AssetGenImage get communityLikeIs => const AssetGenImage('assets/icons/community_like_is.png'); - - /// File path: assets/icons/complaint.png AssetGenImage get complaint => const AssetGenImage('assets/icons/complaint.png'); - - /// File path: assets/icons/consult.png AssetGenImage get consult => const AssetGenImage('assets/icons/consult.png'); - - /// File path: assets/icons/contract.png AssetGenImage get contract => const AssetGenImage('assets/icons/contract.png'); - - /// File path: assets/icons/delete.png AssetGenImage get delete => const AssetGenImage('assets/icons/delete.png'); - - /// File path: assets/icons/device_alarm.png AssetGenImage get deviceAlarm => const AssetGenImage('assets/icons/device_alarm.png'); - - /// File path: assets/icons/edit.png AssetGenImage get edit => const AssetGenImage('assets/icons/edit.png'); - - /// File path: assets/icons/environment.png AssetGenImage get environment => const AssetGenImage('assets/icons/environment.png'); - - /// File path: assets/icons/examine.png AssetGenImage get examine => const AssetGenImage('assets/icons/examine.png'); - - /// File path: assets/icons/examining.png AssetGenImage get examining => const AssetGenImage('assets/icons/examining.png'); - - /// File path: assets/icons/eye_close.png AssetGenImage get eyeClose => const AssetGenImage('assets/icons/eye_close.png'); - - /// File path: assets/icons/facility.png AssetGenImage get facility => const AssetGenImage('assets/icons/facility.png'); - - /// File path: assets/icons/falldown.png AssetGenImage get falldown => const AssetGenImage('assets/icons/falldown.png'); - - /// File path: assets/icons/file.png AssetGenImage get file => const AssetGenImage('assets/icons/file.png'); - - /// File path: assets/icons/filter.png AssetGenImage get filter => const AssetGenImage('assets/icons/filter.png'); - - /// File path: assets/icons/finish.png AssetGenImage get finish => const AssetGenImage('assets/icons/finish.png'); - - /// File path: assets/icons/fire_alarm.png AssetGenImage get fireAlarm => const AssetGenImage('assets/icons/fire_alarm.png'); - - /// File path: assets/icons/foot.png AssetGenImage get foot => const AssetGenImage('assets/icons/foot.png'); - - /// File path: assets/icons/func_all.png AssetGenImage get funcAll => const AssetGenImage('assets/icons/func_all.png'); - - /// File path: assets/icons/func_bmdh.png AssetGenImage get funcBmdh => const AssetGenImage('assets/icons/func_bmdh.png'); - - /// File path: assets/icons/func_bsbx.png AssetGenImage get funcBsbx => const AssetGenImage('assets/icons/func_bsbx.png'); - - /// File path: assets/icons/func_dlxx.png AssetGenImage get funcDlxx => const AssetGenImage('assets/icons/func_dlxx.png'); - - /// File path: assets/icons/func_dzsw.png AssetGenImage get funcDzsw => const AssetGenImage('assets/icons/func_dzsw.png'); - - /// File path: assets/icons/func_fkyq.png AssetGenImage get funcFkyq => const AssetGenImage('assets/icons/func_fkyq.png'); - - /// File path: assets/icons/func_fwll.png AssetGenImage get funcFwll => const AssetGenImage('assets/icons/func_fwll.png'); - - /// File path: assets/icons/func_gife.png AssetGenImage get funcGife => const AssetGenImage('assets/icons/func_gife.png'); - - /// File path: assets/icons/func_hdtp.png AssetGenImage get funcHdtp => const AssetGenImage('assets/icons/func_hdtp.png'); - - /// File path: assets/icons/func_jhgl.png AssetGenImage get funcJhgl => const AssetGenImage('assets/icons/func_jhgl.png'); - - /// File path: assets/icons/func_jyzx.png AssetGenImage get funcJyzx => const AssetGenImage('assets/icons/func_jyzx.png'); - - /// File path: assets/icons/func_jzfw.png AssetGenImage get funcJzfw => const AssetGenImage('assets/icons/func_jzfw.png'); - - /// File path: assets/icons/func_kdbg.png AssetGenImage get funcKdbg => const AssetGenImage('assets/icons/func_kdbg.png'); - - /// File path: assets/icons/func_kmm.png AssetGenImage get funcKmm => const AssetGenImage('assets/icons/func_kmm.png'); - - /// File path: assets/icons/func_shjf.png AssetGenImage get funcShjf => const AssetGenImage('assets/icons/func_shjf.png'); - - /// File path: assets/icons/func_sqjs.png AssetGenImage get funcSqjs => const AssetGenImage('assets/icons/func_sqjs.png'); - - /// File path: assets/icons/func_ssyy.png AssetGenImage get funcSsyy => const AssetGenImage('assets/icons/func_ssyy.png'); - - /// File path: assets/icons/func_tsby.png AssetGenImage get funcTsby => const AssetGenImage('assets/icons/func_tsby.png'); - - /// File path: assets/icons/func_wjdc.png AssetGenImage get funcWjdc => const AssetGenImage('assets/icons/func_wjdc.png'); - - /// File path: assets/icons/func_wpch.png AssetGenImage get funcWpch => const AssetGenImage('assets/icons/func_wpch.png'); - - /// File path: assets/icons/func_yjbj.png AssetGenImage get funcYjbj => const AssetGenImage('assets/icons/func_yjbj.png'); - - /// File path: assets/icons/func_ywh.png AssetGenImage get funcYwh => const AssetGenImage('assets/icons/func_ywh.png'); - - /// File path: assets/icons/func_zbqy.png AssetGenImage get funcZbqy => const AssetGenImage('assets/icons/func_zbqy.png'); - - /// File path: assets/icons/func_zfsm.png AssetGenImage get funcZfsm => const AssetGenImage('assets/icons/func_zfsm.png'); - - /// File path: assets/icons/func_zxgl.png AssetGenImage get funcZxgl => const AssetGenImage('assets/icons/func_zxgl.png'); - - /// File path: assets/icons/goods_borrow.png AssetGenImage get goodsBorrow => const AssetGenImage('assets/icons/goods_borrow.png'); - - /// File path: assets/icons/goods_return.png AssetGenImage get goodsReturn => const AssetGenImage('assets/icons/goods_return.png'); - - /// File path: assets/icons/groupbuy_tab_selected.png AssetGenImage get groupbuyTabSelected => const AssetGenImage('assets/icons/groupbuy_tab_selected.png'); - - /// File path: assets/icons/groupbuy_tab_unselected.png AssetGenImage get groupbuyTabUnselected => const AssetGenImage('assets/icons/groupbuy_tab_unselected.png'); - - /// File path: assets/icons/heartbeat.png AssetGenImage get heartbeat => const AssetGenImage('assets/icons/heartbeat.png'); - - /// File path: assets/icons/hot_fire.png AssetGenImage get hotFire => const AssetGenImage('assets/icons/hot_fire.png'); - - /// File path: assets/icons/house.png AssetGenImage get house => const AssetGenImage('assets/icons/house.png'); - - /// File path: assets/icons/house_keeping.png AssetGenImage get houseKeeping => const AssetGenImage('assets/icons/house_keeping.png'); - - /// File path: assets/icons/icon_address_edit.png AssetGenImage get iconAddressEdit => const AssetGenImage('assets/icons/icon_address_edit.png'); - - /// File path: assets/icons/icon_address_isdefault.png AssetGenImage get iconAddressIsdefault => const AssetGenImage('assets/icons/icon_address_isdefault.png'); - - /// File path: assets/icons/icon_address_not.png AssetGenImage get iconAddressNot => const AssetGenImage('assets/icons/icon_address_not.png'); - - /// File path: assets/icons/icon_back.png AssetGenImage get iconBack => const AssetGenImage('assets/icons/icon_back.png'); - - /// File path: assets/icons/icon_change_grid.png AssetGenImage get iconChangeGrid => const AssetGenImage('assets/icons/icon_change_grid.png'); - - /// File path: assets/icons/icon_change_list.png AssetGenImage get iconChangeList => const AssetGenImage('assets/icons/icon_change_list.png'); - - /// File path: assets/icons/icon_comment.png AssetGenImage get iconComment => const AssetGenImage('assets/icons/icon_comment.png'); - - /// File path: assets/icons/icon_community_push.png AssetGenImage get iconCommunityPush => const AssetGenImage('assets/icons/icon_community_push.png'); - - /// File path: assets/icons/icon_favor_choose.png AssetGenImage get iconFavorChoose => const AssetGenImage('assets/icons/icon_favor_choose.png'); - - /// File path: assets/icons/icon_good_car.png AssetGenImage get iconGoodCar => const AssetGenImage('assets/icons/icon_good_car.png'); - - /// File path: assets/icons/icon_good_favor.png AssetGenImage get iconGoodFavor => const AssetGenImage('assets/icons/icon_good_favor.png'); - - /// File path: assets/icons/icon_good_location.png AssetGenImage get iconGoodLocation => const AssetGenImage('assets/icons/icon_good_location.png'); - - /// File path: assets/icons/icon_good_my.png AssetGenImage get iconGoodMy => const AssetGenImage('assets/icons/icon_good_my.png'); - - /// File path: assets/icons/icon_logistics.png AssetGenImage get iconLogistics => const AssetGenImage('assets/icons/icon_logistics.png'); - - /// File path: assets/icons/icon_main_all.png AssetGenImage get iconMainAll => const AssetGenImage('assets/icons/icon_main_all.png'); - - /// File path: assets/icons/icon_main_consult.png AssetGenImage get iconMainConsult => const AssetGenImage('assets/icons/icon_main_consult.png'); - - /// File path: assets/icons/icon_main_find.png AssetGenImage get iconMainFind => const AssetGenImage('assets/icons/icon_main_find.png'); - - /// File path: assets/icons/icon_main_fix.png AssetGenImage get iconMainFix => const AssetGenImage('assets/icons/icon_main_fix.png'); - - /// File path: assets/icons/icon_main_invite.png AssetGenImage get iconMainInvite => const AssetGenImage('assets/icons/icon_main_invite.png'); - - /// File path: assets/icons/icon_main_location.png AssetGenImage get iconMainLocation => const AssetGenImage('assets/icons/icon_main_location.png'); - - /// File path: assets/icons/icon_main_message.png AssetGenImage get iconMainMessage => const AssetGenImage('assets/icons/icon_main_message.png'); - - /// File path: assets/icons/icon_main_open.png AssetGenImage get iconMainOpen => const AssetGenImage('assets/icons/icon_main_open.png'); - - /// File path: assets/icons/icon_main_pay.png AssetGenImage get iconMainPay => const AssetGenImage('assets/icons/icon_main_pay.png'); - - /// File path: assets/icons/icon_main_police.png AssetGenImage get iconMainPolice => const AssetGenImage('assets/icons/icon_main_police.png'); - - /// File path: assets/icons/icon_main_subscribe.png AssetGenImage get iconMainSubscribe => const AssetGenImage('assets/icons/icon_main_subscribe.png'); - - /// File path: assets/icons/icon_market_success.png AssetGenImage get iconMarketSuccess => const AssetGenImage('assets/icons/icon_market_success.png'); - - /// File path: assets/icons/icon_more.png AssetGenImage get iconMore => const AssetGenImage('assets/icons/icon_more.png'); - - /// File path: assets/icons/icon_more_black.png AssetGenImage get iconMoreBlack => const AssetGenImage('assets/icons/icon_more_black.png'); - - /// File path: assets/icons/icon_my_car.png AssetGenImage get iconMyCar => const AssetGenImage('assets/icons/icon_my_car.png'); - - /// File path: assets/icons/icon_my_carSeat.png AssetGenImage get iconMyCarSeat => const AssetGenImage('assets/icons/icon_my_carSeat.png'); - - /// File path: assets/icons/icon_my_edit.png AssetGenImage get iconMyEdit => const AssetGenImage('assets/icons/icon_my_edit.png'); - - /// File path: assets/icons/icon_my_house.png AssetGenImage get iconMyHouse => const AssetGenImage('assets/icons/icon_my_house.png'); - - /// File path: assets/icons/icon_my_location.png AssetGenImage get iconMyLocation => const AssetGenImage('assets/icons/icon_my_location.png'); - - /// File path: assets/icons/icon_my_setting.png AssetGenImage get iconMySetting => const AssetGenImage('assets/icons/icon_my_setting.png'); - - /// File path: assets/icons/icon_my_visitor.png AssetGenImage get iconMyVisitor => const AssetGenImage('assets/icons/icon_my_visitor.png'); - - /// File path: assets/icons/icon_notification.png AssetGenImage get iconNotification => const AssetGenImage('assets/icons/icon_notification.png'); - - /// File path: assets/icons/icon_price.png AssetGenImage get iconPrice => const AssetGenImage('assets/icons/icon_price.png'); - - /// File path: assets/icons/icon_price_bottom.png AssetGenImage get iconPriceBottom => const AssetGenImage('assets/icons/icon_price_bottom.png'); - - /// File path: assets/icons/icon_price_normal.png AssetGenImage get iconPriceNormal => const AssetGenImage('assets/icons/icon_price_normal.png'); - - /// File path: assets/icons/icon_price_top.png AssetGenImage get iconPriceTop => const AssetGenImage('assets/icons/icon_price_top.png'); - - /// File path: assets/icons/icon_property_location.png AssetGenImage get iconPropertyLocation => const AssetGenImage('assets/icons/icon_property_location.png'); - - /// File path: assets/icons/icon_property_message.png AssetGenImage get iconPropertyMessage => const AssetGenImage('assets/icons/icon_property_message.png'); - - /// File path: assets/icons/icon_property_search.png AssetGenImage get iconPropertySearch => const AssetGenImage('assets/icons/icon_property_search.png'); - - /// File path: assets/icons/icon_setting.png AssetGenImage get iconSetting => const AssetGenImage('assets/icons/icon_setting.png'); - - /// File path: assets/icons/icon_sort.png AssetGenImage get iconSort => const AssetGenImage('assets/icons/icon_sort.png'); - - /// File path: assets/icons/icon_thumbsUp.png AssetGenImage get iconThumbsUp => const AssetGenImage('assets/icons/icon_thumbsUp.png'); - - /// File path: assets/icons/icon_toTop.png AssetGenImage get iconToTop => const AssetGenImage('assets/icons/icon_toTop.png'); - - /// File path: assets/icons/icon_topic_first.png AssetGenImage get iconTopicFirst => const AssetGenImage('assets/icons/icon_topic_first.png'); - - /// File path: assets/icons/icon_topic_second.png AssetGenImage get iconTopicSecond => const AssetGenImage('assets/icons/icon_topic_second.png'); - - /// File path: assets/icons/icon_topic_third.png AssetGenImage get iconTopicThird => const AssetGenImage('assets/icons/icon_topic_third.png'); - - /// File path: assets/icons/identify.png AssetGenImage get identify => const AssetGenImage('assets/icons/identify.png'); - - /// File path: assets/icons/img_add.png AssetGenImage get imgAdd => const AssetGenImage('assets/icons/img_add.png'); - - /// File path: assets/icons/intergral.png AssetGenImage get intergral => const AssetGenImage('assets/icons/intergral.png'); - - /// File path: assets/icons/introduce.png AssetGenImage get introduce => const AssetGenImage('assets/icons/introduce.png'); - - /// File path: assets/icons/lease_house.png AssetGenImage get leaseHouse => const AssetGenImage('assets/icons/lease_house.png'); - - /// File path: assets/icons/like.png AssetGenImage get like => const AssetGenImage('assets/icons/like.png'); - - /// File path: assets/icons/location.png AssetGenImage get location => const AssetGenImage('assets/icons/location.png'); - - /// File path: assets/icons/manager_order_cancel.png AssetGenImage get managerOrderCancel => const AssetGenImage('assets/icons/manager_order_cancel.png'); - - /// File path: assets/icons/manager_phone_call.png AssetGenImage get managerPhoneCall => const AssetGenImage('assets/icons/manager_phone_call.png'); - - /// File path: assets/icons/market_tab_selected.png AssetGenImage get marketTabSelected => const AssetGenImage('assets/icons/market_tab_selected.png'); - - /// File path: assets/icons/market_tab_unselected.png AssetGenImage get marketTabUnselected => const AssetGenImage('assets/icons/market_tab_unselected.png'); - - /// File path: assets/icons/nearby_pet.png AssetGenImage get nearbyPet => const AssetGenImage('assets/icons/nearby_pet.png'); - - /// File path: assets/icons/nearby_service.png AssetGenImage get nearbyService => const AssetGenImage('assets/icons/nearby_service.png'); - - /// File path: assets/icons/oxygen.png AssetGenImage get oxygen => const AssetGenImage('assets/icons/oxygen.png'); - - /// File path: assets/icons/pass.png AssetGenImage get pass => const AssetGenImage('assets/icons/pass.png'); - - /// File path: assets/icons/pay.png AssetGenImage get pay => const AssetGenImage('assets/icons/pay.png'); - - /// File path: assets/icons/phone.png AssetGenImage get phone => const AssetGenImage('assets/icons/phone.png'); - - /// File path: assets/icons/phone_circle.png AssetGenImage get phoneCircle => const AssetGenImage('assets/icons/phone_circle.png'); - - /// File path: assets/icons/projection_screen.png AssetGenImage get projectionScreen => const AssetGenImage('assets/icons/projection_screen.png'); - - /// File path: assets/icons/property.png AssetGenImage get property => const AssetGenImage('assets/icons/property.png'); - - /// File path: assets/icons/proposal.png AssetGenImage get proposal => const AssetGenImage('assets/icons/proposal.png'); - - /// File path: assets/icons/provide_aged.png AssetGenImage get provideAged => const AssetGenImage('assets/icons/provide_aged.png'); - - /// File path: assets/icons/record.png AssetGenImage get record => const AssetGenImage('assets/icons/record.png'); - - /// File path: assets/icons/reject.png AssetGenImage get reject => const AssetGenImage('assets/icons/reject.png'); - - /// File path: assets/icons/report.png AssetGenImage get report => const AssetGenImage('assets/icons/report.png'); - - /// File path: assets/icons/reward.png AssetGenImage get reward => const AssetGenImage('assets/icons/reward.png'); - - /// File path: assets/icons/second_hand.png AssetGenImage get secondHand => const AssetGenImage('assets/icons/second_hand.png'); - - /// File path: assets/icons/second_hand_market.png AssetGenImage get secondHandMarket => const AssetGenImage('assets/icons/second_hand_market.png'); - - /// File path: assets/icons/service.png AssetGenImage get service => const AssetGenImage('assets/icons/service.png'); - - /// File path: assets/icons/share_park.png AssetGenImage get sharePark => const AssetGenImage('assets/icons/share_park.png'); - - /// File path: assets/icons/shield_content.png AssetGenImage get shieldContent => const AssetGenImage('assets/icons/shield_content.png'); - - /// File path: assets/icons/shield_user.png AssetGenImage get shieldUser => const AssetGenImage('assets/icons/shield_user.png'); - - /// File path: assets/icons/shop_car.png AssetGenImage get shopCar => const AssetGenImage('assets/icons/shop_car.png'); - - /// File path: assets/icons/shop_close.png AssetGenImage get shopClose => const AssetGenImage('assets/icons/shop_close.png'); - - /// File path: assets/icons/shop_favorfill.png AssetGenImage get shopFavorfill => const AssetGenImage('assets/icons/shop_favorfill.png'); - - /// File path: assets/icons/shop_laba.png AssetGenImage get shopLaba => const AssetGenImage('assets/icons/shop_laba.png'); - - /// File path: assets/icons/shop_location.png AssetGenImage get shopLocation => const AssetGenImage('assets/icons/shop_location.png'); - - /// File path: assets/icons/shop_notice.png AssetGenImage get shopNotice => const AssetGenImage('assets/icons/shop_notice.png'); - - /// File path: assets/icons/shop_order.png AssetGenImage get shopOrder => const AssetGenImage('assets/icons/shop_order.png'); - - /// File path: assets/icons/shop_search.png AssetGenImage get shopSearch => const AssetGenImage('assets/icons/shop_search.png'); - - /// File path: assets/icons/shop_torb.png AssetGenImage get shopTorb => const AssetGenImage('assets/icons/shop_torb.png'); - - /// File path: assets/icons/shopping_mall.png AssetGenImage get shoppingMall => const AssetGenImage('assets/icons/shopping_mall.png'); - - /// File path: assets/icons/sos.png AssetGenImage get sos => const AssetGenImage('assets/icons/sos.png'); - - /// File path: assets/icons/system_notice.png AssetGenImage get systemNotice => const AssetGenImage('assets/icons/system_notice.png'); - - /// File path: assets/icons/tabbar_home.png AssetGenImage get tabbarHome => const AssetGenImage('assets/icons/tabbar_home.png'); - - /// File path: assets/icons/tabbar_home_no.png AssetGenImage get tabbarHomeNo => const AssetGenImage('assets/icons/tabbar_home_no.png'); - - /// File path: assets/icons/tabbar_house.png AssetGenImage get tabbarHouse => const AssetGenImage('assets/icons/tabbar_house.png'); - - /// File path: assets/icons/tabbar_house_no.png AssetGenImage get tabbarHouseNo => const AssetGenImage('assets/icons/tabbar_house_no.png'); - - /// File path: assets/icons/tabbar_market.png AssetGenImage get tabbarMarket => const AssetGenImage('assets/icons/tabbar_market.png'); - - /// File path: assets/icons/tabbar_market_no.png AssetGenImage get tabbarMarketNo => const AssetGenImage('assets/icons/tabbar_market_no.png'); - - /// File path: assets/icons/tabbar_message.png AssetGenImage get tabbarMessage => const AssetGenImage('assets/icons/tabbar_message.png'); - - /// File path: assets/icons/tabbar_message_no.png AssetGenImage get tabbarMessageNo => const AssetGenImage('assets/icons/tabbar_message_no.png'); - - /// File path: assets/icons/tabbar_user.png AssetGenImage get tabbarUser => const AssetGenImage('assets/icons/tabbar_user.png'); - - /// File path: assets/icons/tabbar_user_no.png AssetGenImage get tabbarUserNo => const AssetGenImage('assets/icons/tabbar_user_no.png'); - - /// File path: assets/icons/tag.png AssetGenImage get tag => const AssetGenImage('assets/icons/tag.png'); - - /// File path: assets/icons/test_kingcion.png AssetGenImage get testKingcion => const AssetGenImage('assets/icons/test_kingcion.png'); - - /// File path: assets/icons/tool_bmdh.png AssetGenImage get toolBmdh => const AssetGenImage('assets/icons/tool_bmdh.png'); - - /// File path: assets/icons/tool_bmts.png AssetGenImage get toolBmts => const AssetGenImage('assets/icons/tool_bmts.png'); - - /// File path: assets/icons/tool_bsbx.png AssetGenImage get toolBsbx => const AssetGenImage('assets/icons/tool_bsbx.png'); - - /// File path: assets/icons/tool_czxs.png AssetGenImage get toolCzxs => const AssetGenImage('assets/icons/tool_czxs.png'); - - /// File path: assets/icons/tool_facility.png AssetGenImage get toolFacility => const AssetGenImage('assets/icons/tool_facility.png'); - - /// File path: assets/icons/tool_fkyq.png AssetGenImage get toolFkyq => const AssetGenImage('assets/icons/tool_fkyq.png'); - - /// File path: assets/icons/tool_fsxb.png AssetGenImage get toolFsxb => const AssetGenImage('assets/icons/tool_fsxb.png'); - - /// File path: assets/icons/tool_hdtp.png AssetGenImage get toolHdtp => const AssetGenImage('assets/icons/tool_hdtp.png'); - - /// File path: assets/icons/tool_jhgl.png AssetGenImage get toolJhgl => const AssetGenImage('assets/icons/tool_jhgl.png'); - - /// File path: assets/icons/tool_jjsh.png AssetGenImage get toolJjsh => const AssetGenImage('assets/icons/tool_jjsh.png'); - - /// File path: assets/icons/tool_jyts.png AssetGenImage get toolJyts => const AssetGenImage('assets/icons/tool_jyts.png'); - - /// File path: assets/icons/tool_kmm.png AssetGenImage get toolKmm => const AssetGenImage('assets/icons/tool_kmm.png'); - - /// File path: assets/icons/tool_mywj.png AssetGenImage get toolMywj => const AssetGenImage('assets/icons/tool_mywj.png'); - - /// File path: assets/icons/tool_qbyy.png AssetGenImage get toolQbyy => const AssetGenImage('assets/icons/tool_qbyy.png'); - - /// File path: assets/icons/tool_shjf.png AssetGenImage get toolShjf => const AssetGenImage('assets/icons/tool_shjf.png'); - - /// File path: assets/icons/tool_smjd.png AssetGenImage get toolSmjd => const AssetGenImage('assets/icons/tool_smjd.png'); - - /// File path: assets/icons/tool_tsby.png AssetGenImage get toolTsby => const AssetGenImage('assets/icons/tool_tsby.png'); - - /// File path: assets/icons/tool_wjdc.png AssetGenImage get toolWjdc => const AssetGenImage('assets/icons/tool_wjdc.png'); - - /// File path: assets/icons/tool_wpcm.png AssetGenImage get toolWpcm => const AssetGenImage('assets/icons/tool_wpcm.png'); - - /// File path: assets/icons/tool_xxfs.png AssetGenImage get toolXxfs => const AssetGenImage('assets/icons/tool_xxfs.png'); - - /// File path: assets/icons/tool_yjbj.png AssetGenImage get toolYjbj => const AssetGenImage('assets/icons/tool_yjbj.png'); - - /// File path: assets/icons/tool_yjkm.png AssetGenImage get toolYjkm => const AssetGenImage('assets/icons/tool_yjkm.png'); - - /// File path: assets/icons/tool_yljs.png AssetGenImage get toolYljs => const AssetGenImage('assets/icons/tool_yljs.png'); - - /// File path: assets/icons/tool_ywh.png AssetGenImage get toolYwh => const AssetGenImage('assets/icons/tool_ywh.png'); - - /// File path: assets/icons/tool_zbbj.png AssetGenImage get toolZbbj => const AssetGenImage('assets/icons/tool_zbbj.png'); - - /// File path: assets/icons/tool_zxgl.png AssetGenImage get toolZxgl => const AssetGenImage('assets/icons/tool_zxgl.png'); - - /// File path: assets/icons/user_icon_dfh.png AssetGenImage get userIconDfh => const AssetGenImage('assets/icons/user_icon_dfh.png'); - - /// File path: assets/icons/user_icon_dfk.png AssetGenImage get userIconDfk => const AssetGenImage('assets/icons/user_icon_dfk.png'); - - /// File path: assets/icons/user_icon_dpj.png AssetGenImage get userIconDpj => const AssetGenImage('assets/icons/user_icon_dpj.png'); - - /// File path: assets/icons/user_icon_dsh.png AssetGenImage get userIconDsh => const AssetGenImage('assets/icons/user_icon_dsh.png'); - - /// File path: assets/icons/user_icon_sh.png AssetGenImage get userIconSh => const AssetGenImage('assets/icons/user_icon_sh.png'); - - /// File path: assets/icons/user_icon_sz.png AssetGenImage get userIconSz => const AssetGenImage('assets/icons/user_icon_sz.png'); - - /// File path: assets/icons/user_icon_vip.png AssetGenImage get userIconVip => const AssetGenImage('assets/icons/user_icon_vip.png'); - - /// File path: assets/icons/user_icon_wdbx.png AssetGenImage get userIconWdbx => const AssetGenImage('assets/icons/user_icon_wdbx.png'); - - /// File path: assets/icons/user_icon_wdc.png AssetGenImage get userIconWdc => const AssetGenImage('assets/icons/user_icon_wdc.png'); - - /// File path: assets/icons/user_icon_wdcw.png AssetGenImage get userIconWdcw => const AssetGenImage('assets/icons/user_icon_wdcw.png'); - - /// File path: assets/icons/user_icon_wddz.png AssetGenImage get userIconWddz => const AssetGenImage('assets/icons/user_icon_wddz.png'); - - /// File path: assets/icons/user_icon_wdfk.png AssetGenImage get userIconWdfk => const AssetGenImage('assets/icons/user_icon_wdfk.png'); - - /// File path: assets/icons/user_icon_wdfw.png AssetGenImage get userIconWdfw => const AssetGenImage('assets/icons/user_icon_wdfw.png'); - - /// File path: assets/icons/user_icon_wdgj.png AssetGenImage get userIconWdgj => const AssetGenImage('assets/icons/user_icon_wdgj.png'); - - /// File path: assets/icons/user_icon_wdjf.png AssetGenImage get userIconWdjf => const AssetGenImage('assets/icons/user_icon_wdjf.png'); - - /// File path: assets/icons/user_icon_wdsqhd.png AssetGenImage get userIconWdsqhd => const AssetGenImage('assets/icons/user_icon_wdsqhd.png'); - - /// File path: assets/icons/vip1.png AssetGenImage get vip1 => const AssetGenImage('assets/icons/vip1.png'); - - /// File path: assets/icons/vip2.png AssetGenImage get vip2 => const AssetGenImage('assets/icons/vip2.png'); - - /// File path: assets/icons/vip3.png AssetGenImage get vip3 => const AssetGenImage('assets/icons/vip3.png'); - - /// File path: assets/icons/vip4.png AssetGenImage get vip4 => const AssetGenImage('assets/icons/vip4.png'); - - /// File path: assets/icons/vip_font.png AssetGenImage get vipFont => const AssetGenImage('assets/icons/vip_font.png'); - - /// File path: assets/icons/xianshi.png + AssetGenImage get watch => const AssetGenImage('assets/icons/watch.png'); AssetGenImage get xianshi => const AssetGenImage('assets/icons/xianshi.png'); } class $AssetsImagesGen { const $AssetsImagesGen(); - /// File path: assets/images/application.png AssetGenImage get application => const AssetGenImage('assets/images/application.png'); - - /// File path: assets/images/car_header.png AssetGenImage get carHeader => const AssetGenImage('assets/images/car_header.png'); - - /// File path: assets/images/card_blue.png AssetGenImage get cardBlue => const AssetGenImage('assets/images/card_blue.png'); - - /// File path: assets/images/card_pink.png AssetGenImage get cardPink => const AssetGenImage('assets/images/card_pink.png'); - - /// File path: assets/images/card_yellow.png AssetGenImage get cardYellow => const AssetGenImage('assets/images/card_yellow.png'); - - /// File path: assets/images/certification.png AssetGenImage get certification => const AssetGenImage('assets/images/certification.png'); - - /// File path: assets/images/circle_left_bottom.png AssetGenImage get circleLeftBottom => const AssetGenImage('assets/images/circle_left_bottom.png'); - - /// File path: assets/images/circle_right_bottom.png AssetGenImage get circleRightBottom => const AssetGenImage('assets/images/circle_right_bottom.png'); - - /// File path: assets/images/circle_right_top.png AssetGenImage get circleRightTop => const AssetGenImage('assets/images/circle_right_top.png'); - - /// File path: assets/images/circle_text.png AssetGenImage get circleText => const AssetGenImage('assets/images/circle_text.png'); - - /// File path: assets/images/code_logo.png AssetGenImage get codeLogo => const AssetGenImage('assets/images/code_logo.png'); - - /// File path: assets/images/commitment.png AssetGenImage get commitment => const AssetGenImage('assets/images/commitment.png'); - - /// File path: assets/images/community_my_bg.png AssetGenImage get communityMyBg => const AssetGenImage('assets/images/community_my_bg.png'); - - /// File path: assets/images/contact_manager.png AssetGenImage get contactManager => const AssetGenImage('assets/images/contact_manager.png'); - - /// File path: assets/images/drawings.png AssetGenImage get drawings => const AssetGenImage('assets/images/drawings.png'); - - /// File path: assets/images/equipment_empty.png AssetGenImage get equipmentEmpty => const AssetGenImage('assets/images/equipment_empty.png'); - - /// File path: assets/images/good_detail_integral_back.png AssetGenImage get goodDetailIntegralBack => const AssetGenImage('assets/images/good_detail_integral_back.png'); - - /// File path: assets/images/house_attestation.png AssetGenImage get houseAttestation => const AssetGenImage('assets/images/house_attestation.png'); - - /// File path: assets/images/house_empty.png AssetGenImage get houseEmpty => const AssetGenImage('assets/images/house_empty.png'); - - /// File path: assets/images/house_header.png AssetGenImage get houseHeader => const AssetGenImage('assets/images/house_header.png'); - - /// File path: assets/images/license.png AssetGenImage get license => const AssetGenImage('assets/images/license.png'); - - /// File path: assets/images/license_back.png AssetGenImage get licenseBack => const AssetGenImage('assets/images/license_back.png'); - - /// File path: assets/images/lock.png AssetGenImage get lock => const AssetGenImage('assets/images/lock.png'); - - /// File path: assets/images/logo.png AssetGenImage get logo => const AssetGenImage('assets/images/logo.png'); - - /// File path: assets/images/member_bg.png AssetGenImage get memberBg => const AssetGenImage('assets/images/member_bg.png'); - - /// File path: assets/images/mine_bg.png AssetGenImage get mineBg => const AssetGenImage('assets/images/mine_bg.png'); - - /// File path: assets/images/my_bg.png AssetGenImage get myBg => const AssetGenImage('assets/images/my_bg.png'); - - /// File path: assets/images/notice.png AssetGenImage get notice => const AssetGenImage('assets/images/notice.png'); - - /// File path: assets/images/open_door.png AssetGenImage get openDoor => const AssetGenImage('assets/images/open_door.png'); - - /// File path: assets/images/phone_logo.png AssetGenImage get phoneLogo => const AssetGenImage('assets/images/phone_logo.png'); - - /// File path: assets/images/placeholder.webp AssetGenImage get placeholder => const AssetGenImage('assets/images/placeholder.webp'); - - /// File path: assets/images/property_bg.png AssetGenImage get propertyBg => const AssetGenImage('assets/images/property_bg.png'); - - /// File path: assets/images/shop_car_empty.png AssetGenImage get shopCarEmpty => const AssetGenImage('assets/images/shop_car_empty.png'); - - /// File path: assets/images/splash_logo.png AssetGenImage get splashLogo => const AssetGenImage('assets/images/splash_logo.png'); - - /// File path: assets/images/success.png AssetGenImage get success => const AssetGenImage('assets/images/success.png'); - - /// File path: assets/images/white.png AssetGenImage get white => const AssetGenImage('assets/images/white.png'); - - /// File path: assets/images/wxpay.png AssetGenImage get wxpay => const AssetGenImage('assets/images/wxpay.png'); } class $AssetsJsonGen { const $AssetsJsonGen(); - /// File path: assets/json/province.json String get province => 'assets/json/province.json'; } class $AssetsStaticGen { const $AssetsStaticGen(); - /// File path: assets/static/bracelet_header.png AssetGenImage get braceletHeader => const AssetGenImage('assets/static/bracelet_header.png'); - - /// File path: assets/static/car_card_grey.webp AssetGenImage get carCardGrey => const AssetGenImage('assets/static/car_card_grey.webp'); - - /// File path: assets/static/car_card_yellow.webp AssetGenImage get carCardYellow => const AssetGenImage('assets/static/car_card_yellow.webp'); - - /// File path: assets/static/car_park_empty.webp AssetGenImage get carParkEmpty => const AssetGenImage('assets/static/car_park_empty.webp'); - - /// File path: assets/static/family.png AssetGenImage get family => const AssetGenImage('assets/static/family.png'); - - /// File path: assets/static/house_auth_fail.webp AssetGenImage get houseAuthFail => const AssetGenImage('assets/static/house_auth_fail.webp'); - - /// File path: assets/static/house_auth_success.webp AssetGenImage get houseAuthSuccess => const AssetGenImage('assets/static/house_auth_success.webp'); - - /// File path: assets/static/id_card_back.png AssetGenImage get idCardBack => const AssetGenImage('assets/static/id_card_back.png'); - - /// File path: assets/static/id_card_front.png AssetGenImage get idCardFront => const AssetGenImage('assets/static/id_card_front.png'); - - /// File path: assets/static/integral_background.png AssetGenImage get integralBackground => const AssetGenImage('assets/static/integral_background.png'); - - /// File path: assets/static/old_age_back.png AssetGenImage get oldAgeBack => const AssetGenImage('assets/static/old_age_back.png'); - - /// File path: assets/static/parking_grey.webp AssetGenImage get parkingGrey => const AssetGenImage('assets/static/parking_grey.webp'); - - /// File path: assets/static/parking_yellow.webp AssetGenImage get parkingYellow => const AssetGenImage('assets/static/parking_yellow.webp'); - - /// File path: assets/static/review_fail.webp AssetGenImage get reviewFail => const AssetGenImage('assets/static/review_fail.webp'); - - /// File path: assets/static/reviewing.webp AssetGenImage get reviewing => const AssetGenImage('assets/static/reviewing.webp'); - - /// File path: assets/static/rule_explain.png AssetGenImage get ruleExplain => const AssetGenImage('assets/static/rule_explain.png'); - - /// File path: assets/static/sign_in_background.png AssetGenImage get signInBackground => const AssetGenImage('assets/static/sign_in_background.png'); - - /// File path: assets/static/vip_background.png AssetGenImage get vipBackground => const AssetGenImage('assets/static/vip_background.png'); } @@ -1242,16 +613,9 @@ class $AssetsStaticGen { class $AssetsTabGen { const $AssetsTabGen(); - /// File path: assets/tab/bkjh.png AssetGenImage get bkjh => const AssetGenImage('assets/tab/bkjh.png'); - - /// File path: assets/tab/kbhw.png AssetGenImage get kbhw => const AssetGenImage('assets/tab/kbhw.png'); - - /// File path: assets/tab/nanz.png AssetGenImage get nanz => const AssetGenImage('assets/tab/nanz.png'); - - /// File path: assets/tab/nvz.png AssetGenImage get nvz => const AssetGenImage('assets/tab/nvz.png'); } diff --git a/lib/generated_plugin_registrant.dart b/lib/generated_plugin_registrant.dart index 5541704d..569fce6a 100644 --- a/lib/generated_plugin_registrant.dart +++ b/lib/generated_plugin_registrant.dart @@ -5,8 +5,10 @@ // ignore_for_file: directives_ordering // ignore_for_file: lines_longer_than_80_chars +import 'package:audio_session/audio_session_web.dart'; import 'package:device_info_plus_web/device_info_plus_web.dart'; import 'package:image_picker_for_web/image_picker_for_web.dart'; +import 'package:just_audio_web/just_audio_web.dart'; import 'package:package_info_plus_web/package_info_plus_web.dart'; import 'package:url_launcher_web/url_launcher_web.dart'; @@ -14,8 +16,10 @@ import 'package:flutter_web_plugins/flutter_web_plugins.dart'; // ignore: public_member_api_docs void registerPlugins(Registrar registrar) { + AudioSessionWeb.registerWith(registrar); DeviceInfoPlusPlugin.registerWith(registrar); ImagePickerPlugin.registerWith(registrar); + JustAudioPlugin.registerWith(registrar); PackageInfoPlugin.registerWith(registrar); UrlLauncherPlugin.registerWith(registrar); registrar.registerMessageHandler(); diff --git a/lib/models/task/hall_list_model.dart b/lib/models/task/hall_list_model.dart index f9a0dade..f1c5cf50 100644 --- a/lib/models/task/hall_list_model.dart +++ b/lib/models/task/hall_list_model.dart @@ -1,3 +1,4 @@ +import 'package:aku_new_community/model/common/img_model.dart'; import 'package:json_annotation/json_annotation.dart'; part 'hall_list_model.g.dart'; @@ -5,36 +6,40 @@ part 'hall_list_model.g.dart'; @JsonSerializable() class HallListModel { final int id; - final String title; + final String code; final int status; + final String updateDate; final int type; final int sex; - final int serviceObject; - final String content; - final String appointmentDate; - final String appointmentAddress; + final String readyStartTime; + final String readyEndTime; + final String? accessAddress; + final String? accessAddressDetail; + final int? serviceTime; + final String remarks; + final String voiceUrl; + final List? imgList; final int rewardType; final int reward; - final int createType; - final String? createName; - final String createDate; factory HallListModel.fromJson(Map json) => _$HallListModelFromJson(json); const HallListModel({ required this.id, - required this.title, + required this.code, required this.status, + required this.updateDate, required this.type, required this.sex, - required this.serviceObject, - required this.content, - required this.appointmentDate, - required this.appointmentAddress, + required this.readyStartTime, + required this.readyEndTime, + this.accessAddress, + this.accessAddressDetail, + this.serviceTime, + required this.remarks, + required this.voiceUrl, + this.imgList, required this.rewardType, required this.reward, - required this.createType, - this.createName, - required this.createDate, }); } diff --git a/lib/models/task/hall_list_model.g.dart b/lib/models/task/hall_list_model.g.dart index 2681aa43..4b1f836c 100644 --- a/lib/models/task/hall_list_model.g.dart +++ b/lib/models/task/hall_list_model.g.dart @@ -9,17 +9,21 @@ part of 'hall_list_model.dart'; HallListModel _$HallListModelFromJson(Map json) => HallListModel( id: json['id'] as int, - title: json['title'] as String, + code: json['code'] as String, status: json['status'] as int, + updateDate: json['updateDate'] as String, type: json['type'] as int, sex: json['sex'] as int, - serviceObject: json['serviceObject'] as int, - content: json['content'] as String, - appointmentDate: json['appointmentDate'] as String, - appointmentAddress: json['appointmentAddress'] as String, + readyStartTime: json['readyStartTime'] as String, + readyEndTime: json['readyEndTime'] as String, + accessAddress: json['accessAddress'] as String?, + accessAddressDetail: json['accessAddressDetail'] as String?, + serviceTime: json['serviceTime'] as int?, + remarks: json['remarks'] as String, + voiceUrl: json['voiceUrl'] as String, + imgList: (json['imgList'] as List?) + ?.map((e) => ImgModel.fromJson(e as Map)) + .toList(), rewardType: json['rewardType'] as int, reward: json['reward'] as int, - createType: json['createType'] as int, - createName: json['createName'] as String?, - createDate: json['createDate'] as String, ); diff --git a/lib/models/task/my_take_task_list_model.dart b/lib/models/task/my_take_task_list_model.dart index db0f61d2..5fdf1daf 100644 --- a/lib/models/task/my_take_task_list_model.dart +++ b/lib/models/task/my_take_task_list_model.dart @@ -1,3 +1,4 @@ +import 'package:aku_new_community/model/common/img_model.dart'; import 'package:json_annotation/json_annotation.dart'; part 'my_take_task_list_model.g.dart'; @@ -5,37 +6,41 @@ part 'my_take_task_list_model.g.dart'; @JsonSerializable() class MyTakeTaskListModel { final int id; - final String title; + final String code; final int status; + final String updateDate; final int type; final int sex; - final int serviceObject; - final String content; - final String appointmentDate; - final String appointmentAddress; + final String readyStartTime; + final String readyEndTime; + final String? accessAddress; + final String? accessAddressDetail; + final int? serviceTime; + final String remarks; + final String voiceUrl; + final List? imgList; final int rewardType; final int reward; - final int createType; - final String? createName; - final String createDate; factory MyTakeTaskListModel.fromJson(Map json) => _$MyTakeTaskListModelFromJson(json); const MyTakeTaskListModel({ required this.id, - required this.title, + required this.code, required this.status, + required this.updateDate, required this.type, required this.sex, - required this.serviceObject, - required this.content, - required this.appointmentDate, - required this.appointmentAddress, + required this.readyStartTime, + required this.readyEndTime, + this.accessAddress, + this.accessAddressDetail, + this.serviceTime, + required this.remarks, + required this.voiceUrl, + this.imgList, required this.rewardType, required this.reward, - required this.createType, - this.createName, - required this.createDate, }); } diff --git a/lib/models/task/my_take_task_list_model.g.dart b/lib/models/task/my_take_task_list_model.g.dart index e49a1b7e..a573a030 100644 --- a/lib/models/task/my_take_task_list_model.g.dart +++ b/lib/models/task/my_take_task_list_model.g.dart @@ -9,17 +9,21 @@ part of 'my_take_task_list_model.dart'; MyTakeTaskListModel _$MyTakeTaskListModelFromJson(Map json) => MyTakeTaskListModel( id: json['id'] as int, - title: json['title'] as String, + code: json['code'] as String, status: json['status'] as int, + updateDate: json['updateDate'] as String, type: json['type'] as int, sex: json['sex'] as int, - serviceObject: json['serviceObject'] as int, - content: json['content'] as String, - appointmentDate: json['appointmentDate'] as String, - appointmentAddress: json['appointmentAddress'] as String, + readyStartTime: json['readyStartTime'] as String, + readyEndTime: json['readyEndTime'] as String, + accessAddress: json['accessAddress'] as String?, + accessAddressDetail: json['accessAddressDetail'] as String?, + serviceTime: json['serviceTime'] as int?, + remarks: json['remarks'] as String, + voiceUrl: json['voiceUrl'] as String, + imgList: (json['imgList'] as List?) + ?.map((e) => ImgModel.fromJson(e as Map)) + .toList(), rewardType: json['rewardType'] as int, reward: json['reward'] as int, - createType: json['createType'] as int, - createName: json['createName'] as String?, - createDate: json['createDate'] as String, ); diff --git a/lib/models/task/my_task_list_model.dart b/lib/models/task/my_task_list_model.dart index 86e9af60..44563714 100644 --- a/lib/models/task/my_task_list_model.dart +++ b/lib/models/task/my_task_list_model.dart @@ -1,3 +1,4 @@ +import 'package:aku_new_community/model/common/img_model.dart'; import 'package:json_annotation/json_annotation.dart'; part 'my_task_list_model.g.dart'; @@ -5,36 +6,40 @@ part 'my_task_list_model.g.dart'; @JsonSerializable() class MyTaskListModel { final int id; - final String title; + final String code; final int status; + final String updateDate; final int type; final int sex; - final int serviceObject; - final String content; - final String appointmentDate; - final String appointmentAddress; + final String readyStartTime; + final String readyEndTime; + final String? accessAddress; + final String? accessAddressDetail; + final int? serviceTime; + final String remarks; + final String voiceUrl; + final List? imgList; final int rewardType; final int reward; - final int createType; - final String? createName; - final String createDate; factory MyTaskListModel.fromJson(Map json) => _$MyTaskListModelFromJson(json); const MyTaskListModel({ required this.id, - required this.title, + required this.code, required this.status, + required this.updateDate, required this.type, required this.sex, - required this.serviceObject, - required this.content, - required this.appointmentDate, - required this.appointmentAddress, + required this.readyStartTime, + required this.readyEndTime, + this.accessAddress, + this.accessAddressDetail, + this.serviceTime, + required this.remarks, + required this.voiceUrl, + this.imgList, required this.rewardType, required this.reward, - required this.createType, - this.createName, - required this.createDate, }); } diff --git a/lib/models/task/my_task_list_model.g.dart b/lib/models/task/my_task_list_model.g.dart index 9c1b1af3..8ca15d13 100644 --- a/lib/models/task/my_task_list_model.g.dart +++ b/lib/models/task/my_task_list_model.g.dart @@ -9,17 +9,21 @@ part of 'my_task_list_model.dart'; MyTaskListModel _$MyTaskListModelFromJson(Map json) => MyTaskListModel( id: json['id'] as int, - title: json['title'] as String, + code: json['code'] as String, status: json['status'] as int, + updateDate: json['updateDate'] as String, type: json['type'] as int, sex: json['sex'] as int, - serviceObject: json['serviceObject'] as int, - content: json['content'] as String, - appointmentDate: json['appointmentDate'] as String, - appointmentAddress: json['appointmentAddress'] as String, + readyStartTime: json['readyStartTime'] as String, + readyEndTime: json['readyEndTime'] as String, + accessAddress: json['accessAddress'] as String?, + accessAddressDetail: json['accessAddressDetail'] as String?, + serviceTime: json['serviceTime'] as int?, + remarks: json['remarks'] as String, + voiceUrl: json['voiceUrl'] as String, + imgList: (json['imgList'] as List?) + ?.map((e) => ImgModel.fromJson(e as Map)) + .toList(), rewardType: json['rewardType'] as int, reward: json['reward'] as int, - createType: json['createType'] as int, - createName: json['createName'] as String?, - createDate: json['createDate'] as String, ); diff --git a/lib/pages/home/home_page.dart b/lib/pages/home/home_page.dart index c6514835..4deff9a7 100644 --- a/lib/pages/home/home_page.dart +++ b/lib/pages/home/home_page.dart @@ -87,7 +87,11 @@ class _HomePageState extends State _refreshController = EasyRefreshController(); _swiperController.addListener(() { //由于先触发监听后,再执行onChangeIndex函数,所以_currentSwiperIndex会比当前index少1,用+1并求余的方式获得真正当前index; - _swiperBarColor((_currentSwiperIndex + 1) % 3); + if (_swiperModels.length <= 1) { + _swiperBarColor(0); + } else { + _swiperBarColor((_currentSwiperIndex + 1) % 3); + } }); SystemChrome.setSystemUIOverlayStyle( SystemUiOverlayStyle(statusBarColor: Colors.transparent)); diff --git a/lib/ui/service/hall/hall_card.dart b/lib/ui/service/hall/hall_card.dart index 6b865841..b7975217 100644 --- a/lib/ui/service/hall/hall_card.dart +++ b/lib/ui/service/hall/hall_card.dart @@ -1,15 +1,18 @@ -import 'package:flutter/material.dart'; - -import 'package:common_utils/common_utils.dart'; -import 'package:flutter_screenutil/flutter_screenutil.dart'; -import 'package:get/get.dart'; -import 'package:velocity_x/velocity_x.dart'; - import 'package:aku_new_community/gen/assets.gen.dart'; import 'package:aku_new_community/models/task/hall_list_model.dart'; import 'package:aku_new_community/ui/service/hall/hall_detail_page.dart'; import 'package:aku_new_community/ui/service/task_map.dart'; +import 'package:aku_new_community/widget/bee_divider.dart'; import 'package:aku_new_community/widget/buttons/card_bottom_button.dart'; +import 'package:aku_new_community/widget/views/bee_grid_image_view.dart'; +import 'package:aku_new_community/widget/voice_player.dart'; +import 'package:common_utils/common_utils.dart'; +import 'package:flutter/cupertino.dart'; +import 'package:flutter/material.dart'; +import 'package:flutter_screenutil/flutter_screenutil.dart'; +import 'package:get/get.dart'; +import 'package:velocity_x/velocity_x.dart'; + import '../task_func.dart'; class HallCard extends StatelessWidget { @@ -27,10 +30,7 @@ class HallCard extends StatelessWidget { width: 100.w, height: 50.w, alignment: Alignment.center, - decoration: BoxDecoration( - color: Color(0xFFFFF7E6), - borderRadius: BorderRadius.circular(8.w), - ), + color: Color(0xFFFFF7E6), child: '#${TaskMap.typeToString[model.type]}' .text .size(28.sp) @@ -43,6 +43,28 @@ class HallCard extends StatelessWidget { '${model.reward}'.text.size(32.sp).color(Colors.red).make() ], ); + var appointment = Row( + children: [ + Container( + width: 40.w, + height: 40.w, + alignment: Alignment.center, + decoration: BoxDecoration( + color: Color(0xFFFA8C16), + borderRadius: BorderRadius.circular(8.w)), + child: Text( + '预', + style: TextStyle(color: Colors.white, fontSize: 24.sp), + ), + ), + 24.w.widthBox, + '${DateUtil.formatDateStr(model.readyEndTime, format: 'MM月dd日 HH:mm')}前' + .text + .size(24.sp) + .color(Colors.black.withOpacity(0.65)) + .make(), + ], + ); return GestureDetector( onTap: () { Get.to(() => HallDetailPage(model: model)); @@ -57,24 +79,31 @@ class HallCard extends StatelessWidget { child: Column( children: [ head, - 34.w.heightBox, + 24.w.heightBox, + BeeDivider.horizontal(), + 24.w.heightBox, + appointment, + 20.w.heightBox, Row( children: [ - Assets.icons.clockCircle.image(width: 36.w, height: 36.w), + Assets.icons.watch.image(width: 40.w, height: 40.w), 24.w.widthBox, - '${DateUtil.formatDateStr(model.appointmentDate)}' - .text - .size(24.sp) - .color(Colors.black.withOpacity(0.65)) + '${model.serviceTime ?? '0'}' + .richText + .withTextSpanChildren([ + ' 分钟'.textSpan.size(28.sp).color(Colors.black).make(), + ]) + .size(28.sp) + .color(Color(0xFFFA8C16)) .make(), ], ), - 20.w.heightBox, + 24.w.heightBox, Row( children: [ Assets.icons.environment.image(width: 36.w, height: 36.w), 24.w.widthBox, - '${model.appointmentAddress}' + '${model.accessAddress}' .text .size(24.sp) .color(Colors.black.withOpacity(0.65)) @@ -91,20 +120,22 @@ class HallCard extends StatelessWidget { child: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ - '#${TaskMap.typeToString[model.type]}' - .text - .size(28.sp) - .color(Colors.black.withOpacity(0.85)) - .make(), - 16.w.heightBox, - model.content.text + model.remarks.text .size(28.sp) .color(Colors.black.withOpacity(0.65)) .make(), + 24.w.heightBox, + VoicePlayer( + url: model.voiceUrl, + ), + 24.w.heightBox, + BeeGridImageView( + urls: model.imgList?.map((e) => e.url).toList() ?? []), ], ), ), - 40.w.heightBox, + 24.w.heightBox, + BeeDivider.horizontal(), Column( crossAxisAlignment: CrossAxisAlignment.end, children: [ diff --git a/lib/ui/service/hall/hall_detail_page.dart b/lib/ui/service/hall/hall_detail_page.dart index 10e57036..1dee1237 100644 --- a/lib/ui/service/hall/hall_detail_page.dart +++ b/lib/ui/service/hall/hall_detail_page.dart @@ -1,14 +1,12 @@ -import 'package:flutter/material.dart'; - -import 'package:common_utils/common_utils.dart'; -import 'package:flutter_screenutil/flutter_screenutil.dart'; -import 'package:velocity_x/velocity_x.dart'; - import 'package:aku_new_community/gen/assets.gen.dart'; import 'package:aku_new_community/models/task/hall_list_model.dart'; import 'package:aku_new_community/ui/service/task_map.dart'; import 'package:aku_new_community/widget/bee_divider.dart'; import 'package:aku_new_community/widget/bee_scaffold.dart'; +import 'package:common_utils/common_utils.dart'; +import 'package:flutter/material.dart'; +import 'package:flutter_screenutil/flutter_screenutil.dart'; +import 'package:velocity_x/velocity_x.dart'; class HallDetailPage extends StatefulWidget { final HallListModel model; @@ -71,28 +69,6 @@ class _HallDetailPageState extends State { ), ), Spacer(), - // Padding( - // padding: EdgeInsets.only(right: 32.w), - // child: MaterialButton( - // color: Colors.white, - // elevation: 0, - // shape: RoundedRectangleBorder( - // borderRadius: BorderRadius.circular(8.w), - // ), - // onPressed: () async { - // var re = await TaskFunc.cancel( - // taskId: widget.model.id); - // if (re) { - // Get.back(); - // } - // }, - // child: '取消订单' - // .text - // .size(24.sp) - // .color(Colors.black.withOpacity(0.65)) - // .make(), - // ), - // ) ], ), ], @@ -150,7 +126,7 @@ class _HallDetailPageState extends State { .color(Colors.black.withOpacity(0.45)) .make(), Spacer(), - '${DateUtil.formatDateStr(widget.model.createDate)}' + '${DateUtil.formatDateStr(widget.model.updateDate)}' .text .size(24.sp) .color(Colors.black.withOpacity(0.45)) @@ -201,7 +177,7 @@ class _HallDetailPageState extends State { children: [ Assets.icons.clockCircle.image(width: 36.w, height: 36.w), 24.w.widthBox, - '${DateUtil.formatDateStr(widget.model.appointmentDate)}' + '${DateUtil.formatDateStr(widget.model.readyEndTime)}' .text .size(24.sp) .color(Colors.black.withOpacity(0.65)) @@ -213,7 +189,7 @@ class _HallDetailPageState extends State { children: [ Assets.icons.environment.image(width: 36.w, height: 36.w), 24.w.widthBox, - '${widget.model.appointmentAddress}' + '${widget.model.accessAddress}' .text .size(24.sp) .color(Colors.black.withOpacity(0.65)) @@ -236,7 +212,7 @@ class _HallDetailPageState extends State { .color(Colors.black.withOpacity(0.85)) .make(), 16.w.heightBox, - widget.model.content.text + widget.model.remarks.text .size(28.sp) .color(Colors.black.withOpacity(0.65)) .make(), diff --git a/lib/ui/service/hall/hall_view.dart b/lib/ui/service/hall/hall_view.dart index ca6c2ed2..87240aa0 100644 --- a/lib/ui/service/hall/hall_view.dart +++ b/lib/ui/service/hall/hall_view.dart @@ -1,13 +1,11 @@ +import 'package:aku_new_community/constants/sars_api.dart'; +import 'package:aku_new_community/models/task/hall_list_model.dart'; +import 'package:aku_new_community/pages/things_page/widget/bee_list_view.dart'; import 'package:flutter/material.dart'; - import 'package:flutter_easyrefresh/easy_refresh.dart'; import 'package:flutter_screenutil/flutter_screenutil.dart'; import 'package:velocity_x/src/extensions/num_ext.dart'; -import 'package:aku_new_community/constants/api.dart'; -import 'package:aku_new_community/constants/sars_api.dart'; -import 'package:aku_new_community/models/task/hall_list_model.dart'; -import 'package:aku_new_community/pages/things_page/widget/bee_list_view.dart'; import 'hall_card.dart'; class HallView extends StatefulWidget { @@ -29,9 +27,11 @@ class _HallViewState extends State { @override Widget build(BuildContext context) { return BeeListView( - path: API.manager.task.hallList, + path: SARSAPI.task.list, controller: _refreshController, - extraParams: {}, + extraParams: { + 'taskModel': 1, + }, convert: (json) => json.rows.map((e) => HallListModel.fromJson(e)).toList(), builder: (models) { diff --git a/lib/ui/service/my_take_task/my_take_task_card.dart b/lib/ui/service/my_take_task/my_take_task_card.dart index 26a72d09..d3306f02 100644 --- a/lib/ui/service/my_take_task/my_take_task_card.dart +++ b/lib/ui/service/my_take_task/my_take_task_card.dart @@ -1,10 +1,3 @@ -import 'package:flutter/material.dart'; - -import 'package:common_utils/common_utils.dart'; -import 'package:flutter_screenutil/flutter_screenutil.dart'; -import 'package:get/get.dart'; -import 'package:velocity_x/velocity_x.dart'; - import 'package:aku_new_community/extensions/widget_list_ext.dart'; import 'package:aku_new_community/gen/assets.gen.dart'; import 'package:aku_new_community/models/task/my_take_task_list_model.dart'; @@ -12,6 +5,12 @@ import 'package:aku_new_community/ui/service/my_take_task/my_take_task_detail_pa import 'package:aku_new_community/ui/service/task_map.dart'; import 'package:aku_new_community/widget/bee_divider.dart'; import 'package:aku_new_community/widget/buttons/card_bottom_button.dart'; +import 'package:common_utils/common_utils.dart'; +import 'package:flutter/material.dart'; +import 'package:flutter_screenutil/flutter_screenutil.dart'; +import 'package:get/get.dart'; +import 'package:velocity_x/velocity_x.dart'; + import '../task_func.dart'; class MyTakeTaskCard extends StatelessWidget { @@ -38,7 +37,7 @@ class MyTakeTaskCard extends StatelessWidget { children: [ Row( children: [ - '接单时间 ${DateUtil.formatDateStr(model.createDate)}' + '接单时间 ${DateUtil.formatDateStr(model.updateDate)}' .text .size(26.sp) .color(Colors.black.withOpacity(0.45)) @@ -59,7 +58,7 @@ class MyTakeTaskCard extends StatelessWidget { children: [ Assets.icons.clockCircle.image(width: 36.w, height: 36.w), 24.w.widthBox, - '${DateUtil.formatDateStr(model.appointmentDate)}' + '${DateUtil.formatDateStr(model.readyEndTime)}' .text .size(24.sp) .color(Colors.black.withOpacity(0.65)) @@ -71,7 +70,7 @@ class MyTakeTaskCard extends StatelessWidget { children: [ Assets.icons.environment.image(width: 36.w, height: 36.w), 24.w.widthBox, - '${model.appointmentAddress}' + '${model.accessAddress}' .text .size(24.sp) .color(Colors.black.withOpacity(0.65)) @@ -94,7 +93,7 @@ class MyTakeTaskCard extends StatelessWidget { .color(Colors.black.withOpacity(0.85)) .make(), 16.w.heightBox, - model.content.text + model.remarks.text .size(28.sp) .color(Colors.black.withOpacity(0.65)) .make(), diff --git a/lib/ui/service/my_take_task/my_take_task_detail_page.dart b/lib/ui/service/my_take_task/my_take_task_detail_page.dart index 01ea291a..8dcef8b4 100644 --- a/lib/ui/service/my_take_task/my_take_task_detail_page.dart +++ b/lib/ui/service/my_take_task/my_take_task_detail_page.dart @@ -1,14 +1,12 @@ -import 'package:flutter/material.dart'; - -import 'package:common_utils/common_utils.dart'; -import 'package:flutter_screenutil/flutter_screenutil.dart'; -import 'package:velocity_x/velocity_x.dart'; - import 'package:aku_new_community/gen/assets.gen.dart'; import 'package:aku_new_community/models/task/my_take_task_list_model.dart'; import 'package:aku_new_community/ui/service/task_map.dart'; import 'package:aku_new_community/widget/bee_divider.dart'; import 'package:aku_new_community/widget/bee_scaffold.dart'; +import 'package:common_utils/common_utils.dart'; +import 'package:flutter/material.dart'; +import 'package:flutter_screenutil/flutter_screenutil.dart'; +import 'package:velocity_x/velocity_x.dart'; class MyTakeTaskDetailPage extends StatefulWidget { final MyTakeTaskListModel model; @@ -150,7 +148,7 @@ class _MyTakeTaskDetailPageState extends State { .color(Colors.black.withOpacity(0.45)) .make(), Spacer(), - '${DateUtil.formatDateStr(widget.model.createDate)}' + '${DateUtil.formatDateStr(widget.model.updateDate)}' .text .size(24.sp) .color(Colors.black.withOpacity(0.45)) @@ -201,7 +199,7 @@ class _MyTakeTaskDetailPageState extends State { children: [ Assets.icons.clockCircle.image(width: 36.w, height: 36.w), 24.w.widthBox, - '${DateUtil.formatDateStr(widget.model.appointmentDate)}' + '${DateUtil.formatDateStr(widget.model.readyEndTime)}' .text .size(24.sp) .color(Colors.black.withOpacity(0.65)) @@ -213,7 +211,7 @@ class _MyTakeTaskDetailPageState extends State { children: [ Assets.icons.environment.image(width: 36.w, height: 36.w), 24.w.widthBox, - '${widget.model.appointmentAddress}' + '${widget.model.accessAddress}' .text .size(24.sp) .color(Colors.black.withOpacity(0.65)) @@ -236,7 +234,7 @@ class _MyTakeTaskDetailPageState extends State { .color(Colors.black.withOpacity(0.85)) .make(), 16.w.heightBox, - widget.model.content.text + widget.model.remarks.text .size(28.sp) .color(Colors.black.withOpacity(0.65)) .make(), diff --git a/lib/ui/service/my_take_task/my_take_task_view.dart b/lib/ui/service/my_take_task/my_take_task_view.dart index 96277db0..83a5ee7b 100644 --- a/lib/ui/service/my_take_task/my_take_task_view.dart +++ b/lib/ui/service/my_take_task/my_take_task_view.dart @@ -1,14 +1,11 @@ -import 'package:flutter/material.dart'; - -import 'package:flutter_easyrefresh/easy_refresh.dart'; -import 'package:flutter_screenutil/flutter_screenutil.dart'; -import 'package:velocity_x/velocity_x.dart'; - -import 'package:aku_new_community/constants/api.dart'; import 'package:aku_new_community/constants/sars_api.dart'; import 'package:aku_new_community/models/task/my_take_task_list_model.dart'; import 'package:aku_new_community/pages/things_page/widget/bee_list_view.dart'; import 'package:aku_new_community/ui/service/my_take_task/my_take_task_card.dart'; +import 'package:flutter/material.dart'; +import 'package:flutter_easyrefresh/easy_refresh.dart'; +import 'package:flutter_screenutil/flutter_screenutil.dart'; +import 'package:velocity_x/velocity_x.dart'; class MyTakeTaskView extends StatefulWidget { const MyTakeTaskView({Key? key}) : super(key: key); @@ -29,8 +26,11 @@ class _MyTakeTaskViewState extends State { @override Widget build(BuildContext context) { return BeeListView( - path: API.manager.task.myTakeTask, + path: SARSAPI.task.list, controller: _refreshController, + extraParams: { + 'taskModel': 2, + }, convert: (json) => json.rows.map((e) => MyTakeTaskListModel.fromJson(e)).toList(), builder: (models) { diff --git a/lib/ui/service/my_task/my_task_card.dart b/lib/ui/service/my_task/my_task_card.dart index f9afff5c..a0aea9bd 100644 --- a/lib/ui/service/my_task/my_task_card.dart +++ b/lib/ui/service/my_task/my_task_card.dart @@ -1,15 +1,14 @@ -import 'package:flutter/material.dart'; - -import 'package:common_utils/common_utils.dart'; -import 'package:flutter_screenutil/flutter_screenutil.dart'; -import 'package:get/get.dart'; -import 'package:velocity_x/velocity_x.dart'; - import 'package:aku_new_community/gen/assets.gen.dart'; import 'package:aku_new_community/models/task/my_task_list_model.dart'; import 'package:aku_new_community/ui/service/my_task/my_task_detail_page.dart'; import 'package:aku_new_community/ui/service/task_map.dart'; import 'package:aku_new_community/widget/buttons/card_bottom_button.dart'; +import 'package:common_utils/common_utils.dart'; +import 'package:flutter/material.dart'; +import 'package:flutter_screenutil/flutter_screenutil.dart'; +import 'package:get/get.dart'; +import 'package:velocity_x/velocity_x.dart'; + import '../task_func.dart'; class MyTaskCard extends StatelessWidget { @@ -65,7 +64,7 @@ class MyTaskCard extends StatelessWidget { children: [ Assets.icons.clockCircle.image(width: 36.w, height: 36.w), 24.w.widthBox, - '${DateUtil.formatDateStr(model.appointmentDate)}' + '${DateUtil.formatDateStr(model.readyEndTime)}' .text .size(24.sp) .color(Colors.black.withOpacity(0.65)) @@ -77,7 +76,7 @@ class MyTaskCard extends StatelessWidget { children: [ Assets.icons.environment.image(width: 36.w, height: 36.w), 24.w.widthBox, - '${model.appointmentAddress}' + '${model.accessAddress}' .text .size(24.sp) .color(Colors.black.withOpacity(0.65)) @@ -100,7 +99,7 @@ class MyTaskCard extends StatelessWidget { .color(Colors.black.withOpacity(0.85)) .make(), 16.w.heightBox, - model.content.text + model.remarks.text .size(28.sp) .color(Colors.black.withOpacity(0.65)) .make(), diff --git a/lib/ui/service/my_task/my_task_detail_page.dart b/lib/ui/service/my_task/my_task_detail_page.dart index 6b746349..f7993374 100644 --- a/lib/ui/service/my_task/my_task_detail_page.dart +++ b/lib/ui/service/my_task/my_task_detail_page.dart @@ -1,14 +1,12 @@ -import 'package:flutter/material.dart'; - -import 'package:common_utils/common_utils.dart'; -import 'package:flutter_screenutil/flutter_screenutil.dart'; -import 'package:velocity_x/velocity_x.dart'; - import 'package:aku_new_community/gen/assets.gen.dart'; import 'package:aku_new_community/models/task/my_task_list_model.dart'; import 'package:aku_new_community/ui/service/task_map.dart'; import 'package:aku_new_community/widget/bee_divider.dart'; import 'package:aku_new_community/widget/bee_scaffold.dart'; +import 'package:common_utils/common_utils.dart'; +import 'package:flutter/material.dart'; +import 'package:flutter_screenutil/flutter_screenutil.dart'; +import 'package:velocity_x/velocity_x.dart'; class MyTaskDetailPage extends StatefulWidget { final MyTaskListModel model; @@ -150,7 +148,7 @@ class _MyTaskDetailPageState extends State { .color(Colors.black.withOpacity(0.45)) .make(), Spacer(), - '${DateUtil.formatDateStr(widget.model.createDate)}' + '${DateUtil.formatDateStr(widget.model.updateDate)}' .text .size(24.sp) .color(Colors.black.withOpacity(0.45)) @@ -201,7 +199,7 @@ class _MyTaskDetailPageState extends State { children: [ Assets.icons.clockCircle.image(width: 36.w, height: 36.w), 24.w.widthBox, - '${DateUtil.formatDateStr(widget.model.appointmentDate)}' + '${DateUtil.formatDateStr(widget.model.readyEndTime)}' .text .size(24.sp) .color(Colors.black.withOpacity(0.65)) @@ -213,7 +211,7 @@ class _MyTaskDetailPageState extends State { children: [ Assets.icons.environment.image(width: 36.w, height: 36.w), 24.w.widthBox, - '${widget.model.appointmentAddress}' + '${widget.model.accessAddress}' .text .size(24.sp) .color(Colors.black.withOpacity(0.65)) @@ -236,7 +234,7 @@ class _MyTaskDetailPageState extends State { .color(Colors.black.withOpacity(0.85)) .make(), 16.w.heightBox, - widget.model.content.text + widget.model.remarks.text .size(28.sp) .color(Colors.black.withOpacity(0.65)) .make(), diff --git a/lib/ui/service/my_task/my_task_view.dart b/lib/ui/service/my_task/my_task_view.dart index 3b5fa6b8..34b1e79d 100644 --- a/lib/ui/service/my_task/my_task_view.dart +++ b/lib/ui/service/my_task/my_task_view.dart @@ -1,14 +1,11 @@ -import 'package:flutter/material.dart'; - -import 'package:flutter_easyrefresh/easy_refresh.dart'; -import 'package:flutter_screenutil/flutter_screenutil.dart'; -import 'package:velocity_x/velocity_x.dart'; - -import 'package:aku_new_community/constants/api.dart'; import 'package:aku_new_community/constants/sars_api.dart'; import 'package:aku_new_community/models/task/my_task_list_model.dart'; import 'package:aku_new_community/pages/things_page/widget/bee_list_view.dart'; import 'package:aku_new_community/ui/service/my_task/my_task_card.dart'; +import 'package:flutter/material.dart'; +import 'package:flutter_easyrefresh/easy_refresh.dart'; +import 'package:flutter_screenutil/flutter_screenutil.dart'; +import 'package:velocity_x/velocity_x.dart'; class MyTaskView extends StatefulWidget { const MyTaskView({Key? key}) : super(key: key); @@ -29,8 +26,11 @@ class _MyTaskViewState extends State { @override Widget build(BuildContext context) { return BeeListView( - path: API.manager.task.myTask, + path: SARSAPI.task.list, controller: _refreshController, + extraParams: { + 'taskModel': 2, + }, convert: (json) => json.rows.map((e) => MyTaskListModel.fromJson(e)).toList(), builder: (models) { diff --git a/lib/widget/voice_player.dart b/lib/widget/voice_player.dart new file mode 100644 index 00000000..a6dd44d3 --- /dev/null +++ b/lib/widget/voice_player.dart @@ -0,0 +1,180 @@ +import 'dart:async'; +import 'dart:math'; + +import 'package:aku_new_community/constants/sars_api.dart'; +import 'package:aku_new_community/extensions/num_ext.dart'; +import 'package:flutter/material.dart'; +import 'package:flutter_screenutil/flutter_screenutil.dart'; +import 'package:just_audio/just_audio.dart'; + +class VoicePlayer extends StatefulWidget { + final String url; + + const VoicePlayer({Key? key, required this.url}) : super(key: key); + + @override + _VoicePlayerState createState() => _VoicePlayerState(); +} + +class _VoicePlayerState extends State + with SingleTickerProviderStateMixin { + final double width = 150.w; + final double height = 45.w; + late Animation animation; + late AnimationController controller; + late Tween _rotation; + bool inAnimate = false; + final player = AudioPlayer(); + Timer? _timer; + int _voiceLength = 0; + + void stopPlay() { + inAnimate = false; + controller.stop(); + player.stop(); + _timer?.cancel(); + _timer = null; + if (mounted) { + setState(() {}); + } + } + + void startPlay() { + inAnimate = true; + controller.forward(); + player.play(); + _timer = Timer.periodic(Duration(seconds: 1), (timer) async { + _voiceLength--; + if (_voiceLength <= 0) { + _voiceLength = (player.duration?.inSeconds) ?? 0; + _timer?.cancel(); + _timer = null; + controller.stop(); + inAnimate = false; + } + if (mounted) { + setState(() {}); + } + }); + } + + @override + void initState() { + controller = AnimationController( + vsync: this, + duration: Duration(seconds: 1), + ); + _rotation = IntTween(begin: 1, end: 3); + animation = _rotation + .animate(CurvedAnimation(parent: controller, curve: Curves.decelerate)) + ..addListener(() { + // _current = animation.value; + if (mounted) { + setState(() {}); + } + }) + ..addStatusListener((status) { + if (status == AnimationStatus.completed) { + controller.repeat(); + } else if (status == AnimationStatus.dismissed) { + controller.forward(); + } + }); + Future.delayed(Duration(milliseconds: 0), () async { + await player.setUrl(SARSAPI.image(widget.url)); + var length = await player.load(); + _voiceLength = length?.inSeconds ?? 0; + if (mounted) { + setState(() {}); + } + }); + super.initState(); + } + + @override + void dispose() { + stopPlay(); + player.dispose(); + controller.dispose(); + animation.removeListener(() {}); + animation.removeStatusListener((status) {}); + super.dispose(); + } + + @override + Widget build(BuildContext context) { + return GestureDetector( + onTap: () { + if (player.playing) { + stopPlay(); + } else { + startPlay(); + } + }, + child: Material( + color: Colors.transparent, + child: Container( + width: width, + // height: height, + padding: EdgeInsets.symmetric(vertical: 14.w, horizontal: 20.w), + decoration: BoxDecoration( + color: Color(0xFFFFE7BA), + borderRadius: BorderRadius.circular(8.w)), + child: Row( + children: [ + CustomPaint( + painter: VoicePlayerPainter(inAnimate ? animation.value : 3), + ), + 40.wb, + Text('${_voiceLength}\"'), + ], + ), + ), + ), + ); + } +} + +class VoicePlayerPainter extends CustomPainter { + final int tween; + + VoicePlayerPainter(this.tween); + + @override + void paint(Canvas canvas, Size size) { + var startAngel = -pi / 4; + var sweepAngel = pi / 2; + var paint = Paint() + ..color = Colors.black + ..style = PaintingStyle.fill; + canvas.drawArc( + Rect.fromCircle(center: Offset(0, size.height / 2), radius: 5), + startAngel, + sweepAngel, + true, + paint); + paint.style = PaintingStyle.stroke; + paint.strokeWidth = 2; + if (tween >= 2) { + canvas.drawArc( + Rect.fromCircle(center: Offset(0, size.height / 2), radius: 8), + startAngel, + sweepAngel, + false, + paint); + } + if (tween >= 3) { + canvas.drawArc( + Rect.fromCircle(center: Offset(0, size.height / 2), radius: 12), + startAngel, + sweepAngel, + false, + paint); + } + } + + @override + bool shouldRepaint(covariant CustomPainter oldDelegate) { + return true; + } +} diff --git a/macos/Flutter/GeneratedPluginRegistrant.swift b/macos/Flutter/GeneratedPluginRegistrant.swift index a7fcd583..d850309c 100644 --- a/macos/Flutter/GeneratedPluginRegistrant.swift +++ b/macos/Flutter/GeneratedPluginRegistrant.swift @@ -5,7 +5,9 @@ import FlutterMacOS import Foundation +import audio_session import device_info_plus_macos +import just_audio import package_info import package_info_plus_macos import path_provider_macos @@ -13,7 +15,9 @@ import sqflite import url_launcher_macos func RegisterGeneratedPlugins(registry: FlutterPluginRegistry) { + AudioSessionPlugin.register(with: registry.registrar(forPlugin: "AudioSessionPlugin")) DeviceInfoPlusMacosPlugin.register(with: registry.registrar(forPlugin: "DeviceInfoPlusMacosPlugin")) + JustAudioPlugin.register(with: registry.registrar(forPlugin: "JustAudioPlugin")) FLTPackageInfoPlugin.register(with: registry.registrar(forPlugin: "FLTPackageInfoPlugin")) FLTPackageInfoPlusPlugin.register(with: registry.registrar(forPlugin: "FLTPackageInfoPlusPlugin")) PathProviderPlugin.register(with: registry.registrar(forPlugin: "PathProviderPlugin")) diff --git a/pubspec.lock b/pubspec.lock index 16eda024..08b67853 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -71,6 +71,13 @@ packages: url: "https://pub.flutter-io.cn" source: hosted version: "2.8.2" + audio_session: + dependency: transitive + description: + name: audio_session + url: "https://pub.flutter-io.cn" + source: hosted + version: "0.1.6+1" auto_size_text_pk: dependency: transitive description: @@ -690,6 +697,27 @@ packages: url: "https://pub.flutter-io.cn" source: hosted version: "6.1.4" + just_audio: + dependency: "direct main" + description: + name: just_audio + url: "https://pub.flutter-io.cn" + source: hosted + version: "0.9.20" + just_audio_platform_interface: + dependency: transitive + description: + name: just_audio_platform_interface + url: "https://pub.flutter-io.cn" + source: hosted + version: "4.1.0" + just_audio_web: + dependency: transitive + description: + name: just_audio_web + url: "https://pub.flutter-io.cn" + source: hosted + version: "0.4.4" logger: dependency: transitive description: diff --git a/pubspec.yaml b/pubspec.yaml index 7df203c9..d86a155c 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -115,6 +115,8 @@ dependencies: sms_autofill: ^2.2.0 #提取图片主色 palette_generator: ^0.3.2 + #音频播放 + just_audio: ^0.9.20 dev_dependencies: