diff --git a/assets/manage/ic_zuofei.png b/assets/manage/ic_zuofei.png new file mode 100644 index 0000000..c315c72 Binary files /dev/null and b/assets/manage/ic_zuofei.png differ diff --git a/lib/const/api.dart b/lib/const/api.dart index 643b2bb..0945f9f 100644 --- a/lib/const/api.dart +++ b/lib/const/api.dart @@ -125,6 +125,9 @@ class _Manage { ///借还管理:修改物品明细信息 String get borrowEdit => '/user/borrow/updateArticleDetail'; + ///借还管理:出借审核 + String get lendingApproval => '/user/borrow/lendingApproval'; + ///物品出户:查询所有的物品出户信息(包含搜索条件) String get goodsOutList => '/user/articleOut/list'; diff --git a/lib/const/resource.dart b/lib/const/resource.dart index 3aae0e3..048cf19 100644 --- a/lib/const/resource.dart +++ b/lib/const/resource.dart @@ -3,347 +3,351 @@ class R { const R._(); - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/home/clock_in_out.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/home/clock_in_out.png) static const String ASSETS_HOME_CLOCK_IN_OUT_PNG = 'assets/home/clock_in_out.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/home/facilities.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/home/facilities.png) static const String ASSETS_HOME_FACILITIES_PNG = 'assets/home/facilities.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/home/house_keeping.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/home/house_keeping.png) static const String ASSETS_HOME_HOUSE_KEEPING_PNG = 'assets/home/house_keeping.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/home/hygienice.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/home/hygienice.png) static const String ASSETS_HOME_HYGIENICE_PNG = 'assets/home/hygienice.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/home/ic_Patrol.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/home/ic_Patrol.png) static const String ASSETS_HOME_IC_PATROL_PNG = 'assets/home/ic_Patrol.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/home/ic_activity.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/home/ic_activity.png) static const String ASSETS_HOME_IC_ACTIVITY_PNG = 'assets/home/ic_activity.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/home/ic_all.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/home/ic_all.png) static const String ASSETS_HOME_IC_ALL_PNG = 'assets/home/ic_all.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/home/ic_article.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/home/ic_article.png) static const String ASSETS_HOME_IC_ARTICLE_PNG = 'assets/home/ic_article.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/home/ic_borrow.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/home/ic_borrow.png) static const String ASSETS_HOME_IC_BORROW_PNG = 'assets/home/ic_borrow.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/home/ic_decoration.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/home/ic_decoration.png) static const String ASSETS_HOME_IC_DECORATION_PNG = 'assets/home/ic_decoration.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/home/ic_facilities.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/home/ic_facilities.png) static const String ASSETS_HOME_IC_FACILITIES_PNG = 'assets/home/ic_facilities.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/home/ic_greening.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/home/ic_greening.png) static const String ASSETS_HOME_IC_GREENING_PNG = 'assets/home/ic_greening.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/home/ic_news.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/home/ic_news.png) static const String ASSETS_HOME_IC_NEWS_PNG = 'assets/home/ic_news.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/home/ic_police.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/home/ic_police.png) static const String ASSETS_HOME_IC_POLICE_PNG = 'assets/home/ic_police.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/home/ic_scan.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/home/ic_scan.png) static const String ASSETS_HOME_IC_SCAN_PNG = 'assets/home/ic_scan.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/home/ic_search.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/home/ic_search.png) static const String ASSETS_HOME_IC_SEARCH_PNG = 'assets/home/ic_search.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/home/ic_service.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/home/ic_service.png) static const String ASSETS_HOME_IC_SERVICE_PNG = 'assets/home/ic_service.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/home/ic_visitors.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/home/ic_visitors.png) static const String ASSETS_HOME_IC_VISITORS_PNG = 'assets/home/ic_visitors.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/home/interview.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/home/interview.png) static const String ASSETS_HOME_INTERVIEW_PNG = 'assets/home/interview.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/home/key.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/home/key.png) static const String ASSETS_HOME_KEY_PNG = 'assets/home/key.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/home/package.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/home/package.png) static const String ASSETS_HOME_PACKAGE_PNG = 'assets/home/package.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/home/rules.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/home/rules.png) static const String ASSETS_HOME_RULES_PNG = 'assets/home/rules.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/inspection/ic_date.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/inspection/ic_date.png) static const String ASSETS_INSPECTION_IC_DATE_PNG = 'assets/inspection/ic_date.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/inspection/ic_inspection_name.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/inspection/ic_inspection_name.png) static const String ASSETS_INSPECTION_IC_INSPECTION_NAME_PNG = 'assets/inspection/ic_inspection_name.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/inspection/ic_pattern.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/inspection/ic_pattern.png) static const String ASSETS_INSPECTION_IC_PATTERN_PNG = 'assets/inspection/ic_pattern.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/inspection/ic_station.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/inspection/ic_station.png) static const String ASSETS_INSPECTION_IC_STATION_PNG = 'assets/inspection/ic_station.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/inspection/ic_way.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/inspection/ic_way.png) static const String ASSETS_INSPECTION_IC_WAY_PNG = 'assets/inspection/ic_way.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/inspection/ic_xunjian.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/inspection/ic_xunjian.png) static const String ASSETS_INSPECTION_IC_XUNJIAN_PNG = 'assets/inspection/ic_xunjian.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/inspection/inspection_station.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/inspection/inspection_station.png) static const String ASSETS_INSPECTION_INSPECTION_STATION_PNG = 'assets/inspection/inspection_station.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/manage/add.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/manage/add.png) static const String ASSETS_MANAGE_ADD_PNG = 'assets/manage/add.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/manage/address.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/manage/address.png) static const String ASSETS_MANAGE_ADDRESS_PNG = 'assets/manage/address.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/manage/article.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/manage/article.png) static const String ASSETS_MANAGE_ARTICLE_PNG = 'assets/manage/article.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/manage/borrow.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/manage/borrow.png) static const String ASSETS_MANAGE_BORROW_PNG = 'assets/manage/borrow.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/manage/check.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/manage/check.png) static const String ASSETS_MANAGE_CHECK_PNG = 'assets/manage/check.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/manage/circuit.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/manage/circuit.png) static const String ASSETS_MANAGE_CIRCUIT_PNG = 'assets/manage/circuit.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/manage/clock.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/manage/clock.png) static const String ASSETS_MANAGE_CLOCK_PNG = 'assets/manage/clock.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/manage/decoration.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/manage/decoration.png) static const String ASSETS_MANAGE_DECORATION_PNG = 'assets/manage/decoration.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/manage/dingwei.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/manage/dingwei.png) static const String ASSETS_MANAGE_DINGWEI_PNG = 'assets/manage/dingwei.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/manage/estate.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/manage/estate.png) static const String ASSETS_MANAGE_ESTATE_PNG = 'assets/manage/estate.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/manage/home.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/manage/home.png) static const String ASSETS_MANAGE_HOME_PNG = 'assets/manage/home.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/manage/ic_announce.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/manage/ic_announce.png) static const String ASSETS_MANAGE_IC_ANNOUNCE_PNG = 'assets/manage/ic_announce.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/manage/ic_car.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/manage/ic_car.png) static const String ASSETS_MANAGE_IC_CAR_PNG = 'assets/manage/ic_car.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/manage/ic_daofang.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/manage/ic_daofang.png) static const String ASSETS_MANAGE_IC_DAOFANG_PNG = 'assets/manage/ic_daofang.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/manage/ic_guoqi.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/manage/ic_guoqi.png) static const String ASSETS_MANAGE_IC_GUOQI_PNG = 'assets/manage/ic_guoqi.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/manage/ic_image.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/manage/ic_image.png) static const String ASSETS_MANAGE_IC_IMAGE_PNG = 'assets/manage/ic_image.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/manage/ic_renwu.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/manage/ic_renwu.png) static const String ASSETS_MANAGE_IC_RENWU_PNG = 'assets/manage/ic_renwu.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/manage/ic_time.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/manage/ic_time.png) static const String ASSETS_MANAGE_IC_TIME_PNG = 'assets/manage/ic_time.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/manage/ic_wancheng.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/manage/ic_wancheng.png) static const String ASSETS_MANAGE_IC_WANCHENG_PNG = 'assets/manage/ic_wancheng.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/manage/ic_weidao.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/manage/ic_weidao.png) static const String ASSETS_MANAGE_IC_WEIDAO_PNG = 'assets/manage/ic_weidao.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/manage/ic_zhuangxiu.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/manage/ic_zhuangxiu.png) static const String ASSETS_MANAGE_IC_ZHUANGXIU_PNG = 'assets/manage/ic_zhuangxiu.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/manage/info.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/manage/ic_zuofei.png) + static const String ASSETS_MANAGE_IC_ZUOFEI_PNG = + 'assets/manage/ic_zuofei.png'; + + /// ![preview](file:///Users/datang/aku_community_manager/assets/manage/info.png) static const String ASSETS_MANAGE_INFO_PNG = 'assets/manage/info.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/manage/key.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/manage/key.png) static const String ASSETS_MANAGE_KEY_PNG = 'assets/manage/key.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/manage/location.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/manage/location.png) static const String ASSETS_MANAGE_LOCATION_PNG = 'assets/manage/location.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/manage/lock.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/manage/lock.png) static const String ASSETS_MANAGE_LOCK_PNG = 'assets/manage/lock.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/manage/police.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/manage/police.png) static const String ASSETS_MANAGE_POLICE_PNG = 'assets/manage/police.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/manage/remaining.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/manage/remaining.png) static const String ASSETS_MANAGE_REMAINING_PNG = 'assets/manage/remaining.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/manage/security.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/manage/security.png) static const String ASSETS_MANAGE_SECURITY_PNG = 'assets/manage/security.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/manage/status.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/manage/status.png) static const String ASSETS_MANAGE_STATUS_PNG = 'assets/manage/status.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/manage/submit_success.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/manage/submit_success.png) static const String ASSETS_MANAGE_SUBMIT_SUCCESS_PNG = 'assets/manage/submit_success.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/manage/wall.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/manage/wall.png) static const String ASSETS_MANAGE_WALL_PNG = 'assets/manage/wall.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/manage/warning.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/manage/warning.png) static const String ASSETS_MANAGE_WARNING_PNG = 'assets/manage/warning.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/manage/waterway.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/manage/waterway.png) static const String ASSETS_MANAGE_WATERWAY_PNG = 'assets/manage/waterway.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/manage/window.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/manage/window.png) static const String ASSETS_MANAGE_WINDOW_PNG = 'assets/manage/window.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/message/ic_area.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/message/ic_area.png) static const String ASSETS_MESSAGE_IC_AREA_PNG = 'assets/message/ic_area.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/message/ic_people.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/message/ic_people.png) static const String ASSETS_MESSAGE_IC_PEOPLE_PNG = 'assets/message/ic_people.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/message/ic_phone.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/message/ic_phone.png) static const String ASSETS_MESSAGE_IC_PHONE_PNG = 'assets/message/ic_phone.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/message/ic_pinglun.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/message/ic_pinglun.png) static const String ASSETS_MESSAGE_IC_PINGLUN_PNG = 'assets/message/ic_pinglun.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/message/ic_star.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/message/ic_star.png) static const String ASSETS_MESSAGE_IC_STAR_PNG = 'assets/message/ic_star.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/message/ic_tongzhi.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/message/ic_tongzhi.png) static const String ASSETS_MESSAGE_IC_TONGZHI_PNG = 'assets/message/ic_tongzhi.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/outdoor/ic_address.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/outdoor/ic_address.png) static const String ASSETS_OUTDOOR_IC_ADDRESS_PNG = 'assets/outdoor/ic_address.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/outdoor/ic_chuhu.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/outdoor/ic_chuhu.png) static const String ASSETS_OUTDOOR_IC_CHUHU_PNG = 'assets/outdoor/ic_chuhu.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/outdoor/ic_goout.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/outdoor/ic_goout.png) static const String ASSETS_OUTDOOR_IC_GOOUT_PNG = 'assets/outdoor/ic_goout.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/outdoor/ic_home.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/outdoor/ic_home.png) static const String ASSETS_OUTDOOR_IC_HOME_PNG = 'assets/outdoor/ic_home.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/outdoor/ic_image.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/outdoor/ic_image.png) static const String ASSETS_OUTDOOR_IC_IMAGE_PNG = 'assets/outdoor/ic_image.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/outdoor/ic_people.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/outdoor/ic_people.png) static const String ASSETS_OUTDOOR_IC_PEOPLE_PNG = 'assets/outdoor/ic_people.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/outdoor/ic_phoneblue.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/outdoor/ic_phoneblue.png) static const String ASSETS_OUTDOOR_IC_PHONEBLUE_PNG = 'assets/outdoor/ic_phoneblue.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/outdoor/ic_time.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/outdoor/ic_time.png) static const String ASSETS_OUTDOOR_IC_TIME_PNG = 'assets/outdoor/ic_time.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/outdoor/ic_transport.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/outdoor/ic_transport.png) static const String ASSETS_OUTDOOR_IC_TRANSPORT_PNG = 'assets/outdoor/ic_transport.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/outdoor/ic_weight.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/outdoor/ic_weight.png) static const String ASSETS_OUTDOOR_IC_WEIGHT_PNG = 'assets/outdoor/ic_weight.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/outdoor/item2.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/outdoor/item2.png) static const String ASSETS_OUTDOOR_ITEM2_PNG = 'assets/outdoor/item2.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/outdoor/item3.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/outdoor/item3.png) static const String ASSETS_OUTDOOR_ITEM3_PNG = 'assets/outdoor/item3.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/outdoor/itme1.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/outdoor/itme1.png) static const String ASSETS_OUTDOOR_ITME1_PNG = 'assets/outdoor/itme1.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/placeholder.webp) + /// ![preview](file:///Users/datang/aku_community_manager/assets/placeholder.webp) static const String ASSETS_PLACEHOLDER_WEBP = 'assets/placeholder.webp'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/static_fix/air1.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/static_fix/air1.png) static const String ASSETS_STATIC_FIX_AIR1_PNG = 'assets/static_fix/air1.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/static_fix/air2.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/static_fix/air2.png) static const String ASSETS_STATIC_FIX_AIR2_PNG = 'assets/static_fix/air2.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/static_fix/food.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/static_fix/food.png) static const String ASSETS_STATIC_FIX_FOOD_PNG = 'assets/static_fix/food.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/static_fix/food2.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/static_fix/food2.png) static const String ASSETS_STATIC_FIX_FOOD2_PNG = 'assets/static_fix/food2.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/static_fix/light1.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/static_fix/light1.png) static const String ASSETS_STATIC_FIX_LIGHT1_PNG = 'assets/static_fix/light1.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/static_fix/light2.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/static_fix/light2.png) static const String ASSETS_STATIC_FIX_LIGHT2_PNG = 'assets/static_fix/light2.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/static_fix/light3.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/static_fix/light3.png) static const String ASSETS_STATIC_FIX_LIGHT3_PNG = 'assets/static_fix/light3.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/static_temp/drill.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/static_temp/drill.png) static const String ASSETS_STATIC_TEMP_DRILL_PNG = 'assets/static_temp/drill.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/static_temp/f1.webp) + /// ![preview](file:///Users/datang/aku_community_manager/assets/static_temp/f1.webp) static const String ASSETS_STATIC_TEMP_F1_WEBP = 'assets/static_temp/f1.webp'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/static_temp/f2.webp) + /// ![preview](file:///Users/datang/aku_community_manager/assets/static_temp/f2.webp) static const String ASSETS_STATIC_TEMP_F2_WEBP = 'assets/static_temp/f2.webp'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/static_temp/f3.webp) + /// ![preview](file:///Users/datang/aku_community_manager/assets/static_temp/f3.webp) static const String ASSETS_STATIC_TEMP_F3_WEBP = 'assets/static_temp/f3.webp'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/static_temp/f4.webp) + /// ![preview](file:///Users/datang/aku_community_manager/assets/static_temp/f4.webp) static const String ASSETS_STATIC_TEMP_F4_WEBP = 'assets/static_temp/f4.webp'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/static_temp/f5.webp) + /// ![preview](file:///Users/datang/aku_community_manager/assets/static_temp/f5.webp) static const String ASSETS_STATIC_TEMP_F5_WEBP = 'assets/static_temp/f5.webp'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/static_temp/hammer.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/static_temp/hammer.png) static const String ASSETS_STATIC_TEMP_HAMMER_PNG = 'assets/static_temp/hammer.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/static_temp/ladder.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/static_temp/ladder.png) static const String ASSETS_STATIC_TEMP_LADDER_PNG = 'assets/static_temp/ladder.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/user/ic_kefu.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/user/ic_kefu.png) static const String ASSETS_USER_IC_KEFU_PNG = 'assets/user/ic_kefu.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/user/ic_person.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/user/ic_person.png) static const String ASSETS_USER_IC_PERSON_PNG = 'assets/user/ic_person.png'; - /// ![preview](file:///Users/zhangmeng/aku_community_manager/assets/user/ic_setup.png) + /// ![preview](file:///Users/datang/aku_community_manager/assets/user/ic_setup.png) static const String ASSETS_USER_IC_SETUP_PNG = 'assets/user/ic_setup.png'; } diff --git a/lib/json_models/manager/key_manage/key_manage_record_list_model.dart b/lib/json_models/manager/key_manage/key_manage_record_list_model.dart index 3f19309..7cbbcdb 100644 --- a/lib/json_models/manager/key_manage/key_manage_record_list_model.dart +++ b/lib/json_models/manager/key_manage/key_manage_record_list_model.dart @@ -13,10 +13,14 @@ class KeyManageRecordListModel { String? storageLocation; String? auditDate; String? reason; + String? returnAuditDate;//归还审核时间 + String? returnReason;//归还驳回原因 factory KeyManageRecordListModel.fromJson(Map json) => _$KeyManageRecordListModelFromJson(json); String get auditDateString => DateUtil.formatDateStr(auditDate ?? '', format: 'yyyy-MM-dd HH:mm'); + String get returnAuditDateString => + DateUtil.formatDateStr(returnAuditDate ?? '', format: 'yyyy-MM-dd HH:mm'); KeyManageRecordListModel({ required this.id, @@ -27,5 +31,7 @@ class KeyManageRecordListModel { this.storageLocation, this.auditDate, this.reason, + this.returnAuditDate, + this.returnReason, }); } diff --git a/lib/json_models/manager/key_manage/key_manage_record_list_model.g.dart b/lib/json_models/manager/key_manage/key_manage_record_list_model.g.dart index 1d2acbe..2184f1b 100644 --- a/lib/json_models/manager/key_manage/key_manage_record_list_model.g.dart +++ b/lib/json_models/manager/key_manage/key_manage_record_list_model.g.dart @@ -17,5 +17,7 @@ KeyManageRecordListModel _$KeyManageRecordListModelFromJson( storageLocation: json['storageLocation'] as String?, auditDate: json['auditDate'] as String?, reason: json['reason'] as String?, + returnAuditDate: json['returnAuditDate'] as String?, + returnReason: json['returnReason'] as String?, ); } diff --git a/lib/models/manager/borrow/borrow_status_item_model.dart b/lib/models/manager/borrow/borrow_status_item_model.dart index ef9b019..e5adab2 100644 --- a/lib/models/manager/borrow/borrow_status_item_model.dart +++ b/lib/models/manager/borrow/borrow_status_item_model.dart @@ -33,12 +33,18 @@ class BorrowStatusItemModel { ///借取状态(1.出借中,2.已还,3.待检查) String get borrowStatusValue { switch (borrowStatus) { + case -1: + return '出借审核中'; + case 0: + return '出借审核驳回'; case 1: return '出借中'; case 2: - return '已还'; + return '已归还'; case 3: - return '待检查'; + return '归还审核中'; + case 4: + return '归还审核驳回'; default: return '未知'; } diff --git a/lib/models/manager/bussiness_and_fix/fixed_detail_model.dart b/lib/models/manager/bussiness_and_fix/fixed_detail_model.dart index a494ce0..4f31eb0 100644 --- a/lib/models/manager/bussiness_and_fix/fixed_detail_model.dart +++ b/lib/models/manager/bussiness_and_fix/fixed_detail_model.dart @@ -172,6 +172,7 @@ class CostDetail { class RepairDetail { int? id; int? dispatchId; + String? roomName; String? name; String? tel; int? type; @@ -181,6 +182,7 @@ class RepairDetail { RepairDetail( {this.id, this.dispatchId, + this.roomName, this.name, this.tel, this.type, @@ -190,6 +192,7 @@ class RepairDetail { RepairDetail.fromJson(Map json) { id = json['id']; dispatchId = json['dispatchId']; + roomName = json['roomName']; name = json['name']; tel = json['tel']; type = json['type']; @@ -206,6 +209,7 @@ class RepairDetail { final Map data = new Map(); data['id'] = this.id; data['dispatchId'] = this.dispatchId; + data['roomName'] = this.roomName; data['name'] = this.name; data['tel'] = this.tel; data['type'] = this.type; diff --git a/lib/ui/home/home_page.dart b/lib/ui/home/home_page.dart index 164138e..e744e7a 100644 --- a/lib/ui/home/home_page.dart +++ b/lib/ui/home/home_page.dart @@ -577,7 +577,7 @@ class _HomePageState extends State { !userProvider.isLogin ? SizedBox() : Container( - height: 450.w, + height: 453.w, child: ListView.separated( padding: EdgeInsets.zero, separatorBuilder: (context, index) { diff --git a/lib/ui/manage_pages/engineer_repair/engineer_repair_acceptance_page.dart b/lib/ui/manage_pages/engineer_repair/engineer_repair_acceptance_page.dart index c6f7eb7..12a5d29 100644 --- a/lib/ui/manage_pages/engineer_repair/engineer_repair_acceptance_page.dart +++ b/lib/ui/manage_pages/engineer_repair/engineer_repair_acceptance_page.dart @@ -219,7 +219,11 @@ class _EngineerRepairAcceptancePageState borderRadius: BorderRadius.circular(4.w), child: FadeInImage.assetNetwork( placeholder: R.ASSETS_PLACEHOLDER_WEBP, - image: API.image(e.url!)), + image: API.image(e.url!), + imageErrorBuilder: (context, error, stackTrace) { + return Image.asset(R.ASSETS_PLACEHOLDER_WEBP,); + }, + ), ); }).toList(), shrinkWrap: true, diff --git a/lib/ui/manage_pages/engineer_repair/engineer_repair_acceptance_record_list_page.dart b/lib/ui/manage_pages/engineer_repair/engineer_repair_acceptance_record_list_page.dart index d3c218b..7fadf7a 100644 --- a/lib/ui/manage_pages/engineer_repair/engineer_repair_acceptance_record_list_page.dart +++ b/lib/ui/manage_pages/engineer_repair/engineer_repair_acceptance_record_list_page.dart @@ -88,7 +88,9 @@ class _EngineerRepairAcceptanceRecordListPageState borderRadius: BorderRadius.circular(4.w), child: FadeInImage.assetNetwork( placeholder: R.ASSETS_PLACEHOLDER_WEBP, - image: API.image(e.url!)), + image: API.image(e.url!),imageErrorBuilder: (context, error, stackTrace) { + return Image.asset(R.ASSETS_PLACEHOLDER_WEBP,); + },), ); }).toList(), shrinkWrap: true, diff --git a/lib/ui/manage_pages/facilities/facilities_card.dart b/lib/ui/manage_pages/facilities/facilities_card.dart index a54ec3e..8d0da95 100644 --- a/lib/ui/manage_pages/facilities/facilities_card.dart +++ b/lib/ui/manage_pages/facilities/facilities_card.dart @@ -13,18 +13,22 @@ import 'package:flutter_screenutil/flutter_screenutil.dart'; import 'package:get/get.dart'; import 'package:velocity_x/velocity_x.dart'; +import 'facilities_inspect_report_detail_page.dart'; + class FacilitiesCard extends StatefulWidget { final int index; final int facilitiesType; + final int executeStatus; final FacilitiesCheckListModel model; final VoidCallback? callRefresh; + FacilitiesCard( {Key? key, required this.index, required this.model, required this.facilitiesType, - this.callRefresh}) + this.callRefresh, required this.executeStatus}) : super(key: key); @override @@ -97,11 +101,21 @@ class _FacilitiesCardState extends State { .padding(EdgeInsets.all(24.w)) .make() .onInkTap(() async { - await Get.to(() => FacilitiesInspectReportPage( + if(widget.executeStatus==2){ + await Get.to(() => FacilitiesInspectReportDetailPage( facilitiesType: widget.facilitiesType, id: widget.model.id!, - model: widget.index != 1 ? widget.model : null, + model: widget.model, + )); + } + else{ + await Get.to(() => FacilitiesInspectReportPage( + facilitiesType: widget.facilitiesType, + id: widget.model.id!, + model: widget.model, )); + } + widget.callRefresh!(); }); } diff --git a/lib/ui/manage_pages/facilities/facilities_inspect_report_detail_page.dart b/lib/ui/manage_pages/facilities/facilities_inspect_report_detail_page.dart new file mode 100644 index 0000000..f894a16 --- /dev/null +++ b/lib/ui/manage_pages/facilities/facilities_inspect_report_detail_page.dart @@ -0,0 +1,298 @@ +// Dart imports: +import 'dart:io'; + +// Flutter imports: +import 'package:aku_community_manager/const/api.dart'; +import 'package:aku_community_manager/models/manager/facilities/facilities_check_list_model.dart'; +// Project imports: +import 'package:aku_community_manager/style/app_style.dart'; +import 'package:aku_community_manager/ui/widgets/app_widgets/aku_pick_image_widget.dart'; +import 'package:aku_community_manager/ui/widgets/app_widgets/aku_single_check_button.dart'; +import 'package:aku_community_manager/ui/widgets/app_widgets/bee_grid_image_view.dart'; +import 'package:aku_community_manager/ui/widgets/common/aku_button.dart'; +import 'package:aku_community_manager/ui/widgets/common/aku_scaffold.dart'; +import 'package:aku_community_manager/utils/network/base_model.dart'; +import 'package:aku_community_manager/utils/network/net_util.dart'; +import 'package:bot_toast/bot_toast.dart'; +import 'package:flutter/material.dart'; +// Package imports: +import 'package:flutter_screenutil/flutter_screenutil.dart'; +import 'package:get/get.dart'; +import 'package:velocity_x/velocity_x.dart'; + +import 'facilities_map.dart'; + +class FacilitiesInspectReportDetailPage extends StatefulWidget { + final int facilitiesType; + final int id; + final FacilitiesCheckListModel? model; + + FacilitiesInspectReportDetailPage({ + Key? key, + /*required*/ required this.facilitiesType, + /*required*/ required this.id, + this.model, + }) : super(key: key); + + @override + _FacilitiesInspectReportDetailPageState createState() => + _FacilitiesInspectReportDetailPageState(); +} + +class _FacilitiesInspectReportDetailPageState + extends State { + // List? _selfPhotos; + late List _scenePhotos; + String? _describtion; + int _scene = 1; //设施设备状况 1为正常 2为异常 + bool get editEnable => widget.model == null; + + @override + void initState() { + // TODO: implement initState + super.initState(); + if(!editEnable){ + if(widget.model!.situation==1){ + _scene = 1; + } + else if(widget.model!.situation==2){ + _scene = 2; + } + } + } + + @override + Widget build(BuildContext context) { + return AkuScaffold( + title: '检查报告', + body: ListView( + children: [ + Container( + color: Color(0XFFF9F9F9), + height: 16.w, + width: double.infinity, + ), + _basicMessageCard(widget.model), + Container( + color: Color(0XFFF9F9F9), + height: 16.w, + width: double.infinity, + ), + _descriptionCard( + widget.facilitiesType == 1 ? '设施情况' : '设备情况', + widget.model + ), + _scenePhotoCard(widget.model), + ], + ), + // bottom: _bottomSubmitButton(), + ); + } + + Widget _bottomSubmitButton() { + return AkuButton( + onPressed: () async { + List _scenePhotoUrl = await NetUtil().uploadFiles( + _scenePhotos, + API.upload.uploadFacilitiCheckPhoto, + ); + + BaseModel baseModel = + await NetUtil().post(API.manage.submitFacilitiesCheckInfo, params: { + "id": widget.id, + "situation": _scene, + "detail": _describtion, + "imgUrls": _scenePhotoUrl, + }); + if (baseModel.status!) { + Get.back(); + } + BotToast.showText(text: baseModel.message!); + }, + width: double.infinity, + height: 100.w, + child: '立即提交'.text.color(kTextPrimaryColor).bold.size(32.sp).make(), + color: Color(0xFFFFC40C), + padding: EdgeInsets.symmetric(vertical: 26.w), + ).pOnly(bottom: MediaQuery.of(context).padding.bottom); + } + + Widget _basicMessageCard(FacilitiesCheckListModel? model) { + return Column( + children: [ + Row( + children: [ + '基础信息'.text.size(32.sp).color(kTextPrimaryColor).bold.make(), + Spacer(), + FacilitiesMap.inspectStatus[model?.status!]!.text + .color(FacilitiesMap.insepectColor[model?.status!]!) + .size(28.sp) + .bold + .make(), + ], + ), + 16.w.heightBox, + // _buildTile(R.ASSETS_MESSAGE_IC_PEOPLE_PNG, '检查人', model!.facilitiesName??''), + // 12.w.heightBox, + // _buildTile(R.ASSETS_MESSAGE_IC_PHONE_PNG, '联系电话', model!.??''), + // 12.w.heightBox, + _buildTile(R.ASSETS_MANAGE_ADDRESS_PNG, '检查场地', model?.facilitiesName??''), + 12.w.heightBox, + _buildTile(R.ASSETS_MANAGE_CLOCK_PNG, '规定任务时间', model?.beginDate??''), + ], + ) + .box + .width(double.infinity) + .padding(EdgeInsets.symmetric(vertical: 34.w, horizontal: 32.w)) + .color(Colors.white) + .make(); + } + + Widget _buildTile(String icon, String title, String text, + {Color color = kTextSubColor}) { + return Row( + children: [ + Image.asset( + icon, + width: 40.w, + height: 40.w, + ), + 20.w.widthBox, + title.text.size(24.sp).color(kTextSubColor).make(), + Spacer(), + text.text.size(24.sp).color(color).make(), + ], + ); + } + + Widget _descriptionCard( + String title, FacilitiesCheckListModel? model, + // int index, + ) { + return Column( + children: [ + Row( + children: ['$title'.text.color(kTextPrimaryColor).size(32.sp).bold.make()], + ), + 16.w.heightBox, + Row( + children: [ + AkuSingleCheckButton( + text: '正常', + value: 1, + gropValue: _scene, + onPressed: () {} + + ), + 16.w.widthBox, + AkuSingleCheckButton( + text: '异常', + value: 2, + gropValue: _scene, + onPressed: () {} + + ), + ], + ), + 32.w.heightBox, + Row( + children: ['补充说明'.text.color(kTextPrimaryColor).size(32.sp).bold.make()], + ), + 16.w.heightBox, + Container( + width: 686.w, + height: 120.w, + padding: EdgeInsets.all(5.w), + decoration: BoxDecoration( + borderRadius: BorderRadius.circular(8.w), + border: Border.all( + width: 2.w, + color: Color(0xFFE8E8E8), + ), + ), + child: !editEnable + ? (widget.model!.detail ?? '').text.size(28.sp).black.make() + : TextField( + minLines: 5, + maxLines: 10, + autofocus: false, + onChanged: (value) { + _describtion = value; + }, + decoration: InputDecoration( + hintText: '请详细描述异常情况', + hintStyle: TextStyle( + fontSize: 28.sp, + color: kTextSubColor, + ), + contentPadding: + EdgeInsets.symmetric(vertical: 16.w, horizontal: 24.w), + border: InputBorder.none, + isDense: true, + ), + ), + ), + ], + ) + .box + .padding(EdgeInsets.symmetric(vertical: 24.w, horizontal: 32.w)) + .color(Colors.white) + .make(); + } + + // Widget _selfPhotoCard() { + // return Column( + // crossAxisAlignment: CrossAxisAlignment.start, + // children: [ + // Row( + // children: [ + // '3.巡更人员自拍人脸'.text.color(kTextPrimaryColor).size(32.sp).bold.make() + // ], + // ), + // 32.w.heightBox, + // AkuPickImageWidget( + // description: '上传自拍', + // onChanged: (files) { + // _selfPhotos = files; + // setState(() {}); + // }, + // ), + // ], + // ) + // .box + // .color(Colors.white) + // .padding(EdgeInsets.symmetric(vertical: 24.w, horizontal: 32.w)) + // .make(); + // } + + Widget _scenePhotoCard(FacilitiesCheckListModel? model) { + return Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Row( + children: [ + '现场照片'.text.color(kTextPrimaryColor).size(32.sp).bold.make() + ], + ), + 32.w.heightBox, + !editEnable + ? BeeGridImageView( + urls: (widget.model!.imgList ?? []) + .map((e) => API.image(e.url ?? '')) + .toList(), + ) + : AkuPickImageWidget( + description: '上传现场照片', + onChanged: (files) { + _scenePhotos = files; + setState(() {}); + }, + ) + ], + ) + .box + .color(Colors.white) + .padding(EdgeInsets.symmetric(vertical: 24.w, horizontal: 32.w)) + .make(); + } +} diff --git a/lib/ui/manage_pages/facilities/facilities_view.dart b/lib/ui/manage_pages/facilities/facilities_view.dart index bce93c7..ee19bf3 100644 --- a/lib/ui/manage_pages/facilities/facilities_view.dart +++ b/lib/ui/manage_pages/facilities/facilities_view.dart @@ -59,7 +59,7 @@ class _FacilitiesViewState extends State { model: items[index], callRefresh: () { _refreshController!.callRefresh(); - }, + }, executeStatus: widget.index + 1, ); }, separatorBuilder: (_, __) { diff --git a/lib/ui/manage_pages/key_manage/key_manage_map.dart b/lib/ui/manage_pages/key_manage/key_manage_map.dart index 30d3d68..db77b68 100644 --- a/lib/ui/manage_pages/key_manage/key_manage_map.dart +++ b/lib/ui/manage_pages/key_manage/key_manage_map.dart @@ -21,11 +21,11 @@ class KeyManageMap { static Map keyRecordStatus = { 1: '待审核', - 2: '已通过', - 3: '已驳回', - 4: '已归还', - 5: '', - 6: '' + 2: '审核通过', + 3: '审核驳回', + 4: '归还待审核', + 5: '归还审核驳回', + 6: '已归还' }; static Map keyRecordStatusColor = { diff --git a/lib/ui/sub_pages/borrow_manager/borrow_manager_card.dart b/lib/ui/sub_pages/borrow_manager/borrow_manager_card.dart index 7b50fa9..932e927 100644 --- a/lib/ui/sub_pages/borrow_manager/borrow_manager_card.dart +++ b/lib/ui/sub_pages/borrow_manager/borrow_manager_card.dart @@ -19,6 +19,8 @@ import 'package:aku_community_manager/ui/sub_pages/borrow_manager/borrow_manager import 'package:aku_community_manager/ui/widgets/inner/aku_chip_box.dart'; import 'package:aku_community_manager/utils/network/net_util.dart'; +import 'borrow_manager_examine_page.dart'; + class BorrowManagerCard extends StatefulWidget { final BorrowStatusItemModel model; BorrowManagerCard({Key? key, required this.model}) : super(key: key); @@ -46,13 +48,22 @@ class _BorrowManagerCardState extends State { AkuBox.w(24), Text( DateUtil.formatDate(widget.model.create), - style: TextStyle(), + style: TextStyle( + color: AppStyle.minorTextColor, + fontSize: 22.sp, + ), ), Spacer(), Text( widget.model.borrowStatusValue, style: TextStyle( - color: AppStyle.failColor, + color: widget.model.borrowStatus==-1?Color(0xFFFB7302): + widget.model.borrowStatus==0?Color(0xD9E60E0E): + widget.model.borrowStatus==1?Color(0xD9000000): + widget.model.borrowStatus==2?Color(0x73000000): + widget.model.borrowStatus==3?Color(0xD9FB7402): + widget.model.borrowStatus==4?Color(0xD9E60E0E): + AppStyle.failColor, fontWeight: FontWeight.bold, fontSize: 24.sp, ), @@ -74,9 +85,13 @@ class _BorrowManagerCardState extends State { children: [ FadeInImage.assetNetwork( placeholder: R.ASSETS_PLACEHOLDER_WEBP, - image: API.image(widget.model.firstImg?.url ?? ''), + image: API.image(widget.model.imgUrls!.isEmpty?'':widget.model.imgUrls![0].url??''), height: 184.w, width: 184.w, + imageErrorBuilder: (context, error, stackTrace) { + return Image.asset(R.ASSETS_PLACEHOLDER_WEBP,height: 184.w, + width: 184.w,); + }, ), AkuBox.w(24), Expanded( @@ -187,6 +202,25 @@ class _BorrowManagerCardState extends State { ), ) : SizedBox(), + widget.model.borrowStatus == -1 + ? AkuMaterialButton( + minWidth: 160.w, + height: 64.w, + color: AppStyle.primaryColor, + radius: 4.w, + onPressed: () async { + await Get.to(BorrowManagerExaminePage(id: widget.model.id!, model: widget.model, type: 1,)); + }, + child: Text( + '点击审核', + style: TextStyle( + color: AppStyle.primaryTextColor, + fontWeight: FontWeight.bold, + fontSize: 28.w, + ), + ), + ) + : SizedBox(), ], ), ]; @@ -206,7 +240,7 @@ class _BorrowManagerCardState extends State { width: 40.w, ), Text( - '$title\:', + '$title\:', style: TextStyle( color: AppStyle.minorTextColor, fontSize: 28.w, diff --git a/lib/ui/sub_pages/borrow_manager/borrow_manager_examine_page.dart b/lib/ui/sub_pages/borrow_manager/borrow_manager_examine_page.dart new file mode 100644 index 0000000..3da7116 --- /dev/null +++ b/lib/ui/sub_pages/borrow_manager/borrow_manager_examine_page.dart @@ -0,0 +1,405 @@ +// Flutter imports: +import 'package:aku_community_manager/models/manager/borrow/borrow_status_item_model.dart'; +import 'package:aku_community_manager/ui/widgets/inner/show_bottom_sheet.dart'; +import 'package:common_utils/common_utils.dart'; +import 'package:flutter/material.dart'; + +// Package imports: +import 'package:bot_toast/bot_toast.dart'; +import 'package:flutter_easyrefresh/easy_refresh.dart'; +import 'package:get/get.dart'; + +// Project imports: +import 'package:aku_community_manager/const/api.dart'; +import 'package:aku_community_manager/models/manager/borrow/borrow_check_item_model.dart'; +import 'package:aku_community_manager/style/app_style.dart'; +import 'package:aku_community_manager/tools/widget_tool.dart'; +import 'package:aku_community_manager/ui/widgets/common/aku_scaffold.dart'; +import 'package:aku_community_manager/ui/widgets/inner/aku_bottom_button.dart'; +import 'package:aku_community_manager/utils/network/base_model.dart'; +import 'package:aku_community_manager/utils/network/net_util.dart'; +import 'package:velocity_x/velocity_x.dart'; + +import '../manage_func.dart'; + +class BorrowManagerExaminePage extends StatefulWidget { + final int id; + final int type; + //1为借用 2为归还 + final BorrowStatusItemModel model; + BorrowManagerExaminePage({Key? key, required this.id,required this.type, required this.model}) : super(key: key); + + @override + _BorrowManagerExaminePageState createState() => _BorrowManagerExaminePageState(); +} + +class _BorrowManagerExaminePageState extends State { + int borrowStatus = -1; + BorrowCheckItemModel? _model; + String rejectReasons = ''; + late TextEditingController _editingController; + @override + void initState() { + super.initState(); + _editingController = TextEditingController(); + + } + + @override + void dispose() { + _editingController.dispose(); + super.dispose(); + } + @override + Widget build(BuildContext context) { + return AkuScaffold( + title: '物品审核', + bottom: AkuBottomButton( + title: '点击提交', + onTap: () async { + if(borrowStatus!=-1){ + Function cancel = BotToast.showLoading(); + await NetUtil().post( + API.manage.lendingApproval, + params: { + 'id': widget.id, + 'status': borrowStatus, + 'rejectReasons':rejectReasons, + }, + showMessage: true, + ); + cancel(); + Get.back(result: true); + } + else{ + BotToast.showText(text: '请先选择审核结果!'); + } + + }, + ), + body: EasyRefresh( + firstRefresh: true, + onRefresh: () async { + BaseModel model = await NetUtil().get( + API.manage.borrowCheckInfo, + params: {'articleBorrowId': widget.id}, + showMessage: false, + ); + if (model.data == null) { + // Get.back(); + return; + } + _model = BorrowCheckItemModel.fromJson(model.data); + setState(() {}); + }, + header: MaterialHeader(), + child: _model == null + ? SizedBox() + : ListView( + padding: EdgeInsets.symmetric(vertical: 16.w), + children: [ + Container( + color: Colors.white, + padding: EdgeInsets.symmetric(horizontal: 16), + child: Column( + children: [ + _buildRow( + '物品名称', + Text( + _model!.articleName!, + style: TextStyle( + color: AppStyle.primaryTextColor, + fontSize: 28.sp, + fontWeight: FontWeight.bold, + ), + ), + ), + Divider(height: 1.w), + _buildRow( + '操作类型', + Text( + widget.type==1?'借用':'归还', + style: TextStyle( + color: AppStyle.primaryTextColor, + fontSize: 28.sp, + fontWeight: FontWeight.bold, + ), + ), + ), + Divider(height: 1.w), + _buildRow( + widget.type==1?'借用数量':'归还数量', + Text( + '1', + style: TextStyle( + color: AppStyle.primaryTextColor, + fontSize: 28.sp, + fontWeight: FontWeight.bold, + ), + )), + Divider(height: 1.w), + _buildRow( + '物品图片', + FadeInImage.assetNetwork( + placeholder: R.ASSETS_PLACEHOLDER_WEBP, + image: API.image(_model!.firstImg?.url ?? ''), + height: 184.w, + width: 184.w, + ), + ), + ], + ), + ), + + Container( + color: Color(0XFFF9F9F9), + height: 16.w, + width: double.infinity, + ), + Container( + color: Colors.white, + padding: EdgeInsets.symmetric(horizontal: 16), + child: Column( + children: [ + _buildRow( + widget.type==1?'借用人 ':'归还人 ', + Text( + widget.model.borrowName??'', + style: TextStyle( + color: AppStyle.primaryTextColor, + fontSize: 28.sp, + fontWeight: FontWeight.bold, + ), + ), + ), + Divider(height: 1.w), + _buildRow( + '联系电话', + Text( + widget.model.borrowTel??'', + style: TextStyle( + color: AppStyle.primaryTextColor, + fontSize: 28.sp, + fontWeight: FontWeight.bold, + ), + )), + ], + ), + ), + + Container( + color: Color(0XFFF9F9F9), + height: 16.w, + width: double.infinity, + ), + Container( + color: Color(0XFFF9F9F9), + height: 16.w, + width: double.infinity, + ), + + Container( + color: Colors.white, + padding: EdgeInsets.only(left: 16,right: 16,bottom: 16), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Padding(padding: EdgeInsets.only(top: 25.w,bottom: 25.w),child:'审核结果'.text.size(28.sp).black.make()), + Divider(height: 1.w), + Material( + color: Colors.transparent, + child: InkWell( + onTap: () { + _openModalBottomSheet(); + }, + child: Row( + children: [ + AkuBox.h(96), + Text( + borrowStatus==-1?'请选择审核结果': borrowStatus==0?'审核失败':'审核通过', + style: TextStyle( + fontSize: 32.sp, + fontWeight: FontWeight.bold, + color: borrowStatus==-1 + ? Color(0x40000000) + : Colors.black, + ), + ), + Spacer(), + Icon( + Icons.arrow_forward_ios, + size: 24.w, + color: AppStyle.minorTextColor, + ) + + ], + ), + ), + ), + Divider(height: 1.w), + + Padding(padding: EdgeInsets.only(top: 25.w),child: '备注内容'.text.size(28.sp).black.make()), + 25.w.heightBox, + Container( + padding: EdgeInsets.all(24.w), + width: double.infinity, + decoration: BoxDecoration( + border: Border.all(color: Color(0xFFD4CFBE), width: 0.5.w), + borderRadius: BorderRadius.circular(4.w)), + child: TextField( + onChanged: (value){ + rejectReasons = value; + setState(() { + + }); + }, + controller: _editingController, + decoration: InputDecoration( + contentPadding: EdgeInsets.zero, + isDense: true, + border: InputBorder.none, + hintText: '请输入备注内容', + hintStyle: TextStyle( + fontSize: 24.sp, + color: kTextSubColor, + + )), + style: TextStyle( + fontSize: 28.sp, + color: Colors.black, + ), + maxLines: 10, + minLines: 5, + ), + ), + + + + ], + ), + ), + + + + ], + ), + ), + ); + } + + _openModalBottomSheet() { + showModalBottomSheet( + context: context, + builder: (BuildContext context) { + return Container( + height: 180, + child: Column( + children: [ + ListTile( + title: Text('审核通过',textAlign: TextAlign.center,style: TextStyle( + + fontSize: 32.sp, + color: Color(0xFF333333) + ),), + onTap: () { + Get.back(); + borrowStatus = 1; + setState(() {}); + }, + ), + ListTile( + title: Text('审核失败',textAlign: TextAlign.center,style: TextStyle( + + fontSize: 32.sp, + color: Color(0xFF333333) + ),), + onTap: () { + Get.back(); + borrowStatus = 0; + setState(() {}); + }, + ), + Container( + width: double.infinity, + height: 16.w, + color: Color(0xFFF7F7F7), + ), + ListTile( + title: Text('取消',textAlign: TextAlign.center,style: TextStyle( + + fontSize: 32.sp, + color: Color(0xFF333333) + ),), + onTap: () { + Get.back(); + borrowStatus = -1; + setState(() {}); + }, + ), + ], + ), + ); + } + ); + + + } + + _buildRow(String title, Widget child) { + return Row( + children: [ + AkuBox.h(96), + Text( + title, + style: TextStyle( + color: AppStyle.minorTextColor, + fontSize: 28.w, + ), + ), + AkuBox.w(80), + Expanded( + child: Align( + alignment: Alignment.centerLeft, + child: child, + ), + ), + ], + ); + } + + _buildCard(int status) { + return GestureDetector( + onTap: () { + borrowStatus = status; + setState(() {}); + }, + child: Container( + height: 56.w, + width: 112.w, + child: Text( + { + 1: '完好', + 2: '损坏', + 3: '丢失', + }[status]!, + style: TextStyle( + color: borrowStatus == status + ? AppStyle.secondaryColor + : AppStyle.minorTextColor, + fontSize: 28.sp, + ), + ), + alignment: Alignment.center, + decoration: BoxDecoration( + borderRadius: BorderRadius.circular(4), + border: Border.all( + color: borrowStatus == status + ? AppStyle.secondaryColor + : AppStyle.minorTextColor, + width: 2.w, + ), + ), + ), + ); + } +} diff --git a/lib/ui/sub_pages/borrow_manager/borrow_manager_page.dart b/lib/ui/sub_pages/borrow_manager/borrow_manager_page.dart index e244c20..d967a94 100644 --- a/lib/ui/sub_pages/borrow_manager/borrow_manager_page.dart +++ b/lib/ui/sub_pages/borrow_manager/borrow_manager_page.dart @@ -28,8 +28,9 @@ class _BorrowManagerPageState extends State final userProvider = Provider.of(context, listen: false); return [ '全部', + ...userProvider.infoModel!.canOperation ? ['待审核'] : [], + ...userProvider.infoModel!.canOperation ? ['检查中'] : [], '出借中', - ...userProvider.infoModel!.canOperation ? ['待检查'] : [], '已归还' ]; } @@ -76,10 +77,14 @@ class _BorrowManagerPageState extends State final userProvider = Provider.of(context); return [ BorrowManagerView(), + ...userProvider.infoModel!.canOperation + ? [BorrowManagerView(status: -1)] + : [], + ...userProvider.infoModel!.canOperation + ? [BorrowManagerView(status: 3)] + : [], BorrowManagerView(status: 1), - ...userProvider.infoModel!.canOperation - ? [BorrowManagerView(status: 3)] - : [], + BorrowManagerView(status: 2), ]; } diff --git a/lib/ui/sub_pages/borrow_manager/borrow_manager_view.dart b/lib/ui/sub_pages/borrow_manager/borrow_manager_view.dart index 48ff072..57080c4 100644 --- a/lib/ui/sub_pages/borrow_manager/borrow_manager_view.dart +++ b/lib/ui/sub_pages/borrow_manager/borrow_manager_view.dart @@ -25,6 +25,7 @@ class _BorrowManagerViewState extends State Widget build(BuildContext context) { super.build(context); return BeeListView( + path: API.manage.borrowStatusList, extraParams: {'borrowStatus': widget.status}, controller: _refreshController, @@ -33,6 +34,7 @@ class _BorrowManagerViewState extends State .toList(), builder: (items) { return ListView.builder( + padding: EdgeInsets.only(left:16,right: 16 ), itemBuilder: (context, index) { return BorrowManagerCard(model: items[index]); }, diff --git a/lib/ui/sub_pages/business_and_fix/business_and_fix_detail_page.dart b/lib/ui/sub_pages/business_and_fix/business_and_fix_detail_page.dart index 02b2cb3..202a8d7 100644 --- a/lib/ui/sub_pages/business_and_fix/business_and_fix_detail_page.dart +++ b/lib/ui/sub_pages/business_and_fix/business_and_fix_detail_page.dart @@ -256,6 +256,11 @@ class _BusinessAndFixDetailPageState extends State { suffix: fixTypeWidget(), children: [ AkuBox.h(16), + _buildTile( + R.ASSETS_MESSAGE_IC_PEOPLE_PNG, + '绑定房屋', + _detailModel.repairDetail!.roomName??'', + ), _buildTile( R.ASSETS_MESSAGE_IC_PEOPLE_PNG, '报修人', diff --git a/lib/ui/sub_pages/visitor_manager/visitor_manager_card.dart b/lib/ui/sub_pages/visitor_manager/visitor_manager_card.dart index 4bc458a..2fc8751 100644 --- a/lib/ui/sub_pages/visitor_manager/visitor_manager_card.dart +++ b/lib/ui/sub_pages/visitor_manager/visitor_manager_card.dart @@ -66,6 +66,8 @@ class _VisitorManagerCardState extends State { return VisitorStatus.VISIT_DONE; case 3: return VisitorStatus.OUTDATE; + case 4: + return VisitorStatus.ZUOFEI; default: return null; } @@ -162,6 +164,8 @@ class _VisitorManagerCardState extends State { return R.ASSETS_MANAGE_IC_DAOFANG_PNG; case VisitorStatus.OUTDATE: return R.ASSETS_MANAGE_IC_GUOQI_PNG; + case VisitorStatus.ZUOFEI: + return R.ASSETS_MANAGE_IC_ZUOFEI_PNG; default: return ''; } diff --git a/lib/ui/sub_pages/visitor_manager/visitor_manager_page.dart b/lib/ui/sub_pages/visitor_manager/visitor_manager_page.dart index e8109d6..2852d02 100644 --- a/lib/ui/sub_pages/visitor_manager/visitor_manager_page.dart +++ b/lib/ui/sub_pages/visitor_manager/visitor_manager_page.dart @@ -14,6 +14,7 @@ enum VisitorStatus { NOT_VISIT, VISIT_DONE, OUTDATE, + ZUOFEI, } class VisitorCardsModel { diff --git a/lib/ui/widgets/app_widgets/aku_single_check_button.dart b/lib/ui/widgets/app_widgets/aku_single_check_button.dart index 631e4e7..b8a9d3d 100644 --- a/lib/ui/widgets/app_widgets/aku_single_check_button.dart +++ b/lib/ui/widgets/app_widgets/aku_single_check_button.dart @@ -28,8 +28,8 @@ class _AkuSingleCheckButtonState extends State { color: isSelect ? Color(0xFFFFF8E0) : Colors.white, border: Border.all( color: isSelect ? Color(0xFFFFC40C) : Color(0xFF999999), - width: 3.w), - borderRadius: BorderRadius.circular(4.w)), + width: 1.w), + borderRadius: BorderRadius.circular(8.w)), width: 180.w, height: 72.w, child: widget.text.text diff --git a/lib/ui/widgets/app_widgets/bee_grid_image_view.dart b/lib/ui/widgets/app_widgets/bee_grid_image_view.dart index ebb7e51..cf0ec24 100644 --- a/lib/ui/widgets/app_widgets/bee_grid_image_view.dart +++ b/lib/ui/widgets/app_widgets/bee_grid_image_view.dart @@ -38,6 +38,10 @@ class BeeGridImageView extends StatelessWidget { placeholder: R.ASSETS_PLACEHOLDER_WEBP, image: API.image(urls[index]), fit: BoxFit.cover, + imageErrorBuilder: (context, error, stackTrace) { + return Image.asset(R.ASSETS_PLACEHOLDER_WEBP,height: 184.w, + width: 184.w,); + }, ), ), ), diff --git a/pubspec.lock b/pubspec.lock index 472c951..e47d39c 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -56,7 +56,7 @@ packages: name: async url: "https://pub.flutter-io.cn" source: hosted - version: "2.5.0" + version: "2.6.1" auto_size_text: dependency: transitive description: @@ -895,7 +895,7 @@ packages: name: source_span url: "https://pub.flutter-io.cn" source: hosted - version: "1.8.0" + version: "1.8.1" stack_trace: dependency: transitive description: @@ -944,7 +944,7 @@ packages: name: test_api url: "https://pub.flutter-io.cn" source: hosted - version: "0.2.19" + version: "0.3.0" timing: dependency: transitive description: diff --git a/pubspec.yaml b/pubspec.yaml index 4289d10..91d96ac 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -3,7 +3,7 @@ description: A new Flutter application. publish_to: "none" -version: 1.8.3-dev+17 +version: 1.8.4-dev+18 environment: sdk: '>=2.12.0 <3.0.0' diff --git a/tool/config.dart b/tool/config.dart index 0ee4729..cbb033b 100644 --- a/tool/config.dart +++ b/tool/config.dart @@ -11,9 +11,9 @@ class Config { ///测试包文件夹 static String get apkDevDir => - '/users/zhangmeng/team/bee/app/aku_community_manager/dev'; + '/users/datang/team/bee/app/aku_community_manager/dev'; ///正式包文件夹aku_community_manager static String get apkDir => - '/users/zhangmeng/team/bee/app/aku_community_manager/release'; + '/users/datang/team/bee/app/aku_community_manager/release'; }