From bbf5906e209a009f66969d7d045c2bc134e82bfe Mon Sep 17 00:00:00 2001 From: gongfuxiang Date: Mon, 15 Apr 2024 10:25:01 +0800 Subject: [PATCH] v6.0 --- README.md | 4 +- app/admin/config/view.php | 2 +- app/admin/controller/Admin.php | 2 +- app/admin/controller/Common.php | 71 +- app/admin/controller/Design.php | 7 +- app/admin/controller/Goods.php | 2 +- app/admin/controller/Index.php | 1 + app/admin/controller/Order.php | 20 +- app/admin/controller/Orderaftersale.php | 2 + app/admin/controller/Payment.php | 14 +- app/admin/controller/Plugins.php | 58 +- app/admin/controller/Pluginsadmin.php | 6 +- app/admin/controller/Site.php | 5 +- .../controller/{Theme.php => Themeadmin.php} | 68 +- app/admin/controller/Themedata.php | 254 ++ app/admin/controller/User.php | 2 +- app/admin/form/Article.php | 38 +- app/admin/form/Goods.php | 28 +- app/admin/form/Goodsbrowse.php | 27 +- app/admin/form/Goodscart.php | 25 +- app/admin/form/Goodscomments.php | 29 +- app/admin/form/Goodsfavor.php | 27 +- app/admin/form/Goodsparamstemplate.php | 1 - app/admin/form/Integrallog.php | 27 +- app/admin/form/Message.php | 25 +- app/admin/form/Navigation.php | 10 +- app/admin/form/Order.php | 81 +- app/admin/form/Orderaftersale.php | 29 +- app/admin/form/Paylog.php | 25 +- app/admin/form/Refundlog.php | 25 +- app/admin/form/Role.php | 1 - app/admin/form/Themedata.php | 212 ++ app/admin/form/User.php | 28 +- app/admin/form/Useraddress.php | 26 +- app/admin/form/Warehousegoods.php | 1 - app/admin/lang/cht.php | 61 +- app/admin/lang/en.php | 64 +- app/admin/lang/spa.php | 61 +- app/admin/lang/zh.php | 64 +- app/admin/view/default/admin/detail.html | 2 +- app/admin/view/default/admin/index.html | 14 +- .../admin/{login_info.html => logininfo.html} | 28 +- .../admin/{save_info.html => saveinfo.html} | 6 +- app/admin/view/default/agreement/logout.html | 6 +- app/admin/view/default/agreement/privacy.html | 6 +- .../view/default/agreement/register.html | 6 +- .../view/default/appcenternav/detail.html | 2 +- .../view/default/appcenternav/index.html | 14 +- .../{save_info.html => saveinfo.html} | 23 +- app/admin/view/default/appconfig/app.html | 6 +- app/admin/view/default/appconfig/index.html | 6 +- app/admin/view/default/apphomenav/detail.html | 2 +- app/admin/view/default/apphomenav/index.html | 14 +- .../{save_info.html => saveinfo.html} | 14 +- app/admin/view/default/appmini/config.html | 4 +- app/admin/view/default/appmini/index.html | 4 +- app/admin/view/default/appmini/package.html | 6 +- app/admin/view/default/appmini/upload.html | 12 +- app/admin/view/default/article/detail.html | 14 +- app/admin/view/default/article/index.html | 14 +- .../article/{save_info.html => saveinfo.html} | 48 +- .../view/default/articlecategory/index.html | 10 +- app/admin/view/default/brand/detail.html | 4 +- app/admin/view/default/brand/index.html | 14 +- .../brand/{save_info.html => saveinfo.html} | 24 +- .../view/default/brandcategory/index.html | 10 +- app/admin/view/default/cache/index.html | 4 +- app/admin/view/default/config/index.html | 10 +- app/admin/view/default/config/store.html | 12 +- app/admin/view/default/customview/detail.html | 6 +- app/admin/view/default/customview/index.html | 14 +- .../default/customview/popup_saveinfo.html | 12 +- .../{save_info.html => saveinfo.html} | 10 +- app/admin/view/default/design/index.html | 31 +- .../view/default/design/popup_saveinfo.html | 10 +- .../design/{save_info.html => saveinfo.html} | 14 +- app/admin/view/default/email/index.html | 6 +- app/admin/view/default/email/message.html | 10 +- app/admin/view/default/emaillog/detail.html | 2 +- app/admin/view/default/emaillog/index.html | 2 +- app/admin/view/default/express/index.html | 10 +- app/admin/view/default/goods/detail.html | 24 +- app/admin/view/default/goods/index.html | 14 +- .../goods/{save_info.html => saveinfo.html} | 85 +- app/admin/view/default/goods/spec.html | 46 +- .../view/default/goods/spec_extends.html | 2 +- .../view/default/goodsbrowse/detail.html | 2 +- app/admin/view/default/goodsbrowse/index.html | 2 +- app/admin/view/default/goodscart/detail.html | 2 +- app/admin/view/default/goodscart/index.html | 2 +- .../view/default/goodscategory/index.html | 14 +- .../view/default/goodscomments/detail.html | 2 +- .../view/default/goodscomments/index.html | 6 +- .../default/goodscomments/module/images.html | 14 - .../{save_info.html => saveinfo.html} | 4 +- app/admin/view/default/goodsfavor/detail.html | 2 +- app/admin/view/default/goodsfavor/index.html | 2 +- .../default/goodsparamstemplate/detail.html | 8 +- .../default/goodsparamstemplate/index.html | 2 +- .../{save_info.html => saveinfo.html} | 12 +- .../default/goodsspectemplate/detail.html | 2 +- .../view/default/goodsspectemplate/index.html | 2 +- .../{save_info.html => saveinfo.html} | 6 +- app/admin/view/default/index/index.html | 12 +- app/admin/view/default/index/init.html | 48 +- .../view/default/integrallog/detail.html | 2 +- app/admin/view/default/integrallog/index.html | 2 +- app/admin/view/default/lib/is_default.html | 6 + .../view/default/lib/is_default_row.html | 6 + app/admin/view/default/lib/module/user.html | 26 +- .../view/default/lib/region_linkage.html | 2 +- .../view/default/lib/region_linkage_row.html | 2 +- app/admin/view/default/lib/seo_data.html | 2 +- app/admin/view/default/link/detail.html | 2 +- app/admin/view/default/link/index.html | 8 +- app/admin/view/default/map/index.html | 4 +- app/admin/view/default/message/detail.html | 2 +- app/admin/view/default/message/index.html | 2 +- app/admin/view/default/navigation/index.html | 49 +- .../view/default/order/deliveryinfo.html | 93 + app/admin/view/default/order/detail.html | 96 +- app/admin/view/default/order/index.html | 58 +- .../view/default/order/module/address.html | 22 +- .../view/default/order/module/express.html | 59 + .../view/default/order/module/goods.html | 2 +- .../view/default/order/module/operate.html | 4 +- app/admin/view/default/order/module/take.html | 2 +- .../view/default/orderaftersale/detail.html | 2 +- .../view/default/orderaftersale/index.html | 10 +- .../default/orderaftersale/module/goods.html | 2 +- .../orderaftersale/module/voucher.html | 14 - .../view/default/packageinstall/index.html | 4 +- app/admin/view/default/paylog/detail.html | 2 +- app/admin/view/default/paylog/index.html | 4 +- app/admin/view/default/payment/index.html | 16 +- .../payment/{save_info.html => saveinfo.html} | 12 +- .../view/default/payrequestlog/detail.html | 2 +- .../view/default/payrequestlog/index.html | 2 +- app/admin/view/default/plugins/index.html | 6 +- .../{first_step.html => firststep.html} | 6 +- .../view/default/pluginsadmin/index.html | 66 +- .../{save_info.html => saveinfo.html} | 6 +- ..._upload_info.html => storeuploadinfo.html} | 6 +- .../view/default/pluginsadmin/upload.html | 10 +- .../view/default/pluginscategory/index.html | 10 +- app/admin/view/default/power/index.html | 10 +- .../public/detail_nav_switch_tabs.html | 4 +- app/admin/view/default/public/footer.html | 23 +- .../public/goodsparamstemplate/detail.html | 2 +- .../public/goodsparamstemplate/table.html | 8 +- app/admin/view/default/public/header.html | 31 +- app/admin/view/default/public/jump_error.html | 12 +- .../view/default/public/jump_success.html | 12 +- app/admin/view/default/public/loading.html | 3 +- app/admin/view/default/public/menu.html | 2 +- .../view/default/public/module/detail.html | 120 - app/admin/view/default/public/nav.html | 26 +- app/admin/view/default/public/not_data.html | 6 +- .../view/default/public/page_loading.html | 8 +- app/admin/view/default/public/tips_error.html | 4 +- app/admin/view/default/quicknav/detail.html | 2 +- app/admin/view/default/quicknav/index.html | 2 +- .../{save_info.html => saveinfo.html} | 14 +- app/admin/view/default/refundlog/detail.html | 2 +- app/admin/view/default/refundlog/index.html | 2 +- app/admin/view/default/region/index.html | 10 +- app/admin/view/default/role/detail.html | 10 +- app/admin/view/default/role/index.html | 2 +- .../role/{save_info.html => saveinfo.html} | 12 +- .../view/default/screeningprice/index.html | 30 +- app/admin/view/default/seo/index.html | 4 +- .../view/default/shortcutmenu/index.html | 16 +- .../view/default/site/attachment/index.html | 4 +- app/admin/view/default/site/base/index.html | 36 +- app/admin/view/default/site/cache/index.html | 4 +- .../view/default/site/extends/index.html | 4 +- .../view/default/site/forgetpwd/index.html | 18 +- app/admin/view/default/site/login/index.html | 18 +- .../default/site/orderaftersale/index.html | 4 +- .../view/default/site/register/index.html | 10 +- .../view/default/site/siteset/extends.html | 8 +- .../view/default/site/siteset/goods.html | 52 +- .../view/default/site/siteset/index.html | 31 +- .../view/default/site/siteset/order.html | 4 +- .../view/default/site/siteset/search.html | 4 +- .../view/default/site/sitetype/index.html | 10 +- app/admin/view/default/site/verify/index.html | 4 +- app/admin/view/default/slide/detail.html | 2 +- app/admin/view/default/slide/index.html | 14 +- .../slide/{save_info.html => saveinfo.html} | 14 +- app/admin/view/default/sms/index.html | 6 +- app/admin/view/default/sms/message.html | 10 +- app/admin/view/default/smslog/detail.html | 2 +- app/admin/view/default/smslog/index.html | 2 +- app/admin/view/default/sqlconsole/index.html | 4 +- app/admin/view/default/store/index.html | 4 +- .../default/{theme => themeadmin}/index.html | 52 +- .../default/{theme => themeadmin}/upload.html | 12 +- app/admin/view/default/themedata/detail.html | 637 ++++ .../view/default/themedata/detail/images.html | 56 + .../default/themedata/detail/text_input.html | 54 + .../themedata/detail/text_textarea.html | 54 + app/admin/view/default/themedata/index.html | 81 + .../default/themedata/module/operate.html | 17 + .../default/themedata/saveinfo/article.html | 180 + .../themedata/saveinfo/articlegroup.html | 266 ++ .../default/themedata/saveinfo/goods.html | 198 ++ .../themedata/saveinfo/goodsgroup.html | 286 ++ .../themedata/saveinfo/manytextimages.html | 169 + .../themedata/saveinfo/module/base.html | 41 + .../themedata/saveinfo/module/images.html | 35 + .../themedata/saveinfo/module/text_input.html | 22 + .../saveinfo/module/text_textarea.html | 22 + .../public/article_search_content.html | 29 + .../saveinfo/public/article_search_popup.html | 37 + .../saveinfo/public/goods_search_content.html | 25 + .../saveinfo/public/goods_search_popup.html | 47 + .../saveinfo/public/url_choice_popup.html | 48 + .../themedata/saveinfo/textimages.html | 140 + .../default/themedata/saveinfo/video.html | 120 + app/admin/view/default/user/detail.html | 4 +- app/admin/view/default/user/index.html | 14 +- .../user/{save_info.html => saveinfo.html} | 8 +- .../view/default/useraddress/detail.html | 2 +- app/admin/view/default/useraddress/index.html | 14 +- .../{save_info.html => saveinfo.html} | 20 +- app/admin/view/default/warehouse/detail.html | 2 +- app/admin/view/default/warehouse/index.html | 14 +- .../{save_info.html => saveinfo.html} | 8 +- .../view/default/warehousegoods/detail.html | 8 +- .../{goods_search.html => goodssearch.html} | 0 .../view/default/warehousegoods/index.html | 4 +- ...inventory_info.html => inventoryinfo.html} | 12 +- .../warehousegoods/module/spec_inventory.html | 2 +- app/api/controller/Article.php | 4 +- app/api/controller/Common.php | 4 +- app/api/controller/Goods.php | 19 +- app/api/controller/Index.php | 103 +- app/api/controller/Safety.php | 14 + app/api/controller/User.php | 26 + app/common.php | 593 +++- app/index/config/.gitignore | 1 + app/index/config/view.php | 4 +- app/index/controller/Article.php | 78 +- app/index/controller/Buy.php | 2 + app/index/controller/Common.php | 110 +- app/index/controller/Goods.php | 13 +- app/index/controller/Index.php | 164 +- app/index/controller/Orderaftersale.php | 6 + app/index/controller/Plugins.php | 56 +- app/index/controller/Safety.php | 4 +- app/index/controller/User.php | 10 +- app/index/form/Message.php | 1 + app/index/form/Order.php | 72 +- app/index/form/Orderaftersale.php | 1 + app/index/form/Usergoodsbrowse.php | 3 +- app/index/form/Usergoodscomments.php | 1 + app/index/form/Usergoodsfavor.php | 3 +- app/index/form/Userintegral.php | 1 + app/index/lang/cht.php | 31 +- app/index/lang/en.php | 31 +- app/index/lang/spa.php | 31 +- app/index/lang/zh.php | 29 +- app/index/view/default/agreement/index.html | 14 +- app/index/view/default/article/category.html | 105 +- app/index/view/default/article/index.html | 173 +- .../view/default/article/module/left.html | 73 + app/index/view/default/buy/index.html | 223 +- app/index/view/default/cart/index.html | 64 +- .../{data_list.html => datalist.html} | 2 +- app/index/view/default/category/index.html | 14 +- app/index/view/default/config.json | 5 +- app/index/view/default/customview/index.html | 12 +- app/index/view/default/design/index.html | 16 +- app/index/view/default/dev/index.html | 6 +- .../goods/{cart_info.html => cartinfo.html} | 10 +- app/index/view/default/goods/index.html | 972 +----- .../goods/module/bottom_base/index.html | 10 + .../goods/module/bottom_base/left.html | 38 + .../goods/module/bottom_base/right.html | 268 ++ .../goods/module/middle_base/index.html | 10 + .../goods/module/middle_base/left.html | 28 + .../module/middle_base/left/photo_pc.html | 21 + .../left/photo_pc_bottom_favor.html | 14 + .../middle_base/left/photo_pc_content.html | 26 + .../goods/module/middle_base/right.html | 153 + .../module/middle_base/right/buy_nav.html | 106 + .../module/middle_base/right/panel_base.html | 111 + .../right/panel_delivery_adress.html | 47 + .../middle_base/right/panel_parameters.html | 11 + .../middle_base/right/panel_spec_choice.html | 121 + .../goods/module/photo_h5/content.html | 21 + .../default/goods/module/photo_h5/index.html | 21 + .../default/goods/module/photo_h5/inside.html | 20 + app/index/view/default/index/index.html | 30 +- app/index/view/default/lib/is_default.html | 6 + .../view/default/lib/is_default_row.html | 6 + app/index/view/default/lib/is_enable_row.html | 6 + app/index/view/default/lib/module/user.html | 26 +- .../view/default/lib/region_linkage.html | 2 +- .../view/default/lib/region_linkage_row.html | 53 + app/index/view/default/lib/seo.html | 30 +- app/index/view/default/lib/seo_data.html | 2 +- app/index/view/default/lib/seo_row.html | 12 + app/index/view/default/lib/sort_row.html | 6 + app/index/view/default/map/index.html | 4 +- app/index/view/default/message/detail.html | 2 +- app/index/view/default/message/index.html | 2 +- .../view/default/module/goods/grid/base.html | 93 +- .../view/default/module/goods/list/base.html | 26 +- .../view/default/module/goods/list/mini.html | 128 + .../default/module/goods/slider/base.html | 14 +- .../default/module/goods/slider/binding.html | 131 + .../default/module/goods/slider/piece.html | 14 +- app/index/view/default/order/comments.html | 14 +- app/index/view/default/order/detail.html | 154 +- app/index/view/default/order/index.html | 4 +- .../view/default/order/module/address.html | 10 +- .../view/default/order/module/express.html | 59 + .../view/default/order/module/goods.html | 6 +- app/index/view/default/order/module/take.html | 2 +- .../view/default/orderaftersale/detail.html | 20 +- .../view/default/orderaftersale/index.html | 2 +- app/index/view/default/pay/qrcode.html | 14 +- app/index/view/default/personal/index.html | 8 +- .../{save_info.html => saveinfo.html} | 12 +- app/index/view/default/public/admin_nav.html | 8 + .../public/detail_nav_switch_tabs.html | 9 + app/index/view/default/public/footer.html | 39 +- .../view/default/public/footer_filing.html | 6 +- app/index/view/default/public/footer_nav.html | 16 +- .../view/default/public/goods_category.html | 8 +- app/index/view/default/public/header.html | 35 +- app/index/view/default/public/header_nav.html | 2 +- .../default/public/header_style_root.html | 2 +- app/index/view/default/public/jump_error.html | 20 +- .../view/default/public/jump_success.html | 20 +- app/index/view/default/public/loading.html | 4 +- .../view/default/public/login_success.html | 12 +- .../default/public/module/detail_avg.html | 129 - .../default/public/module/detail_content.html | 208 -- .../public/module/detail_nav_operate.html | 29 - .../view/default/public/module/form.html | 160 - .../public/module/form_fields_select.html | 56 - .../public/module/form_operate_bottom.html | 18 - .../public/module/form_operate_top.html | 97 - .../default/public/module/form_table.html | 87 - .../public/module/form_table_content.html | 332 -- .../public/module/form_table_page.html | 6 - .../public/module/form_table_search.html | 85 - app/index/view/default/public/not_data.html | 2 +- .../view/default/public/page_loading.html | 8 +- .../default/public/plugins_admin_nav.html | 20 + .../default/public/plugins_admin_nav_btn.html | 9 + app/index/view/default/public/tips_error.html | 12 +- .../view/default/public/tips_success.html | 12 +- app/index/view/default/public/user_menu.html | 2 +- .../{email_info.html => emailinfo.html} | 10 +- app/index/view/default/safety/index.html | 10 +- ...{login_pwd_info.html => loginpwdinfo.html} | 8 +- .../{logout_info.html => logoutinfo.html} | 14 +- .../{mobile_info.html => mobileinfo.html} | 10 +- ...{new_email_info.html => newemailinfo.html} | 10 +- ...ew_mobile_info.html => newmobileinfo.html} | 10 +- app/index/view/default/search/index.html | 266 +- .../default/search/module/map/content.html | 71 + .../search/module/map/content/brand.html | 47 + .../search/module/map/content/category.html | 19 + .../module/map/content/goods_params.html | 19 + .../search/module/map/content/goods_spec.html | 19 + .../module/map/content/screening_price.html | 19 + .../view/default/search/module/map/index.html | 8 + .../search/module/sort_nav/content.html | 13 + .../default/search/module/sort_nav/index.html | 40 + ...orget_pwd_info.html => forgetpwdinfo.html} | 16 +- .../view/default/user/images_verify.html | 2 +- app/index/view/default/user/index.html | 48 +- .../view/default/user/login_content.html | 14 +- .../user/{login_info.html => logininfo.html} | 12 +- app/index/view/default/user/logout.html | 12 +- ...al_login_info.html => modallogininfo.html} | 8 +- app/index/view/default/user/reg_content.html | 24 +- .../user/{reg_info.html => reginfo.html} | 12 +- app/index/view/default/useraddress/index.html | 66 +- .../{save_info.html => saveinfo.html} | 22 +- .../view/default/usergoodsbrowse/detail.html | 2 +- .../view/default/usergoodsbrowse/index.html | 2 +- .../default/usergoodscomments/detail.html | 2 +- .../view/default/usergoodscomments/index.html | 2 +- .../{save_info.html => saveinfo.html} | 4 +- .../view/default/usergoodsfavor/detail.html | 2 +- .../view/default/usergoodsfavor/index.html | 2 +- .../view/default/userintegral/detail.html | 2 +- .../view/default/userintegral/index.html | 6 +- app/install/config/view.php | 2 +- app/install/view/index/check.html | 6 +- app/install/view/index/create.html | 6 +- app/install/view/index/index.html | 6 +- app/install/view/index/successful.html | 6 +- app/install/view/public/error.html | 6 +- app/install/view/public/footer.html | 2 +- app/install/view/public/header.html | 2 +- app/lang/cht.php | 297 +- app/lang/en.php | 298 +- app/lang/spa.php | 297 +- app/lang/zh.php | 326 +- app/layout/service/BaseLayout.php | 2 +- app/layout/view/base.html | 50 +- .../view/public/common/module_admin.html | 10 +- .../view/public/common/module_view.html | 6 +- .../content/images_magic_cube_show_style.html | 2 +- .../view/public/content/media_fixed.html | 33 +- .../modal/modal_module_list_config.html | 7 +- .../modal/modal_module_pages_select.html | 6 +- .../modal/modal_module_title_keywords.html | 2 +- .../offcanvas/offcanvas_layout_config.html | 66 +- .../offcanvas_module_config_border.html | 10 +- .../offcanvas_module_config_goods.html | 48 +- .../offcanvas_module_config_height.html | 6 +- .../offcanvas_module_config_images.html | 22 +- ...anvas_module_config_images_magic_cube.html | 12 +- .../offcanvas_module_config_images_text.html | 22 +- .../offcanvas_module_config_many_images.html | 22 +- .../offcanvas_module_config_title.html | 18 +- .../offcanvas_module_config_video.html | 16 +- .../popup/popup_module_goods_category.html | 2 +- .../popup/popup_module_goods_search.html | 4 +- .../view/public/style/background_color.html | 6 +- .../view/public/style/border_color.html | 6 +- .../view/public/style/border_radius.html | 2 +- .../view/public/style/border_style.html | 2 +- .../view/public/style/border_style_4.html | 8 +- .../view/public/style/border_width_4.html | 8 +- .../view/public/style/border_width_color.html | 8 +- .../public/style/border_width_color_4.html | 14 +- app/layout/view/public/style/height.html | 2 +- app/layout/view/public/style/margin.html | 2 +- app/layout/view/public/style/margin_4.html | 8 +- app/layout/view/public/style/max_height.html | 2 +- app/layout/view/public/style/max_width.html | 2 +- app/layout/view/public/style/padding.html | 2 +- app/layout/view/public/style/padding_4.html | 8 +- app/layout/view/public/style/width.html | 2 +- app/layout/view/view.html | 14 +- app/module/FormHandleModule.php | 617 ++-- .../module => module/view}/base_form.html | 10 +- .../public/module => module/view}/detail.html | 14 +- .../module => module/view}/detail_avg.html | 10 +- .../view}/detail_content.html | 81 +- .../view}/detail_nav_operate.html | 0 .../public/module => module/view}/form.html | 14 +- .../view}/form_fields_select.html | 6 +- .../view}/form_operate_bottom.html | 0 .../view}/form_operate_top.html | 4 +- .../module => module/view}/form_table.html | 12 +- .../view}/form_table_content.html | 79 +- .../view}/form_table_page.html | 0 .../view}/form_table_search.html | 0 .../module => module/view}/user_form.html | 20 +- app/route/route.config | 2 +- app/service/AppMiniService.php | 6 +- app/service/AppMiniUserService.php | 2 +- app/service/ArticleCategoryService.php | 27 +- app/service/ArticleService.php | 71 +- app/service/BreadcrumbService.php | 59 + app/service/BuyService.php | 8 +- app/service/ConfigService.php | 111 +- app/service/ConstService.php | 76 +- app/service/DesignService.php | 8 +- app/service/GoodsBrowseService.php | 2 +- app/service/GoodsCartService.php | 5 +- app/service/GoodsCommentsService.php | 15 +- app/service/GoodsFavorService.php | 2 +- app/service/GoodsService.php | 129 +- app/service/IntegralService.php | 2 +- app/service/MultilingualService.php | 12 + app/service/NavigationService.php | 1 + app/service/OrderAftersaleService.php | 259 +- app/service/OrderService.php | 267 +- app/service/OrderSplitService.php | 64 +- app/service/PackageInstallService.php | 6 +- app/service/PaymentService.php | 50 +- app/service/PluginsAdminService.php | 27 +- app/service/PluginsUpgradeService.php | 8 +- app/service/QrCodeService.php | 386 +++ app/service/ResourcesService.php | 273 ++ app/service/SearchService.php | 4 +- app/service/SystemService.php | 140 +- app/service/SystemUpgradeService.php | 4 +- ...ThemeService.php => ThemeAdminService.php} | 165 +- app/service/ThemeDataService.php | 1958 +++++++++++ app/service/UserAddressService.php | 13 +- app/service/UserService.php | 175 +- changelog.txt | 39 + config/lang.php | 3 + config/session.php | 2 + config/shopxo.sql | 106 +- extend/base/FileUtil.php | 14 +- extend/base/Page.php | 23 +- extend/base/Uploader.php | 1 + extend/base/Wechat.php | 64 +- extend/payment/AlipayScanQrcode.php | 146 +- extend/payment/JeePayAlipay.php | 361 ++ extend/payment/JeePayWeixin.php | 361 ++ extend/payment/PayPal.php | 64 +- extend/payment/TrySeePayPay.php | 29 +- extend/payment/UniPayment.php | 423 +++ extend/payment/WeixinScanQrcode.php | 41 +- extend/payment/XPay.php | 258 ++ public/core.php | 44 +- .../admin/default/css/admin.logininfo.css | 80 +- public/static/admin/default/css/common.css | 354 +- public/static/admin/default/css/goods.css | 20 +- public/static/admin/default/css/order.css | 9 - .../admin/default/css/order.deliveryinfo.css | 13 + .../default/css/{theme.css => themeadmin.css} | 28 +- .../admin/default/css/themedata.detail.css | 16 + .../admin/default/css/themedata.saveinfo.css | 228 ++ .../static/admin/default/css/useraddress.css | 16 +- .../admin/default/images/default-images.jpg | Bin 13755 -> 0 bytes .../default/images/sys-item-selected.gif | Bin 70 -> 0 bytes public/static/admin/default/js/common.js | 20 +- public/static/admin/default/js/goods.js | 36 +- public/static/admin/default/js/index.init.js | 7 +- .../admin/default/js/order.deliveryinfo.js | 131 + public/static/admin/default/js/order.js | 33 - .../static/admin/default/js/shortcutmenu.js | 2 +- public/static/admin/default/js/site.js | 4 +- public/static/admin/default/js/theme.js | 41 - public/static/admin/default/js/themeadmin.js | 53 + .../admin/default/js/themedata.index.js | 17 + .../admin/default/js/themedata.saveinfo.js | 1155 +++++++ .../static/admin/default/js/warehousegoods.js | 2 +- public/static/common/css/common.css | 1416 +++++--- public/static/common/iconfont/demo_index.html | 1807 +++++++++- public/static/common/iconfont/iconfont.css | 316 +- public/static/common/iconfont/iconfont.js | 2 +- public/static/common/iconfont/iconfont.json | 547 ++- public/static/common/iconfont/iconfont.ttf | Bin 55460 -> 82136 bytes public/static/common/iconfont/iconfont.woff | Bin 34240 -> 51680 bytes public/static/common/iconfont/iconfont.woff2 | Bin 28972 -> 43900 bytes .../images/corner_round_bottom.png | Bin .../images/corner_round_top.png | Bin ...-img-lg.gif => default-user-avatar-lg.gif} | Bin .../common/images/default-user-avatar-lg.png | Bin 0 -> 31903 bytes ...-img-md.gif => default-user-avatar-md.gif} | Bin .../common/images/default-user-avatar-md.png | Bin 0 -> 18011 bytes ...-img-sm.gif => default-user-avatar-sm.gif} | Bin .../common/images/default-user-avatar-sm.png | Bin 0 -> 6766 bytes public/static/common/images/flash.gif | Bin 0 -> 3228 bytes public/static/common/js/common.js | 346 +- public/static/common/js/layout.admin.js | 29 +- .../skin/default/datepicker.css | 2 +- .../lib/amazeui-chosen/amazeui.chosen.css | 2 + .../lib/amazeui-dialog/amazeui.dialog.js | 1 + .../lib/amazeui-switch/amazeui.switch.css | 1 + .../amazeui-tagsinput/amazeui.tagsinput.css | 2 +- .../amazeui.tagsinput.min.js | 2 +- .../static/common/lib/assets/css/amazeui.css | 436 ++- public/static/common/lib/assets/js/amazeui.js | 23 +- .../lib/ueditor/dialogs/image/image.css | 10 +- .../lib/ueditor/dialogs/image/image.html | 40 +- public/static/common/svg/loading-border.svg | 6 + public/static/index/default/css/article.css | 35 +- public/static/index/default/css/buy.css | 42 +- public/static/index/default/css/common.css | 461 +-- public/static/index/default/css/goods.css | 3068 +++++++++++------ public/static/index/default/css/module.css | 941 ++--- public/static/index/default/css/order.css | 18 +- .../static/index/default/css/user.index.css | 15 +- .../static/index/default/css/useraddress.css | 56 +- .../index/default/images/address-peraddbg.png | Bin 1521 -> 0 bytes .../default/images/address-peraddressbg.png | Bin 4061 -> 0 bytes .../index/default/images/buy-peraddress.png | Bin 1027 -> 0 bytes .../default/images/default-user-avatar.jpg | Bin 8057 -> 0 bytes .../index/default/images/goods-mask.png | Bin 158 -> 0 bytes .../default/images/nav-icon-cart-active.png | Bin 1605 -> 0 bytes .../index/default/images/nav-icon-cart.png | Bin 5861 -> 0 bytes .../images/nav-icon-category-active.png | Bin 1511 -> 0 bytes .../default/images/nav-icon-category.png | Bin 4245 -> 0 bytes .../default/images/nav-icon-home-active.png | Bin 1378 -> 0 bytes .../index/default/images/nav-icon-home.png | Bin 3562 -> 0 bytes .../default/images/nav-icon-user-active.png | Bin 1364 -> 0 bytes .../index/default/images/nav-icon-user.png | Bin 2776 -> 0 bytes .../index/default/images/search-close.png | Bin 2910 -> 0 bytes .../default/images/sys-item-selected.gif | Bin 70 -> 0 bytes .../images/user-index-nav-order-icon-1.png | Bin 666 -> 0 bytes .../images/user-index-nav-order-icon-100.png | Bin 781 -> 0 bytes .../images/user-index-nav-order-icon-101.png | Bin 814 -> 0 bytes .../images/user-index-nav-order-icon-2.png | Bin 579 -> 0 bytes .../images/user-index-nav-order-icon-3.png | Bin 669 -> 0 bytes .../images/user-index-nav-order-icon.png | Bin 461 -> 0 bytes ...mber_top_bg.png => user-member-top-bg.png} | Bin public/static/index/default/js/category.js | 3 + public/static/index/default/js/common.js | 140 +- public/static/index/default/js/goods.js | 80 +- 596 files changed, 25192 insertions(+), 9384 deletions(-) rename app/admin/controller/{Theme.php => Themeadmin.php} (59%) create mode 100644 app/admin/controller/Themedata.php create mode 100644 app/admin/form/Themedata.php rename app/admin/view/default/admin/{login_info.html => logininfo.html} (95%) rename app/admin/view/default/admin/{save_info.html => saveinfo.html} (98%) rename app/admin/view/default/appcenternav/{save_info.html => saveinfo.html} (94%) rename app/admin/view/default/apphomenav/{save_info.html => saveinfo.html} (94%) rename app/admin/view/default/article/{save_info.html => saveinfo.html} (69%) rename app/admin/view/default/brand/{save_info.html => saveinfo.html} (85%) rename app/admin/view/default/customview/{save_info.html => saveinfo.html} (93%) rename app/admin/view/default/design/{save_info.html => saveinfo.html} (78%) rename app/admin/view/default/goods/{save_info.html => saveinfo.html} (91%) delete mode 100644 app/admin/view/default/goodscomments/module/images.html rename app/admin/view/default/goodscomments/{save_info.html => saveinfo.html} (99%) rename app/admin/view/default/goodsparamstemplate/{save_info.html => saveinfo.html} (94%) rename app/admin/view/default/goodsspectemplate/{save_info.html => saveinfo.html} (97%) create mode 100644 app/admin/view/default/lib/is_default.html create mode 100644 app/admin/view/default/lib/is_default_row.html create mode 100644 app/admin/view/default/order/deliveryinfo.html create mode 100644 app/admin/view/default/order/module/express.html delete mode 100644 app/admin/view/default/orderaftersale/module/voucher.html rename app/admin/view/default/payment/{save_info.html => saveinfo.html} (97%) rename app/admin/view/default/pluginsadmin/{first_step.html => firststep.html} (93%) rename app/admin/view/default/pluginsadmin/{save_info.html => saveinfo.html} (98%) rename app/admin/view/default/pluginsadmin/{store_upload_info.html => storeuploadinfo.html} (97%) delete mode 100644 app/admin/view/default/public/module/detail.html rename app/admin/view/default/quicknav/{save_info.html => saveinfo.html} (93%) rename app/admin/view/default/role/{save_info.html => saveinfo.html} (96%) rename app/admin/view/default/slide/{save_info.html => saveinfo.html} (95%) rename app/admin/view/default/{theme => themeadmin}/index.html (53%) rename app/admin/view/default/{theme => themeadmin}/upload.html (74%) create mode 100644 app/admin/view/default/themedata/detail.html create mode 100644 app/admin/view/default/themedata/detail/images.html create mode 100644 app/admin/view/default/themedata/detail/text_input.html create mode 100644 app/admin/view/default/themedata/detail/text_textarea.html create mode 100644 app/admin/view/default/themedata/index.html create mode 100644 app/admin/view/default/themedata/module/operate.html create mode 100644 app/admin/view/default/themedata/saveinfo/article.html create mode 100644 app/admin/view/default/themedata/saveinfo/articlegroup.html create mode 100644 app/admin/view/default/themedata/saveinfo/goods.html create mode 100644 app/admin/view/default/themedata/saveinfo/goodsgroup.html create mode 100644 app/admin/view/default/themedata/saveinfo/manytextimages.html create mode 100644 app/admin/view/default/themedata/saveinfo/module/base.html create mode 100644 app/admin/view/default/themedata/saveinfo/module/images.html create mode 100644 app/admin/view/default/themedata/saveinfo/module/text_input.html create mode 100644 app/admin/view/default/themedata/saveinfo/module/text_textarea.html create mode 100644 app/admin/view/default/themedata/saveinfo/public/article_search_content.html create mode 100644 app/admin/view/default/themedata/saveinfo/public/article_search_popup.html create mode 100644 app/admin/view/default/themedata/saveinfo/public/goods_search_content.html create mode 100644 app/admin/view/default/themedata/saveinfo/public/goods_search_popup.html create mode 100644 app/admin/view/default/themedata/saveinfo/public/url_choice_popup.html create mode 100644 app/admin/view/default/themedata/saveinfo/textimages.html create mode 100644 app/admin/view/default/themedata/saveinfo/video.html rename app/admin/view/default/user/{save_info.html => saveinfo.html} (97%) rename app/admin/view/default/useraddress/{save_info.html => saveinfo.html} (94%) rename app/admin/view/default/warehouse/{save_info.html => saveinfo.html} (97%) rename app/admin/view/default/warehousegoods/{goods_search.html => goodssearch.html} (100%) rename app/admin/view/default/warehousegoods/{inventory_info.html => inventoryinfo.html} (90%) create mode 100644 app/index/config/.gitignore create mode 100644 app/index/view/default/article/module/left.html rename app/index/view/default/category/{data_list.html => datalist.html} (80%) rename app/index/view/default/goods/{cart_info.html => cartinfo.html} (95%) create mode 100644 app/index/view/default/goods/module/bottom_base/index.html create mode 100644 app/index/view/default/goods/module/bottom_base/left.html create mode 100644 app/index/view/default/goods/module/bottom_base/right.html create mode 100644 app/index/view/default/goods/module/middle_base/index.html create mode 100644 app/index/view/default/goods/module/middle_base/left.html create mode 100644 app/index/view/default/goods/module/middle_base/left/photo_pc.html create mode 100644 app/index/view/default/goods/module/middle_base/left/photo_pc_bottom_favor.html create mode 100644 app/index/view/default/goods/module/middle_base/left/photo_pc_content.html create mode 100644 app/index/view/default/goods/module/middle_base/right.html create mode 100644 app/index/view/default/goods/module/middle_base/right/buy_nav.html create mode 100644 app/index/view/default/goods/module/middle_base/right/panel_base.html create mode 100644 app/index/view/default/goods/module/middle_base/right/panel_delivery_adress.html create mode 100644 app/index/view/default/goods/module/middle_base/right/panel_parameters.html create mode 100644 app/index/view/default/goods/module/middle_base/right/panel_spec_choice.html create mode 100644 app/index/view/default/goods/module/photo_h5/content.html create mode 100644 app/index/view/default/goods/module/photo_h5/index.html create mode 100644 app/index/view/default/goods/module/photo_h5/inside.html create mode 100644 app/index/view/default/lib/is_default.html create mode 100644 app/index/view/default/lib/is_default_row.html create mode 100755 app/index/view/default/lib/is_enable_row.html create mode 100755 app/index/view/default/lib/region_linkage_row.html create mode 100644 app/index/view/default/lib/seo_row.html create mode 100644 app/index/view/default/lib/sort_row.html create mode 100644 app/index/view/default/module/goods/list/mini.html create mode 100644 app/index/view/default/module/goods/slider/binding.html create mode 100644 app/index/view/default/order/module/express.html rename app/index/view/default/personal/{save_info.html => saveinfo.html} (95%) create mode 100644 app/index/view/default/public/admin_nav.html create mode 100644 app/index/view/default/public/detail_nav_switch_tabs.html delete mode 100644 app/index/view/default/public/module/detail_avg.html delete mode 100644 app/index/view/default/public/module/detail_content.html delete mode 100644 app/index/view/default/public/module/detail_nav_operate.html delete mode 100644 app/index/view/default/public/module/form.html delete mode 100644 app/index/view/default/public/module/form_fields_select.html delete mode 100644 app/index/view/default/public/module/form_operate_bottom.html delete mode 100644 app/index/view/default/public/module/form_operate_top.html delete mode 100644 app/index/view/default/public/module/form_table.html delete mode 100644 app/index/view/default/public/module/form_table_content.html delete mode 100644 app/index/view/default/public/module/form_table_page.html delete mode 100644 app/index/view/default/public/module/form_table_search.html create mode 100644 app/index/view/default/public/plugins_admin_nav.html create mode 100644 app/index/view/default/public/plugins_admin_nav_btn.html rename app/index/view/default/safety/{email_info.html => emailinfo.html} (92%) rename app/index/view/default/safety/{login_pwd_info.html => loginpwdinfo.html} (94%) rename app/index/view/default/safety/{logout_info.html => logoutinfo.html} (85%) rename app/index/view/default/safety/{mobile_info.html => mobileinfo.html} (93%) rename app/index/view/default/safety/{new_email_info.html => newemailinfo.html} (93%) rename app/index/view/default/safety/{new_mobile_info.html => newmobileinfo.html} (93%) create mode 100644 app/index/view/default/search/module/map/content.html create mode 100644 app/index/view/default/search/module/map/content/brand.html create mode 100644 app/index/view/default/search/module/map/content/category.html create mode 100644 app/index/view/default/search/module/map/content/goods_params.html create mode 100644 app/index/view/default/search/module/map/content/goods_spec.html create mode 100644 app/index/view/default/search/module/map/content/screening_price.html create mode 100644 app/index/view/default/search/module/map/index.html create mode 100644 app/index/view/default/search/module/sort_nav/content.html create mode 100644 app/index/view/default/search/module/sort_nav/index.html rename app/index/view/default/user/{forget_pwd_info.html => forgetpwdinfo.html} (92%) rename app/index/view/default/user/{login_info.html => logininfo.html} (87%) rename app/index/view/default/user/{modal_login_info.html => modallogininfo.html} (84%) rename app/index/view/default/user/{reg_info.html => reginfo.html} (86%) rename app/index/view/default/useraddress/{save_info.html => saveinfo.html} (89%) rename app/index/view/default/usergoodscomments/{save_info.html => saveinfo.html} (98%) rename app/{index/view/default/public/module => module/view}/base_form.html (86%) rename app/{index/view/default/public/module => module/view}/detail.html (89%) rename app/{admin/view/default/public/module => module/view}/detail_avg.html (94%) rename app/{admin/view/default/public/module => module/view}/detail_content.html (73%) rename app/{admin/view/default/public/module => module/view}/detail_nav_operate.html (100%) rename app/{admin/view/default/public/module => module/view}/form.html (92%) rename app/{admin/view/default/public/module => module/view}/form_fields_select.html (88%) rename app/{admin/view/default/public/module => module/view}/form_operate_bottom.html (100%) rename app/{admin/view/default/public/module => module/view}/form_operate_top.html (91%) rename app/{admin/view/default/public/module => module/view}/form_table.html (83%) rename app/{admin/view/default/public/module => module/view}/form_table_content.html (80%) rename app/{admin/view/default/public/module => module/view}/form_table_page.html (100%) rename app/{admin/view/default/public/module => module/view}/form_table_search.html (100%) rename app/{index/view/default/public/module => module/view}/user_form.html (91%) create mode 100644 app/service/QrCodeService.php rename app/service/{ThemeService.php => ThemeAdminService.php} (67%) create mode 100644 app/service/ThemeDataService.php create mode 100644 extend/payment/JeePayAlipay.php create mode 100644 extend/payment/JeePayWeixin.php create mode 100644 extend/payment/UniPayment.php create mode 100644 extend/payment/XPay.php create mode 100644 public/static/admin/default/css/order.deliveryinfo.css rename public/static/admin/default/css/{theme.css => themeadmin.css} (65%) create mode 100644 public/static/admin/default/css/themedata.detail.css create mode 100644 public/static/admin/default/css/themedata.saveinfo.css delete mode 100644 public/static/admin/default/images/default-images.jpg delete mode 100755 public/static/admin/default/images/sys-item-selected.gif create mode 100644 public/static/admin/default/js/order.deliveryinfo.js delete mode 100755 public/static/admin/default/js/theme.js create mode 100755 public/static/admin/default/js/themeadmin.js create mode 100644 public/static/admin/default/js/themedata.index.js create mode 100644 public/static/admin/default/js/themedata.saveinfo.js rename public/static/{index/default => common}/images/corner_round_bottom.png (100%) rename public/static/{index/default => common}/images/corner_round_top.png (100%) rename public/static/common/images/{user-img-lg.gif => default-user-avatar-lg.gif} (100%) create mode 100644 public/static/common/images/default-user-avatar-lg.png rename public/static/common/images/{user-img-md.gif => default-user-avatar-md.gif} (100%) create mode 100644 public/static/common/images/default-user-avatar-md.png rename public/static/common/images/{user-img-sm.gif => default-user-avatar-sm.gif} (100%) create mode 100644 public/static/common/images/default-user-avatar-sm.png create mode 100644 public/static/common/images/flash.gif create mode 100644 public/static/common/svg/loading-border.svg delete mode 100755 public/static/index/default/images/address-peraddbg.png delete mode 100755 public/static/index/default/images/address-peraddressbg.png delete mode 100755 public/static/index/default/images/buy-peraddress.png delete mode 100755 public/static/index/default/images/default-user-avatar.jpg delete mode 100755 public/static/index/default/images/goods-mask.png delete mode 100644 public/static/index/default/images/nav-icon-cart-active.png delete mode 100644 public/static/index/default/images/nav-icon-cart.png delete mode 100644 public/static/index/default/images/nav-icon-category-active.png delete mode 100755 public/static/index/default/images/nav-icon-category.png delete mode 100644 public/static/index/default/images/nav-icon-home-active.png delete mode 100755 public/static/index/default/images/nav-icon-home.png delete mode 100644 public/static/index/default/images/nav-icon-user-active.png delete mode 100755 public/static/index/default/images/nav-icon-user.png delete mode 100755 public/static/index/default/images/search-close.png delete mode 100755 public/static/index/default/images/sys-item-selected.gif delete mode 100755 public/static/index/default/images/user-index-nav-order-icon-1.png delete mode 100755 public/static/index/default/images/user-index-nav-order-icon-100.png delete mode 100644 public/static/index/default/images/user-index-nav-order-icon-101.png delete mode 100755 public/static/index/default/images/user-index-nav-order-icon-2.png delete mode 100755 public/static/index/default/images/user-index-nav-order-icon-3.png delete mode 100755 public/static/index/default/images/user-index-nav-order-icon.png rename public/static/index/default/images/{user-member_top_bg.png => user-member-top-bg.png} (100%) diff --git a/README.md b/README.md index 20625fc77..39e1b7aa6 100755 --- a/README.md +++ b/README.md @@ -43,9 +43,9 @@ | 开源协议 | [https://license.shopxo.net/](https://license.shopxo.net/) | 手机端 | [https://uniapp.shopxo.net/](https://uniapp.shopxo.net/) | ### 官方QQ群、答案`shopxo.net` -| 官方1群 | 官方2群 | 官方3群 | 官方多商户群 | 官方多门店群 | 官方进销存群 | 官方uniapp群 | +| 官方1群 | 官方2群 | 官方3群 | 官方4群 | 官方多商户群 | 官方多门店群 | 官方进销存群 | 官方uniapp群 | |---|---|---|---|---|---|---| -| 833531593 | 641730223 | 1127073697 | 782971010 | 281418967 | 719894308 | 679303149 | +| 833531593 | 641730223 | 1127073697 | 323523483 | 782971010 | 281418967 | 719894308 | 679303149 | ### 当前项目源代码平台 | 平台 | 地址 | diff --git a/app/admin/config/view.php b/app/admin/config/view.php index 6300c4a88..548a31596 100755 --- a/app/admin/config/view.php +++ b/app/admin/config/view.php @@ -16,7 +16,7 @@ return [ // 模板引擎类型使用Think 'type' => 'Think', // 默认模板渲染规则 1 解析为小写+下划线 2 全部转换小写 3 保持操作方法 - 'auto_rule' => 1, + 'auto_rule' => 2, // 模板目录名 'view_dir_name' => 'view'.DS.'default', // 模板后缀 diff --git a/app/admin/controller/Admin.php b/app/admin/controller/Admin.php index c2bfd1722..10096b81d 100755 --- a/app/admin/controller/Admin.php +++ b/app/admin/controller/Admin.php @@ -105,7 +105,7 @@ class Admin extends Common { if(empty($data)) { - return $this->error(MyLang('admin.admin_no_data_tips'), MyUrl('admin/index/index')); + return ViewError(MyLang('admin.admin_no_data_tips'), MyUrl('admin/index/index')); } } diff --git a/app/admin/controller/Common.php b/app/admin/controller/Common.php index 7230a19e3..5b74c893a 100755 --- a/app/admin/controller/Common.php +++ b/app/admin/controller/Common.php @@ -38,6 +38,9 @@ class Common extends BaseController // 当前管理员可使用的插件 protected $admin_plugins; + // 当前主题 + protected $default_theme; + // 输入参数 post|get|request protected $data_post; protected $data_get; @@ -53,11 +56,13 @@ class Common extends BaseController protected $module_name; protected $controller_name; protected $action_name; + protected $mca; // 当前插件操作名称 protected $plugins_module_name; protected $plugins_controller_name; protected $plugins_action_name; + protected $plugins_mca; // 页面唯一标记 protected $page_unique_mark; @@ -193,8 +198,8 @@ class Common extends BaseController $assign['params'] = $this->data_request; // 主题 - $default_theme = 'default'; - $assign['default_theme'] = $default_theme; + $this->default_theme = 'default'; + $assign['default_theme'] = $this->default_theme; // 基础表单数据、去除数组和对象列 $form_back_params = $this->data_request; @@ -216,11 +221,13 @@ class Common extends BaseController $this->module_name = RequestModule(); $this->controller_name = RequestController(); $this->action_name = RequestAction(); + $this->mca = $this->module_name.$this->controller_name.$this->action_name; // 当前系统操作名称 $assign['module_name'] = $this->module_name; $assign['controller_name'] = $this->controller_name; $assign['action_name'] = $this->action_name; + $assign['mca'] = $this->mca; // 当前插件操作名称, 兼容插件模块名称 if(empty($this->data_request['pluginsname'])) @@ -251,11 +258,13 @@ class Common extends BaseController // 页面唯一标记 $this->page_unique_mark = $this->module_name.'-'.$this->controller_name.'-'.$this->plugins_module_name.'-'.$this->plugins_controller_name.'-'.$this->plugins_action_name; } + $this->plugins_mca = $this->plugins_module_name.$this->plugins_controller_name.$this->plugins_action_name; // 当前插件操作名称 $assign['plugins_module_name'] = $this->plugins_module_name; $assign['plugins_controller_name'] = $this->plugins_controller_name; $assign['plugins_action_name'] = $this->plugins_action_name; + $assign['plugins_mca'] = $this->plugins_mca; // 页面唯一标记 $assign['page_unique_mark'] = $this->page_unique_mark; @@ -274,20 +283,16 @@ class Common extends BaseController // 分页信息 $this->page = max(1, isset($this->data_request['page']) ? intval($this->data_request['page']) : 1); $this->page_size = min(empty($this->data_request['page_size']) ? MyC('common_page_size', 10, true) : intval($this->data_request['page_size']), 1000); + $this->page_start = intval(($this->page-1)*$this->page_size); $assign['page'] = $this->page; $assign['page_size'] = $this->page_size; + $assign['page_start'] = $this->page_start; // 货币符号 $assign['currency_symbol'] = ResourcesService::CurrencyDataSymbol(); - // 控制器静态文件状态css,js - $module_css = $this->module_name.DS.$default_theme.DS.'css'.DS.$this->controller_name; - $module_css .= file_exists(ROOT_PATH.'static'.DS.$module_css.'.'.$this->action_name.'.css') ? '.'.$this->action_name.'.css' : '.css'; - $assign['module_css'] = file_exists(ROOT_PATH.'static'.DS.$module_css) ? $module_css : ''; - - $module_js = $this->module_name.DS.$default_theme.DS.'js'.DS.$this->controller_name; - $module_js .= file_exists(ROOT_PATH.'static'.DS.$module_js.'.'.$this->action_name.'.js') ? '.'.$this->action_name.'.js' : '.js'; - $assign['module_js'] = file_exists(ROOT_PATH.'static'.DS.$module_js) ? $module_js : ''; + // 静态文件状态css,js + $assign['static_path_data'] = ResourcesService::StaticCssOrJsPathData($this->default_theme, $this->module_name, $this->controller_name, $this->action_name); // 后台logo $assign['admin_logo'] = MyC('admin_logo'); @@ -296,8 +301,7 @@ class Common extends BaseController $assign['default_price_regex'] = MyConst('common_regex_price'); // 附件host地址 - $attachment_host = SystemBaseService::AttachmentHost(); - $assign['attachment_host'] = $attachment_host; + $assign['attachment_host'] = SystemBaseService::AttachmentHost(); // css/js引入host地址 $assign['public_host'] = MyConfig('shopxo.public_host'); @@ -326,7 +330,9 @@ class Common extends BaseController // 加载页面加载层、是否加载图片动画 $assign['is_page_loading'] = ($this->module_name.$this->controller_name.$this->action_name == 'adminindexindex') ? 0 : 1; $assign['is_page_loading_images'] = 0; - $assign['page_loading_images_url'] = $attachment_host.'/static/common/images/loading.gif'; + $assign['page_loading_images_url'] = StaticAttachmentUrl('loading.gif'); + $assign['page_loading_logo'] = AttachmentPathViewHandle(MyC('home_site_logo_square')); + $assign['page_loading_logo_border'] = StaticAttachmentUrl('loading-border.svg', 'svg'); // 是否加载附件组件 $assign['is_load_upload_editor'] = !empty($this->admin) ? 1 : 0; @@ -411,6 +417,9 @@ class Common extends BaseController $assign['multilingual_default_code'] = MultilingualService::GetUserMultilingualValue(); $assign['multilingual_data'] = (MyC('admin_use_multilingual_status') == 1) ? MultilingualService::MultilingualData() : []; + // 是否主题数据管理 + $assign['is_theme_data_admin'] = (isset($this->data_request['is_theme_data_admin']) && $this->data_request['is_theme_data_admin'] == 1) ? 1 : 0; + // 模板赋值 MyViewAssign($assign); } @@ -511,43 +520,19 @@ class Common extends BaseController } /** - * 成功提示 + * 商店账号未绑定提示 * @author Devil * @blog http://gong.gg/ * @version 1.0.0 * @date 2021-07-15 * @desc description - * @param [string] $msg [提示信息、默认(操作成功)] + * @param [string] $msg [提示信息] */ - public function success($msg) + public function NotBindStoreAccountTips($msg) { - if(IS_AJAX) - { - return DataReturn($msg, 0); - } else { - MyViewAssign('msg', $msg); - return MyView('public/jump_success'); - } - } - - /** - * 错误提示 - * @author Devil - * @blog http://gong.gg/ - * @version 1.0.0 - * @date 2021-07-15 - * @desc description - * @param [string] $msg [提示信息、默认(操作失败)] - */ - public function error($msg) - { - if(IS_AJAX) - { - return DataReturn($msg, -1); - } else { - MyViewAssign('msg', $msg); - return MyView('public/jump_error'); - } + MyViewAssign('ext_html', '

'.MyLang('store_bind_account_tips').'

'); + MyViewAssign('msg', $msg); + return MyView('public/tips_error'); } /** diff --git a/app/admin/controller/Design.php b/app/admin/controller/Design.php index b37bf92df..593e98ea5 100644 --- a/app/admin/controller/Design.php +++ b/app/admin/controller/Design.php @@ -76,7 +76,7 @@ class Design extends Base $goods_category = GoodsCategoryService::GoodsCategoryAll(); // 模板数据 - $assign = [ + MyViewAssign([ // 当前数据 'layout_data' => $layout_data, 'data' => $data, @@ -97,14 +97,13 @@ class Design extends Base 'images_magic_cube_view_list_show_style' => BaseLayout::ConstData('images_magic_cube_view_list_show_style'), // 首页商品排序规则 'common_goods_order_by_type_list' => MyConst('common_goods_order_by_type_list'), - 'common_goods_order_by_rule_list' => MyConst('common_goods_order_by_rule_list'), + 'common_data_order_by_rule_list' => MyConst('common_data_order_by_rule_list'), // 加载布局样式+管理 'is_load_layout' => 1, 'is_load_layout_admin' => 1, // 编辑器文件存放地址定义 'editor_path_type' => DesignService::AttachmentPathTypeValue($data['id']), - ]; - MyViewAssign($assign); + ]); return MyView(); } diff --git a/app/admin/controller/Goods.php b/app/admin/controller/Goods.php index a3535b3f6..3c60718fe 100755 --- a/app/admin/controller/Goods.php +++ b/app/admin/controller/Goods.php @@ -88,7 +88,7 @@ class Goods extends Base $data = $this->data_detail; if(!empty($params['id']) && empty($data)) { - return $this->error(MyLang('no_data'), MyUrl('admin/goods/index')); + return ViewError(MyLang('no_data'), MyUrl('admin/goods/index')); } // 模板信息 diff --git a/app/admin/controller/Index.php b/app/admin/controller/Index.php index 7f2f7131c..0948ad72f 100755 --- a/app/admin/controller/Index.php +++ b/app/admin/controller/Index.php @@ -65,6 +65,7 @@ class Index extends Common if(!empty($this->data_request['to_url'])) { $to_url = base64_decode(urldecode($this->data_request['to_url'])); + MyViewAssign('appoint_to_url', 1); } MyViewAssign('to_url', $to_url); return MyView(); diff --git a/app/admin/controller/Order.php b/app/admin/controller/Order.php index e7fce3e4c..feb3ac5c3 100755 --- a/app/admin/controller/Order.php +++ b/app/admin/controller/Order.php @@ -37,8 +37,6 @@ class Order extends Base { // 模板数据 $assign = [ - // 快递公司 - 'express_list' => ExpressService::ExpressList(), // 默认不加载视频扫码组件 'is_load_video_scan' => 1, ]; @@ -70,6 +68,21 @@ class Order extends Base return MyView(); } + /** + * 发货页面 + * @author Devil + * @blog http://gong.gg/ + * @version 1.0.0 + * @date 2018-09-28 + * @desc description + */ + public function DeliveryInfo() + { + // 快递公司 + MyViewAssign('express_list', ExpressService::ExpressList()); + return MyView(); + } + /** * 订单删除 * @author Devil @@ -176,6 +189,9 @@ class Order extends Base { $params = $this->data_request; $params['admin'] = $this->admin; + $params['creator'] = $this->admin['id']; + $params['creator_name'] = $this->admin['username']; + $params['user_type'] = 'admin'; return ApiService::ApiDataReturn(OrderService::OrderPaymentUnderLinePay($params)); } } diff --git a/app/admin/controller/Orderaftersale.php b/app/admin/controller/Orderaftersale.php index 52d5bbd0f..e081f1cb1 100644 --- a/app/admin/controller/Orderaftersale.php +++ b/app/admin/controller/Orderaftersale.php @@ -61,6 +61,8 @@ class Orderaftersale extends Base public function Confirm() { $params = $this->data_request; + $params['creator'] = $this->admin['id']; + $params['creator_name'] = $this->admin['username']; return ApiService::ApiDataReturn(OrderAftersaleService::AftersaleConfirm($params)); } diff --git a/app/admin/controller/Payment.php b/app/admin/controller/Payment.php index 8a9253fb7..613099b35 100755 --- a/app/admin/controller/Payment.php +++ b/app/admin/controller/Payment.php @@ -55,6 +55,14 @@ class Payment extends Base // 插件列表 $payment = PaymentService::PluginsPaymentList($this->nav_type); + // 插件更新信息 + $upgrade = PaymentService::PaymentUpgradeInfo($payment['data']); + // 是否未绑定商店账号 + if($upgrade['code'] == -300) + { + return $this->NotBindStoreAccountTips($upgrade['msg']); + } + // 模板数据 $assign = [ // 导航类型 @@ -69,12 +77,10 @@ class Payment extends Base 'common_platform_type' => MyConst('common_platform_type'), // 应用商店 'store_payment_url' => StoreService::StorePaymentUrl(), + // 支付插件更新信息 + 'upgrade_info' => $upgrade['data'], ]; - // 插件更新信息 - $upgrade = PaymentService::PaymentUpgradeInfo($payment['data']); - $assign['upgrade_info'] = $upgrade['data']; - // 数据赋值 MyViewAssign($assign); return MyView(); diff --git a/app/admin/controller/Plugins.php b/app/admin/controller/Plugins.php index 247d1a019..b4712a7b4 100755 --- a/app/admin/controller/Plugins.php +++ b/app/admin/controller/Plugins.php @@ -86,8 +86,8 @@ class Plugins extends Base $pluginscontrol = strtolower($params['data_request']['pluginscontrol']); $pluginsaction = strtolower($params['data_request']['pluginsaction']); - // 视图初始化 - $this->PluginsViewInit($pluginsname, $pluginscontrol, $pluginsaction); + // 编辑器文件存放地址定义 + MyViewAssign('editor_path_type', ResourcesService::EditorPathTypeValue('plugins_'.$pluginsname)); // 调用 $ret = PluginsService::PluginsControlCall($pluginsname, $pluginscontrol, $pluginsaction, 'admin', $params); @@ -107,7 +107,7 @@ class Plugins extends Base // 是否未绑定商店账号 if($ret['code'] == -300) { - MyViewAssign('ext_html', '

'.MyLang('store_bind_account_tips').'

'); + return $this->NotBindStoreAccountTips($ret['msg']); } // 调用失败 @@ -136,57 +136,5 @@ class Plugins extends Base } return $data; } - - /** - * 视图初始化 - * @author Devil - * @blog http://gong.gg/ - * @version 1.0.0 - * @datetime 2019-02-07T22:46:29+0800 - * @param [string] $plugins_name [应用名称] - * @param [string] $plugins_control [控制器名称] - * @param [string] $plugins_action [方法] - */ - public function PluginsViewInit($plugins_name, $plugins_control, $plugins_action) - { - // 模板数据 - $assign = [ - // 应用名称/控制器/方法 - 'plugins_name' => $plugins_name, - 'plugins_control' => $plugins_control, - 'plugins_action' => $plugins_action, - // 列表数据 - 'data_total' => $this->data_total, - 'data_list' => $this->data_list, - 'data' => $this->data_detail, - ]; - - // 当前操作名称 - $module_name = 'plugins'; - - // 模块组 - $group = 'admin'; - - // 控制器静态文件状态css,js - $module_css = $module_name.DS.'css'.DS.$plugins_name.DS.$group.DS.$plugins_control; - $module_css .= file_exists(ROOT_PATH.'static'.DS.$module_css.'.'.$plugins_action.'.css') ? '.'.$plugins_action.'.css' : '.css'; - $assign['module_css'] = file_exists(ROOT_PATH.'static'.DS.$module_css) ? $module_css : ''; - - $module_js = $module_name.DS.'js'.DS.$plugins_name.DS.$group.DS.$plugins_control; - $module_js .= file_exists(ROOT_PATH.'static'.DS.$module_js.'.'.$plugins_action.'.js') ? '.'.$plugins_action.'.js' : '.js'; - $assign['module_js'] = file_exists(ROOT_PATH.'static'.DS.$module_js) ? $module_js : ''; - - // 应用公共css,js - $plugins_css = $module_name.DS.'css'.DS.$plugins_name.DS.$group.DS.'common.css'; - $assign['plugins_css'] = file_exists(ROOT_PATH.'static'.DS.$plugins_css) ? $plugins_css : ''; - $plugins_js = $module_name.DS.'js'.DS.$plugins_name.DS.$group.DS.'common.js'; - $assign['plugins_js'] = file_exists(ROOT_PATH.'static'.DS.$plugins_js) ? $plugins_js : ''; - - // 编辑器文件存放地址定义 - $assign['editor_path_type'] = ResourcesService::EditorPathTypeValue('plugins_'.$plugins_name); - - // 模板赋值 - MyViewAssign($assign); - } } ?> \ No newline at end of file diff --git a/app/admin/controller/Pluginsadmin.php b/app/admin/controller/Pluginsadmin.php index b432c2cf2..4693b3a97 100755 --- a/app/admin/controller/Pluginsadmin.php +++ b/app/admin/controller/Pluginsadmin.php @@ -129,7 +129,7 @@ class Pluginsadmin extends Base { $assign['verification_msg'] = $ret['msg']; MyViewAssign($assign); - return MyView('first_step'); + return MyView('firststep'); } } @@ -137,7 +137,7 @@ class Pluginsadmin extends Base if(empty($params['plugins']) && empty($data['data'][0])) { MyViewAssign($assign); - return MyView('first_step'); + return MyView('firststep'); } else { // 编辑器文件存放地址 $assign['editor_path_type'] = ResourcesService::EditorPathTypeValue('plugins_'.$params['plugins']); @@ -147,7 +147,7 @@ class Pluginsadmin extends Base //数据赋值 MyViewAssign($assign); - return MyView('save_info'); + return MyView('saveinfo'); } } diff --git a/app/admin/controller/Site.php b/app/admin/controller/Site.php index 6a46b5464..b96832f42 100755 --- a/app/admin/controller/Site.php +++ b/app/admin/controller/Site.php @@ -129,6 +129,9 @@ class Site extends Base // 支付方式 $assign['payment_list'] = PaymentService::PaymentList(['is_enable'=>1, 'is_open_user'=>1]); + + // 默认首页列表 + $assign['site_default_index_data_list'] = SystemService::SiteDefaultIndexDataList(); break; } @@ -182,7 +185,7 @@ class Site extends Base 'common_sales_count_inc_rules_list' => MyConst('common_sales_count_inc_rules_list'), // 首页商品排序规则 'common_goods_order_by_type_list' => MyConst('common_goods_order_by_type_list'), - 'common_goods_order_by_rule_list' => MyConst('common_goods_order_by_rule_list'), + 'common_data_order_by_rule_list' => MyConst('common_data_order_by_rule_list'), // 首页楼层数据类型 'common_site_floor_data_type_list' => MyConst('common_site_floor_data_type_list'), // 搜索参数类型 diff --git a/app/admin/controller/Theme.php b/app/admin/controller/Themeadmin.php similarity index 59% rename from app/admin/controller/Theme.php rename to app/admin/controller/Themeadmin.php index 3f6661ee1..8f417751c 100755 --- a/app/admin/controller/Theme.php +++ b/app/admin/controller/Themeadmin.php @@ -12,8 +12,7 @@ namespace app\admin\controller; use app\admin\controller\Base; use app\service\ApiService; -use app\service\ThemeService; -use app\service\ConfigService; +use app\service\ThemeAdminService; use app\service\StoreService; /** @@ -23,7 +22,7 @@ use app\service\StoreService; * @version 0.0.1 * @datetime 2016-12-01T21:51:08+0800 */ -class Theme extends Base +class ThemeAdmin extends Base { private $view_type; @@ -52,38 +51,39 @@ class Theme extends Base */ public function Index() { + // 获取主题列表 + $data_list = ThemeAdminService::ThemeAdminList(); + + // 插件更新信息 + $upgrade = ThemeAdminService::ThemeAdminUpgradeInfo($data_list); + // 是否未绑定商店账号 + if($upgrade['code'] == -300) + { + return $this->NotBindStoreAccountTips($upgrade['msg']); + } + // 模板数据 - $assign = [ - // 导航参数 - 'view_type' => $this->view_type, - // 基础导航 - 'base_nav' => MyLang('theme.base_nav_list'), - // 应用商店 - 'store_theme_url' => StoreService::StoreThemeUrl(), - ]; - - // 是否默认首页 - if($this->view_type == 'index') - { + MyViewAssign([ + // 导航参数 + 'view_type' => $this->view_type, + // 基础导航 + 'base_nav' => MyLang('theme.base_nav_list'), // 默认主题 - $assign['theme'] = ThemeService::DefaultTheme(); - - // 获取主题列表 - $data_list = ThemeService::ThemeList(); - $assign['data_list'] = $data_list; - + 'theme' => ThemeAdminService::DefaultTheme(), + // 主题列表 + 'data_list' => $data_list, + // 主题数据管理url + 'admin_url_data' => ThemeAdminService::ThemeAdminDataUrl(), // 插件更新信息 - $upgrade = ThemeService::ThemeUpgradeInfo($data_list); - $assign['upgrade_info'] = $upgrade['data']; - } - - // 数据赋值 - MyViewAssign($assign); + 'upgrade_info' => $upgrade['data'], + // 应用商店 + 'store_theme_url' => StoreService::StoreThemeUrl(), + ]); return MyView($this->view_type); } /** - * 模板切换保存 + * 切换保存 * @author Devil * @blog http://gong.gg/ * @version 1.0.0 @@ -91,7 +91,7 @@ class Theme extends Base */ public function Save() { - return ApiService::ApiDataReturn(ThemeService::ThemeSwitch($this->data_request)); + return ApiService::ApiDataReturn(ThemeAdminService::ThemeAdminSwitch($this->data_request)); } /** @@ -103,11 +103,11 @@ class Theme extends Base */ public function Delete() { - return ApiService::ApiDataReturn(ThemeService::ThemeDelete($this->data_request)); + return ApiService::ApiDataReturn(ThemeAdminService::ThemeAdminDelete($this->data_request)); } /** - * 模板上传安装 + * 上传安装 * @author Devil * @blog http://gong.gg/ * @version 0.0.1 @@ -115,11 +115,11 @@ class Theme extends Base */ public function Upload() { - return ApiService::ApiDataReturn(ThemeService::ThemeUpload($this->data_request)); + return ApiService::ApiDataReturn(ThemeAdminService::ThemeAdminUpload($this->data_request)); } /** - * 主题打包下载 + * 打包下载 * @author Devil * @blog http://gong.gg/ * @version 1.0.0 @@ -128,7 +128,7 @@ class Theme extends Base */ public function Download() { - $ret = ThemeService::ThemeDownload($this->data_request); + $ret = ThemeAdminService::ThemeAdminDownload($this->data_request); if(isset($ret['code']) && $ret['code'] != 0) { MyViewAssign('msg', $ret['msg']); diff --git a/app/admin/controller/Themedata.php b/app/admin/controller/Themedata.php new file mode 100644 index 000000000..b47e91a80 --- /dev/null +++ b/app/admin/controller/Themedata.php @@ -0,0 +1,254 @@ +PageViewAssign(); + return MyView(); + } + + /** + * 添加/编辑页面 + * @author Devil + * @blog http://gong.gg/ + * @version 1.0.0 + * @date 2024-03-31 + * @desc description + */ + public function SaveInfo() + { + // 没有数据id则先新增 + if(empty($this->data_detail)) + { + $ret = ThemeDataService::ThemeDataSave(array_merge($this->data_request, ['is_init'=>1])); + if($ret['code'] == 0) + { + return MyRedirect(MyUrl('admin/themedata/saveinfo', ['id'=>$ret['data']])); + } else { + MyViewAssign('msg', $ret['msg']); + return MyView('public/tips_error'); + } + } + + // 当前访问页面 + $theme_type_list = MyConst('common_theme_type_list'); + $type = empty($this->data_detail['type']) ? 0 : intval($this->data_detail['type']); + $view = isset($theme_type_list[$type]) ? $theme_type_list[$type]['type'] : $theme_type_list[0]['type']; + + // 参数处理 + unset($this->data_request['id'], $this->data_request['type']); + + // 模板数据 + MyViewAssign([ + // 参数 + 'params' => $this->data_request, + // 编辑器文件存放地址定义 + 'editor_path_type' => ThemeDataService::AttachmentPathTypeValue($this->data_detail['id']), + // 主题列表 + 'theme_list' => ThemeAdminService::ThemeAdminList(), + ]); + + // 公共视图数据 + $this->PageViewAssign(); + return MyView('themedata/saveinfo/'.$view); + } + + /** + * 页面视图数据 + * @author Devil + * @blog http://gong.gg/ + * @version 1.0.0 + * @date 2024-04-02 + * @desc description + */ + public function PageViewAssign() + { + // 文章分类 + $article_category = ArticleCategoryService::ArticleCategoryList(['field'=>'id,name']); + + // 模板数据 + MyViewAssign([ + // 商品分类 + 'goods_category_list' => GoodsCategoryService::GoodsCategoryAll(), + // 品牌 + 'brand_list' => BrandService::CategoryBrand(), + // 文章分类 + 'article_category_list' => $article_category['data'], + // 静态数据 + 'common_platform_type' => MyConst('common_platform_type'), + 'common_theme_goods_type_list' => MyConst('common_theme_goods_type_list'), + 'common_theme_view_list' => MyConst('common_theme_view_list'), + 'common_theme_business_images_list' => MyConst('common_theme_business_images_list'), + 'common_theme_business_text_input_list' => MyConst('common_theme_business_text_input_list'), + 'common_theme_business_text_textarea_list' => MyConst('common_theme_business_text_textarea_list'), + // 文章排序规则 + 'common_theme_article_type_list' => MyConst('common_theme_article_type_list'), + 'common_theme_article_order_by_type_list' => MyConst('common_theme_article_order_by_type_list'), + // 商品排序规则 + 'common_goods_order_by_type_list' => MyConst('common_goods_order_by_type_list'), + 'common_data_order_by_rule_list' => MyConst('common_data_order_by_rule_list'), + ]); + } + + /** + * 保存 + * @author Devil + * @blog http://gong.gg/ + * @version 1.0.0 + * @date 2024-03-31 + * @desc description + */ + public function Save() + { + return ApiService::ApiDataReturn(ThemeDataService::ThemeDataSave($this->data_request)); + } + + /** + * 状态更新 + * @author Devil + * @blog http://gong.gg/ + * @version 1.0.0 + * @date 2024-03-31 + * @desc description + */ + public function StatusUpdate() + { + return ApiService::ApiDataReturn(ThemeDataService::ThemeDataStatusUpdate($this->data_request)); + } + + /** + * 删除 + * @author Devil + * @blog http://gong.gg/ + * @version 1.0.0 + * @date 2024-03-31 + * @desc description + */ + public function Delete() + { + return ApiService::ApiDataReturn(ThemeDataService::ThemeDataDelete($this->data_request)); + } + + /** + * 上传 + * @author Devil + * @blog http://gong.gg/ + * @version 1.0.0 + * @date 2024-03-31 + * @desc description + */ + public function Upload() + { + return ApiService::ApiDataReturn(ThemeDataService::ThemeDataUpload($this->data_request)); + } + + /** + * 打包下载 + * @author Devil + * @blog http://gong.gg/ + * @version 1.0.0 + * @date 2024-03-31 + * @desc description + */ + public function Download() + { + $ret = ThemeDataService::ThemeDataDownload($this->data_request); + if(isset($ret['code']) && $ret['code'] != 0) + { + MyViewAssign('msg', $ret['msg']); + return MyView('public/tips_error'); + } + } + + /** + * 商品搜索 + * @author Devil + * @blog http://gong.gg/ + * @version 1.0.0 + * @date 2020-11-25 + * @desc description + */ + public function GoodsSearch() + { + // 搜索数据 + $ret = ThemeDataService::GoodsSearchList($this->data_request); + if($ret['code'] == 0) + { + $ret['data']['data'] = MyView('themedata/saveinfo/public/goods_search_content', ['data'=>$ret['data']['data']]); + } + return ApiService::ApiDataReturn($ret); + } + + /** + * 文章搜索 + * @author Devil + * @blog http://gong.gg/ + * @version 1.0.0 + * @date 2020-11-25 + * @desc description + */ + public function ArticleSearch() + { + // 搜索数据 + $ret = ThemeDataService::ArticleSearchList($this->data_request); + if($ret['code'] == 0) + { + $ret['data']['data'] = MyView('themedata/saveinfo/public/article_search_content', ['data'=>$ret['data']['data']]); + } + return ApiService::ApiDataReturn($ret); + } +} +?> \ No newline at end of file diff --git a/app/admin/controller/User.php b/app/admin/controller/User.php index b1d1fe058..e331debd5 100755 --- a/app/admin/controller/User.php +++ b/app/admin/controller/User.php @@ -63,7 +63,7 @@ class User extends Base $data = $this->data_detail; if(!empty($params['id']) && empty($data)) { - return $this->error(MyLang('no_data'), MyUrl('admin/user/index')); + return ViewError(MyLang('no_data'), MyUrl('admin/user/index')); } // 模板数据 diff --git a/app/admin/form/Article.php b/app/admin/form/Article.php index 98b2c7675..0f6d10940 100644 --- a/app/admin/form/Article.php +++ b/app/admin/form/Article.php @@ -45,7 +45,6 @@ class Article 'is_search' => 1, 'is_delete' => 1, 'is_middle' => 0, - 'detail_title' => MyLang('form_table_base_detail_title'), ], // 表单配置 'form' => [ @@ -57,6 +56,26 @@ class Article 'align' => 'center', 'width' => 80, ], + [ + 'label' => $lang['id'], + 'view_type' => 'field', + 'view_key' => 'id', + 'width' => 110, + 'is_copy' => 1, + 'is_sort' => 1, + 'search_config' => [ + 'form_type' => 'input', + 'where_type' => '=', + ], + ], + [ + 'label' => $lang['cover'], + 'view_type' => 'images', + 'view_key' => 'cover', + 'width' => 70, + 'images_width' => 25, + 'images_height' => 25, + ], [ 'label' => $lang['info'], 'view_type' => 'module', @@ -70,10 +89,13 @@ class Article ], ], [ - 'label' => $lang['jump_url'], + 'label' => $lang['describe'], 'view_type' => 'field', - 'view_key' => 'jump_url', + 'view_key' => 'describe', 'grid_size' => 'sm', + 'text_truncate' => 2, + 'is_popover' => 1, + 'is_sort' => 1, 'search_config' => [ 'form_type' => 'input', 'where_type' => 'like', @@ -130,6 +152,16 @@ class Article 'is_multiple' => 1, ], ], + [ + 'label' => $lang['jump_url'], + 'view_type' => 'field', + 'view_key' => 'jump_url', + 'grid_size' => 'sm', + 'search_config' => [ + 'form_type' => 'input', + 'where_type' => 'like', + ], + ], [ 'label' => $lang['images_count'], 'view_type' => 'field', diff --git a/app/admin/form/Goods.php b/app/admin/form/Goods.php index 11d3d2c11..4593141e2 100644 --- a/app/admin/form/Goods.php +++ b/app/admin/form/Goods.php @@ -49,7 +49,6 @@ class Goods 'status_field' => 'is_shelves', 'is_search' => 1, 'is_delete' => 1, - 'detail_title' => MyLang('form_table_base_detail_title'), 'is_middle' => 0, ], // 表单配置 @@ -67,6 +66,7 @@ class Goods 'view_type' => 'field', 'view_key' => 'id', 'width' => 110, + 'is_copy' => 1, 'is_sort' => 1, 'search_config' => [ 'form_type' => 'input', @@ -84,7 +84,7 @@ class Goods 'form_type' => 'input', 'form_name' => 'id', 'where_type_custom' => 'in', - 'where_value_custom' => 'WhereValueGoodsInfo', + 'where_value_custom' => 'SystemModuleGoodsWhereHandle', 'placeholder' => $lang['info_placeholder'], ], ], @@ -301,7 +301,6 @@ class Goods 'data_handle' => 'GoodsService::GoodsDataHandle', 'is_page' => 1, 'data_params' => [ - 'is_photo' => 1, 'is_content_app' => 1, 'is_category' => 1, ], @@ -312,29 +311,6 @@ class Goods ]; } - /** - * 商品信息条件处理 - * @author Devil - * @blog http://gong.gg/ - * @version 1.0.0 - * @date 2020-06-30 - * @desc description - * @param [string] $value [条件值] - * @param [array] $params [输入参数] - */ - public function WhereValueGoodsInfo($value, $params = []) - { - if(!empty($value)) - { - // 获取商品 id - $ids = Db::name('Goods')->alias('g')->join('goods_spec_base gb', 'g.id=gb.goods_id')->where('g.title|g.simple_desc|g.seo_title|g.seo_keywords|g.seo_keywords|gb.coding|gb.barcode', 'like', '%'.$value.'%')->column('g.id'); - - // 避免空条件造成无效的错觉 - return empty($ids) ? [0] : $ids; - } - return $value; - } - /** * 商品分类条件处理 * @author Devil diff --git a/app/admin/form/Goodsbrowse.php b/app/admin/form/Goodsbrowse.php index a3a6dc00f..2899537e9 100644 --- a/app/admin/form/Goodsbrowse.php +++ b/app/admin/form/Goodsbrowse.php @@ -65,7 +65,7 @@ class GoodsBrowse 'form_type' => 'input', 'form_name' => 'b.user_id', 'where_type_custom' => 'in', - 'where_value_custom' => 'WhereValueUserInfo', + 'where_value_custom' => 'SystemModuleUserWhereHandle', 'placeholder' => $lang['user_placeholder'], ], ], @@ -126,7 +126,7 @@ class GoodsBrowse // 数据配置 'data' => [ 'table_obj' => Db::name('GoodsBrowse')->alias('b')->join('goods g', 'g.id=b.goods_id'), - 'select_field' => 'b.*, g.title, g.original_price, g.price, g.min_price, g.images', + 'select_field' => 'b.*, g.title, g.original_price, g.price, g.min_price, g.images, g.inventory_unit', 'order_by' => 'b.id desc', 'detail_dkey' => 'b.id', 'data_handle' => 'GoodsBrowseService::GoodsBrowseListHandle', @@ -138,28 +138,5 @@ class GoodsBrowse ], ]; } - - /** - * 用户信息条件处理 - * @author Devil - * @blog http://gong.gg/ - * @version 1.0.0 - * @date 2020-06-30 - * @desc description - * @param [string] $value [条件值] - * @param [array] $params [输入参数] - */ - public function WhereValueUserInfo($value, $params = []) - { - if(!empty($value)) - { - // 获取用户 id - $ids = Db::name('User')->where('number_code|username|nickname|mobile|email', 'like', '%'.$value.'%')->column('id'); - - // 避免空条件造成无效的错觉 - return empty($ids) ? [0] : $ids; - } - return $value; - } } ?> \ No newline at end of file diff --git a/app/admin/form/Goodscart.php b/app/admin/form/Goodscart.php index cab6c6686..bb4ec4a16 100644 --- a/app/admin/form/Goodscart.php +++ b/app/admin/form/Goodscart.php @@ -65,7 +65,7 @@ class GoodsCart 'form_type' => 'input', 'form_name' => 'c.user_id', 'where_type_custom' => 'in', - 'where_value_custom' => 'WhereValueUserInfo', + 'where_value_custom' => 'SystemModuleUserWhereHandle', 'placeholder' => $lang['user_placeholder'], ], ], @@ -138,28 +138,5 @@ class GoodsCart ], ]; } - - /** - * 用户信息条件处理 - * @author Devil - * @blog http://gong.gg/ - * @version 1.0.0 - * @date 2020-06-30 - * @desc description - * @param [string] $value [条件值] - * @param [array] $params [输入参数] - */ - public function WhereValueUserInfo($value, $params = []) - { - if(!empty($value)) - { - // 获取用户 id - $ids = Db::name('User')->where('number_code|username|nickname|mobile|email', 'like', '%'.$value.'%')->column('id'); - - // 避免空条件造成无效的错觉 - return empty($ids) ? [0] : $ids; - } - return $value; - } } ?> \ No newline at end of file diff --git a/app/admin/form/Goodscomments.php b/app/admin/form/Goodscomments.php index 6715366a2..cdb1c4781 100644 --- a/app/admin/form/Goodscomments.php +++ b/app/admin/form/Goodscomments.php @@ -66,7 +66,7 @@ class GoodsComments 'form_type' => 'input', 'form_name' => 'user_id', 'where_type_custom' => 'in', - 'where_value_custom' => 'WhereValueUserInfo', + 'where_value_custom' => 'SystemModuleUserWhereHandle', 'placeholder' => '请输入用户名/昵称/手机/邮箱', ], ], @@ -145,8 +145,8 @@ class GoodsComments ], [ 'label' => $lang['images'], - 'view_type' => 'module', - 'view_key' => 'goodscomments/module/images', + 'view_type' => 'many_images', + 'view_key' => 'images', ], [ 'label' => $lang['is_show'], @@ -251,29 +251,6 @@ class GoodsComments ]; } - /** - * 用户信息条件处理 - * @author Devil - * @blog http://gong.gg/ - * @version 1.0.0 - * @date 2020-06-08 - * @desc description - * @param [string] $value [条件值] - * @param [array] $params [输入参数] - */ - public function WhereValueUserInfo($value, $params = []) - { - if(!empty($value)) - { - // 获取用户 id - $ids = Db::name('User')->where('number_code|username|nickname|mobile|email', 'like', '%'.$value.'%')->column('id'); - - // 避免空条件造成无效的错觉 - return empty($ids) ? [0] : $ids; - } - return $value; - } - /** * 商品信息条件处理 * @author Devil diff --git a/app/admin/form/Goodsfavor.php b/app/admin/form/Goodsfavor.php index 90223dfd5..714de60c2 100644 --- a/app/admin/form/Goodsfavor.php +++ b/app/admin/form/Goodsfavor.php @@ -67,7 +67,7 @@ class GoodsFavor 'form_type' => 'input', 'form_name' => 'f.user_id', 'where_type_custom' => 'in', - 'where_value_custom' => 'WhereValueUserInfo', + 'where_value_custom' => 'SystemModuleUserWhereHandle', 'placeholder' => $lang['user_placeholder'], ], ], @@ -128,7 +128,7 @@ class GoodsFavor // 数据配置 'data' => [ 'table_obj' => Db::name('GoodsFavor')->alias('f')->join('goods g', 'g.id=f.goods_id'), - 'select_field' => 'f.*, g.title, g.original_price, g.price, g.min_price, g.images', + 'select_field' => 'f.*, g.title, g.original_price, g.price, g.min_price, g.images, g.inventory_unit', 'order_by' => 'f.id desc', 'detail_dkey' => 'f.id', 'data_handle' => 'GoodsFavorService::GoodsFavorListHandle', @@ -140,28 +140,5 @@ class GoodsFavor ], ]; } - - /** - * 用户信息条件处理 - * @author Devil - * @blog http://gong.gg/ - * @version 1.0.0 - * @date 2020-06-30 - * @desc description - * @param [string] $value [条件值] - * @param [array] $params [输入参数] - */ - public function WhereValueUserInfo($value, $params = []) - { - if(!empty($value)) - { - // 获取用户 id - $ids = Db::name('User')->where('number_code|username|nickname|mobile|email', 'like', '%'.$value.'%')->column('id'); - - // 避免空条件造成无效的错觉 - return empty($ids) ? [0] : $ids; - } - return $value; - } } ?> \ No newline at end of file diff --git a/app/admin/form/Goodsparamstemplate.php b/app/admin/form/Goodsparamstemplate.php index 5bead3f0c..607b5abdc 100644 --- a/app/admin/form/Goodsparamstemplate.php +++ b/app/admin/form/Goodsparamstemplate.php @@ -63,7 +63,6 @@ class GoodsParamsTemplate 'is_search' => 1, 'is_delete' => 1, 'is_middle' => 0, - 'detail_title' => MyLang('form_table_base_detail_title'), ], // 表单配置 'form' => [ diff --git a/app/admin/form/Integrallog.php b/app/admin/form/Integrallog.php index 95397fb09..8c07b8cfb 100644 --- a/app/admin/form/Integrallog.php +++ b/app/admin/form/Integrallog.php @@ -10,8 +10,6 @@ // +---------------------------------------------------------------------- namespace app\admin\form; -use think\facade\Db; - /** * 积分日志动态表格 * @author Devil @@ -56,7 +54,7 @@ class IntegralLog 'form_type' => 'input', 'form_name' => 'user_id', 'where_type_custom' => 'in', - 'where_value_custom' => 'WhereValueUserInfo', + 'where_value_custom' => 'SystemModuleUserWhereHandle', 'placeholder' => $lang['user_placeholder'], ], ], @@ -155,28 +153,5 @@ class IntegralLog ], ]; } - - /** - * 用户信息条件处理 - * @author Devil - * @blog http://gong.gg/ - * @version 1.0.0 - * @date 2020-06-27 - * @desc description - * @param [string] $value [条件值] - * @param [array] $params [输入参数] - */ - public function WhereValueUserInfo($value, $params = []) - { - if(!empty($value)) - { - // 获取用户 id - $ids = Db::name('User')->where('number_code|username|nickname|mobile|email', 'like', '%'.$value.'%')->column('id'); - - // 避免空条件造成无效的错觉 - return empty($ids) ? [0] : $ids; - } - return $value; - } } ?> \ No newline at end of file diff --git a/app/admin/form/Message.php b/app/admin/form/Message.php index d49881d3f..6e52ab253 100644 --- a/app/admin/form/Message.php +++ b/app/admin/form/Message.php @@ -67,7 +67,7 @@ class Message 'form_type' => 'input', 'form_name' => 'user_id', 'where_type_custom' => 'in', - 'where_value_custom' => 'WhereValueUserInfo', + 'where_value_custom' => 'SystemModuleUserWhereHandle', 'placeholder' => $lang['user_placeholder'], ], ], @@ -227,29 +227,6 @@ class Message return (count($value) == 2) ? null : 0; } - /** - * 用户信息条件处理 - * @author Devil - * @blog http://gong.gg/ - * @version 1.0.0 - * @date 2020-06-26 - * @desc description - * @param [string] $value [条件值] - * @param [array] $params [输入参数] - */ - public function WhereValueUserInfo($value, $params = []) - { - if(!empty($value)) - { - // 获取用户 id - $ids = Db::name('User')->where('number_code|username|nickname|mobile|email', 'like', '%'.$value.'%')->column('id'); - - // 避免空条件造成无效的错觉 - return empty($ids) ? [0] : $ids; - } - return $value; - } - /** * 业务类型 * @author Devil diff --git a/app/admin/form/Navigation.php b/app/admin/form/Navigation.php index 3c5a1d277..4b4c0677b 100644 --- a/app/admin/form/Navigation.php +++ b/app/admin/form/Navigation.php @@ -35,7 +35,13 @@ class Navigation public function Run($params = []) { // 导航类型 - $nav_type = empty($params['nav_type']) ? 'header' : trim($params['nav_type']); + $search_params = ['type' => empty($params['type']) ? 'header' : trim($params['type'])]; + + // 是否主题管理 + if(isset($params['is_theme_data_admin']) && $params['is_theme_data_admin'] == 1) + { + $search_params['is_theme_data_admin'] = 1; + } // 配置信息 $lang = MyLang('navigation.form_table'); @@ -45,7 +51,7 @@ class Navigation 'key_field' => 'id', 'status_field' => 'is_show', 'is_search' => 1, - 'search_url' => MyUrl('admin/navigation/index', ['nav_type'=>$nav_type]), + 'search_url' => MyUrl('admin/navigation/index', $search_params), 'is_delete' => 1, ], // 表单配置 diff --git a/app/admin/form/Order.php b/app/admin/form/Order.php index 257eaa72f..cd4261608 100644 --- a/app/admin/form/Order.php +++ b/app/admin/form/Order.php @@ -12,7 +12,6 @@ namespace app\admin\form; use think\facade\Db; use app\service\PaymentService; -use app\service\ExpressService; /** * 订单动态表格 @@ -47,7 +46,6 @@ class Order 'base' => [ 'key_field' => 'id', 'is_search' => 1, - 'detail_title' => MyLang('form_table_base_detail_title'), 'is_middle' => 0, ], // 表单配置 @@ -76,7 +74,7 @@ class Order 'form_type' => 'input', 'form_name' => 'user_id', 'where_type_custom' => 'in', - 'where_value_custom' => 'WhereValueUserInfo', + 'where_value_custom' => 'SystemModuleUserWhereHandle', 'placeholder' => $lang['user_placeholder'], ], ], @@ -298,28 +296,17 @@ class Order ], ], [ - 'label' => $lang['express_name'], - 'view_type' => 'field', - 'view_key' => 'express_name', - 'is_sort' => 1, + 'label' => $lang['express'], + 'view_type' => 'module', + 'view_key' => 'order/module/express', + 'grid_size' => 'sm', + 'is_detail' => 0, 'search_config' => [ - 'form_type' => 'select', - 'form_name' => 'express_id', - 'data' => ExpressService::ExpressList(), - 'where_type' => 'in', - 'data_key' => 'id', - 'data_name' => 'name', - 'is_multiple' => 1, - ], - ], - [ - 'label' => $lang['express_number'], - 'view_type' => 'field', - 'view_key' => 'express_number', - 'is_sort' => 1, - 'search_config' => [ - 'form_type' => 'input', - 'where_type' => 'like', + 'form_type' => 'input', + 'form_name' => 'id', + 'where_type_custom' => 'in', + 'where_value_custom' => 'WhereExpressInfo', + 'placeholder' => $lang['express_placeholder'], ], ], [ @@ -429,6 +416,7 @@ class Order 'data' => [ 'table_name' => 'Order', 'data_handle' => 'OrderService::OrderListHandle', + 'detail_action' => ['detail', 'saveinfo', 'deliveryinfo'], 'detail_where' => [ ['is_delete_time', '=', 0], ], @@ -556,29 +544,6 @@ class Order return $value; } - /** - * 用户信息条件处理 - * @author Devil - * @blog http://gong.gg/ - * @version 1.0.0 - * @date 2020-06-08 - * @desc description - * @param [string] $value [条件值] - * @param [array] $params [输入参数] - */ - public function WhereValueUserInfo($value, $params = []) - { - if(!empty($value)) - { - // 获取用户 id - $ids = Db::name('User')->where('number_code|username|nickname|mobile|email', 'like', '%'.$value.'%')->column('id'); - - // 避免空条件造成无效的错觉 - return empty($ids) ? [0] : $ids; - } - return $value; - } - /** * 基础条件处理 * @author Devil @@ -607,5 +572,27 @@ class Order } return $value; } + + /** + * 快递条件处理 + * @author Devil + * @blog http://gong.gg/ + * @version 1.0.0 + * @date 2020-06-08 + * @desc description + * @param [string] $value [条件值] + * @param [array] $params [输入参数] + */ + public function WhereExpressInfo($value, $params = []) + { + if(!empty($value)) + { + // 订单ID + $ids = Db::name('OrderExpress')->where(['express_number'=>$value])->column('order_id'); + // 避免空条件造成无效的错觉 + return empty($ids) ? [0] : $ids; + } + return $value; + } } ?> \ No newline at end of file diff --git a/app/admin/form/Orderaftersale.php b/app/admin/form/Orderaftersale.php index e491fdec5..10d13328a 100644 --- a/app/admin/form/Orderaftersale.php +++ b/app/admin/form/Orderaftersale.php @@ -72,7 +72,7 @@ class OrderAftersale 'form_type' => 'input', 'form_name' => 'user_id', 'where_type_custom' => 'in', - 'where_value_custom' => 'WhereValueUserInfo', + 'where_value_custom' => 'SystemModuleUserWhereHandle', 'placeholder' => $lang['user_placeholder'], ], ], @@ -169,8 +169,8 @@ class OrderAftersale ], [ 'label' => $lang['voucher'], - 'view_type' => 'module', - 'view_key' => 'orderaftersale/module/voucher', + 'view_type' => 'many_images', + 'view_key' => 'images', ], [ 'label' => $lang['express_name'], @@ -289,29 +289,6 @@ class OrderAftersale ]; } - /** - * 用户信息条件处理 - * @author Devil - * @blog http://gong.gg/ - * @version 1.0.0 - * @date 2020-06-08 - * @desc description - * @param [string] $value [条件值] - * @param [array] $params [输入参数] - */ - public function WhereValueUserInfo($value, $params = []) - { - if(!empty($value)) - { - // 获取用户 id - $ids = Db::name('User')->where('number_code|username|nickname|mobile|email', 'like', '%'.$value.'%')->column('id'); - - // 避免空条件造成无效的错觉 - return empty($ids) ? [0] : $ids; - } - return $value; - } - /** * 基础条件处理 * @author Devil diff --git a/app/admin/form/Paylog.php b/app/admin/form/Paylog.php index 216484aad..f876fa7f0 100644 --- a/app/admin/form/Paylog.php +++ b/app/admin/form/Paylog.php @@ -85,7 +85,7 @@ class PayLog 'form_type' => 'input', 'form_name' => 'user_id', 'where_type_custom' => 'in', - 'where_value_custom' => 'WhereValueUserInfo', + 'where_value_custom' => 'SystemModuleUserWhereHandle', 'placeholder' => $lang['user_placeholder'], ], ], @@ -261,29 +261,6 @@ class PayLog ]; } - /** - * 用户信息条件处理 - * @author Devil - * @blog http://gong.gg/ - * @version 1.0.0 - * @date 2020-06-26 - * @desc description - * @param [string] $value [条件值] - * @param [array] $params [输入参数] - */ - public function WhereValueUserInfo($value, $params = []) - { - if(!empty($value)) - { - // 获取用户 id - $ids = Db::name('User')->where('number_code|username|nickname|mobile|email', 'like', '%'.$value.'%')->column('id'); - - // 避免空条件造成无效的错觉 - return empty($ids) ? [0] : $ids; - } - return $value; - } - /** * 支付方式类型 * @author Devil diff --git a/app/admin/form/Refundlog.php b/app/admin/form/Refundlog.php index 5bfc04eb1..69c49bfd6 100644 --- a/app/admin/form/Refundlog.php +++ b/app/admin/form/Refundlog.php @@ -57,7 +57,7 @@ class RefundLog 'form_type' => 'input', 'form_name' => 'user_id', 'where_type_custom' => 'in', - 'where_value_custom' => 'WhereValueUserInfo', + 'where_value_custom' => 'SystemModuleUserWhereHandle', 'placeholder' => $lang['user_placeholder'], ], ], @@ -201,29 +201,6 @@ class RefundLog ]; } - /** - * 用户信息条件处理 - * @author Devil - * @blog http://gong.gg/ - * @version 1.0.0 - * @date 2020-06-27 - * @desc description - * @param [string] $value [条件值] - * @param [array] $params [输入参数] - */ - public function WhereValueUserInfo($value, $params = []) - { - if(!empty($value)) - { - // 获取用户 id - $ids = Db::name('User')->where('number_code|username|nickname|mobile|email', 'like', '%'.$value.'%')->column('id'); - - // 避免空条件造成无效的错觉 - return empty($ids) ? [0] : $ids; - } - return $value; - } - /** * 支付方式类型 * @author Devil diff --git a/app/admin/form/Role.php b/app/admin/form/Role.php index 019c34ac3..139450418 100644 --- a/app/admin/form/Role.php +++ b/app/admin/form/Role.php @@ -42,7 +42,6 @@ class Role 'status_field' => 'is_enable', 'is_search' => 1, 'is_delete' => 1, - 'detail_title' => MyLang('form_table_base_detail_title'), ], // 表单配置 'form' => [ diff --git a/app/admin/form/Themedata.php b/app/admin/form/Themedata.php new file mode 100644 index 000000000..7fd0e6ac9 --- /dev/null +++ b/app/admin/form/Themedata.php @@ -0,0 +1,212 @@ +theme_list = empty($res) ? [] : array_column($res, 'name', 'theme'); + } + + /** + * 入口 + * @author Devil + * @blog http://gong.gg/ + * @version 1.0.0 + * @date 2020-06-26 + * @desc description + * @param [array] $params [输入参数] + */ + public function Run($params = []) + { + $lang = MyLang('themedata.form_table'); + return [ + // 基础配置 + 'base' => [ + 'key_field' => 'id', + 'status_field' => 'is_enable', + 'is_search' => 1, + 'is_delete' => 1, + 'is_middle' => 0, + ], + // 表单配置 + 'form' => [ + [ + 'view_type' => 'checkbox', + 'is_checked' => 0, + 'checked_text' => MyLang('reverse_select_title'), + 'not_checked_text' => MyLang('select_all_title'), + 'align' => 'center', + 'width' => 80, + ], + [ + 'label' => $lang['unique'], + 'view_type' => 'field', + 'view_key' => 'unique', + 'width' => 300, + 'is_copy' => 1, + 'is_sort' => 1, + 'search_config' => [ + 'form_type' => 'input', + ], + ], + [ + 'label' => $lang['name'], + 'view_type' => 'field', + 'view_key' => 'name', + 'is_sort' => 1, + 'search_config' => [ + 'form_type' => 'input', + 'where_type' => 'like', + ], + ], + [ + 'label' => $lang['type'], + 'view_type' => 'field', + 'view_key' => 'type_name', + 'is_sort' => 1, + 'search_config' => [ + 'form_type' => 'select', + 'form_name' => 'type', + 'where_type' => 'in', + 'data' => MyConst('common_theme_type_list'), + 'data_key' => 'value', + 'data_name' => 'name', + 'is_multiple' => 1, + ], + ], + [ + 'label' => $lang['theme'], + 'view_type' => 'field', + 'view_key' => 'theme_name', + 'is_sort' => 1, + 'search_config' => [ + 'form_type' => 'select', + 'form_name' => 'theme', + 'where_type' => 'in', + 'data' => $this->theme_list, + 'is_multiple' => 1, + ], + ], + [ + 'label' => $lang['is_enable'], + 'view_type' => 'status', + 'view_key' => 'is_enable', + 'post_url' => MyUrl('admin/themedata/statusupdate'), + 'is_form_su' => 1, + 'align' => 'center', + 'is_sort' => 1, + 'width' => 130, + 'search_config' => [ + 'form_type' => 'select', + 'where_type' => 'in', + 'data' => MyConst('common_is_text_list'), + 'data_key' => 'id', + 'data_name' => 'name', + 'is_multiple' => 1, + ], + ], + [ + 'label' => $lang['view'], + 'view_type' => 'field', + 'view_key' => 'view_name', + 'is_sort' => 1, + 'search_config' => [ + 'form_type' => 'select', + 'form_name' => 'view', + 'where_type' => 'in', + 'data' => MyConst('common_theme_view_list'), + 'data_key' => 'value', + 'data_name' => 'name', + 'is_multiple' => 1, + ], + ], + [ + 'label' => $lang['add_time'], + 'view_type' => 'field', + 'view_key' => 'add_time', + 'is_sort' => 1, + 'search_config' => [ + 'form_type' => 'datetime', + ], + ], + [ + 'label' => $lang['upd_time'], + 'view_type' => 'field', + 'view_key' => 'upd_time', + 'is_sort' => 1, + 'search_config' => [ + 'form_type' => 'datetime', + ], + ], + [ + 'label' => MyLang('operate_title'), + 'view_type' => 'operate', + 'view_key' => 'themedata/module/operate', + 'align' => 'center', + 'fixed' => 'right', + 'width' => 120, + ], + ], + // 数据配置 + 'data' => [ + 'table_name' => 'ThemeData', + 'data_handle' => 'ThemeDataService::ThemeDataListHandle', + 'is_page' => 1, + 'is_handle_time_field' => 1, + 'is_json_data_handle' => 1, + 'json_config_data' => [ + 'data' => [] + ], + 'is_fixed_name_field' => 1, + 'fixed_name_data' => [ + 'type' => [ + 'data' => MyConst('common_theme_type_list'), + ], + 'theme' => [ + 'data' => $this->theme_list, + ], + 'view' => [ + 'data' => MyConst('common_theme_view_list'), + ], + ], + ], + ]; + } +} +?> \ No newline at end of file diff --git a/app/admin/form/User.php b/app/admin/form/User.php index abc42a4fc..56eea8961 100644 --- a/app/admin/form/User.php +++ b/app/admin/form/User.php @@ -62,6 +62,7 @@ class User 'view_type' => 'field', 'view_key' => 'id', 'width' => 105, + 'is_copy' => 1, 'is_sort' => 1, 'search_config' => [ 'form_type' => 'input', @@ -72,7 +73,7 @@ class User 'label' => $lang['number_code'], 'view_type' => 'qrcode', 'view_key' => 'number_code', - 'width' => 115, + 'width' => 150, 'is_sort' => 1, 'search_config' => [ 'form_type' => 'input', @@ -272,7 +273,7 @@ class User 'form_type' => 'input', 'form_name' => 'referrer', 'where_type_custom' => 'in', - 'where_value_custom' => 'WhereValueUserInfo', + 'where_value_custom' => 'SystemModuleUserWhereHandle', 'placeholder' => $lang['referrer_placeholder'], ], ], @@ -362,29 +363,6 @@ class User return $value; } - /** - * 用户信息条件处理 - * @author Devil - * @blog http://gong.gg/ - * @version 1.0.0 - * @date 2020-06-08 - * @desc description - * @param [string] $value [条件值] - * @param [array] $params [输入参数] - */ - public function WhereValueUserInfo($value, $params = []) - { - if(!empty($value)) - { - // 获取用户 id - $ids = Db::name('User')->where('number_code|username|nickname|mobile|email', 'like', '%'.$value.'%')->column('id'); - - // 避免空条件造成无效的错觉 - return empty($ids) ? [0] : $ids; - } - return $value; - } - /** * 系统类型列表 * @author Devil diff --git a/app/admin/form/Useraddress.php b/app/admin/form/Useraddress.php index d84045f3a..2f1dc1f37 100644 --- a/app/admin/form/Useraddress.php +++ b/app/admin/form/Useraddress.php @@ -10,7 +10,6 @@ // +---------------------------------------------------------------------- namespace app\admin\form; -use think\facade\Db; use app\service\RegionService; /** @@ -67,7 +66,7 @@ class UserAddress 'form_type' => 'input', 'form_name' => 'user_id', 'where_type_custom' => 'in', - 'where_value_custom' => 'WhereValueUserInfo', + 'where_value_custom' => 'SystemModuleUserWhereHandle', 'placeholder' => $lang['user_placeholder'], ], ], @@ -214,29 +213,6 @@ class UserAddress ]; } - /** - * 用户信息条件处理 - * @author Devil - * @blog http://gong.gg/ - * @version 1.0.0 - * @date 2020-06-30 - * @desc description - * @param [string] $value [条件值] - * @param [array] $params [输入参数] - */ - public function WhereValueUserInfo($value, $params = []) - { - if(!empty($value)) - { - // 获取用户 id - $ids = Db::name('User')->where('number_code|username|nickname|mobile|email', 'like', '%'.$value.'%')->column('id'); - - // 避免空条件造成无效的错觉 - return empty($ids) ? [0] : $ids; - } - return $value; - } - /** * 获取地区省份数据 * @author Devil diff --git a/app/admin/form/Warehousegoods.php b/app/admin/form/Warehousegoods.php index 16fd3f854..b6749e64f 100644 --- a/app/admin/form/Warehousegoods.php +++ b/app/admin/form/Warehousegoods.php @@ -46,7 +46,6 @@ class WarehouseGoods 'status_field' => 'is_enable', 'is_search' => 1, 'is_delete' => 1, - 'detail_title' => MyLang('form_table_base_detail_title'), 'is_middle' => 0, ], // 表单配置 diff --git a/app/admin/lang/cht.php b/app/admin/lang/cht.php index ace0fda79..d7375fc79 100644 --- a/app/admin/lang/cht.php +++ b/app/admin/lang/cht.php @@ -307,11 +307,14 @@ return [ 'detail_images_title' => '詳情圖片', // 动态表格 'form_table' => [ + 'id' => '檔案ID', + 'cover' => '封面', 'info' => '標題', - 'jump_url' => '跳轉url地址', + 'describe' => '描述', 'article_category_name' => '分類', 'is_enable' => '是否啟用', 'is_home_recommended' => '首頁推薦', + 'jump_url' => '跳轉url地址', 'images_count' => '圖片數量', 'access_count' => '訪問次數', 'add_time' => '創建時間', @@ -737,7 +740,6 @@ return [ // 页面公共 'page_common' => [ 'order_id_empty' => '訂單id有誤', - 'express_choice_tips' => '請選擇快遞管道', 'payment_choice_tips' => '請選擇支付方式', ], // 页面基础 @@ -745,8 +747,12 @@ return [ 'form_payment_title' => '支付操作', 'form_item_take' => '取貨碼', 'form_item_take_message' => '請填寫4位數取貨碼', + 'form_item_express_add_name' => '添加快遞', + 'form_item_express_choice_win_name' => '選擇快遞', + 'form_item_express_id' => '快遞管道', 'form_item_express_number' => '快遞單號', - 'form_item_express_number_message' => '請填寫快遞單號', + 'form_item_note' => '備註資訊', + 'form_item_note_message' => '備註資訊最多200個字', // 地址 'detail_user_address_title' => '收貨地址', 'detail_user_address_name' => '收件人', @@ -794,8 +800,8 @@ return [ 'payment_name' => '支付方式', 'user_note' => '用戶備註', 'extension' => '擴展資訊', - 'express_name' => '快遞公司', - 'express_number' => '快遞單號', + 'express' => '快遞資訊', + 'express_placeholder' => '請輸入快遞單號', 'aftersale' => '最新售後', 'is_comments' => '用戶是否評論', 'confirm_time' => '確認時間', @@ -815,6 +821,13 @@ return [ 'refund_price' => '退款金額', 'returned_quantity' => '退貨數量', ], + // 快递表格 + 'form_table_express' => [ + 'name' => '快遞公司', + 'number' => '快遞單號', + 'note' => '快遞備註', + 'time' => '發貨時間', + ], ], // 订单售后 @@ -912,7 +925,7 @@ return [ ], // 主题管理 - 'theme' => [ + 'themeadmin' => [ 'base_nav_list' => [ ['name' => '當前主題', 'type' => 'index'], ['name' => '主題安裝', 'type' => 'upload'], @@ -924,6 +937,26 @@ return [ 'form_theme_upload_tips' => '上傳一個zip壓縮格式的主題安裝包', ], + // 主题数据 + 'themedata' => [ + 'base_nav_title' => '主題數據', + 'upload_list_tips' => [ + '1.選擇已下載的主題數據zip包', + '2.導入將自動新增一條數據', + ], + // 动态表格 + 'form_table' => [ + 'unique' => '唯一標識', + 'name' => '名稱', + 'type' => '資料類型', + 'theme' => '主題', + 'view' => '頁面', + 'is_enable' => '是否啟用', + 'add_time' => '添加時間', + 'upd_time' => '更新時間', + ], + ], + // 用户中心导航 'appcenternav' => [ 'base_nav_title' => '手機用戶中心導航', @@ -1434,11 +1467,17 @@ return [ 'link_delete' => '友情連結删除', 'link_statusupdate' => '友情連結狀態更新', 'link_detail' => '友情連結詳情', - 'theme_index' => '主題管理', - 'theme_save' => '主題管理添加/編輯', - 'theme_upload' => '主題上傳安裝', - 'theme_delete' => '主題删除', - 'theme_download' => '主題下載', + 'themeadmin_index' => '主題管理', + 'themeadmin_save' => '主題管理添加/編輯', + 'themeadmin_upload' => '主題上傳安裝', + 'themeadmin_delete' => '主題删除', + 'themeadmin_download' => '主題下載', + 'themedata_index' => '主題數據', + 'themedata_saveinfo' => '主題數據添加/編輯頁面', + 'themedata_save' => '主題數據添加/編輯', + 'themedata_upload' => '主題數據上傳', + 'themedata_delete' => '主題數據删除', + 'themedata_download' => '主題數據下載', 'slide_index' => '首頁輪播', 'slide_saveinfo' => '輪播添加/編輯頁面', 'slide_save' => '輪播添加/編輯', diff --git a/app/admin/lang/en.php b/app/admin/lang/en.php index 3d1750776..ff399842c 100644 --- a/app/admin/lang/en.php +++ b/app/admin/lang/en.php @@ -302,13 +302,19 @@ return [ // 文章 'article' => [ + 'base_nav_title' => 'Article', + 'detail_content_title' => 'DetailContent', + 'detail_images_title' => 'DetailImages', // 动态表格 'form_table' => [ + 'id' => 'ArticleID', + 'cover' => 'Cover', 'info' => 'Title', - 'jump_url' => 'Jump Url', + 'describe' => 'Describe', 'article_category_name' => 'Category', 'is_enable' => 'Enable or not', 'is_home_recommended' => 'HomePage recommend', + 'jump_url' => 'Jump Url', 'images_count' => 'Images Count', 'access_count' => 'Access Count', 'add_time' => 'Creation Time', @@ -752,7 +758,6 @@ return [ // 页面公共 'page_common' => [ 'order_id_empty' => 'Wrong order ID', - 'express_choice_tips' => 'Please select express delivery method', 'payment_choice_tips' => 'Please select payment method', ], // 页面基础 @@ -760,8 +765,12 @@ return [ 'form_payment_title' => 'Payment Operation', 'form_item_take' => 'Take Code', 'form_item_take_message' => 'Please fill in the 4-digit pickup code', + 'form_item_express_add_name' => 'Add express delivery', + 'form_item_express_choice_win_name' => 'Choose express delivery', + 'form_item_express_id' => 'Express delivery method', 'form_item_express_number' => 'Express Number', - 'form_item_express_number_message' => 'Please fill in the express bill number', + 'form_item_note' => 'memo', + 'form_item_note_message' => 'Note information can be up to 200 characters long', // 地址 'detail_user_address_title' => 'Shipping Address', 'detail_user_address_name' => 'Receiving Name', @@ -809,8 +818,8 @@ return [ 'payment_name' => 'Payment Type', 'user_note' => 'User Note', 'extension' => 'Extendeds Info', - 'express_name' => 'Express Name', - 'express_number' => 'Express Number', + 'express' => 'Express Info', + 'express_placeholder' => 'Please enter Express Number', 'aftersale' => 'New Aftersale', 'is_comments' => 'Whether the user comment', 'confirm_time' => 'Confirm Time', @@ -830,6 +839,13 @@ return [ 'refund_price' => 'RefundAmount', 'returned_quantity' => 'RefundNumber', ], + // 快递表格 + 'form_table_express' => [ + 'name' => 'express company', + 'number' => 'express number', + 'note' => 'express note', + 'time' => 'delivery time', + ], ], // 订单售后 @@ -927,7 +943,7 @@ return [ ], // 主题管理 - 'theme' => [ + 'themeadmin' => [ 'base_nav_list' => [ ['name' => 'Current Theme', 'type' => 'index'], ['name' => 'Theme Install', 'type' => 'upload'], @@ -939,6 +955,26 @@ return [ 'form_theme_upload_tips' => 'Upload a zip compressed theme installation package', ], + // 主题数据 + 'themedata' => [ + 'base_nav_title' => 'Theme data', + 'upload_list_tips' => [ + '1. Select the downloaded theme data zip package', + '2. Importing will automatically add a new piece of data', + ], + // 动态表格 + 'form_table' => [ + 'unique' => 'Unique', + 'name' => 'Name', + 'type' => 'Data type', + 'theme' => 'Theme', + 'view' => 'Page', + 'is_enable' => 'Enable or not', + 'add_time' => 'Add time', + 'upd_time' => 'Update time', + ], + ], + // 用户中心导航 'appcenternav' => [ 'base_nav_title' => 'Mobile User Center Navigation', @@ -1449,11 +1485,17 @@ return [ 'link_delete' => 'Link delete', 'link_statusupdate' => 'Link status update', 'link_detail' => 'Link details', - 'theme_index' => 'Theme admin', - 'theme_save' => 'Topic admin add/edit', - 'theme_upload' => 'Theme upload and installation', - 'theme_delete' => 'Subject delete', - 'theme_download' => 'Theme download', + 'themeadmin_index' => 'Theme admin', + 'themeadmin_save' => 'Theme admin add/edit', + 'themeadmin_upload' => 'Theme upload and installation', + 'themeadmin_delete' => 'Theme delete', + 'themeadmin_download' => 'Theme download', + 'themedata_index' => 'Theme data', + 'themedata_saveinfo' => 'Theme data add/edit page', + 'themedata_save' => 'Theme data add/edit', + 'themedata_upload' => 'Theme data upload', + 'themedata_delete' => 'Theme data delete', + 'themedata_download' => 'Theme data download', 'slide_index' => 'HomePage Slide', 'slide_saveinfo' => 'Carousel add/edit page', 'slide_save' => 'Carousel add/edit', diff --git a/app/admin/lang/spa.php b/app/admin/lang/spa.php index ee5c3eca3..785619ae4 100644 --- a/app/admin/lang/spa.php +++ b/app/admin/lang/spa.php @@ -307,11 +307,14 @@ return [ 'detail_images_title' => 'Detalles de la imagen', // 动态表格 'form_table' => [ + 'id' => 'ID del artículo', + 'cover' => 'Portada', 'info' => 'Título', - 'jump_url' => 'Dirección de la dirección de la dirección de salto', + 'describe' => 'Descripción', 'article_category_name' => 'Clasificación', 'is_enable' => 'Si habilitar', 'is_home_recommended' => 'Recomendación de la página de inicio', + 'jump_url' => 'Dirección de la dirección de la dirección de salto', 'images_count' => 'Número de imágenes', 'access_count' => 'Número de visitas', 'add_time' => 'Tiempo de creación', @@ -737,7 +740,6 @@ return [ // 页面公共 'page_common' => [ 'order_id_empty' => 'El ID del pedido es incorrecto', - 'express_choice_tips' => 'Por favor, elija el método de mensajería.', 'payment_choice_tips' => 'Por favor, elija el método de pago.', ], // 页面基础 @@ -745,8 +747,12 @@ return [ 'form_payment_title' => 'Operaciones de pago', 'form_item_take' => 'Código de recogida', 'form_item_take_message' => 'Por favor, rellene el Código de recogida de 4 dígitos.', + 'form_item_express_add_name' => 'Añadir mensajería', + 'form_item_express_choice_win_name' => 'Selección de mensajería', + 'form_item_express_id' => 'Método de mensajería', 'form_item_express_number' => 'Número de la lista de mensajería', - 'form_item_express_number_message' => 'Por favor, rellene el número de formulario de mensajería.', + 'form_item_note' => 'Nota información', + 'form_item_note_message' => 'La información de la nota tiene un máximo de 200 caracteres', // 地址 'detail_user_address_title' => 'Dirección de recepción', 'detail_user_address_name' => 'Destinatarios', @@ -794,8 +800,8 @@ return [ 'payment_name' => 'Método de pago', 'user_note' => 'Nota del usuario', 'extension' => 'Información extendida', - 'express_name' => 'Empresa de mensajería', - 'express_number' => 'Número de la lista de mensajería', + 'express' => 'Información de mensajería', + 'express_placeholder' => 'Introduzca su Número de la lista de mensajería', 'aftersale' => 'Último post - venta', 'is_comments' => 'Si el usuario comenta', 'confirm_time' => 'Tiempo de confirmación', @@ -815,6 +821,13 @@ return [ 'refund_price' => 'Importe del reembolso', 'returned_quantity' => 'Número de devoluciones', ], + // 快递表格 + 'form_table_express' => [ + 'name' => 'Empresa de mensajería', + 'number' => 'Número de la lista de mensajería', + 'note' => 'Nota de mensajería', + 'time' => 'Tiempo de envío', + ], ], // 订单售后 @@ -912,7 +925,7 @@ return [ ], // 主题管理 - 'theme' => [ + 'themeadmin' => [ 'base_nav_list' => [ ['name' => 'Temas actuales', 'type' => 'index'], ['name' => 'Instalación temática', 'type' => 'upload'], @@ -924,6 +937,26 @@ return [ 'form_theme_upload_tips' => 'Cargar un paquete de instalación de temas en formato zip comprimido', ], + // 主题数据 + 'themedata' => [ + 'base_nav_title' => 'Datos temáticos', + 'upload_list_tips' => [ + '1. seleccione el paquete zip de datos temáticos descargado', + '2. la importación agregará automáticamente un nuevo dato', + ], + // 动态表格 + 'form_table' => [ + 'unique' => 'Identificación única', + 'name' => 'Nombre', + 'type' => 'Tipo de datos', + 'theme' => 'Tema', + 'view' => 'Página', + 'is_enable' => 'Si habilitar', + 'add_time' => 'añadir tiempo', + 'upd_time' => 'tiempo de actualización', + ], + ], + // 用户中心导航 'appcenternav' => [ 'base_nav_title' => 'Navegación del Centro de usuarios móviles', @@ -1434,11 +1467,17 @@ return [ 'link_delete' => 'Eliminar enlaces de amistad', 'link_statusupdate' => 'Actualización del Estado del enlace de amistad', 'link_detail' => 'Detalles del enlace amistoso', - 'theme_index' => 'Gestión temática', - 'theme_save' => 'Gestión temática añadir / editar', - 'theme_upload' => 'Instalación de carga de temas', - 'theme_delete' => 'Eliminación del tema', - 'theme_download' => 'Descarga del tema', + 'themeadmin_index' => 'Gestión temática', + 'themeadmin_save' => 'Gestión temática añadir / editar', + 'themeadmin_upload' => 'Instalación de carga de temas', + 'themeadmin_delete' => 'Eliminación del tema', + 'themeadmin_download' => 'Descarga del tema', + 'themedata_index' => 'Datos temáticos', + 'themedata_saveinfo' => 'Página de adición / edición de datos temáticos', + 'themedata_save' => 'Añadir / editar datos temáticos', + 'themedata_upload' => 'Carga de datos temáticos', + 'themedata_delete' => 'Eliminación de datos temáticos', + 'themedata_download' => 'Descarga de datos temáticos', 'slide_index' => 'Rotación de la página de inicio', 'slide_saveinfo' => 'Página de adición / edición de la rotación', 'slide_save' => 'Añadir / editar a la rotación', diff --git a/app/admin/lang/zh.php b/app/admin/lang/zh.php index 7bbee2550..bc300f529 100755 --- a/app/admin/lang/zh.php +++ b/app/admin/lang/zh.php @@ -307,11 +307,14 @@ return [ 'detail_images_title' => '详情图片', // 动态表格 'form_table' => [ + 'id' => '文章ID', + 'cover' => '封面', 'info' => '标题', - 'jump_url' => '跳转url地址', + 'describe' => '描述', 'article_category_name' => '分类', 'is_enable' => '是否启用', 'is_home_recommended' => '首页推荐', + 'jump_url' => '跳转url地址', 'images_count' => '图片数量', 'access_count' => '访问次数', 'add_time' => '创建时间', @@ -738,7 +741,6 @@ return [ // 页面公共 'page_common' => [ 'order_id_empty' => '订单id有误', - 'express_choice_tips' => '请选择快递方式', 'payment_choice_tips' => '请选择支付方式', ], // 页面基础 @@ -746,8 +748,12 @@ return [ 'form_payment_title' => '支付操作', 'form_item_take' => '取货码', 'form_item_take_message' => '请填写4位数取货码', + 'form_item_express_add_name' => '添加快递', + 'form_item_express_choice_win_name' => '选择快递', + 'form_item_express_id' => '快递方式', 'form_item_express_number' => '快递单号', - 'form_item_express_number_message' => '请填写快递单号', + 'form_item_note' => '备注信息', + 'form_item_note_message' => '备注信息最多200个字符', // 地址 'detail_user_address_title' => '收货地址', 'detail_user_address_name' => '收件人', @@ -795,8 +801,8 @@ return [ 'payment_name' => '支付方式', 'user_note' => '用户备注', 'extension' => '扩展信息', - 'express_name' => '快递公司', - 'express_number' => '快递单号', + 'express' => '快递信息', + 'express_placeholder' => '请输入快递单号', 'aftersale' => '最新售后', 'is_comments' => '用户是否评论', 'confirm_time' => '确认时间', @@ -816,6 +822,13 @@ return [ 'refund_price' => '退款金额', 'returned_quantity' => '退货数量', ], + // 快递表格 + 'form_table_express' => [ + 'name' => '快递公司', + 'number' => '快递单号', + 'note' => '快递备注', + 'time' => '发货时间', + ], ], // 订单售后 @@ -913,7 +926,7 @@ return [ ], // 主题管理 - 'theme' => [ + 'themeadmin' => [ 'base_nav_list' => [ ['name' => '当前主题', 'type' => 'index'], ['name' => '主题安装', 'type' => 'upload'], @@ -925,6 +938,26 @@ return [ 'form_theme_upload_tips' => '上传一个zip压缩格式的主题安装包', ], + // 主题数据 + 'themedata' => [ + 'base_nav_title' => '主题数据', + 'upload_list_tips' => [ + '1. 选择已下载的主题数据zip包', + '2. 导入将自动新增一条数据', + ], + // 动态表格 + 'form_table' => [ + 'unique' => '唯一标识', + 'name' => '名称', + 'type' => '数据类型', + 'theme' => '主题', + 'view' => '页面', + 'is_enable' => '是否启用', + 'add_time' => '添加时间', + 'upd_time' => '更新时间', + ], + ], + // 用户中心导航 'appcenternav' => [ 'base_nav_title' => '手机用户中心导航', @@ -1435,11 +1468,20 @@ return [ 'link_delete' => '友情链接删除', 'link_statusupdate' => '友情链接状态更新', 'link_detail' => '友情链接详情', - 'theme_index' => '主题管理', - 'theme_save' => '主题管理添加/编辑', - 'theme_upload' => '主题上传安装', - 'theme_delete' => '主题删除', - 'theme_download' => '主题下载', + 'themeadmin_index' => '主题管理', + 'themeadmin_save' => '主题管理添加/编辑', + 'themeadmin_upload' => '主题上传安装', + 'themeadmin_delete' => '主题删除', + 'themeadmin_download' => '主题下载', + 'themedata_index' => '主题数据', + 'themedata_saveinfo' => '主题数据添加/编辑页面', + 'themedata_save' => '主题数据添加/编辑', + 'themedata_upload' => '主题数据上传', + 'themedata_delete' => '主题数据删除', + 'themedata_download' => '主题数据下载', + 'themedata_detail' => '主题数据详情', + 'themedata_goodssearch' => '主题数据商品搜索', + 'themedata_articlesearch' => '主题数据文章搜索', 'slide_index' => '首页轮播', 'slide_saveinfo' => '轮播添加/编辑页面', 'slide_save' => '轮播添加/编辑', diff --git a/app/admin/view/default/admin/detail.html b/app/admin/view/default/admin/detail.html index 06eeee457..156754ed8 100644 --- a/app/admin/view/default/admin/detail.html +++ b/app/admin/view/default/admin/detail.html @@ -1,2 +1,2 @@ -{{extend name="public/module/detail" /}} \ No newline at end of file +{{extend name="../../../module/view/detail" /}} \ No newline at end of file diff --git a/app/admin/view/default/admin/index.html b/app/admin/view/default/admin/index.html index 103e73ba9..b3511702f 100755 --- a/app/admin/view/default/admin/index.html +++ b/app/admin/view/default/admin/index.html @@ -1,12 +1,16 @@ -{{extend name="public/module/form" /}} +{{extend name="../../../module/view/form" /}} {{block name="form_operate_top"}} - - - {{:MyLang('add_title')}} - + + {{if AdminIsPower('admin', 'saveinfo')}} + + + {{:MyLang('add_title')}} + + {{/if}} + {__block__} {{/block}} diff --git a/app/admin/view/default/admin/login_info.html b/app/admin/view/default/admin/logininfo.html similarity index 95% rename from app/admin/view/default/admin/login_info.html rename to app/admin/view/default/admin/logininfo.html index a7ae143eb..9d30ad42a 100755 --- a/app/admin/view/default/admin/login_info.html +++ b/app/admin/view/default/admin/logininfo.html @@ -1,4 +1,4 @@ -{{include file="public/header" /}} +{{:ModuleInclude('public/header')}}
@@ -16,7 +16,7 @@ {{if count($admin_login_type) eq 1}}

{{:MyLang('admin.login_welcome_title')}}

-

{{:MyLang('common.admin_browser_title')}}

+

{{:MyLang('common.admin_browser_title')}}

{{else /}} @@ -46,7 +46,7 @@
-
+
@@ -56,11 +56,11 @@ {{if MyC('admin_login_img_verify_state') eq 1}}
-
+
- + {{:MyLang('form_images_verify_button_text')}} @@ -69,7 +69,7 @@ {{/if}}
- +
@@ -84,7 +84,7 @@
-
+
@@ -93,7 +93,7 @@
- +
@@ -108,7 +108,7 @@
-
+
@@ -117,7 +117,7 @@
- +
@@ -148,15 +148,15 @@ ×
-
+
- +
@@ -190,4 +190,4 @@ {{/if}} -{{include file="public/footer" /}} \ No newline at end of file +{{:ModuleInclude('public/footer')}} \ No newline at end of file diff --git a/app/admin/view/default/admin/save_info.html b/app/admin/view/default/admin/saveinfo.html similarity index 98% rename from app/admin/view/default/admin/save_info.html rename to app/admin/view/default/admin/saveinfo.html index 128be8218..ab9ab9351 100755 --- a/app/admin/view/default/admin/save_info.html +++ b/app/admin/view/default/admin/saveinfo.html @@ -1,4 +1,4 @@ -{{include file="public/header" /}} +{{:ModuleInclude('public/header')}}
@@ -38,7 +38,7 @@
{{/if}} - {{include file="lib/gender" /}} + {{:ModuleInclude('lib/gender')}}
@@ -84,4 +84,4 @@ -{{include file="public/footer" /}} \ No newline at end of file +{{:ModuleInclude('public/footer')}} \ No newline at end of file diff --git a/app/admin/view/default/agreement/logout.html b/app/admin/view/default/agreement/logout.html index 41b6eece3..580ffafc0 100644 --- a/app/admin/view/default/agreement/logout.html +++ b/app/admin/view/default/agreement/logout.html @@ -1,4 +1,4 @@ -{{include file="public/header" /}} +{{:ModuleInclude('public/header')}}
@@ -14,7 +14,7 @@