唐金木 преди 5 години
родител
ревизия
197fd49b4d
променени са 95 файла, в които са добавени 2684 реда и са изтрити 99321 реда
  1. BIN
      BTS需求.docx
  2. 1 1
      php/.env
  3. 346 334
      php/.idea/workspace.xml
  4. 270 53
      php/adddata.sql
  5. 0 18
      php/addons/text/config.php
  6. 0 63
      php/addons/text/controller/Pugin.php
  7. 0 15
      php/addons/text/controller/Text.php
  8. 0 10
      php/addons/text/view/pugin/info.html
  9. 0 25016
      php/any_college.sql
  10. 0 25064
      php/any_college2020-2-27.sql
  11. 0 255
      php/app/admin/controller/Adv.php
  12. 55 0
      php/app/admin/controller/Agent.php
  13. 31 0
      php/app/admin/controller/Certificate.php
  14. 3 13
      php/app/admin/controller/Contents.php
  15. 0 330
      php/app/admin/controller/Curriculum.php
  16. 56 0
      php/app/admin/controller/Finance.php
  17. 0 393
      php/app/admin/controller/Friendship.php
  18. 1 1
      php/app/admin/controller/Index.php
  19. 15 0
      php/app/admin/controller/Information.php
  20. 39 0
      php/app/admin/controller/Order.php
  21. 0 167
      php/app/admin/controller/Site.php
  22. 0 166
      php/app/admin/controller/Training.php
  23. 21 0
      php/app/admin/controller/Usermanage.php
  24. 0 21
      php/app/admin/model/ListPage.php
  25. 0 39
      php/app/admin/model/MajorLevel.php
  26. 0 31
      php/app/admin/validate/UserLevel.php
  27. 0 56
      php/app/admin/validate/WxAccount.php
  28. 0 34
      php/app/admin/validate/WxTag.php
  29. 0 34
      php/app/ap/config/route.php
  30. 0 52
      php/app/ap/controller/Login.php
  31. 0 48
      php/app/ap/controller/v1/Index.php
  32. 0 91
      php/app/ap/controller/v1/User.php
  33. 0 22
      php/app/ap/middleware.php
  34. 0 26
      php/app/ap/route/api.php
  35. 0 84
      php/app/common/controller/Aliyunoss.php
  36. 0 29
      php/app/common/controller/Frontend.php
  37. 0 18
      php/app/common/controller/Token.php
  38. 0 47
      php/app/common/controller/Wxs.php
  39. 1 67
      php/app/worker/controller/User.php
  40. 2 2
      php/app/worker/controller/Worker.php
  41. 0 25651
      php/lemocms2020-3-24.sql
  42. 0 13551
      php/lm_about.sql
  43. 475 0
      php/lm_admin.sql
  44. BIN
      php/public/favicons.ico
  45. 245 0
      php/runtime/admin/log/202006/02.log
  46. 139 0
      php/runtime/admin/temp/01e433db5e5517b7a2c4587da42797aa.php
  47. 185 0
      php/runtime/admin/temp/14d50cc59972e0ab82b71f4b5f381353.php
  48. 147 0
      php/runtime/admin/temp/193b3c530962981d3a4dc850749aaa8b.php
  49. 182 0
      php/runtime/admin/temp/42d182ba955a14984e138f63987ed1b0.php
  50. 145 0
      php/runtime/admin/temp/a5b87fd77913dd9b0ad9dd783203b8ce.php
  51. 157 0
      php/runtime/admin/temp/a8ba287c844b92a9904d92bc00486605.php
  52. 152 0
      php/runtime/admin/temp/b04ecd3398bf75dee5dd9dee974fadba.php
  53. 4 0
      php/runtime/cache/0b/dc60c1eb9bd2792cd1fa7f85d9c865.php
  54. 4 0
      php/runtime/cache/b5/0db2208db974a3bc060e4d7255aa98.php
  55. 4 0
      php/runtime/cache/ca/361393b5a02e8a62e8dd6d5373a473.php
  56. BIN
      php/runtime/session/sess_3f972420e5bb26ed1e69c519f52d4119
  57. 0 137
      php/view/admin/adv/add.html
  58. 0 130
      php/view/admin/adv/index.html
  59. 0 115
      php/view/admin/adv/pos.html
  60. 0 91
      php/view/admin/adv/pos_add.html
  61. 1 37
      php/view/admin/contents/feedback.html
  62. 0 124
      php/view/admin/friendship/add_banner.html
  63. 0 110
      php/view/admin/friendship/add_dh.html
  64. 0 100
      php/view/admin/friendship/add_links.html
  65. 0 183
      php/view/admin/friendship/banner.html
  66. 0 165
      php/view/admin/friendship/dh_list.html
  67. 0 95
      php/view/admin/friendship/index.html
  68. 0 177
      php/view/admin/friendship/links.html
  69. 0 343
      php/view/admin/friendship/statistics.html
  70. 0 172
      php/view/admin/site/index.html
  71. 0 86
      php/view/admin/site/sitetree.html
  72. 0 153
      php/view/admin/training/course.html
  73. 0 152
      php/view/admin/training/index.html
  74. 0 210
      php/view/admin/training/text.html
  75. 0 188
      php/view/admin/training/upgrade.html
  76. 0 208
      php/view/admin/wechat/add.html
  77. 0 209
      php/view/admin/wechat/fans.html
  78. 0 122
      php/view/admin/wechat/index.html
  79. 0 102
      php/view/admin/wechat/level_add.html
  80. 0 122
      php/view/admin/wechat/level_index.html
  81. 0 320
      php/view/admin/wechat/material.html
  82. 0 551
      php/view/admin/wechat/material_add.html
  83. 0 252
      php/view/admin/wechat/menu.html
  84. 0 1523
      php/view/admin/wechat/menu_api.html
  85. 0 95
      php/view/admin/wechat/message.html
  86. 0 342
      php/view/admin/wechat/message_reply.html
  87. 0 116
      php/view/admin/wechat/qrcode.html
  88. 0 75
      php/view/admin/wechat/qrcode_add.html
  89. 0 107
      php/view/admin/wechat/reply.html
  90. 0 351
      php/view/admin/wechat/reply_add.html
  91. 0 166
      php/view/admin/wechat/tag.html
  92. 0 65
      php/view/admin/wechat/tag_add.html
  93. 0 25
      php/view/web/index/index.html
  94. 3 0
      服务器.txt
  95. BIN
      虚拟币抢单系统功能清单.xlsx

BIN
BTS需求.docx


Файловите разлики са ограничени, защото са твърде много
+ 1 - 1
php/.env


+ 346 - 334
php/.idea/workspace.xml

@@ -1,83 +1,80 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <project version="4">
-  <component name="BookmarkManager">
-    <bookmark url="file://$PROJECT_DIR$/app/admin/controller/Contents.php" line="25" />
-  </component>
   <component name="ChangeListManager">
     <list default="true" id="52cc2ceb-e100-4a5f-a9e2-bb6b61bdbebd" name="Default Changelist" comment="">
       <change beforePath="$PROJECT_DIR$/.env" beforeDir="false" afterPath="$PROJECT_DIR$/.env" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/adddata.sql" beforeDir="false" afterPath="$PROJECT_DIR$/adddata.sql" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/addons/text/config.php" beforeDir="false" />
+      <change beforePath="$PROJECT_DIR$/addons/text/controller/Pugin.php" beforeDir="false" />
+      <change beforePath="$PROJECT_DIR$/addons/text/controller/Text.php" beforeDir="false" />
+      <change beforePath="$PROJECT_DIR$/addons/text/view/pugin/info.html" beforeDir="false" />
+      <change beforePath="$PROJECT_DIR$/any_college.sql" beforeDir="false" />
+      <change beforePath="$PROJECT_DIR$/any_college2020-2-27.sql" beforeDir="false" />
+      <change beforePath="$PROJECT_DIR$/app/admin/controller/Adv.php" beforeDir="false" />
+      <change beforePath="$PROJECT_DIR$/app/admin/controller/Contents.php" beforeDir="false" />
+      <change beforePath="$PROJECT_DIR$/app/admin/controller/Curriculum.php" beforeDir="false" />
+      <change beforePath="$PROJECT_DIR$/app/admin/controller/Friendship.php" beforeDir="false" />
       <change beforePath="$PROJECT_DIR$/app/admin/controller/Index.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/admin/controller/Index.php" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/app/api/config/route.php" beforeDir="false" />
-      <change beforePath="$PROJECT_DIR$/app/api/controller/v1/Token.php" beforeDir="false" />
-      <change beforePath="$PROJECT_DIR$/app/api/controller/v1/User.php" beforeDir="false" />
-      <change beforePath="$PROJECT_DIR$/app/api/middleware.php" beforeDir="false" />
-      <change beforePath="$PROJECT_DIR$/app/api/route/api.php" beforeDir="false" />
-      <change beforePath="$PROJECT_DIR$/app/common.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/common.php" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/app/common/model/About.php" beforeDir="false" />
-      <change beforePath="$PROJECT_DIR$/app/common/model/Adv.php" beforeDir="false" />
-      <change beforePath="$PROJECT_DIR$/app/common/model/AdvPosition.php" beforeDir="false" />
-      <change beforePath="$PROJECT_DIR$/app/common/model/Article.php" beforeDir="false" />
-      <change beforePath="$PROJECT_DIR$/app/common/model/ArticleCate.php" beforeDir="false" />
-      <change beforePath="$PROJECT_DIR$/app/common/model/Common.php" beforeDir="false" />
-      <change beforePath="$PROJECT_DIR$/app/common/model/Examination.php" beforeDir="false" />
-      <change beforePath="$PROJECT_DIR$/app/common/model/ExaminationApply.php" beforeDir="false" />
-      <change beforePath="$PROJECT_DIR$/app/common/model/Feedback.php" beforeDir="false" />
-      <change beforePath="$PROJECT_DIR$/app/common/model/Laboratory.php" beforeDir="false" />
-      <change beforePath="$PROJECT_DIR$/app/common/model/MajorLevel.php" beforeDir="false" />
-      <change beforePath="$PROJECT_DIR$/app/common/model/StudentAchievement.php" beforeDir="false" />
-      <change beforePath="$PROJECT_DIR$/app/common/model/StudentExam.php" beforeDir="false" />
-      <change beforePath="$PROJECT_DIR$/app/common/model/Subject.php" beforeDir="false" />
-      <change beforePath="$PROJECT_DIR$/app/common/model/UserLevel.php" beforeDir="false" />
-      <change beforePath="$PROJECT_DIR$/app/common/model/WxAccount.php" beforeDir="false" />
-      <change beforePath="$PROJECT_DIR$/app/common/model/WxFans.php" beforeDir="false" />
-      <change beforePath="$PROJECT_DIR$/app/common/model/WxMaterial.php" beforeDir="false" />
-      <change beforePath="$PROJECT_DIR$/app/common/model/WxMaterialInfo.php" beforeDir="false" />
-      <change beforePath="$PROJECT_DIR$/app/common/model/WxMenu.php" beforeDir="false" />
-      <change beforePath="$PROJECT_DIR$/app/common/model/WxMsgHistory.php" beforeDir="false" />
-      <change beforePath="$PROJECT_DIR$/app/common/model/WxReply.php" beforeDir="false" />
-      <change beforePath="$PROJECT_DIR$/app/common/model/WxTag.php" beforeDir="false" />
-      <change beforePath="$PROJECT_DIR$/app/web/controller/Index.php" beforeDir="false" />
-      <change beforePath="$PROJECT_DIR$/config/database.php" beforeDir="false" afterPath="$PROJECT_DIR$/config/database.php" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/lemocms2020-3-24.sql" beforeDir="false" afterPath="$PROJECT_DIR$/lemocms2020-3-24.sql" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/public/dist/favicon.ico" beforeDir="false" />
-      <change beforePath="$PROJECT_DIR$/public/dist/index.html" beforeDir="false" />
-      <change beforePath="$PROJECT_DIR$/public/dist/static/css/app.3923214e.css" beforeDir="false" />
-      <change beforePath="$PROJECT_DIR$/public/dist/static/css/chunk-vendors.56b28f4e.css" beforeDir="false" />
-      <change beforePath="$PROJECT_DIR$/public/dist/static/css/home.aa2e59b3.css" beforeDir="false" />
-      <change beforePath="$PROJECT_DIR$/public/dist/static/fonts/element-icons.535877f5.woff" beforeDir="false" />
-      <change beforePath="$PROJECT_DIR$/public/dist/static/fonts/element-icons.732389de.ttf" beforeDir="false" />
-      <change beforePath="$PROJECT_DIR$/public/dist/static/img/a889af7e-226d-42c9-ae87-c0d4a1eabc0d.fb3a43a6.jpg" beforeDir="false" />
-      <change beforePath="$PROJECT_DIR$/public/dist/static/img/banner2@2x.f9b7729b.png" beforeDir="false" />
-      <change beforePath="$PROJECT_DIR$/public/dist/static/img/banner@2x.ac15f717.png" beforeDir="false" />
-      <change beforePath="$PROJECT_DIR$/public/dist/static/img/bg.1444b65e.png" beforeDir="false" />
-      <change beforePath="$PROJECT_DIR$/public/dist/static/img/icon_diy@2x.477f05dd.png" beforeDir="false" />
-      <change beforePath="$PROJECT_DIR$/public/dist/static/img/icon_hy@2x.b5bea374.png" beforeDir="false" />
-      <change beforePath="$PROJECT_DIR$/public/dist/static/img/icon_kc@2x(1).2d1cb158.png" beforeDir="false" />
-      <change beforePath="$PROJECT_DIR$/public/dist/static/img/icon_kc@2x.2d1cb158.png" beforeDir="false" />
-      <change beforePath="$PROJECT_DIR$/public/dist/static/img/icon_kj@2x.f19dbc1d.png" beforeDir="false" />
-      <change beforePath="$PROJECT_DIR$/public/dist/static/img/icon_logo.f3733667.png" beforeDir="false" />
-      <change beforePath="$PROJECT_DIR$/public/dist/static/img/icon_ms@2x.33f75f26.png" beforeDir="false" />
-      <change beforePath="$PROJECT_DIR$/public/dist/static/img/icon_qd@2x.253f25b9.png" beforeDir="false" />
-      <change beforePath="$PROJECT_DIR$/public/dist/static/img/icon_tg@2x.f47e24c0.png" beforeDir="false" />
-      <change beforePath="$PROJECT_DIR$/public/dist/static/img/icon_yj@2x.32ee214b.png" beforeDir="false" />
-      <change beforePath="$PROJECT_DIR$/public/dist/static/img/img_1@2x.089aa8b6.png" beforeDir="false" />
-      <change beforePath="$PROJECT_DIR$/public/dist/static/img/img_2@2x.e3ca62f1.png" beforeDir="false" />
-      <change beforePath="$PROJECT_DIR$/public/dist/static/img/img_3@2x.fefa2cfa.png" beforeDir="false" />
-      <change beforePath="$PROJECT_DIR$/public/dist/static/img/img_4@2x.597aa81a.png" beforeDir="false" />
-      <change beforePath="$PROJECT_DIR$/public/dist/static/img/img_anli@2x.15392499.png" beforeDir="false" />
-      <change beforePath="$PROJECT_DIR$/public/dist/static/img/img_dhy1@2x.99e9cef2.png" beforeDir="false" />
-      <change beforePath="$PROJECT_DIR$/public/dist/static/img/img_dhy2@2x.6aa4fcd1.png" beforeDir="false" />
-      <change beforePath="$PROJECT_DIR$/public/dist/static/img/img_dhy3@2x.9126b3c2.png" beforeDir="false" />
-      <change beforePath="$PROJECT_DIR$/public/dist/static/img/logo.125a8805.png" beforeDir="false" />
-      <change beforePath="$PROJECT_DIR$/public/dist/static/js/app.38019ab9.js" beforeDir="false" />
-      <change beforePath="$PROJECT_DIR$/public/dist/static/js/chunk-vendors.947778ee.js" beforeDir="false" />
-      <change beforePath="$PROJECT_DIR$/public/dist/static/js/home.1cae7556.js" beforeDir="false" />
-      <change beforePath="$PROJECT_DIR$/runtime/admin/log/202005/29.log" beforeDir="false" />
-      <change beforePath="$PROJECT_DIR$/runtime/admin/temp/c5d116d0b0fba4a743db108afcfc6dd9.php" beforeDir="false" />
-      <change beforePath="$PROJECT_DIR$/runtime/cache/b5/0db2208db974a3bc060e4d7255aa98.php" beforeDir="false" />
-      <change beforePath="$PROJECT_DIR$/runtime/session/sess_e073e8c24261b8fb84910f1bf455d29f" beforeDir="false" />
-      <change beforePath="$PROJECT_DIR$/view/admin/index/main.html" beforeDir="false" afterPath="$PROJECT_DIR$/view/admin/index/main.html" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/app/admin/controller/Site.php" beforeDir="false" />
+      <change beforePath="$PROJECT_DIR$/app/admin/controller/Training.php" beforeDir="false" />
+      <change beforePath="$PROJECT_DIR$/app/admin/model/ListPage.php" beforeDir="false" />
+      <change beforePath="$PROJECT_DIR$/app/admin/model/MajorLevel.php" beforeDir="false" />
+      <change beforePath="$PROJECT_DIR$/app/admin/validate/UserLevel.php" beforeDir="false" />
+      <change beforePath="$PROJECT_DIR$/app/admin/validate/WxAccount.php" beforeDir="false" />
+      <change beforePath="$PROJECT_DIR$/app/admin/validate/WxTag.php" beforeDir="false" />
+      <change beforePath="$PROJECT_DIR$/app/ap/config/route.php" beforeDir="false" />
+      <change beforePath="$PROJECT_DIR$/app/ap/controller/Login.php" beforeDir="false" />
+      <change beforePath="$PROJECT_DIR$/app/ap/controller/v1/Index.php" beforeDir="false" />
+      <change beforePath="$PROJECT_DIR$/app/ap/controller/v1/User.php" beforeDir="false" />
+      <change beforePath="$PROJECT_DIR$/app/ap/middleware.php" beforeDir="false" />
+      <change beforePath="$PROJECT_DIR$/app/ap/route/api.php" beforeDir="false" />
+      <change beforePath="$PROJECT_DIR$/app/common/controller/Aliyunoss.php" beforeDir="false" />
+      <change beforePath="$PROJECT_DIR$/app/common/controller/Frontend.php" beforeDir="false" />
+      <change beforePath="$PROJECT_DIR$/app/common/controller/Token.php" beforeDir="false" />
+      <change beforePath="$PROJECT_DIR$/app/common/controller/Wxs.php" beforeDir="false" />
+      <change beforePath="$PROJECT_DIR$/app/worker/controller/User.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/worker/controller/User.php" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/app/worker/controller/Worker.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/worker/controller/Worker.php" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/lemocms2020-3-24.sql" beforeDir="false" />
+      <change beforePath="$PROJECT_DIR$/lm_about.sql" beforeDir="false" />
+      <change beforePath="$PROJECT_DIR$/public/favicons.ico" beforeDir="false" />
+      <change beforePath="$PROJECT_DIR$/view/admin/adv/add.html" beforeDir="false" />
+      <change beforePath="$PROJECT_DIR$/view/admin/adv/index.html" beforeDir="false" />
+      <change beforePath="$PROJECT_DIR$/view/admin/adv/pos.html" beforeDir="false" />
+      <change beforePath="$PROJECT_DIR$/view/admin/adv/pos_add.html" beforeDir="false" />
+      <change beforePath="$PROJECT_DIR$/view/admin/contents/feedback.html" beforeDir="false" afterPath="$PROJECT_DIR$/view/admin/contents/feedback.html" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/view/admin/friendship/add_banner.html" beforeDir="false" />
+      <change beforePath="$PROJECT_DIR$/view/admin/friendship/add_dh.html" beforeDir="false" />
+      <change beforePath="$PROJECT_DIR$/view/admin/friendship/add_links.html" beforeDir="false" />
+      <change beforePath="$PROJECT_DIR$/view/admin/friendship/banner.html" beforeDir="false" />
+      <change beforePath="$PROJECT_DIR$/view/admin/friendship/dh_list.html" beforeDir="false" />
+      <change beforePath="$PROJECT_DIR$/view/admin/friendship/index.html" beforeDir="false" />
+      <change beforePath="$PROJECT_DIR$/view/admin/friendship/links.html" beforeDir="false" />
+      <change beforePath="$PROJECT_DIR$/view/admin/friendship/statistics.html" beforeDir="false" />
+      <change beforePath="$PROJECT_DIR$/view/admin/site/index.html" beforeDir="false" />
+      <change beforePath="$PROJECT_DIR$/view/admin/site/sitetree.html" beforeDir="false" />
+      <change beforePath="$PROJECT_DIR$/view/admin/training/course.html" beforeDir="false" />
+      <change beforePath="$PROJECT_DIR$/view/admin/training/index.html" beforeDir="false" />
+      <change beforePath="$PROJECT_DIR$/view/admin/training/text.html" beforeDir="false" />
+      <change beforePath="$PROJECT_DIR$/view/admin/training/upgrade.html" beforeDir="false" />
+      <change beforePath="$PROJECT_DIR$/view/admin/wechat/add.html" beforeDir="false" />
+      <change beforePath="$PROJECT_DIR$/view/admin/wechat/fans.html" beforeDir="false" />
+      <change beforePath="$PROJECT_DIR$/view/admin/wechat/index.html" beforeDir="false" />
+      <change beforePath="$PROJECT_DIR$/view/admin/wechat/level_add.html" beforeDir="false" />
+      <change beforePath="$PROJECT_DIR$/view/admin/wechat/level_index.html" beforeDir="false" />
+      <change beforePath="$PROJECT_DIR$/view/admin/wechat/material.html" beforeDir="false" />
+      <change beforePath="$PROJECT_DIR$/view/admin/wechat/material_add.html" beforeDir="false" />
+      <change beforePath="$PROJECT_DIR$/view/admin/wechat/menu.html" beforeDir="false" />
+      <change beforePath="$PROJECT_DIR$/view/admin/wechat/menu_api.html" beforeDir="false" />
+      <change beforePath="$PROJECT_DIR$/view/admin/wechat/message.html" beforeDir="false" />
+      <change beforePath="$PROJECT_DIR$/view/admin/wechat/message_reply.html" beforeDir="false" />
+      <change beforePath="$PROJECT_DIR$/view/admin/wechat/qrcode.html" beforeDir="false" />
+      <change beforePath="$PROJECT_DIR$/view/admin/wechat/qrcode_add.html" beforeDir="false" />
+      <change beforePath="$PROJECT_DIR$/view/admin/wechat/reply.html" beforeDir="false" />
+      <change beforePath="$PROJECT_DIR$/view/admin/wechat/reply_add.html" beforeDir="false" />
+      <change beforePath="$PROJECT_DIR$/view/admin/wechat/tag.html" beforeDir="false" />
+      <change beforePath="$PROJECT_DIR$/view/admin/wechat/tag_add.html" beforeDir="false" />
+      <change beforePath="$PROJECT_DIR$/view/web/index/index.html" beforeDir="false" />
     </list>
     <option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" />
     <option name="SHOW_DIALOG" value="false" />
@@ -90,59 +87,77 @@
   </component>
   <component name="FileEditorManager">
     <leaf SIDE_TABS_SIZE_LIMIT_KEY="300">
+      <file pinned="false" current-in-tab="true">
+        <entry file="file://$PROJECT_DIR$/app/admin/controller/Contents.php">
+          <provider selected="true" editor-type-id="text-editor">
+            <state relative-caret-position="275">
+              <caret line="93" column="6" lean-forward="true" selection-start-line="93" selection-start-column="6" selection-end-line="93" selection-end-column="6" />
+              <folding>
+                <element signature="e#69#103#0#PHP" expanded="true" />
+              </folding>
+            </state>
+          </provider>
+        </entry>
+      </file>
       <file pinned="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/app/common/model/User.php">
+        <entry file="file://$PROJECT_DIR$/app/admin/controller/Usermanage.php">
           <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="276">
-              <caret line="22" column="1" lean-forward="true" selection-start-line="22" selection-start-column="1" selection-end-line="22" selection-end-column="1" />
+            <state relative-caret-position="345">
+              <caret line="20" column="1" lean-forward="true" selection-start-line="20" selection-start-column="1" selection-end-line="20" selection-end-column="1" />
             </state>
           </provider>
         </entry>
       </file>
       <file pinned="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/app/ap/controller/Login.php">
+        <entry file="file://$PROJECT_DIR$/app/admin/controller/Agent.php">
           <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="413">
-              <caret line="46" column="28" lean-forward="true" selection-start-line="46" selection-start-column="28" selection-end-line="46" selection-end-column="28" />
-              <folding>
-                <element signature="e#99#125#0#PHP" expanded="true" />
-              </folding>
+            <state relative-caret-position="528">
+              <caret line="54" column="1" lean-forward="true" selection-start-line="54" selection-start-column="1" selection-end-line="54" selection-end-column="1" />
             </state>
           </provider>
         </entry>
       </file>
-      <file pinned="false" current-in-tab="true">
-        <entry file="file://$PROJECT_DIR$/adddata.sql">
+      <file pinned="false" current-in-tab="false">
+        <entry file="file://$PROJECT_DIR$/app/admin/controller/Certificate.php">
           <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="547">
-              <caret line="53" column="43" selection-start-line="53" selection-start-column="43" selection-end-line="53" selection-end-column="43" />
+            <state relative-caret-position="437">
+              <caret line="24" column="12" selection-start-line="24" selection-start-column="12" selection-end-line="24" selection-end-column="12" />
             </state>
           </provider>
         </entry>
       </file>
       <file pinned="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/app/common.php">
+        <entry file="file://$PROJECT_DIR$/app/admin/controller/Order.php">
           <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="345">
-              <caret line="197" column="7" lean-forward="true" selection-start-line="197" selection-start-column="7" selection-end-line="197" selection-end-column="7" />
+            <state relative-caret-position="552">
+              <caret line="31" column="7" lean-forward="true" selection-start-line="31" selection-start-column="7" selection-end-line="31" selection-end-column="7" />
             </state>
           </provider>
         </entry>
       </file>
       <file pinned="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/app/ap/route/api.php">
+        <entry file="file://$PROJECT_DIR$/app/admin/controller/Finance.php">
           <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="414">
-              <caret line="21" column="44" lean-forward="true" selection-start-line="21" selection-start-column="44" selection-end-line="21" selection-end-column="44" />
+            <state relative-caret-position="597">
+              <caret line="54" lean-forward="true" selection-start-line="54" selection-end-line="54" />
             </state>
           </provider>
         </entry>
       </file>
       <file pinned="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/app/middleware/Token.php">
+        <entry file="file://$PROJECT_DIR$/app/admin/controller/Information.php">
           <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="138">
-              <caret line="11" column="25" lean-forward="true" selection-start-line="11" selection-start-column="25" selection-end-line="11" selection-end-column="25" />
+            <state relative-caret-position="207">
+              <caret line="14" column="1" lean-forward="true" selection-start-line="14" selection-start-column="1" selection-end-line="14" selection-end-column="1" />
+            </state>
+          </provider>
+        </entry>
+      </file>
+      <file pinned="false" current-in-tab="false">
+        <entry file="file://$PROJECT_DIR$/adddata.sql">
+          <provider selected="true" editor-type-id="text-editor">
+            <state relative-caret-position="348">
+              <caret line="122" column="44" selection-start-line="122" selection-start-column="44" selection-end-line="122" selection-end-column="44" />
             </state>
           </provider>
         </entry>
@@ -159,9 +174,6 @@
   </component>
   <component name="FindInProjectRecents">
     <findStrings>
-      <find>signup</find>
-      <find>Laboratorylist</find>
-      <find>my_exam</find>
       <find>Wx</find>
       <find>outvodeo</find>
       <find>delAll</find>
@@ -189,6 +201,9 @@
       <find>api</find>
       <find>Invalid authorization credentials</find>
       <find>resultset_type</find>
+      <find>main</find>
+      <find>lm_finance</find>
+      <find>feedback</find>
     </findStrings>
     <dirStrings>
       <dir>D:\phpstudy_pro\WWW\small\syyxy\php</dir>
@@ -200,16 +215,6 @@
   <component name="IdeDocumentHistory">
     <option name="CHANGED_PATHS">
       <list>
-        <option value="$PROJECT_DIR$/app/admin/controller/Laboratory.php" />
-        <option value="$PROJECT_DIR$/view/admin/examination/exam.html" />
-        <option value="$PROJECT_DIR$/app/admin/controller/Curriculum.php" />
-        <option value="$PROJECT_DIR$/app/admin/controller/Examination.php" />
-        <option value="$PROJECT_DIR$/view/admin/examination/index.html" />
-        <option value="$PROJECT_DIR$/app/index/controller/Login.php" />
-        <option value="$PROJECT_DIR$/view/admin/parameter/index.html" />
-        <option value="$PROJECT_DIR$/app/index/controller/Examinations.php" />
-        <option value="$PROJECT_DIR$/app/index/controller/Home.php" />
-        <option value="$PROJECT_DIR$/app/admin/model/Video.php" />
         <option value="$PROJECT_DIR$/view/admin/auth/admin_add.html" />
         <option value="$PROJECT_DIR$/view/admin/auth/admin_list.html" />
         <option value="$PROJECT_DIR$/app/admin/controller/Auth.php" />
@@ -232,9 +237,7 @@
         <option value="$PROJECT_DIR$/app/admin/controller/Friendship.php" />
         <option value="$PROJECT_DIR$/view/admin/friendship/index.html" />
         <option value="$PROJECT_DIR$/lemocms2020-3-24.sql" />
-        <option value="$PROJECT_DIR$/.env" />
         <option value="$PROJECT_DIR$/view/admin/index/main.html" />
-        <option value="$PROJECT_DIR$/app/admin/controller/Index.php" />
         <option value="$PROJECT_DIR$/app/api/route/api.php" />
         <option value="$PROJECT_DIR$/app/api/controller/v1/User.php" />
         <option value="$PROJECT_DIR$/app/api/middleware.php" />
@@ -250,7 +253,19 @@
         <option value="$PROJECT_DIR$/app/middleware/Token.php" />
         <option value="$PROJECT_DIR$/app/ap/route/api.php" />
         <option value="$PROJECT_DIR$/app/ap/controller/Login.php" />
+        <option value="$PROJECT_DIR$/.env" />
+        <option value="$PROJECT_DIR$/app/admin/controller/Index.php" />
+        <option value="$PROJECT_DIR$/app/worker/controller/User.php" />
+        <option value="$PROJECT_DIR$/app/worker/controller/Worker.php" />
+        <option value="$PROJECT_DIR$/view/admin/contents/feedback.html" />
         <option value="$PROJECT_DIR$/adddata.sql" />
+        <option value="$PROJECT_DIR$/app/admin/controller/Contents.php" />
+        <option value="$PROJECT_DIR$/app/admin/controller/Usermanage.php" />
+        <option value="$PROJECT_DIR$/app/admin/controller/Information.php" />
+        <option value="$PROJECT_DIR$/app/admin/controller/Agent.php" />
+        <option value="$PROJECT_DIR$/app/admin/controller/Certificate.php" />
+        <option value="$PROJECT_DIR$/app/admin/controller/Order.php" />
+        <option value="$PROJECT_DIR$/app/admin/controller/Finance.php" />
       </list>
     </option>
   </component>
@@ -346,8 +361,8 @@
   </component>
   <component name="PhpXdebugProxy" ide_key="PHPSTROM" host="127.0.0.1" />
   <component name="ProjectFrameBounds" extendedState="6">
-    <option name="x" value="-8" />
-    <option name="y" value="-8" />
+    <option name="x" value="1" />
+    <option name="y" value="10" />
     <option name="width" value="1936" />
     <option name="height" value="1056" />
   </component>
@@ -357,7 +372,6 @@
       <foldersAlwaysOnTop value="true" />
     </navigator>
     <panes>
-      <pane id="Scope" />
       <pane id="ProjectPane">
         <subPane>
           <expand>
@@ -373,12 +387,84 @@
             <path>
               <item name="php" type="b2602c69:ProjectViewProjectNode" />
               <item name="php" type="462c0819:PsiDirectoryNode" />
+              <item name="app" type="462c0819:PsiDirectoryNode" />
+              <item name="admin" type="462c0819:PsiDirectoryNode" />
+            </path>
+            <path>
+              <item name="php" type="b2602c69:ProjectViewProjectNode" />
+              <item name="php" type="462c0819:PsiDirectoryNode" />
+              <item name="app" type="462c0819:PsiDirectoryNode" />
+              <item name="admin" type="462c0819:PsiDirectoryNode" />
+              <item name="controller" type="462c0819:PsiDirectoryNode" />
+            </path>
+            <path>
+              <item name="php" type="b2602c69:ProjectViewProjectNode" />
+              <item name="php" type="462c0819:PsiDirectoryNode" />
+              <item name="public" type="462c0819:PsiDirectoryNode" />
+            </path>
+            <path>
+              <item name="php" type="b2602c69:ProjectViewProjectNode" />
+              <item name="php" type="462c0819:PsiDirectoryNode" />
               <item name="route" type="462c0819:PsiDirectoryNode" />
             </path>
+            <path>
+              <item name="php" type="b2602c69:ProjectViewProjectNode" />
+              <item name="php" type="462c0819:PsiDirectoryNode" />
+              <item name="view" type="462c0819:PsiDirectoryNode" />
+            </path>
+            <path>
+              <item name="php" type="b2602c69:ProjectViewProjectNode" />
+              <item name="php" type="462c0819:PsiDirectoryNode" />
+              <item name="view" type="462c0819:PsiDirectoryNode" />
+              <item name="admin" type="462c0819:PsiDirectoryNode" />
+            </path>
+            <path>
+              <item name="php" type="b2602c69:ProjectViewProjectNode" />
+              <item name="php" type="462c0819:PsiDirectoryNode" />
+              <item name="view" type="462c0819:PsiDirectoryNode" />
+              <item name="admin" type="462c0819:PsiDirectoryNode" />
+              <item name="common" type="462c0819:PsiDirectoryNode" />
+            </path>
+            <path>
+              <item name="php" type="b2602c69:ProjectViewProjectNode" />
+              <item name="php" type="462c0819:PsiDirectoryNode" />
+              <item name="view" type="462c0819:PsiDirectoryNode" />
+              <item name="admin" type="462c0819:PsiDirectoryNode" />
+              <item name="contents" type="462c0819:PsiDirectoryNode" />
+            </path>
+            <path>
+              <item name="php" type="b2602c69:ProjectViewProjectNode" />
+              <item name="php" type="462c0819:PsiDirectoryNode" />
+              <item name="view" type="462c0819:PsiDirectoryNode" />
+              <item name="admin" type="462c0819:PsiDirectoryNode" />
+              <item name="database" type="462c0819:PsiDirectoryNode" />
+            </path>
+            <path>
+              <item name="php" type="b2602c69:ProjectViewProjectNode" />
+              <item name="php" type="462c0819:PsiDirectoryNode" />
+              <item name="view" type="462c0819:PsiDirectoryNode" />
+              <item name="admin" type="462c0819:PsiDirectoryNode" />
+              <item name="index" type="462c0819:PsiDirectoryNode" />
+            </path>
+            <path>
+              <item name="php" type="b2602c69:ProjectViewProjectNode" />
+              <item name="php" type="462c0819:PsiDirectoryNode" />
+              <item name="view" type="462c0819:PsiDirectoryNode" />
+              <item name="admin" type="462c0819:PsiDirectoryNode" />
+              <item name="system" type="462c0819:PsiDirectoryNode" />
+            </path>
+            <path>
+              <item name="php" type="b2602c69:ProjectViewProjectNode" />
+              <item name="php" type="462c0819:PsiDirectoryNode" />
+              <item name="view" type="462c0819:PsiDirectoryNode" />
+              <item name="admin" type="462c0819:PsiDirectoryNode" />
+              <item name="user" type="462c0819:PsiDirectoryNode" />
+            </path>
           </expand>
           <select />
         </subPane>
       </pane>
+      <pane id="Scope" />
     </panes>
   </component>
   <component name="PropertiesComponent">
@@ -389,25 +475,25 @@
     <property name="WebServerToolWindowPanel.toolwindow.show.date" value="false" />
     <property name="WebServerToolWindowPanel.toolwindow.show.permissions" value="false" />
     <property name="WebServerToolWindowPanel.toolwindow.show.size" value="false" />
-    <property name="last_opened_file_path" value="$PROJECT_DIR$/../../../company/any_admin" />
+    <property name="last_opened_file_path" value="$PROJECT_DIR$/../../../dlb" />
     <property name="nodejs_interpreter_path.stuck_in_default_project" value="undefined stuck path" />
     <property name="nodejs_npm_path_reset_for_default_project" value="true" />
     <property name="nodejs_package_manager_path" value="npm" />
     <property name="settings.editor.selected.configurable" value="Docker" />
   </component>
   <component name="RecentsManager">
-    <key name="MoveFile.RECENT_KEYS">
-      <recent name="D:\phpstudy_pro\WWW\company\any_admin\public\static\admin\images" />
-      <recent name="D:\phpstudy_pro\WWW\small\syyxy\php\public\static\plugins\layui\extend\city" />
-      <recent name="D:\phpstudy_pro\WWW\small\syyxy\php\app\index\controller" />
-      <recent name="D:\phpstudy_pro\WWW\small\syyxy\php\public\static\plugins\selectmenu" />
-    </key>
     <key name="CopyFile.RECENT_KEYS">
+      <recent name="D:\phpstudy_pro\WWW\cxy\bts\php\app\admin\controller" />
       <recent name="D:\phpstudy_pro\WWW\my\fuye\php\app\ap\config" />
       <recent name="D:\phpstudy_pro\WWW\my\fuye\php\app\ap\route" />
       <recent name="D:\phpstudy_pro\WWW\my\fuye\php\app\ap" />
       <recent name="D:\phpstudy_pro\WWW\company\any_admin\public\static\admin\images" />
-      <recent name="D:\phpstudy_pro\WWW\company\any_admin\public" />
+    </key>
+    <key name="MoveFile.RECENT_KEYS">
+      <recent name="D:\phpstudy_pro\WWW\company\any_admin\public\static\admin\images" />
+      <recent name="D:\phpstudy_pro\WWW\small\syyxy\php\public\static\plugins\layui\extend\city" />
+      <recent name="D:\phpstudy_pro\WWW\small\syyxy\php\app\index\controller" />
+      <recent name="D:\phpstudy_pro\WWW\small\syyxy\php\public\static\plugins\selectmenu" />
     </key>
   </component>
   <component name="RunDashboard">
@@ -520,17 +606,18 @@
       <workItem from="1590637551328" duration="21498000" />
       <workItem from="1590714534675" duration="25886000" />
       <workItem from="1590983110728" duration="16565000" />
+      <workItem from="1591065028261" duration="18981000" />
     </task>
     <servers />
   </component>
   <component name="TimeTrackingManager">
-    <option name="totallyTimeSpent" value="682005000" />
+    <option name="totallyTimeSpent" value="700986000" />
   </component>
   <component name="ToolWindowManager">
     <frame x="-8" y="-8" width="1936" height="1056" extended-state="6" />
     <editor active="true" />
     <layout>
-      <window_info active="true" content_ui="combo" id="Project" order="0" visible="true" weight="0.21908316" />
+      <window_info active="true" content_ui="combo" id="Project" order="0" visible="true" weight="0.22121535" />
       <window_info id="Structure" order="1" side_tool="true" weight="0.25" />
       <window_info id="Favorites" order="2" side_tool="true" />
       <window_info anchor="bottom" id="Message" order="0" />
@@ -600,353 +687,278 @@
           <option name="timeStamp" value="4" />
         </line-breakpoint>
         <line-breakpoint enabled="true" type="php">
-          <url>file://$PROJECT_DIR$/app/common/controller/Aliyunoss.php</url>
-          <line>9</line>
-          <option name="timeStamp" value="5" />
+          <url>file://$PROJECT_DIR$/app/admin/controller/Contents.php</url>
+          <line>6</line>
+          <option name="timeStamp" value="6" />
         </line-breakpoint>
       </breakpoints>
     </breakpoint-manager>
   </component>
   <component name="editorHistoryManager">
-    <entry file="file://$PROJECT_DIR$/config/admin/admin.php">
+    <entry file="file://$PROJECT_DIR$/app/admin/validate/WxAccount.php">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="230">
-          <caret line="18" column="63" lean-forward="true" selection-start-line="18" selection-start-column="63" selection-end-line="18" selection-end-column="64" />
-        </state>
+        <state relative-caret-position="-507" />
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/config/addons.php">
+    <entry file="file://$PROJECT_DIR$/app/admin/validate/WxTag.php">
+      <provider selected="true" editor-type-id="text-editor" />
+    </entry>
+    <entry file="file://$PROJECT_DIR$/app/admin/model/Ztrees.php">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="230">
-          <caret line="10" column="6" lean-forward="true" selection-start-line="10" selection-start-column="6" selection-end-line="10" selection-end-column="6" />
-        </state>
+        <state relative-caret-position="-345" />
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/public/storage/uploads/20200529/ad110b5e57ac537529fe3c2a2bf8cdfc.png">
-      <provider selected="true" editor-type-id="images" />
+    <entry file="file://$PROJECT_DIR$/app/admin/validate/Field.php">
+      <provider selected="true" editor-type-id="text-editor" />
     </entry>
-    <entry file="file://$PROJECT_DIR$/public/phpinfo.php">
+    <entry file="file://$PROJECT_DIR$/app/admin/validate/Adv.php">
+      <provider selected="true" editor-type-id="text-editor" />
+    </entry>
+    <entry file="file://$PROJECT_DIR$/app/command/Hello.php">
+      <provider selected="true" editor-type-id="text-editor" />
+    </entry>
+    <entry file="file://$PROJECT_DIR$/app/common/controller/Aliyunoss.php">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="161">
-          <caret line="7" column="10" lean-forward="true" selection-start-line="7" selection-start-column="10" selection-end-line="7" selection-end-column="10" />
+        <state relative-caret-position="368">
+          <caret line="26" lean-forward="true" selection-start-line="26" selection-end-line="31" selection-end-column="12" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/app/web/controller/Index.php">
+    <entry file="file://$PROJECT_DIR$/app/command/Timer.php">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="964">
-          <caret line="52" column="5" lean-forward="true" selection-start-line="52" selection-start-column="5" selection-end-line="52" selection-end-column="5" />
-          <folding>
-            <element signature="e#128#151#0#PHP" expanded="true" />
-          </folding>
-        </state>
+        <state relative-caret-position="-621" />
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/app/error/controller/Error.php">
+    <entry file="file://$PROJECT_DIR$/app/common/controller/Backend.php">
       <provider selected="true" editor-type-id="text-editor" />
     </entry>
-    <entry file="file://$PROJECT_DIR$/app/worker/controller/User.php">
+    <entry file="file://$PROJECT_DIR$/app/common/controller/Frontend.php">
       <provider selected="true" editor-type-id="text-editor" />
     </entry>
-    <entry file="file://$PROJECT_DIR$/app/common/controller/Wxs.php">
-      <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="-139" />
-      </provider>
-    </entry>
-    <entry file="file://$PROJECT_DIR$/app/command/Hello.php">
+    <entry file="file://$PROJECT_DIR$/app/common/controller/Token.php">
       <provider selected="true" editor-type-id="text-editor" />
     </entry>
-    <entry file="file://$PROJECT_DIR$/app/command/Timer.php">
+    <entry file="file://$PROJECT_DIR$/app/common/controller/Wxs.php">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="-207" />
+        <state relative-caret-position="-414" />
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/extend/lemo/api/validate/ValidataBase.php">
-      <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="230">
-          <caret line="23" column="7" lean-forward="true" selection-start-line="23" selection-start-column="7" selection-end-line="23" selection-end-column="7" />
-        </state>
-      </provider>
+    <entry file="file://$PROJECT_DIR$/app/common/controller/Base.php">
+      <provider selected="true" editor-type-id="text-editor" />
     </entry>
-    <entry file="file://$PROJECT_DIR$/vendor/topthink/think-throttle/src/Throttle.php">
+    <entry file="file://$PROJECT_DIR$/app/common/model/Config.php">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="-1886">
-          <caret line="21" column="17" lean-forward="true" selection-start-line="21" selection-start-column="17" selection-end-line="21" selection-end-column="17" />
+        <state relative-caret-position="69">
+          <caret line="3" column="25" selection-start-line="3" selection-start-column="25" selection-end-line="3" selection-end-column="25" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/vendor/topthink/framework/src/think/middleware/LoadLangPack.php">
-      <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="230">
-          <caret line="23" column="6" selection-start-line="23" selection-start-column="6" selection-end-line="23" selection-end-column="6" />
-        </state>
-      </provider>
+    <entry file="file://$PROJECT_DIR$/app/common/model/ConfigGroup.php">
+      <provider selected="true" editor-type-id="text-editor" />
     </entry>
-    <entry file="file://$PROJECT_DIR$/app/api/controller/v1/User.php">
+    <entry file="file://$PROJECT_DIR$/app/common/model/FieldType.php">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="-161">
-          <caret line="35" column="16" selection-start-line="35" selection-start-column="7" selection-end-line="35" selection-end-column="16" />
+        <state relative-caret-position="345">
+          <caret line="15" lean-forward="true" selection-start-line="15" selection-end-line="15" />
           <folding>
-            <element signature="e#41#66#0#PHP" expanded="true" />
+            <element signature="e#37#65#0#PHP" expanded="true" />
           </folding>
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/app/api/config/route.php">
+    <entry file="file://$PROJECT_DIR$/app/common/model/User.php">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="667">
-          <caret line="29" column="17" selection-start-line="29" selection-start-column="17" selection-end-line="29" selection-end-column="17" />
+        <state relative-caret-position="276">
+          <caret line="22" column="1" lean-forward="true" selection-start-line="22" selection-start-column="1" selection-end-line="22" selection-end-column="1" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/app/api/controller/v1/Token.php">
+    <entry file="file://$PROJECT_DIR$/app/common/model/Common.php">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="69">
-          <caret line="3" column="16" selection-start-line="3" selection-start-column="16" selection-end-line="3" selection-end-column="16" />
+        <state relative-caret-position="299">
+          <caret line="13" selection-start-line="13" selection-end-line="13" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/extend/lemo/api/Api.php">
+    <entry file="file://$PROJECT_DIR$/app/middleware/Notken.php">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="61">
-          <caret line="26" column="7" lean-forward="true" selection-start-line="26" selection-start-column="7" selection-end-line="26" selection-end-column="7" />
+        <state relative-caret-position="138">
+          <caret line="11" column="6" selection-start-line="11" selection-start-column="6" selection-end-line="11" selection-end-column="6" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/app/api/middleware.php">
+    <entry file="file://$PROJECT_DIR$/app/middleware/Token.php">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="92">
-          <caret line="14" selection-start-line="14" selection-end-line="20" selection-end-column="2" />
+        <state relative-caret-position="31">
+          <caret line="11" column="25" lean-forward="true" selection-start-line="11" selection-start-column="25" selection-end-line="11" selection-end-column="25" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/app/ap/middleware.php">
+    <entry file="file://$PROJECT_DIR$/app/worker/controller/User.php">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="276">
-          <caret line="22" lean-forward="true" selection-start-line="22" selection-end-line="22" />
+        <state relative-caret-position="250">
+          <caret line="16" column="1" lean-forward="true" selection-start-line="16" selection-start-column="1" selection-end-line="16" selection-end-column="1" />
+          <folding>
+            <element signature="e#132#152#0#PHP" expanded="true" />
+          </folding>
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/app/api/route/api.php">
-      <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="138">
-          <caret line="16" column="21" lean-forward="true" selection-start-line="16" selection-start-column="21" selection-end-line="16" selection-end-column="21" />
-        </state>
-      </provider>
+    <entry file="file://$PROJECT_DIR$/addons/text/controller/Pugin.php">
+      <provider selected="true" editor-type-id="text-editor" />
     </entry>
-    <entry file="file://$PROJECT_DIR$/app/ap/config/route.php">
-      <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="552">
-          <caret line="30" column="34" lean-forward="true" selection-start-line="30" selection-start-column="34" selection-end-line="30" selection-end-column="34" />
-        </state>
-      </provider>
+    <entry file="file://$PROJECT_DIR$/addons/text/controller/Text.php">
+      <provider selected="true" editor-type-id="text-editor" />
     </entry>
-    <entry file="file://$PROJECT_DIR$/app/ap/controller/v1/Index.php">
-      <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="253">
-          <caret line="16" column="22" selection-start-line="16" selection-start-column="22" selection-end-line="16" selection-end-column="22" />
-        </state>
-      </provider>
+    <entry file="file://$PROJECT_DIR$/public/favicons.ico">
+      <provider selected="true" editor-type-id="images" />
     </entry>
-    <entry file="file://$PROJECT_DIR$/runtime/ap/log/202006/01.log">
-      <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="368">
-          <caret line="16" column="99" selection-start-line="16" selection-start-column="99" selection-end-line="16" selection-end-column="99" />
-        </state>
-      </provider>
+    <entry file="file://$PROJECT_DIR$/public/favicon.ico">
+      <provider selected="true" editor-type-id="images" />
     </entry>
-    <entry file="file://$PROJECT_DIR$/app/controller/ap/v1/User1.php">
-      <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="1885">
-          <caret line="83" column="5" lean-forward="true" selection-start-line="9" selection-start-column="3" selection-end-line="83" selection-end-column="5" />
-        </state>
-      </provider>
+    <entry file="file://$PROJECT_DIR$/view/web/index/index.html">
+      <provider selected="true" editor-type-id="text-editor" />
     </entry>
-    <entry file="file://$PROJECT_DIR$/app/ap/route/ap.php">
-      <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="184">
-          <caret line="8" selection-start-line="8" selection-end-line="8" />
-        </state>
-      </provider>
+    <entry file="file://$PROJECT_DIR$/view/admin/wechat/level_add.html">
+      <provider selected="true" editor-type-id="text-editor" />
     </entry>
-    <entry file="file://$PROJECT_DIR$/vendor/topthink/framework/src/think/response/Json.php">
+    <entry file="file://$PROJECT_DIR$/view/admin/wechat/index.html">
+      <provider selected="true" editor-type-id="text-editor" />
+    </entry>
+    <entry file="file://$PROJECT_DIR$/view/admin/wechat/add.html">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="368">
-          <caret line="42" column="29" selection-start-line="42" selection-start-column="23" selection-end-line="42" selection-end-column="29" />
+        <state relative-caret-position="-414">
           <folding>
-            <element signature="e#650#667#0#PHP" expanded="true" />
+            <element signature="n#style#0;n#span#0;n#!!top" expanded="true" />
+            <element signature="n#style#0;n#span#0;n#!!top" expanded="true" />
           </folding>
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/vendor/topthink/framework/src/helper.php">
+    <entry file="file://$PROJECT_DIR$/app/worker/controller/Worker.php">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="1924">
-          <caret line="324" column="45" selection-start-line="324" selection-start-column="40" selection-end-line="324" selection-end-column="45" />
+        <state relative-caret-position="299">
+          <caret line="20" lean-forward="true" selection-start-line="20" selection-end-line="20" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/extend/lemo/service/WechatApp.php">
-      <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="-621" />
-      </provider>
-    </entry>
-    <entry file="file://$PROJECT_DIR$/extend/lemo/service/Predis.php">
-      <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="-690" />
-      </provider>
-    </entry>
-    <entry file="file://$PROJECT_DIR$/extend/lemo/api/Oauth.php">
-      <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="176">
-          <caret line="50" column="12" lean-forward="true" selection-start-line="50" selection-start-column="12" selection-end-line="56" selection-end-column="64" />
-        </state>
-      </provider>
+    <entry file="file://$PROJECT_DIR$/view/admin/user/index.html">
+      <provider selected="true" editor-type-id="text-editor" />
     </entry>
-    <entry file="file://$PROJECT_DIR$/extend/lemo/api/Token.php">
-      <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="-3842">
-          <caret line="63" lean-forward="true" selection-start-line="63" selection-end-line="63" />
-        </state>
-      </provider>
+    <entry file="file://$PROJECT_DIR$/view/admin/user/level_add.html">
+      <provider selected="true" editor-type-id="text-editor" />
     </entry>
-    <entry file="file://$PROJECT_DIR$/app/ap/controller/v1/Token.php">
-      <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="552">
-          <caret line="29" column="22" selection-start-line="29" selection-start-column="22" selection-end-line="29" selection-end-column="22" />
-        </state>
-      </provider>
+    <entry file="file://$PROJECT_DIR$/view/admin/user/level_index.html">
+      <provider selected="true" editor-type-id="text-editor" />
     </entry>
-    <entry file="file://$PROJECT_DIR$/any_college.sql">
-      <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="-579159">
-          <caret line="35" column="31" selection-start-line="35" selection-start-column="31" selection-end-line="35" selection-end-column="31" />
-        </state>
-      </provider>
+    <entry file="file://$PROJECT_DIR$/view/admin/training/course.html">
+      <provider selected="true" editor-type-id="text-editor" />
     </entry>
-    <entry file="file://$PROJECT_DIR$/lm_about.sql">
+    <entry file="file://$PROJECT_DIR$/view/admin/user/add.html">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="96">
-          <caret line="13659" selection-start-line="13659" selection-end-line="13671" />
+        <state relative-caret-position="-1932">
+          <folding>
+            <element signature="n#style#0;n#span#0;n#!!top" expanded="true" />
+          </folding>
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/app/common/model/About.php">
+    <entry file="file://$PROJECT_DIR$/view/admin/contents/feedback.html">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="299">
-          <caret line="18" column="1" lean-forward="true" selection-start-line="18" selection-start-column="1" selection-end-line="18" selection-end-column="1" />
+        <state relative-caret-position="736">
+          <caret line="110" selection-start-line="110" selection-end-line="110" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/app/common/model/WxMenu.php">
+    <entry file="file://$PROJECT_DIR$/view/admin/contents/about.html">
       <provider selected="true" editor-type-id="text-editor" />
     </entry>
-    <entry file="file://$PROJECT_DIR$/app/common/model/WxMsgHistory.php">
+    <entry file="file://$PROJECT_DIR$/view/admin/contents/index.html">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="276">
-          <caret line="22" column="1" lean-forward="true" selection-start-line="22" selection-start-column="1" selection-end-line="22" selection-end-column="1" />
+        <state relative-caret-position="-598">
+          <caret line="49" column="25" selection-start-line="49" selection-start-column="20" selection-end-line="49" selection-end-column="25" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/app/common/model/FieldType.php">
+    <entry file="file://$PROJECT_DIR$/view/admin/adv/add.html">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="345">
-          <caret line="15" lean-forward="true" selection-start-line="15" selection-end-line="15" />
+        <state>
           <folding>
-            <element signature="e#37#65#0#PHP" expanded="true" />
+            <element signature="n#style#0;n#span#0;n#!!top" expanded="true" />
           </folding>
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/app/common/model/BaseModel.php">
-      <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="206">
-          <caret line="15" column="42" lean-forward="true" selection-start-line="15" selection-start-column="42" selection-end-line="15" selection-end-column="42" />
-        </state>
-      </provider>
+    <entry file="file://$PROJECT_DIR$/view/admin/adv/index.html">
+      <provider selected="true" editor-type-id="text-editor" />
     </entry>
-    <entry file="file://$PROJECT_DIR$/app/common/model/Config.php">
-      <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="69">
-          <caret line="3" column="25" selection-start-line="3" selection-start-column="25" selection-end-line="3" selection-end-column="25" />
-        </state>
-      </provider>
+    <entry file="file://$PROJECT_DIR$/view/admin/adv/pos.html">
+      <provider selected="true" editor-type-id="text-editor" />
     </entry>
-    <entry file="file://$PROJECT_DIR$/app/common/model/Common.php">
-      <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="299">
-          <caret line="13" selection-start-line="13" selection-end-line="13" />
-        </state>
-      </provider>
+    <entry file="file://$PROJECT_DIR$/view/admin/adv/pos_add.html">
+      <provider selected="true" editor-type-id="text-editor" />
     </entry>
-    <entry file="file://$PROJECT_DIR$/app/common/model/User.php">
+    <entry file="file://$PROJECT_DIR$/view/admin/common/footer.html">
+      <provider selected="true" editor-type-id="text-editor" />
+    </entry>
+    <entry file="file://$PROJECT_DIR$/adddata.sql">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="276">
-          <caret line="22" column="1" lean-forward="true" selection-start-line="22" selection-start-column="1" selection-end-line="22" selection-end-column="1" />
+        <state relative-caret-position="348">
+          <caret line="122" column="44" selection-start-line="122" selection-start-column="44" selection-end-line="122" selection-end-column="44" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/app/ap/controller/v1/User.php">
+    <entry file="file://$PROJECT_DIR$/app/admin/controller/Usermanage.php">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="-805">
-          <caret line="30" column="26" selection-start-line="30" selection-start-column="20" selection-end-line="30" selection-end-column="26" />
+        <state relative-caret-position="345">
+          <caret line="20" column="1" lean-forward="true" selection-start-line="20" selection-start-column="1" selection-end-line="20" selection-end-column="1" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/config/database.php">
+    <entry file="file://$PROJECT_DIR$/app/admin/controller/Information.php">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="92">
-          <caret line="22" column="46" selection-start-line="22" selection-start-column="46" selection-end-line="22" selection-end-column="46" />
+        <state relative-caret-position="207">
+          <caret line="14" column="1" lean-forward="true" selection-start-line="14" selection-start-column="1" selection-end-line="14" selection-end-column="1" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/app/event.php">
-      <provider selected="true" editor-type-id="text-editor" />
-    </entry>
-    <entry file="file://$PROJECT_DIR$/app/common.php">
+    <entry file="file://$PROJECT_DIR$/app/admin/controller/Agent.php">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="345">
-          <caret line="197" column="7" lean-forward="true" selection-start-line="197" selection-start-column="7" selection-end-line="197" selection-end-column="7" />
+        <state relative-caret-position="528">
+          <caret line="54" column="1" lean-forward="true" selection-start-line="54" selection-start-column="1" selection-end-line="54" selection-end-column="1" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/app/middleware/Notken.php">
+    <entry file="file://$PROJECT_DIR$/app/admin/controller/Certificate.php">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="138">
-          <caret line="11" column="6" selection-start-line="11" selection-start-column="6" selection-end-line="11" selection-end-column="6" />
+        <state relative-caret-position="437">
+          <caret line="24" column="12" selection-start-line="24" selection-start-column="12" selection-end-line="24" selection-end-column="12" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/app/middleware/Token.php">
+    <entry file="file://$PROJECT_DIR$/app/admin/controller/Order.php">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="138">
-          <caret line="11" column="25" lean-forward="true" selection-start-line="11" selection-start-column="25" selection-end-line="11" selection-end-column="25" />
+        <state relative-caret-position="552">
+          <caret line="31" column="7" lean-forward="true" selection-start-line="31" selection-start-column="7" selection-end-line="31" selection-end-column="7" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/app/ap/route/api.php">
+    <entry file="file://$PROJECT_DIR$/app/admin/controller/Finance.php">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="414">
-          <caret line="21" column="44" lean-forward="true" selection-start-line="21" selection-start-column="44" selection-end-line="21" selection-end-column="44" />
+        <state relative-caret-position="597">
+          <caret line="54" lean-forward="true" selection-start-line="54" selection-end-line="54" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/app/ap/controller/Login.php">
+    <entry file="file://$PROJECT_DIR$/app/admin/controller/Contents.php">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="413">
-          <caret line="46" column="28" lean-forward="true" selection-start-line="46" selection-start-column="28" selection-end-line="46" selection-end-column="28" />
+        <state relative-caret-position="275">
+          <caret line="93" column="6" lean-forward="true" selection-start-line="93" selection-start-column="6" selection-end-line="93" selection-end-column="6" />
           <folding>
-            <element signature="e#99#125#0#PHP" expanded="true" />
+            <element signature="e#69#103#0#PHP" expanded="true" />
           </folding>
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/adddata.sql">
-      <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="547">
-          <caret line="53" column="43" selection-start-line="53" selection-start-column="43" selection-end-line="53" selection-end-column="43" />
-        </state>
-      </provider>
-    </entry>
   </component>
 </project>

+ 270 - 53
php/adddata.sql

@@ -1,56 +1,273 @@
 DROP TABLE IF EXISTS `lm_user`;
 CREATE TABLE `lm_user`  (
   `id` int(11) UNSIGNED NOT NULL AUTO_INCREMENT,
-  `user` varchar (128) NULL DEFAULT '' COMMENT '用户',
-  `name` varchar (128) NULL DEFAULT '' COMMENT '呢称',
-  `pwd` varchar (255) NULL DEFAULT '' COMMENT '密码',
-  `openid` varchar (255) NULL DEFAULT '' COMMENT '微信登录openid',
-  `token` varchar (255) NULL DEFAULT '' COMMENT 'token',
-  `money` decimal (20,2) NULL DEFAULT '0' COMMENT '账号余额',
-  `push_money` decimal (20,2) NULL DEFAULT '0' COMMENT '发布余额',
-  `status` int (1) NULL DEFAULT '0' COMMENT '0 正常 1 禁止登录',
-  `status_time` varchar (20) NULL DEFAULT '' COMMENT '封号时间',
-  `create_time` varchar (20) NULL DEFAULT '' COMMENT '创建时间',
-  `vip_time` varchar (20) NULL DEFAULT '' COMMENT '会员到期时间',
-  `vip_level` int (1) NULL DEFAULT 0 COMMENT '0 普通会员 1 周卡 2月卡 3 年卡 ',
-  PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 7 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '用户表' ROW_FORMAT = Compact;
-
-
-DROP TABLE IF EXISTS `lm_task`;
-CREATE TABLE `lm_task`  (
-  `id` int(11) UNSIGNED NOT NULL AUTO_INCREMENT,
-  `type` int (11)  DEFAULT 0 COMMENT '0 实名制 1 下载注册 2 网页注册 3 关注投票 4 分享转发 5电子商务 6多天任务 7 特单任务',
-  `user_id` int (11)  DEFAULT 0 COMMENT '用户id',
-  `name` varchar (128)  DEFAULT '' COMMENT '任务名称',
-  `explain` varchar (255)  DEFAULT '' COMMENT '任务说明',
-  `text` text  DEFAULT '' COMMENT '任务步骤',
-`num` int (11)  DEFAULT 0 COMMENT '剩余数量',
-`nums` int (11)  DEFAULT 0 COMMENT '总数量',
-`money` decimal (11,2)  DEFAULT 0 COMMENT '实际金额',
-`put_money` decimal (11,2)  DEFAULT 0 COMMENT '上架金额',
-`status` int (11)  DEFAULT 0 COMMENT '0 审核中 1 审核通过 2 审核失败 3 已完成 4 已禁止',
-`msg` varchar (128)  DEFAULT '' COMMENT '审核失败原因 ',
-`repeat` int (11)  DEFAULT 0 COMMENT '0 可以重复做 1 不可以 ',
-  `end_task_time` varchar (20) NULL DEFAULT '' COMMENT '设置的结束时间',
-  `push_time` varchar (20) NULL DEFAULT '' COMMENT '提交时间',
-  `examine_time` varchar (20) NULL DEFAULT '' COMMENT '审核时长时间',
-  `create_time` varchar (20) NULL DEFAULT '' COMMENT '创建时间',
-  `update_time` varchar (20) NULL DEFAULT '' COMMENT '更新时间',
-  PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '任务列表' ROW_FORMAT = Compact;
-
-
-DROP TABLE IF EXISTS `lm_task_order`;
-CREATE TABLE `lm_task_order`  (
-  `id` int(11) UNSIGNED NOT NULL AUTO_INCREMENT,
-  `user_id` int (11)  DEFAULT 0 COMMENT '用户id',
-  `user_id` int (11)  DEFAULT 0 COMMENT '商户id',
-  `task_id` int (11)  DEFAULT 0 COMMENT '任务id',
-  `push` int (32)  DEFAULT 0 COMMENT '提交时长',
-  `examine` int (32)  DEFAULT 0 COMMENT '审核时长',
-  `add_time` varchar (20)  DEFAULT 0 COMMENT '添加时间',
-  `push_time` varchar (20)  DEFAULT 0 COMMENT '提交任务时间',
-  `content` text DEFAULT '' COMMENT '驳回数据',
-  PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '订单列表' ROW_FORMAT = Compact;
+  `uuid` varchar (128)  DEFAULT '' COMMENT 'uuid',
+  `code` varchar (128)  DEFAULT '' COMMENT '邀请码',
+  `phone` varchar (20)  DEFAULT '' COMMENT '手机号',
+  `mail` varchar (20)  DEFAULT '' COMMENT '邮件',
+  `name` varchar (128)  DEFAULT '' COMMENT '呢称',
+  `pwd` varchar (255)  DEFAULT '' COMMENT '密码',
+  `token` varchar (255)  DEFAULT '' COMMENT 'token',
+  `money` decimal (20,2)  DEFAULT '0' COMMENT '通证余额',
+  `ensure_money` decimal (20,2)  DEFAULT '0' COMMENT '保证金',
+  `push_money` decimal (20,2)  DEFAULT '0' COMMENT '可售额度',
+  `pool_money` decimal (20,2)  DEFAULT '0' COMMENT '矿池矿金',
+  `status` int (1)  DEFAULT '0' COMMENT '0 正常 1 禁止登录',
+  `status_time` varchar (20)  DEFAULT '' COMMENT '封号时间',
+  `add_time` varchar (20)  DEFAULT '' COMMENT '创建时间',
+  `update_time` varchar (20)  DEFAULT '' COMMENT '更新时间即使活跃时间',
+  `vip_level` int (1)  DEFAULT 0 COMMENT ' 等级 ',
+  `is_admin` int (1)  DEFAULT 0 COMMENT '0 不是后台账号 1是 ',
+  `sex` varchar (10)  DEFAULT '男' COMMENT '男女 ',
+  `image` varchar (255)  DEFAULT '' COMMENT '头像 ',
+  `pid` int (11)  DEFAULT 0 COMMENT '上级id ',
+  `team` int (11)  DEFAULT 0 COMMENT '团队人数 ',
+  PRIMARY KEY (`id`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '用户表' ROW_FORMAT = Compact;
+
+
+DROP TABLE IF EXISTS `lm_user_message`;
+CREATE TABLE `lm_user_message`  (
+  `id` int(11) UNSIGNED NOT NULL AUTO_INCREMENT,
+  `user_id` int (11)  DEFAULT 0 COMMENT '用户id',
+  `phone` varchar (20)  DEFAULT '' COMMENT '手机号',
+  `name` varchar (20)  DEFAULT '' COMMENT '银行卡持卡人',
+  `bank_name` varchar (255)  DEFAULT '' COMMENT '银行卡名称',
+  `bank_number` varchar (255)  DEFAULT '' COMMENT '银行卡号',
+  `bank_branch` varchar (255)  DEFAULT '' COMMENT '开户支行',
+  `ali_pay` varchar (255)  DEFAULT '' COMMENT '支付宝账号',
+  `wx_pay` varchar (255)  DEFAULT '' COMMENT '微信账号',
+  `ali_pay_image` varchar (255)  DEFAULT '' COMMENT '支付宝收款码',
+  `wx_pay_image` varchar (255)  DEFAULT '' COMMENT '微信收款码',
+  PRIMARY KEY (`id`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '会员收款信息' ROW_FORMAT = Compact;
+
+DROP TABLE IF EXISTS `lm_user_level`;
+CREATE TABLE `lm_user_level`  (
+  `id` int(11) UNSIGNED NOT NULL AUTO_INCREMENT,
+  `level` int (11)  DEFAULT 0 COMMENT '等级',
+  `bili` varchar (20)  DEFAULT '0' COMMENT '优惠比例',
+  PRIMARY KEY (`id`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '会员等级优惠' ROW_FORMAT = Compact;
+
+
+DROP TABLE IF EXISTS `lm_mining`;
+CREATE TABLE `lm_mining`  (
+  `id` int(11) UNSIGNED NOT NULL AUTO_INCREMENT,
+  `num` int (11)  DEFAULT 0 COMMENT '数量',
+  `mining` int (11)  DEFAULT 0 COMMENT '矿池数量',
+  `enlarge_quota` int (11)  DEFAULT 0 COMMENT '放大额度',
+   `ensure_money` decimal (20,2)  DEFAULT '0' COMMENT '保证金',
+   `breach_money` decimal (20,2)  DEFAULT '0' COMMENT '违约金',
+   `out_game` decimal (20,2)  DEFAULT '0' COMMENT '出局手续费',
+   `direct_push` decimal (20,2)  DEFAULT '0' COMMENT '直推获得',
+   `second_push` decimal (20,2)  DEFAULT '0' COMMENT '次推获得',
+   `create_time` varchar (20)DEFAULT '' COMMENT '创建时间',
+   `status` int (1)DEFAULT 0 COMMENT '0 进行中 1 暂停中',
+  PRIMARY KEY (`id`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '矿区' ROW_FORMAT = Compact;
+
+DROP TABLE IF EXISTS `lm_banner`;
+CREATE TABLE `lm_banner`  (
+  `id` int(11) UNSIGNED NOT NULL AUTO_INCREMENT,
+  `image` varchar (255)  DEFAULT '' COMMENT '图片',
+  `status` int (1)  DEFAULT '0' COMMENT '0 显示 1 不显示',
+  `text` text  DEFAULT '' COMMENT '内容',
+  PRIMARY KEY (`id`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '轮播图' ROW_FORMAT = Compact;
+
+DROP TABLE IF EXISTS `lm_notice`;
+CREATE TABLE `lm_notice`  (
+  `id` int(11) UNSIGNED NOT NULL AUTO_INCREMENT,
+  `name` varchar (255)  DEFAULT '' COMMENT '标题',
+  `status` int (1)  DEFAULT '0' COMMENT '0 显示 1 不显示',
+  `text` text  DEFAULT '' COMMENT '内容',
+  PRIMARY KEY (`id`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '公告' ROW_FORMAT = Compact;
+
+DROP TABLE IF EXISTS `lm_message`;
+CREATE TABLE `lm_message`  (
+  `id` int(11) UNSIGNED NOT NULL AUTO_INCREMENT,
+  `type` int (10)  DEFAULT '0' COMMENT '0 系统提示 1 资金 2 交易',
+  `name` varchar (255)  DEFAULT '' COMMENT '标题',
+  `status` int (1)  DEFAULT '0' COMMENT '0 未度 1 已读',
+  `content` varchar (255)  DEFAULT '' COMMENT '说明',
+  PRIMARY KEY (`id`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '消息推送' ROW_FORMAT = Compact;
+
+
+DROP TABLE IF EXISTS `lm_problem`;
+CREATE TABLE `lm_problem`  (
+  `id` int(11) UNSIGNED NOT NULL AUTO_INCREMENT,
+  `name` varchar (255)  DEFAULT '' COMMENT '标题',
+  `text` text  DEFAULT '' COMMENT '说明',
+  PRIMARY KEY (`id`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '常见问题' ROW_FORMAT = Compact;
+
+
+DROP TABLE IF EXISTS `lm_phone_code`;
+CREATE TABLE `lm_phone_code`  (
+  `id` int(11) UNSIGNED NOT NULL AUTO_INCREMENT,
+  `phone` varchar (20)  DEFAULT '' COMMENT '手机号',
+  `code` varchar (20)  DEFAULT '' COMMENT '验证码',
+  `add_time` varchar (20)  DEFAULT '' COMMENT '验证码',
+  PRIMARY KEY (`id`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '验证码' ROW_FORMAT = Compact;
+
+DROP TABLE IF EXISTS `lm_feedback`;
+CREATE TABLE `lm_feedback`  (
+  `id` int(11) UNSIGNED NOT NULL AUTO_INCREMENT,
+  `user_id` int (11) DEFAULT 0 COMMENT '用户id',
+  `content` varchar (255)DEFAULT '' COMMENT '内容',
+  `image` text DEFAULT '' COMMENT '图片,拼接',
+  `add_time` text DEFAULT '' COMMENT '添加时间',
+  PRIMARY KEY (`id`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '反馈意见' ROW_FORMAT = Compact;
+
+DROP TABLE IF EXISTS `lm_state`;
+CREATE TABLE `lm_state`  (
+  `id` int(11) UNSIGNED NOT NULL AUTO_INCREMENT,
+  `user_id` int (11) DEFAULT 0 COMMENT '用户id',
+  `order` int (11) DEFAULT 0 COMMENT '订单id',
+  `content` varchar (255)DEFAULT '' COMMENT '内容',
+  `image` text DEFAULT '' COMMENT '图片,拼接',
+  `add_time` text DEFAULT '' COMMENT '添加时间',
+  PRIMARY KEY (`id`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '申述' ROW_FORMAT = Compact;
+
+DROP TABLE IF EXISTS `lm_order`;
+CREATE TABLE `lm_order`  (
+  `id` int(11) UNSIGNED NOT NULL AUTO_INCREMENT,
+  `type` int (1)  DEFAULT 0 COMMENT '0 买入 1 卖出',
+  `buy_user` int (11)  DEFAULT 0 COMMENT '购买用户id',
+  `push_user` int (11)  DEFAULT 0 COMMENT '卖出用户id',
+  `number` int (11)  DEFAULT 0 COMMENT '发布数量',
+  `enlarge_quota` int (11)  DEFAULT 0 COMMENT '放大额度',
+  `order` varchar (255)  DEFAULT '' COMMENT '订单编号',
+  `mining_id` int (11)  DEFAULT 0 COMMENT '区块id',
+  `status` int (1)  DEFAULT 0 COMMENT '0 无匹配或待支付 1 已匹配或已支付 3 已完成 4 已撤销 5 交易失败',
+  `add_time` varchar (20)  DEFAULT '' COMMENT '添加时间',
+  `stat_time` varchar (20)  DEFAULT '' COMMENT '未支付结束时间',
+  `end_time` varchar (20)  DEFAULT '' COMMENT '完成时间',
+  `msg` varchar (255)  DEFAULT '' COMMENT '失败原因',
+  `image`text  DEFAULT '' COMMENT '上传图片,拼接',
+  `breach_money` decimal (20,2)  DEFAULT '0' COMMENT '违约金',
+   `out_game` decimal (20,2)  DEFAULT '0' COMMENT '出局手续费',
+  PRIMARY KEY (`id`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '发布订单' ROW_FORMAT = Compact;
+
+DROP TABLE IF EXISTS `lm_order_frequency`;
+CREATE TABLE `lm_order_frequency`  (
+  `id` int(11) UNSIGNED NOT NULL AUTO_INCREMENT,
+  `user_id` int (11)  DEFAULT 0 COMMENT '用户id',
+  `mining_id` int (11)  DEFAULT 0 COMMENT '区块id',
+  `buy` int (11)  DEFAULT 0 COMMENT '买入次数',
+  `push` int (11)  DEFAULT 0 COMMENT '卖出次数',
+  PRIMARY KEY (`id`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '交易次数统计' ROW_FORMAT = Compact;
+
+DROP TABLE IF EXISTS `lm_vendibility_finance`;
+CREATE TABLE `lm_vendibility_finance`  (
+  `id` int(11) UNSIGNED NOT NULL AUTO_INCREMENT,
+  `user_id` int (11)  DEFAULT 0 COMMENT '用户id',
+  `mining_id` int (11)  DEFAULT 0 COMMENT '区块id',
+  `money` decimal (20,2)  DEFAULT 0 COMMENT '获得交易区块',
+  `pool` int(11)  DEFAULT 0 COMMENT '矿池数量',
+  `push_money` decimal (20,2)  DEFAULT 0 COMMENT '可售额度',
+  `add_time` varchar (20) DEFAULT '' COMMENT '添加时间',
+  `buy` int (11) DEFAULT 0 COMMENT '当前买入次数',
+  `push` int (11) DEFAULT 0 COMMENT '当前卖出次数',
+  `status` int (1) DEFAULT 0 COMMENT '0 增加 1 减少',
+  PRIMARY KEY (`id`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '可售余额' ROW_FORMAT = Compact;
+
+
+DROP TABLE IF EXISTS `lm_commission_finance`;
+CREATE TABLE `lm_commission_finance`  (
+  `id` int(11) UNSIGNED NOT NULL AUTO_INCREMENT,
+  `user_id` int (11)  DEFAULT 0 COMMENT '用户id',
+  `name` varchar (255)  DEFAULT '' COMMENT '名称',
+  `money` decimal (20,2)  DEFAULT 0 COMMENT '金额',
+   `status` int (1) DEFAULT 0 COMMENT '0 增加 1 减少',
+  `add_time` varchar (20) DEFAULT 0 COMMENT '添加时间',
+  PRIMARY KEY (`id`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '佣金记录' ROW_FORMAT = Compact;
+
+
+DROP TABLE IF EXISTS `lm_bond_finance`;
+CREATE TABLE `lm_bond_finance`  (
+  `id` int(11) UNSIGNED NOT NULL AUTO_INCREMENT,
+  `user_id` int (11)  DEFAULT 0 COMMENT '用户id',
+  `name` varchar (255)  DEFAULT '' COMMENT '名称',
+  `money` decimal (20,2)  DEFAULT 0 COMMENT '金额',
+   `status` int (1) DEFAULT 0 COMMENT '0 增加 1 减少',
+  `add_time` varchar (20) DEFAULT 0 COMMENT '添加时间',
+  PRIMARY KEY (`id`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '保证金记录' ROW_FORMAT = Compact;
+
+DROP TABLE IF EXISTS `lm_bond`;
+CREATE TABLE `lm_bond`  (
+  `id` int(11) UNSIGNED NOT NULL AUTO_INCREMENT,
+  `user_id` int (11)  DEFAULT 0 COMMENT '用户id',
+  `type` int (1)  DEFAULT 0 COMMENT '0 充值 1 提现',
+  `money` decimal (20,2)  DEFAULT 0 COMMENT '金额',
+   `status` int (1) DEFAULT 0 COMMENT '0 申请中 1 审核通过',
+  `add_time` varchar (20) DEFAULT 0 COMMENT '添加时间',
+  PRIMARY KEY (`id`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '保证金提现和充值' ROW_FORMAT = Compact;
+
+
+DROP TABLE IF EXISTS `lm_general_finance`;
+CREATE TABLE `lm_general_finance`  (
+  `id` int(11) UNSIGNED NOT NULL AUTO_INCREMENT,
+  `user_id` int (11)  DEFAULT 0 COMMENT '用户id',
+  `money` decimal (20,2)  DEFAULT 0 COMMENT '金额',
+  `actual_money` decimal (20,2)  DEFAULT 0 COMMENT '实际到账金额',
+  `charge_money` decimal (20,2)  DEFAULT 0 COMMENT '手续费',
+   `status` int (1) DEFAULT 0 COMMENT '0 申请中 1 审核通过',
+  `add_time` varchar (20) DEFAULT 0 COMMENT '添加时间',
+  PRIMARY KEY (`id`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '通证充值' ROW_FORMAT = Compact;
+
+
+DROP TABLE IF EXISTS `lm_general_transfer`;
+CREATE TABLE `lm_general_transfer`  (
+  `id` int(11) UNSIGNED NOT NULL AUTO_INCREMENT,
+  `user_id` int (11)  DEFAULT 0 COMMENT '用户id',
+  `puser_id` int (11)  DEFAULT 0 COMMENT '收款用户id',
+  `account` varchar (255)  DEFAULT 0 COMMENT '转账账户',
+  `money` decimal (20,2)  DEFAULT 0 COMMENT '金额',
+   `status` int (1) DEFAULT 0 COMMENT '0 申请中 1 审核通过',
+  `add_time` varchar (20) DEFAULT 0 COMMENT '添加时间',
+  PRIMARY KEY (`id`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '通证转账' ROW_FORMAT = Compact;
+
+
+DROP TABLE IF EXISTS `lm_finance`;
+CREATE TABLE `lm_finance`  (
+  `id` int(11) UNSIGNED NOT NULL AUTO_INCREMENT,
+  `user_id` int (11)  DEFAULT 0 COMMENT '用户id',
+  `name` varchar (255)  DEFAULT 0 COMMENT '金额',
+  `money` decimal (20,2)  DEFAULT 0 COMMENT '金额',
+  `status` int (1)  DEFAULT 0 COMMENT '0 增加 1减少',
+  `add_time` varchar (20) DEFAULT 0 COMMENT '添加时间',
+  PRIMARY KEY (`id`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '资产明细' ROW_FORMAT = Compact;
+
+
+DROP TABLE IF EXISTS `lm_system`;
+CREATE TABLE `lm_system`  (
+  `id` int(11) UNSIGNED NOT NULL AUTO_INCREMENT,
+  `name` varchar (128)  DEFAULT '' COMMENT '变量名称',
+  `value` text  DEFAULT '' COMMENT '内容',
+  `type` varchar (128) DEFAULT '' COMMENT '类型',
+  PRIMARY KEY (`id`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '系统设置' ROW_FORMAT = Compact;
+
+
+DROP TABLE IF EXISTS `lm_about`;
+CREATE TABLE `lm_about`  (
+  `id` int(11) UNSIGNED NOT NULL AUTO_INCREMENT,
+  `text` text  DEFAULT '' COMMENT '内容',
+  PRIMARY KEY (`id`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '关于我们' ROW_FORMAT = Compact;

+ 0 - 18
php/addons/text/config.php

@@ -1,18 +0,0 @@
-<?php
-/**
- * Created by PhpStorm.
- * User: anyluck
- * Date: 2020/1/14
- * Time: 17:38
- */
-return [
-    'display' => [
-        'title' => '是否显示:',
-        'type' => 'radio',
-        'options' => [
-            '1' => '显示',
-            '0' => '不显示'
-        ],
-        'value' => '1'
-    ]
-];

+ 0 - 63
php/addons/text/controller/Pugin.php

@@ -1,63 +0,0 @@
-<?php
-/**
- * Created by PhpStorm.
- * User: Administrator
- * Date: 2020/1/14
- * Time: 17:05
- */
-
-namespace addons\text;
-
-
-use think\Addons;
-
-/**
- * Class Pugin
- * @package addons\text
- */
-class Pugin extends Addons
-{
-    // 该插件的基础信息
-    public $info = [
-        'name' => 'test',    // 插件标识
-        'title' => '插件测试',    // 插件名称
-        'description' => 'thinkph6插件测试',    // 插件简介
-        'status' => 0,    // 状态
-        'author' => 'byron sampson',
-        'version' => '0.1'
-    ];
-
-
-    /**
-     * 插件安装方法
-     * @return bool
-     */
-    public function install()
-    {
-        // TODO: Implement install() method.
-        return true;
-    }
-    /**
-     * 插件卸载方法
-     * @return bool
-     */
-    public function uninstall()
-    {
-        // TODO: Implement uninstall() method.
-        return true;
-    }
-
-    /**
-     * 实现的testhook钩子方法
-     * @return mixed
-     */
-    public function testhook($param)
-    {
-        // 调用钩子时候的参数信息
-        print_r($param);
-        // 当前插件的配置信息,配置信息存在当前目录的config.php文件中,见下方
-        print_r($this->getConfig());
-        // 可以返回模板,模板文件默认读取的为插件目录中的文件。模板名不能为空!
-        return $this->fetch('info');
-    }
-}

+ 0 - 15
php/addons/text/controller/Text.php

@@ -1,15 +0,0 @@
-<?php
-/**
- * Created by PhpStorm.
- * User: anyluck
- * Date: 2020/1/14
- * Time: 17:29
- */
-
-namespace addons\text;
-
-
-class Text
-{
-
-}

+ 0 - 10
php/addons/text/view/pugin/info.html

@@ -1,10 +0,0 @@
-<!DOCTYPE html>
-<html lang="en">
-<head>
-    <meta charset="UTF-8">
-    <title>Title</title>
-</head>
-<body>
-
-</body>
-</html>

Файловите разлики са ограничени, защото са твърде много
+ 0 - 25016
php/any_college.sql


Файловите разлики са ограничени, защото са твърде много
+ 0 - 25064
php/any_college2020-2-27.sql


+ 0 - 255
php/app/admin/controller/Adv.php

@@ -1,255 +0,0 @@
-<?php
-/**
- * lemocms
- * ============================================================================
- * 版权所有 2018-2027 lemocms,并保留所有权利。
- * 网站地址: https://www.lemocms.com
- * ----------------------------------------------------------------------------
- * 采用最新Thinkphp6实现
- * ============================================================================
- * Author: yuege
- * Date: 2019/8/2
- */
-namespace app\admin\controller;
-
-use app\common\controller\Backend;
-use app\common\model\AdvPosition;
-use think\facade\Db;
-use think\facade\Request;
-use think\facade\View;
-use app\common\model\Adv as AdvModel;
-class Adv extends Backend {
-
-    public function initialize(){
-        parent::initialize();
-    }
-    /*-----------------------广告管理----------------------*/
-    // 广告列表
-    public function index()
-    {
-        if(Request::isPost()){
-            $keys = Request::post('keys','','trim');
-            $page = Request::post('page') ? Request::post('page') : 1;
-            $list=Db::name('adv')->alias('a')
-                ->join('adv_position ap','a.pid = ap.id','left')
-                ->field('a.*,ap.position_name,ap.position_desc')
-                ->where('a.ad_name','like','%'.$keys.'%')
-                ->order('a.sort desc,a.id desc')
-                ->paginate(['list_rows' => $this->pageSize, 'page' => $page])
-                ->toArray();
-            return $result = ['code'=>0,'msg'=>lang('get info success'),'data'=>$list['data'],'count'=>$list['total']];
-        }
-
-        return View::fetch();
-    }
-
-    // 广告添加
-    public function add()
-    {
-        if (Request::isPost()) {
-            $data = Request::post();
-            try{
-                $this->validate($data, 'Adv');
-            }catch (\Exception $e){
-                $this->error($e->getMessage());
-            }
-            if($data['time']){
-                $time = explode(' - ',$data['time']);
-                $data['start_time'] = strtotime($time[0]);
-                $data['end_time'] = strtotime($time[1]);
-            }else{
-                $data['start_time'] = '';
-                $data['end_time'] = '';
-            }
-
-            //添加
-            $result = AdvModel::create($data);
-            if ($result) {
-                $this->success(lang('add success'), url('index'));
-            } else {
-                $this->error(lang('add fail'));
-            }
-        } else {
-            $info = '';
-            $posGroup = AdvPosition::where('status', 1)->select();
-            $view = [
-                'info'  =>$info,
-                'posGroup' => $posGroup,
-                'title' => lang('add'),
-            ];
-            View::assign($view);
-            return View::fetch();
-        }
-    }
-    /**
-     * 广告修改
-     */
-    public function edit()
-    {
-        if (Request::isPost()) {
-            $data = Request::post();
-            try{
-                $this->validate($data, 'Adv');
-            }catch (\Exception $e){
-                $this->error($e->getMessage());
-            }
-            AdvModel::update($data);
-            $this->success(lang('edit success'), url('index'));
-
-        } else {
-            $id = Request::param('id');
-            if ($id) {
-                $posGroup = AdvPosition::where('status', 1)->select();
-                $info = AdvModel::find($id);
-                $info['time'] = date('Y-m-d',$info['start_time']).' - '.date('Y-m-d',$info['end_time']);
-                $view = [
-                    'info' => $info,
-                    'posGroup' => $posGroup,
-                    'title' => '编辑',
-                ];
-                View::assign($view);
-                return View::fetch('add');
-            }
-        }
-    }
-
-
-    // 广告删除
-    public function delete()
-    {
-        $id = Request::post('id');
-        AdvModel::destroy($id);
-        $this->success(lang('delete success'));
-
-    }
-
-
-
-    // 广告状态修改
-    public function state()
-    {
-        if (Request::isPost()) {
-            $id = Request::post('id');
-            if (empty($id)) {
-                $this->error('id'.lang('not exist'));
-            }
-            $adv = AdvModel::find($id);
-            $status = $adv['status'] == 1 ? 0 : 1;
-            $adv->status = $status;
-            $adv->save();
-            $this->success(lang('edit success'));
-        }
-    }
-
-
-    /*-----------------------广告位置管理----------------------*/
-
-    // 广告位置管理
-    public function pos()
-    {
-        if(Request::isPost()){
-            //条件筛选
-            $keys = Request::param('keys');
-
-            //查出所有数据
-            $list = AdvPosition::where('position_name','like','%'.$keys.'%')
-                ->order('id desc')
-                ->paginate(
-                    $this->pageSize, false,
-                    ['query' => Request::param()]
-                )->toArray();
-            return $result = ['code'=>0,'msg'=>lang('get info success'),'data'=>$list['data'],'count'=>$list['total']];
-
-        }
-
-
-        return View::fetch();
-
-    }
-
-
-
-    // 广告位置添加
-    public function posAdd()
-    {
-        if (Request::isPost()) {
-            $data = Request::post();
-            try {
-                $this->validate($data, 'AdvPosition');
-            } catch (\Exception $e) {
-                $this->error($e->getMessage());
-            }
-            $result = AdvPosition::create($data);
-            if ($result) {
-                $this->success(lang('add  success'), url('pos'));
-            } else {
-                $this->error(lang('add fail'));
-            }
-
-        } else {
-            $view = [
-                'info' => null,
-                'title' => lang('add')
-            ];
-            View::assign($view);
-            return View::fetch('pos_add');
-        }
-    }
-
-    // 广告位置修改
-    public function posEdit()
-    {
-        if (Request::isPost()) {
-            $data = Request::post();
-
-            try{
-                $this->validate($data, 'AdvPosition');
-            }catch (\Exception $e){
-                $this->error($e->getMessage());
-            }
-            $where['id'] = $data['id'];
-            $res = AdvPosition::update($data, $where);
-            if($res){
-
-                $this->success(lang('edit success'), url('pos'));
-            }else{
-                $this->error(lang('edit fail'));
-
-            }
-
-        } else {
-            $id = Request::param('id');
-            $info = AdvPosition::find(['id' => $id]);
-            $view = [
-                'info' => $info,
-                'title' => lang('edit')
-            ];
-            View::assign($view);
-            return View::fetch('pos_add');
-        }
-    }
-
-    // 广告位置状态修改
-    public function posState()
-    {
-        if (Request::isPost()) {
-            $id = Request::param('id');
-            $info = AdvPosition::find($id);
-            $info->status = $info['status'] == 1 ? 0 : 1;
-            $info->save();
-            $this->success(lang('edit success'));
-
-        }
-    }
-    // 广告位置删除
-    public function posDel()
-    {
-        $id = Request::post('id');
-
-        AdvPosition::destroy($id);
-        $this->success(lang('delete success'));
-
-
-    }
-
-   }

+ 55 - 0
php/app/admin/controller/Agent.php

@@ -0,0 +1,55 @@
+<?php
+/**
+ *
+ * User: anyluck
+ * Date: 2020/6/2
+ * Time: 17:36
+ */
+
+namespace app\admin\controller;
+
+
+class Agent
+{
+ // 代理商
+
+    /**
+     * 代理商列表
+     */
+    public function index()
+    {
+        
+    }
+
+    /**
+     * 代理商详情
+     */
+    public function show()
+    {
+
+    }
+
+    /**
+     * 停用代理商
+     */
+    public function update_status()
+    {
+
+    }
+
+    /**
+     * 下级用户列表
+     */
+    public function xiaji()
+    {
+        
+    }
+
+    /**
+     * 代理充值
+     */
+    public function chongzhi()
+    {
+
+    }
+}

+ 31 - 0
php/app/admin/controller/Certificate.php

@@ -0,0 +1,31 @@
+<?php
+/**
+ *
+ * User: anyluck
+ * Date: 2020/6/2
+ * Time: 17:39
+ */
+
+namespace app\admin\controller;
+
+
+class Certificate
+{
+ //通证管理
+
+    /**
+     * 通证管理
+     */
+    public function index()
+    {
+        
+    }
+
+    /**
+     * BTS管理
+     */
+    public function bts()
+    {
+
+    }
+}

+ 3 - 13
php/app/admin/controller/Contents.php

@@ -103,17 +103,12 @@ class Contents extends Backend
             json_result(1,"修改成功");
         }
         $data=Db::name("about")->where(["id"=>1])->value("text");
-//        var_dump(date("Y-m-d",time()));
-
-
         $view = [
             'info' => $data,
             'title' => lang('add'),
         ];
         View::assign($view);
        return View::fetch();
-
-
     }
 
     //
@@ -126,15 +121,10 @@ class Contents extends Backend
             $page=input("page")?:1;
             $limit=input("limit")?:10;
             $where=[];
-            if ($name){
-                $where["name"]=["like","% $name %"];
-            }
+//            if ($name){
+//                $where["name"]=["like","% $name %"];
+//            }
             $list=Db::name("feedback")->order("id desc")->where($where)->paginate(["list_row"=>$limit,"page"=>$page])->each(function ($item){
-                if ($item["create_time"]){
-//                    var_dump($item["create_time"]);
-//                    $date=date('Y-m-s h:i:s',$item["create_time"]);
-//                    $item["create_time"]=$date;
-                }
                 return $item;
 
             })->toArray();

+ 0 - 330
php/app/admin/controller/Curriculum.php

@@ -1,330 +0,0 @@
-<?php
-//declare (strict_types = 1);
-
-namespace app\admin\controller;
-
-use app\admin\model\Video;
-use app\common\controller\Backend;
-
-use think\facade\Db;
-use think\facade\Request;
-use think\facade\Session;
-use think\facade\View;
-use Ramsey\Uuid\Uuid;
-
-class Curriculum extends Backend
-{
-    // todo 课程管理
-
-    // 上传的课程
-    public function index()
-    {
-//        Uuid::uuid1();
-    }
-
-    // 我发布的课程
-    public function my()
-    {
-        if (Request::isPost()) {
-            $page = input("page") ?: 1;
-            $name = input("name", '', 'trim');
-//            $admin = is_admin();
-            $where = [];
-//            if ($admin) {
-//                $where["c.subject_id"] = $admin;
-//            }
-            if ($name) {
-                $where["c.grade|s.name|su.name"] = $name;
-            }
-
-            if ( $this->quanxian==1){
-                $where["c.creater_id"]=$this->adminid;
-            }
-            if ($this->project){
-                $where["c.major_id"]=$this->project;
-            }
-            $list = Db::name("course")
-                ->alias("c")
-                ->order("c.id desc")
-                ->leftJoin("subject s", "c.major_id=s.id")
-                ->leftJoin("subject su", "c.subject_id=su.id")
-                ->where($where)
-                ->field("c.*,s.name major,su.name subject")
-                ->paginate(['list_rows' => $this->pageSize, 'page' => $page])
-                ->each(function ($item) {
-                    if ($item["create_time"]) {
-                        $item["create_time"] = date('Y-m-d H:i:s', $item["create_time"]);
-                    }
-                    return $item;
-                })
-                ->toArray();
-            return $result = ['code' => 0, 'msg' => lang('get info success'), 'data' => $list['data'], 'count' => $list['total']];
-        }
-        return View::fetch();
-    }
-
-// 删除课程
-    public function del_course()
-    {
-        $id = input("id");
-        $course = Db::name("course")->where(["id" => $id])->delete();
-        if ($course) {
-            json_result(1, "操作成功");
-        }
-        json_result(2, "操作失败");
-
-    }
-
-// 添加或者修改课程
-    public function add()
-    {
-        if (Request::isPost()) {
-            $id = input("id");
-            $add["major_id"] = input("major_id") ?: json_result(2, "请选择专业");
-            $add["subject_id"] = input("subject_id") ?: json_result(2, "请选科目");
-//            $add["founder"]=
-            $add["person"] = input("person") ?: json_result(2, "请填写加入学习计划人数");
-            $add["image"] = input("image") ?: json_result(2, "请选封面");
-            $add["teachers"] = input("teachers") ?: json_result(2, "请选任课教师");
-            $add["content"] = input("content") ?: json_result(2, "请选科目简介");
-            $add["grade"] = input("grade") ?: json_result(2, "请选年级");
-//            $add["name"] = input("name") ?: json_result(2, "请选课程名");
-            $add["class_id"] = input("class_id") ?: json_result(2, "请选课程");
-
-
-
-            $add["update_time"] = time();
-
-            $name=Db::name("subject")->where(["id"=>$add["subject_id"]])->find();
-            $add["name"] =$name["name"];
-            if ($id) {
-
-                Db::name("course")->where(["id" => $id])->update($add);
-            } else {
-
-                $add["create_time"] = time();
-                $admin=Session::get("admin");
-                $add["founder"] = $admin["username"];
-
-                    $add["creater_id"]=$this->adminid;
-
-
-                Db::name("course")->insert($add);
-            }
-            json_result(1, "操作成功");
-        }
-
-        $id = input("id");
-        if ($id) {
-            $examination = Db::name("course")->where(["id" => $id])->find();
-            $examination["teachers"]=explode(",",$examination["teachers"]);
-        } else {
-            $examination = [];
-        }
-        $data["examination"] = $examination;
-        $whers["major_id"] = ["!=", 0];
-        $data["major"] = Db::name("subject")->where($whers)->select();
-        $data["laboratory"] = Db::name("laboratory")->where("status", "=", "0")->field("id,name,person")->select();
-        $data["user"] = Db::name("user")->where("type", "=", "2")->field("id,name")->select();
-//            dump($data);
-        View::assign("info", $data);
-        return View::fetch();
-    }
-
-    // 科目
-    public function subject_kemu()
-    {
-        $id = input("id");
-        if ($id) {
-            $where["major_id"] = $id;
-            $major = Db::name("subject")->where($where)->field("id,name")->select();
-            if ($major) {
-                json_result(1, "", $major);
-            } else {
-                json_result(2, "未添加科目");
-            }
-        } else {
-            json_result(2);
-        }
-    }
-
-    //课程材料表
-    public function materiallist()
-    {
-
-        if (Request::isPost()) {
-//            dump($course_id);die();
-            $course_id = input("course_id");
-            $page = input("page") ?: 1;
-            $limit = input("limit") ?: 10;
-            $where["course_id"] = $course_id;
-            $list = Db::name("course_material")->where($where)->paginate(["list_rows" => $limit, "page" => $page])->each(function ($item){
-                $item["create_time"]=date("Y-m-d H:i:s",(int)$item["create_time"]);
-                return $item;
-            })->toArray();
-            return $result = ['code' => 0, 'msg' => lang('get info success'), 'data' => $list['data'], 'count' => $list['total']];
-        }
-        $course_id = input("course_id");
-        View::assign("course_id", $course_id);
-        return View::fetch();
-
-    }
-
-
-    public function getini()
-    {
-//        ini_set("upload_max_filesize","1000M");//即允许上传文件大小的最大值
-//        ini_set("post_max_size","1001M");//指通过表单POST给PHP的所能接收的最大值
-//        ini_set("memory_limit","9M");//;每个PHP页面所吃掉的最大内存
-
-       $upload_max_filesize= ini_get("upload_max_filesize");
-       $post_max_size= ini_get("post_max_size");
-       $memory_limit= ini_get("memory_limit");
-
-        d($upload_max_filesize);
-        d($post_max_size);
-        d($memory_limit);
-    }
-    // 上传资料
-    public function addmaterial()
-    {
-
-        if (Request::isPost()) {
-            $course_id = input("course_id");
-            $id = input("id");
-            $add["name"] = input("name") ?: json_result(2, "请设置材料名称");
-            $add["url"] = input("url") ?: json_result(2, "请上传材料");
-            $add["update_time"] = time();
-
-            $filesize=0;
-            $filetype="";
-                if (is_file(Pah.$add["url"])){
-                    $filesizes=filesize(Pah.$add["url"]);
-                    $filesize = round($filesizes/1024/1024,2);
-                    $filetype=pathinfo(Pah.$add["url"])["extension"];
-                }
-            $add["size"]=$filesize;
-            $add["type"]=$filetype;
-
-            if ($id) {
-                Db::name("course_material")->where(["id" => $id])->update($add);
-            } else {
-                $add["create_time"] = time();
-                $add["course_id"] = $course_id;
-
-                Db::name("course_material")->insert($add);
-            }
-            json_result(1, "操作成功");
-        }
-
-        $id = input("id");
-        $course_id = input("course_id");
-        $data = Db::name("course_material")->where(["id" => $id])->find();
-        View::assign("info", $data);
-        View::assign("course_id", $course_id);
-
-        return View::fetch();
-
-
-    }
-
-    // 删除课程材料
-    public function del_material()
-    {
-        $id = input("id");
-        Db::name("course_material")->where(["id" => $id])->delete();
-        json_result(1, "删除成功");
-
-    }
-
-    //课程视频表
-    public function videolist()
-    {
-        if (Request::isPost()) {
-            $course_id = input("course_id");
-            $page = input("page") ?: 1;
-            $limit = input("limit") ?: 10;
-            $where["course_id"] = $course_id;
-            $list = Db::name("course_video")->order("order desc")->where($where)->paginate(["list_rows" => $limit, "page" => $page])->each(function ($item){
-                $item["create_time"]=date("Y-m-d H:i:s",(int)$item["create_time"]);
-                return $item;
-            })->toArray();
-            return $result = ['code' => 0, 'msg' => lang('get info success'), 'data' => $list['data'], 'count' => $list['total']];
-        }
-        $course_id = input("course_id");
-        View::assign("course_id", $course_id);
-        return View::fetch();
-    }
-
-    // 上传视频
-    public function addvideo()
-    {
-        if (Request::isPost()) {
-
-            $course_id = input("course_id");
-            $id = input("id");
-            $add["name"] = input("name") ?: json_result(2, "请设置视频名称");
-            $add["url"] = input("url") ?: json_result(2, "请上传视频");
-            $add["order"] = input("order") ?: json_result(2, "第几节课程");
-            $add["backimge"] = input("image") ?: json_result(2, "视频封面");
-            $add["update_time"] = time();
-                    if (!is_numeric($add["order"])||strpos($add["order"],".")!==false){
-                        json_result(2,"课程章节 只能是 整数");
-                    }
-
-            if ($add["url"]){
-                $filesize=0;
-                $filetype="";
-                $videotime=0;
-                if (is_file(Pah.$add["url"])){
-                    $filesizes=filesize(Pah.$add["url"]);
-                    $filesize = round($filesizes/1024/1024,2);
-                    $filetype=pathinfo(Pah.$add["url"])["extension"];
-                }
-                if (!$add["backimge"]){
-                    $video=Video::ffmpeg_getTime(Pah.$add["url"]);
-                    $add["backimge"]=$video["img"];
-                    $add["time"]=$video["seconds"];
-//                    dump($video);
-                }else{
-                    $video=Video::video_time(Pah.$add["url"]);
-                    $add["time"]=$video;
-//                    dump($video);
-                }
-
-
-                $add["size"]=$filesize;
-                $add["type"]=$filetype;
-                $add["time_long"]=$tim= gmdate("H:i:s", $add["time"]);;
-            }
-
-//        dump($add);return ;
-            if ($id) {
-                Db::name("course_video")->where(["id" => $id])->update($add);
-            } else {
-                $add["create_time"] = time();
-                $add["course_id"] = $course_id;
-
-                Db::name("course_video")->insert($add);
-            }
-            json_result(1, "操作成功");
-        }
-
-        $id = input("id");
-        $data = Db::name("course_video")->where(["id" => $id])->find();
-        View::assign("info", $data);
-        $course_id = input("course_id");
-        View::assign("course_id", $course_id);
-
-        return View::fetch();
-    }
-
-    // 删除视频
-    public function del_video()
-    {
-        $id = input("id");
-        Db::name("course_video")->where(["id" => $id])->delete();
-        json_result(1, "删除成功");
-
-    }
-}

+ 56 - 0
php/app/admin/controller/Finance.php

@@ -0,0 +1,56 @@
+<?php
+/**
+ *
+ * User: anyluck
+ * Date: 2020/6/2
+ * Time: 17:43
+ */
+
+namespace app\admin\controller;
+
+
+class Finance
+{
+// 财务管理
+
+    /**
+     * 财务统计
+     */
+    public function tongji()
+    {
+
+}
+
+    /**
+     * 充值审核
+     */
+    public function shenhe()
+    {
+
+}
+
+    /**
+     * 充值记录
+     */
+    public function chongzjl()
+    {
+        
+}
+
+    /**
+     * 代理收入
+     */
+    public function daili()
+    {
+
+}
+
+    /**
+     * 赠送记录
+     */
+    public function zhengshon()
+    {
+
+}
+
+}

+ 0 - 393
php/app/admin/controller/Friendship.php

@@ -1,393 +0,0 @@
-<?php
-/**
- *
- * User: anyluck
- * Date: 2020/5/28
- * Time: 12:13
- */
-
-namespace app\admin\controller;
-
-use app\common\controller\Aliyunoss;
-use think\facade\Db;
-use app\common\controller\Backend;
-use think\facade\Request;
-use think\facade\View;
-
-class Friendship extends Backend
-{
-    // 上传图片
-    public function upimage()
-    {
-//        $file = request()->file('image');
-        $file = $_FILES["file"];
-//        $file = $_FILES;
-
-//        dump($file);
-//        die();
-        if (!$file) json_result(400, '请上传图片', '');
-        $Aliyun = new Aliyunoss();
-
-        $aa = $Aliyun->uploadFile($file);
-        json_result(200, '发送成功', $aa);
-    }
-
-    // 主页
-    public function index()
-    {
-
-        // 查询友情链接数量
-        $links=Db::name("links")->count();
-        $banner=Db::name("banner")->count();
-        $user_count=Db::name("admin")->count();
-        // 查询浏览量
-        $liull=Db::name("browse")->where(["type"=>0])->count();
-        $liull_zt=Db::name("browse")->where(["type"=>0])->whereDay("add_time")->count();
-        $user=0;// 独立用户
-        $zhixing=0;// 最终咨询
-
-
-
-        $view = [
-            'info' => [
-                "liull"=>$liull,
-                "liull_zt"=>$liull_zt/($liull-$liull_zt)*100,
-                "user"=>$user,
-                "zhixing"=>$zhixing,
-                "links"=>$links,
-                "banner"=>$banner,
-                "admin"=>$user_count,
-            ],
-            'title' => lang('add'),
-//            'userLevel'=>$userLevel,
-        ];
-        View::assign($view);
-        return View::fetch();
-    }
-
-    // 友情链接列表
-    public function links()
-    {
-        if (Request::isPost()) {
-            $page = input("page") ?: 1;
-            $limit = input("limit") ?: 10;
-            $name = input("name");
-            $where = [];
-            if ($name) {
-                $where["name"] = ["like", "%" . $name . "%"];
-            }
-            $list = Db::name("links")->where($where)->order("pai desc")->paginate(["list_rows" => $limit, "page" => $page])->toArray();
-            return $result = ['code' => 0, 'msg' => lang('get info success'), 'data' => $list['data'], 'count' => $list['total']];
-        } else {
-            return View::fetch();
-        }
-
-    }
-
-//添加或修改友情链接
-    public function add_links()
-    {
-        if (Request::isPost()) {
-            $id = input("id");
-            $name = input("name");
-            $url = input("url");
-
-            $add["name"] = $name;
-            $add["url"] = $url;
-            if ($id) {
-                Db::name("links")->where(["id" => $id])->update($add);
-            } else {
-                Db::name("links")->insert($add);
-            }
-            $this->success(lang('add success'), url('links'));
-            return;
-//            json_result(200,"操作成功");
-        }
-        $id = input("id");
-        $info = "";
-        if ($id) {
-            $info = Db::name("links")->where(["id" => $id])->find();
-        }
-        $view = [
-            'info' => $info,
-            'title' => lang('add'),
-//            'userLevel'=>$userLevel,
-        ];
-        View::assign($view);
-        return View::fetch();
-    }
-
-    // 修改状态
-    public function update_links()
-    {
-        $id = input("id");
-        $status = input("status") ?: 0;
-        Db::name("links")->where(["id" => $id])->update(["status" => $status]);
-        json_result(1, "设置成功");
-    }
-
-    // 修改排序
-    public function update_pai_links()
-    {
-        $id = input("id");
-        $value = input("value");
-        $field = input("field");
-        Db::name("links")->where(["id" => $id])->update([$field => $value]);
-        json_result(1, "设置成功");
-    }
-
-    //删除友情链接
-    public function del_links()
-    {
-        $id = input("id");
-        Db::name("links")->where(["id" => $id])->delete();
-        json_result(1, "删除成功");
-    }
-
-    // 导航管理列表
-    public function dh_list()
-    {
-        if (Request::isPost()) {
-            $page = input("page") ?: 1;
-            $limit = input("limit") ?: 10;
-            $name = input("name");
-            $type = input("type");
-            $where = [];
-            if ($name) {
-                $where["name"] = ["like", "%" . $name . "%"];
-            }
-            if ($type) {
-                $where["type"] = $type;
-            }
-            $list = Db::name("dh")->where($where)->order("pai desc")->paginate(["list_rows" => $limit, "page" => $page])->each(function ($item){
-                if ($item["type"]==1){
-                    $item["type"]="商城系统";
-                }elseif ($item["type"]==2){
-                    $item["type"]="解决方案";
-                }else{
-                    $item["type"]="";
-                }
-
-                return $item;
-            })->toArray();
-            return $result = ['code' => 0, 'msg' => lang('get info success'), 'data' => $list['data'], 'count' => $list['total']];
-        } else {
-            return View::fetch();
-        }
-    }
-
-    // 修改数据
-    public function update_pai_dh()
-    {
-        $id = input("id");
-        $value = input("value");
-        $field = input("field");
-        Db::name("dh")->where(["id" => $id])->update([$field => $value]);
-        json_result(1, "设置成功");
-    }
-
-    // 修改导航栏状态
-    public function update_dh_status()
-    {
-        $id = input("id");
-        $status = input("status") ?: 0;
-        Db::name("dh")->where(["id" => $id])->update(["status" => $status]);
-        json_result(1, "设置成功");
-    }
-
-    // 删除导航
-    public function del_dh()
-    {
-        $id = input("id");
-        Db::name("dh")->where(["id" => $id])->delete();
-        json_result(1, "删除成功");
-    }
-
-    // 添加导航
-    public function add_dh()
-    {
-        if (Request::isPost()) {
-            $id = input("id");
-            $name = input("name");
-            $type = input("type");
-            $status = input("status");
-            $add["name"] = $name;
-            $add["type"] = $type;
-            $add["status"] = $status;
-            if ($id) {
-                Db::name("dh")->where(["id" => $id])->update($add);
-            } else {
-                Db::name("dh")->insert($add);
-            }
-            $this->success(lang('add success'), url('dh_list'));
-            return;
-//            json_result(200,"操作成功");
-        }
-        $id = input("id");
-        $info = "";
-        if ($id) {
-            $info = Db::name("dh")->where(["id" => $id])->find();
-        }
-        $view = [
-            'info' => $info,
-            'title' => lang('add'),
-//            'userLevel'=>$userLevel,
-        ];
-        View::assign($view);
-        return View::fetch();
-    }
-
-
-
-    // 轮播图列表
-    public function banner()
-    {
-        if (Request::isPost()) {
-            $page = input("page") ?: 1;
-            $limit = input("limit") ?: 10;
-            $name = input("name");
-            $type = input("type");
-            $where = [];
-            if ($name) {
-                $where["name"] = ["like", "%" . $name . "%"];
-            }
-            if ($type) {
-                $where["type"] = $type;
-            }
-            $list = Db::name("banner")->where($where)->order("pai desc")->paginate(["list_rows" => $limit, "page" => $page])->each(function ($item){
-
-                return $item;
-            })->toArray();
-            return $result = ['code' => 0, 'msg' => lang('get info success'), 'data' => $list['data'], 'count' => $list['total']];
-        } else {
-            return View::fetch();
-        }
-    }
-
-
-    // 修改数据轮播图
-    public function update_pai_banner()
-    {
-        $id = input("id");
-        $value = input("value");
-        $field = input("field");
-        Db::name("banner")->where(["id" => $id])->update([$field => $value]);
-        json_result(1, "设置成功");
-    }
-
-    // 修改轮播图栏状态
-    public function update_banner_status()
-    {
-        $id = input("id");
-        $status = input("status") ?: 0;
-        Db::name("banner")->where(["id" => $id])->update(["status" => $status]);
-        json_result(1, "设置成功");
-    }
-    //添加或修改轮播图
-    public function add_banner()
-    {
-        if (Request::isPost()) {
-            $id = input("id");
-            $name = input("name");
-            $image = input("image");
-            $url = input("url");
-            $status = input("status");
-            $add["name"] = $name;
-            $add["image"] =$image;
-            $add["url"] =$url;
-            $add["status"] = $status;
-            if ($id) {
-                Db::name("banner")->where(["id" => $id])->update($add);
-            } else {
-                Db::name("banner")->insert($add);
-            }
-            $this->success(lang('add success'), url('banner'));
-            return;
-//            json_result(200,"操作成功");
-        }
-        $id = input("id");
-        $info = "";
-        if ($id) {
-            $info = Db::name("banner")->where(["id" => $id])->find();
-        }
-        $view = [
-            'info' => $info,
-            'title' => lang('add'),
-//            'userLevel'=>$userLevel,
-        ];
-        View::assign($view);
-        return View::fetch();
-    }
-
-    // 删除轮播图
-    public function del_banner()
-    {
-        $id = input("id");
-        Db::name("banner")->where(["id" => $id])->delete();
-        json_result(1, "删除成功");
-    }
-
-    // 统计数据
-    public function statistics()
-    {
-
-        if (Request::isPost()) {
-
-            $type=input("type")?:0;//0 日指标 1 浏览量 2 独立用户 3 最终咨询
-            $day=input("day");// 选中天数
-            $start_time=input("start_time");// 开始时间
-            $end_time=input("end_time");// 结束时间
-            $where=[];
-            $where[]=["type","=",$type];
-            if ($type==0){// 日指标
-                $list=Db::name("browse")->where($where)->whereDay('add_time')->field("add_time,FROM_UNIXTIME(add_time,'%H') as posttime,sum(num) as zong")->group('posttime')->select();
-               //  处理数据
-                $data=[];
-                foreach ($list as $k=>$v){
-                    $data["day"][$k]=$v["posttime"]."点";
-                    $data["data"][$k]=$v["zong"];
-                }
-                json_result(200,"日指标",$data);
-            }elseif ($type==1){// 浏览量
-
-                if ($day){
-                    $start_time=date("Y-m-d",time()).' 23:59:59';
-                    $end_time=date('Y-m-d',strtotime('-'.($day).' days')).' 23:59:59';;
-                }
-                $start_time=strtotime($start_time);
-                $end_time=strtotime($end_time);
-                $list=Db::name("browse")->where(["type"=>0])->where("add_time",">",$end_time)->where("add_time","<",$start_time)->where(["type"=>0])->field("add_time,FROM_UNIXTIME(add_time,'%Y-%m-%d') as posttime,sum(num) as zong")->group('posttime')->select();
-//                json_result($start_time,$end_time,$list);
-                $data=[];
-                foreach ($list as $k=>$v){
-                    $data["day"][$k]=date("m.d",strtotime($v["posttime"]));
-                    $data["data"][$k]=$v["zong"];
-                }
-                json_result(200,"浏览量",$data);
-            }
-
-            $data["data"]=[];
-            $data["day"]=[];
-            json_result(200,"浏览量22",$data);
-
-        }
-
-        // 查询浏览量
-        $liull=Db::name("browse")->where(["type"=>0])->count();
-        $liull_zt=Db::name("browse")->where(["type"=>0])->whereDay("add_time")->count();
-        $user=0;// 独立用户
-        $zhixing=0;// 最终咨询
-        $view = [
-            'info' => [
-                "liull"=>$liull,
-                "liull_zt"=>$liull_zt/($liull-$liull_zt)*100,
-                "user"=>$user,
-                "zhixing"=>$zhixing,
-            ],
-            'title' => lang('add'),
-//            'userLevel'=>$userLevel,
-        ];
-        View::assign($view);
-        return View::fetch();
-    }
-}

+ 1 - 1
php/app/admin/controller/Index.php

@@ -59,7 +59,7 @@ class Index extends Backend{
      */
     public function main(){
         $version = Db::query('SELECT VERSION() AS ver');
-        var_dump($version);die();
+//        var_dump($version);die();
         $config = Cache::get('main_config');
         if(!$config){
             $config  = [

+ 15 - 0
php/app/admin/controller/Information.php

@@ -0,0 +1,15 @@
+<?php
+/**
+ *
+ * User: anyluck
+ * Date: 2020/6/2
+ * Time: 17:45
+ */
+
+namespace app\admin\controller;
+
+
+class Information
+{
+// 信息管理
+}

+ 39 - 0
php/app/admin/controller/Order.php

@@ -0,0 +1,39 @@
+<?php
+/**
+ *
+ * User: anyluck
+ * Date: 2020/6/2
+ * Time: 17:41
+ */
+
+namespace app\admin\controller;
+
+
+class Order
+{
+ // 订单管理
+
+    /**
+     * 求购订单列表
+     */
+    public function buy()
+    {
+        
+    }
+
+    /**
+     * 持有订单列表
+     */
+    public function push()
+    {
+
+    }
+
+    /**
+     * 申述处理
+     */
+    public function bond()
+    {
+        
+    }
+}

+ 0 - 167
php/app/admin/controller/Site.php

@@ -1,167 +0,0 @@
-<?php
-declare (strict_types = 1);
-
-namespace app\admin\controller;
-
-
-use app\common\controller\Backend;
-use lemo\helper\TreeHelper;
-use think\facade\Cache;
-use think\facade\Db;
-use think\facade\Request;
-use think\facade\View;
-use app\common\model\Laboratory;
-
-class Site  extends Backend
-{
-    // todo 场地管理
-
-    // 场地列表
-    public function index()
-    {
-
-        if (Request::isPost()){
-            $page=input("page")?:1;
-            $limit=input("limit")?:10;
-            $name=input("name", '', 'trim');
-            $list=Db::name("laboratory")->order("id desc")
-                ->where("name","like","%".$name."%")
-                ->paginate(['list_rows' => $limit, 'page' => $page])->each(function ($item){
-                    $subject_id="";
-                    if ($item["subject_id"]){
-//                        $where["id"]=["in",$item];
-                        $resul=Db::name("subject")->whereIn("id",$item["subject_id"])->column("name");
-                        foreach ($resul as $v){
-                            if ($subject_id){
-                                $subject_id.="/".$v;
-                            }else{
-                                $subject_id=$v;
-                            }
-                        }
-                    }
-                    $item["subject_id"]=$subject_id;
-                    return $item;
-                })
-                ->toArray();
-
-            return $result = ['code' => 0, 'msg' => lang('get info success'), 'data' => $list['data'], 'count' => $list['total']];
-        }
-        return View::fetch();
-
-    }
-
-    public function text()
-    {
-        $name=input("name");
-//        $list=Db::name("laboratory")->alias("la")->order("id desc")
-//            ->leftJoin("subject su","su.id= in subject_id")
-////            ->where("la.name","like","%".$name."%")
-//            ->paginate(['list_rows' => 10, 'page' => 1])
-//            ->filed("la.* ,su.name")
-////            ->each(function ($item){
-////                $subject_id="";
-////                if ($item["subject_id"]){
-//////                        $where["id"]=["in",$item];
-////                    $resul=Db::name("subject")->whereIn("id",$item["subject_id"])->column("name");
-////                    foreach ($resul as $v){
-////                        if ($subject_id){
-////                            $subject_id.="/".$v;
-////                        }else{
-////                            $subject_id=$v;
-////                        }
-////                    }
-////                }
-////                $item["subject_id"]=$subject_id;
-////                return $item;
-////            })
-//            ->toArray();
-
-
-        $list=Laboratory::with("subject")->where("name","like","%".$name."%")->order("id desc")->paginate(['list_rows' => 10, 'page' => 1]);
-//        $sub=$list->subject;
-
-        json_result(1,"",$list);
-}
-
-
-
-
-    // 修改状态
-    public function updata_status()
-    {
-        $id=input("id");
-        $where["id"]=$id;
-        $result=Db::name("laboratory")->where($where)->find();
-        if ($result["status"]==1){
-            $update["status"]=0;
-        }else{
-            $update["status"]=1;
-        }
-        $res=Db::name("laboratory")->where($where)->update($update);
-        if ($res){
-
-            json_result(1,"修改成功");
-        }
-        json_result(2,"修改失败");
-    }
-
-
-    // 科目
-    public function sitetree()
-    {
-//        $list = Cache::get('SiteTree');
-        $id=input("id");
-//        if (!$list){
-            $subject=Db::name("subject")->field("id,major_id,name")->order("major_id asc")->cache(3600)->select()->toArray();
-            foreach ($subject as $k=>$v){
-                $subject[$k]["title"]=$v["name"];
-                $subject[$k]["pid"]=$v["major_id"];
-            }
-            $where["id"]=$id;
-            $laboratory=Db::name("laboratory")->where($where)->value("subject_id");
-            $list=TreeHelper::authChecked($subject,0,$laboratory);
-//            Cache::set('SiteTree',$list,3600);
-//        }
-        $idList=Db::name("subject")->column("id");
-        sort($idList);
-        $view = [
-            'list' => $list,
-            'idList' => $idList,
-            'group_id' => $id,
-        ];
-        View::assign($view);
-        return View::fetch();
-    }
-
-
-    public function urlk()
-    {
-        $list = Cache::get('SiteTree');
-        json_result(1,"",$list);
-    }
-
-    // 修改权限
-    public function teacher()
-    {
-        $rules = Request::post('rules');
-        if (empty($rules)) {
-            json_result(2,"请选择");
-        }
-        $data = Request::post();
-        $rules = TreeHelper::authNormal($rules);
-        $rls = '';
-        foreach ($rules as $k=>$v){
-            if ($rls){
-                $rls.=",".$v['id'];
-            }else{
-                $rls.=$v['id'];
-            }
-        }
-        $where['id'] = $data['group_id'];
-        Db::name("laboratory")->where($where)->update(["subject_id"=>$rls]);
-
-        json_result(1,"操作成功");
-
-    }
-
-}

+ 0 - 166
php/app/admin/controller/Training.php

@@ -1,166 +0,0 @@
-<?php
-declare (strict_types = 1);
-
-namespace app\admin\controller;
-
-use app\admin\model\MajorLevel;
-use app\admin\model\Ztrees;
-use app\common\controller\Backend;
-use think\facade\Db;
-use think\facade\Request;
-use think\facade\View;
-
-class Training  extends Backend
-{
-    // todo 培养计划
-
-    //专业管理
-    public function index()
-    {
-
-        if (Request::isPost()){
-            $page=input("page")?:1;
-            $name=input("name", '', 'trim');
-            $where["major_id"]=0;
-            $list=Db::name("subject")->order("id desc")->where($where)
-                ->where("name","like","%".$name."%")
-                ->paginate(['list_rows' => $this->pageSize, 'page' => $page])->toArray();
-            return $result = ['code' => 0, 'msg' => lang('get info success'), 'data' => $list['data'], 'count' => $list['total']];
-        }
-        return View::fetch();
-
-
-
-    }
-
-    // 添加
-    public function add_major()
-    {
-
-        $name=input("name");
-        $pid=input("pid")?:0;
-        $update["name"]=$name;
-        $update["major_id"]=$pid;
-        $result=Db::name("subject")->insertGetId($update);
-        if ($result){
-            if ($pid==0){// 添加升级等级
-                MajorLevel::add_level($result);
-            }
-            $update["id"]=$result;
-            $update["pId"]=$pid;
-            json_result(1,"添加成功",$update);
-        }
-        json_result(2,"添加失败");
-
-        }
-
-    // 修改
-    public function update_major()
-    {
-        $id=input("id");
-        $name=input("name");
-        $where["id"]=$id;
-        $update["name"]=$name;
-        $result=Db::name("subject")->where($where)->update($update);
-        if ($result){
-            json_result(1,"修改成功");
-        }
-        json_result(2,"修改失败");
-    }
-
-    // 删除
-    public function del()
-    {
-        $id=input("id");
-        $where["id"]=$id;
-        $where_us["major_id"]=$id;
-        $cout=Db::name("subject")->where($where_us)->find();
-        if ($cout){
-            json_result(2,"请先删除下面的科目");
-        }
-
-        if ($cout["major_id"]==0){ // 删除专业等级表
-            $del_where["subject_id"]=$id;
-            Db::name("major_level")->where($del_where)->delete();
-        }
-        $result=Db::name("subject")->where($where)->delete();
-
-        if ($result){
-            json_result(1,"删除成功");
-        }
-        json_result(2,"删除失败11");
-
-    }
-
-
-
-    //课程科目管理
-    public function course()
-    {
-        if (Request::isPost()){
-            $page = input("page") ?: 1;
-            $limit = input("limit") ?: 10;
-            $name=input("name", '', 'trim');
-            $where=[];
-            if ($name){
-                $where[]=["name","like","%".$name."%"];
-            }
-
-            $list=Db::name("subject")->order("major_id asc") ->where($where)->select()->toArray();
-//            $list=Db::name("subject")->order("major_id asc") ->where($where)->paginate(['list_rows' => $limit, 'page' => $page])->toArray();
-//            $list=$list["data"];
-            foreach($list as $k=>$v){
-                $list[$k]['lay_is_open']=false;
-                $list[$k]["pId"]=$v["major_id"];
-                $list[$k]["pid"]=$v["major_id"];
-            }
-            $ztree=Ztrees::sortListTier($list);
-
-            return $result = ['code' => 0, 'msg' => "获取成功", 'data' => $ztree, 'count' => count($list)];
-
-
-        }
-        return View::fetch("text");
-    }
-
-    // 升级参数设置
-    public function upgrade()
-    {
-        if (Request::isPost()){
-            $page=input("page")?:1;
-            $limit=input("limit")?:10;
-            $name=input("name", '', 'trim');
-//            $where["major_id"]=0;
-            $list=Db::name("major_level")->alias("m")->order("m.id desc")
-                ->leftJoin("subject su","m.subject_id=su.id")
-                ->where("su.name","like","%".$name."%")
-                ->field("m.*,su.name pro_name")
-                ->paginate(['list_rows' => $limit, 'page' => $page])
-                ->toArray();
-
-            return $result = ['code' => 0, 'msg' => lang('get info success'), 'data' => $list['data'], 'count' => $list['total']];
-        }
-        return View::fetch();
-
-
-
-    }
-
-    // 修改
-    public function update_upgrade()
-    {
-        $id=input("id");
-        $min=input("min");
-        $max=input("max");
-
-        $where["id"]=$id;
-        $update["min"]=$min;
-        $update["max"]=$max;
-        $result=Db::name("major_level")->where($where)->update($update);
-        if ($result){
-            json_result(1,"修改成功");
-        }
-        json_result(2,"修改失败");
-
-    }
-}

+ 21 - 0
php/app/admin/controller/Usermanage.php

@@ -0,0 +1,21 @@
+<?php
+/**
+ *
+ * User: anyluck
+ * Date: 2020/6/2
+ * Time: 17:31
+ */
+
+namespace app\admin\controller;
+
+
+class Usermanage
+{
+ // 用户管理
+
+    // 用户列表
+    public function index()
+    {
+
+    }
+}

+ 0 - 21
php/app/admin/model/ListPage.php

@@ -1,21 +0,0 @@
-<?php
-/**
- * Created by PhpStorm.
- * User: Administrator
- * Date: 2020/3/9
- * Time: 14:53
- */
-
-namespace app\admin\model;
-
-
-class ListPage
-{
-        // todo 一键生成源码测试
-
-    public static function add_list($data)
-    {
-
-
-    }
-}

+ 0 - 39
php/app/admin/model/MajorLevel.php

@@ -1,39 +0,0 @@
-<?php
-/**
- * Created by PhpStorm.
- * User: anyluck
- * Date: 2020/1/20
- * Time: 13:48
- */
-
-namespace app\admin\model;
-
-
-use think\facade\Db;
-
-class MajorLevel
-{
-
-
-    //     // 升级
-
-    public static function add_level($pid)
-    {
-        $min=0;
-        $max=6;
-        $add=[];
-        for ($i=0;$i<=4;$i++){
-            $add[$i]["min"]=$min;
-            $add[$i]["max"]=$min+$max;
-            $add[$i]["subject_id"]=$pid;
-            $add[$i]["type"]=$i;
-            $min=$max*($i+1);
-
-
-        }
-      $result=  Db::name("major_level")->insertAll($add);
-//        var_dump($add);
-
-    }
-
-}

+ 0 - 31
php/app/admin/validate/UserLevel.php

@@ -1,31 +0,0 @@
-<?php
-/**
- * lemocms
- * ============================================================================
- * 版权所有 2018-2027 lemocms,并保留所有权利。
- * 网站地址: https://www.lemocms.com
- * ----------------------------------------------------------------------------
- * 采用最新Thinkphp6实现
- * ============================================================================
- * Author: yuege
- * Date: 2019/9/2
- */
-namespace app\admin\validate;
-
-use think\Validate;
-
-class UserLevel extends Validate
-{
-    protected $rule = [
-        'level_name|会员组名称' => [
-            'require' => 'require',
-            'max'     => '255',
-            'unique'  => 'user_level',
-        ],
-
-        'description|描述' => [
-            'max' => '255',
-        ],
-
-    ];
-}

+ 0 - 56
php/app/admin/validate/WxAccount.php

@@ -1,56 +0,0 @@
-<?php
-/**
- * lemocms
- * ============================================================================
- * 版权所有 2018-2027 lemocms,并保留所有权利。
- * 网站地址: https://www.lemocms.com
- * ----------------------------------------------------------------------------
- * 采用最新Thinkphp6实现
- * ============================================================================
- * Author: yuege
- * Date: 2019/9/5
- */
-
-namespace app\admin\validate;
-
-use think\Validate;
-
-class WxAccount extends Validate
-{
-    protected $rule = [
-        'wxname|wxname' => [
-            'require' => 'require',
-            'max'     => '255',
-            'unique'  => 'wx_account',
-        ],
-        'app_id|app_id' => [
-            'require' => 'require',
-            'max'     => '255',
-            'unique'  => 'wx_account',
-        ],
-        'app_secret|APP_SECRET' => [
-            'require' => 'require',
-            'max'     => '255',
-            'unique'  => 'wx_account',
-        ],
-        'origin_id|原始id' => [
-            'require' => 'require',
-            'max'     => '255',
-            'unique'  => 'wx_account',
-        ],
-        'w_token|w_token' => [
-            'require' => 'require',
-            'max'     => '255',
-        ],
-        'type|类型' => [
-            'require' => 'require',
-            'max'     => '2',
-        ],
-        'status|状态' => [
-            'require' => 'require',
-            'max'     => '1',
-        ],
-
-
-    ];
-}

+ 0 - 34
php/app/admin/validate/WxTag.php

@@ -1,34 +0,0 @@
-<?php
-/**
- * lemocms
- * ============================================================================
- * 版权所有 2018-2027 lemocms,并保留所有权利。
- * 网站地址: https://www.lemocms.com
- * ----------------------------------------------------------------------------
- * 采用最新Thinkphp6实现
- * ============================================================================
- * Author: yuege
- * Date: 2019/9/5
- */
-
-namespace app\admin\validate;
-
-use think\Validate;
-
-class WxTag extends Validate
-{
-    protected $rule = [
-        'name|标签名' => [
-            'require' => 'require',
-            'max'     => '255',
-            'unique'  => 'wx_tag',
-        ],
-        'status|状态' => [
-            'require' => 'require',
-            'max'     => '1',
-        ],
-
-
-    ];
-
-}

+ 0 - 34
php/app/ap/config/route.php

@@ -1,34 +0,0 @@
-<?php
-// +----------------------------------------------------------------------
-// | 路由设置
-// +----------------------------------------------------------------------
-
-return [
-
-    // URL普通方式参数 用于自动生成
-    'url_common_param'      => true,
-    // 是否开启路由延迟解析
-    'url_lazy_route'        => false,
-    // 是否强制使用路由
-    'url_route_must'        => false,
-    // 合并路由规则
-    'route_rule_merge'      => true,
-    // 路由是否完全匹配
-    'route_complete_match'  => true,
-    // 是否开启路由缓存
-    'route_check_cache'     => false,
-    // 路由缓存连接参数
-    'route_cache_option'    => [],
-    // 路由缓存Key
-    'route_check_cache_key' => '',
-    // 默认的路由变量规则
-    'default_route_pattern' => '[\w\.]+',
-    // 是否开启请求缓存 true自动缓存 支持设置请求缓存规则
-    'request_cache'         => false,
-    // 请求缓存有效期
-    'request_cache_expire'  => null,
-    // 全局请求缓存排除规则
-    'request_cache_except'  => [],
-    //跨应用路由
-    'cross_app_route'	=>	true,
-];

+ 0 - 52
php/app/ap/controller/Login.php

@@ -1,52 +0,0 @@
-<?php
-/**
- *
- * User: anyluck
- * Date: 2020/6/1
- * Time: 16:52
- */
-
-namespace app\ap\controller;
-
-
-use app\common\model\User;
-use Ramsey\Uuid\Uuid;
-
-class Login
-{
- // 登录
-
-    // 登录功能
-    public function in_login()
-    {
-        $user=input("user");
-        $pwd=input("pwd");
-        $use=User::where(["user"=>$user])->find();
-        if (!$use){
-           json_result(400,"账号不存在");
-        }
-        if (!password_verify($pwd,$use->pwd)){
-            json_result(400,"密码错误");
-        }
-        json_result(200,"",$use);
-    }
-
-    // 注册
-    public function register()
-    {
-        $user=input("user");if (!$user)json_result(400,"请设置账号");
-        $pwd=input("pwd");if(!$pwd)json_result(400,"请设置密码");
-        $use=User::where(["user"=>$user])->find();
-        if ($use){
-            json_result(300,"账号已经存在");
-        }
-        $uuid=Uuid::uuid1();
-        $data["token"]=$uuid->getHex();
-        $data["pwd"]=password_hash($pwd,PASSWORD_DEFAULT);
-        $data["name"]="小白";
-        $data["user"]=$user;
-            User::create($data);
-            json_result(200,"恭喜您创建成功");
-    }
-
-}

+ 0 - 48
php/app/ap/controller/v1/Index.php

@@ -1,48 +0,0 @@
-<?php
-/**
- *
- * User: anyluck
- * Date: 2020/6/1
- * Time: 15:09
- */
-
-namespace app\ap\controller\v1;
-
-
-class Index
-{
-
-    public function index()
-    {
-        dump("index");
-    }
-    public function get()
-    {
-        dump("this is get");
-
-    }
-
-    public function post()
-    {
-        dump(" post");
-
-    }
-
-    public function pull()
-    {
-        dump("pull");
-
-    }
-
-
-    public function delete()
-    {
-        dump("delete");
-    }
-
-    public function patch()
-    {
-        dump("patch");
-
-    }
-}

+ 0 - 91
php/app/ap/controller/v1/User.php

@@ -1,91 +0,0 @@
-<?php
-/**
- *
- * User: anyluck
- * Date: 2020/6/1
- * Time: 15:37
- */
-
-namespace app\ap\controller\v1;
-
-
-use think\facade\Request;
-
-class User
-{
-    /**
-     * 显示资源列表
-     *
-     * @return \think\Response
-     */
-    public function index()
-    {
-        //
-    }
-
-    /**
-     * 显示创建资源表单页.
-     *
-     * @return \think\Response
-     */
-    public function create()
-    {
-        //
-    }
-
-    /**
-     * 保存新建的资源
-     *
-     * @param  \think\Request  $request
-     * @return \think\Response
-     */
-    public function save(Request $request)
-    {
-        //
-    }
-
-    /**
-     * 显示指定的资源
-     *
-     * @param  int  $id
-     * @return \think\Response
-     */
-    public function read($id)
-    {
-        //
-    }
-
-    /**
-     * 显示编辑资源表单页.
-     *
-     * @param  int  $id
-     * @return \think\Response
-     */
-    public function edit($id)
-    {
-        //
-    }
-
-    /**
-     * 保存更新的资源
-     *
-     * @param  \think\Request  $request
-     * @param  int  $id
-     * @return \think\Response
-     */
-    public function update(Request $request, $id)
-    {
-        //
-    }
-
-    /**
-     * 删除指定资源
-     *
-     * @param  int  $id
-     * @return \think\Response
-     */
-    public function delete($id)
-    {
-        //
-    }
-}

+ 0 - 22
php/app/ap/middleware.php

@@ -1,22 +0,0 @@
-<?php
-/**
- * lemocms
- * ============================================================================
- * 版权所有 2018-2027 lemocms,并保留所有权利。
- * 网站地址: https://www.lemocms.com
- * ----------------------------------------------------------------------------
- * 采用最新Thinkphp6实现
- * ============================================================================
- * Author: yuege
- * Date: 2019/8/2
- */
-
-
-return [
-//     \think\middleware\LoadLangPack::class,
-
-     \think\middleware\SessionInit::class,
-    //访问频率
-//    \think\middleware\Throttle::class,
-];
-

+ 0 - 26
php/app/ap/route/api.php

@@ -1,26 +0,0 @@
-<?php
-/**
- * user:anyluck
- * Date: 2019/9/30
- */
-use think\facade\Route;
-Route::miss(function() {
-    $result="";
-    return '404 Not Found!';
-});
-
-// 需要验证
-Route::group("token",function (){
-    Route::post(":version/any",":version.token/text");
-
-})->middleware(\app\middleware\Token::class);
-
-
-Route::group("notoken",function (){// 不需要token
-//   Route::post(":version/notken",":version.token/notken");
-   Route::post("login","login/in_login");
-   Route::post("register","login/register");
-
-})->middleware(\app\middleware\Notken::class);
-
-

+ 0 - 84
php/app/common/controller/Aliyunoss.php

@@ -1,84 +0,0 @@
-<?php
-/**
- * Created by PhpStorm.
- * User: EDZ
- * Date: 2020/4/24
- * Time: 10:48
- */
-
-namespace app\common\controller;
-use OSS\Core\OssException;
-use OSS\OssClient;
-use think\Config;
-use think\Controller;
-use think\Image;
-use think\Request;
-
-class Aliyunoss
-{
-    public function config()
-    {
-        $config = [ 'KeyId'      => 'LTAIRkRNTUDJKj4Q',  //Access Key ID
-                    'KeySecret'  => 'wwzTpuOeQPIpPgSpEG6n5MskPDs4CX',  //Access Key Secret
-                    'Endpoint'   => 'oss-cn-huhehaote.aliyuncs.com',  //阿里云oss 外网地址endpoint
-                    'Bucket'     => 'quyum',  //Bucket名称
-//                    'hostname'     => 'quyum.oss-cn-huhehaote.aliyuncs.com',  //Bucket 域名
-        ];
-
-//        $config = [ 'KeyId'      => 'LTAI4GL7qTQwwU87nMsmAKmU',  //Access Key ID
-//            'KeySecret'  => '9ma10M1M3AgKjMSrYiMf5DgKr4jvWr',  //Access Key Secret
-//            'Endpoint'   => 'oss-cn-beijing.aliyuncs.com',  //阿里云oss 外网地址endpoint
-//            'Bucket'     => 'jiangnanmeiren',  //Bucket名称
-//        ];
-        return $config;
-    }
-
-    public function uploadFile($file)
-    {
-//        $resResult = Image::open($file);
-        $resResult=$file;
-//            dump($file);die();
-        // 尝试执行
-        try {
-            $config = $this->config(); //获取Oss的配置
-            //实例化对象 将配置传入
-            $ossClient = new OssClient($config['KeyId'], $config['KeySecret'], $config['Endpoint']);
-            //这里是有sha1加密 生成文件名 之后连接上后缀
-//            $fileName = sha1(date('YmdHis', time()) . uniqid()) . '.' . $resResult->type();
-            $fileName ="guanwang/". sha1(date('YmdHis', time()) . uniqid()) . '.' . "png";
-            //执行阿里云上传
-//            $result = $ossClient->uploadFile($config['Bucket'], $fileName, $file->getInfo()['tmp_name']);
-            $result = $ossClient->uploadFile($config['Bucket'], $fileName, $file['tmp_name']);
-        } catch (OssException $e) {
-            return $e->getMessage();
-        }
-//        dump($result);die();
-        //将结果输出
-        return $result['info']['url'];
-    }
-
-    //视频
-    public function uploadVideo($file)
-    {
-        //上传视频到阿里云OSS
-        $name = $file['name'];
-        $format = strrchr($name, '.');
-        $fileName = uniqid() . $format;
-        //获取配置
-        $config = $this->config(); //获取Oss的配置
-        $ossClient = new OssClient($config['KeyId'], $config['KeySecret'], $config['Endpoint']);
-        $uploadToAliyunOss = $ossClient->uploadFile($config['Bucket'], $fileName, $file['tmp_name']);
-
-        if ($uploadToAliyunOss) {
-            // 上传成功返回路径
-            return $uploadToAliyunOss['info']['url'];
-        } else {
-            // 上传失败,打印错误信息
-            halt($uploadToAliyunOss);
-        }
-    }
-}
-
-
-
-

+ 0 - 29
php/app/common/controller/Frontend.php

@@ -1,29 +0,0 @@
-<?php
-/**
- * lemocms
- * ============================================================================
- * 版权所有 2018-2027 lemocms,并保留所有权利。
- * 网站地址: https://www.lemocms.com
- * ----------------------------------------------------------------------------
- * 采用最新Thinkphp6实现
- * ============================================================================
- * Author: yuege
- * Date: 2019/9/21
- */
-
-
-namespace app\common\controller;
-
-use app\BaseController;
-use think\facade\Request;
-use think\facade\Cookie;
-class Frontend extends BaseController
-{
-
-    public function initialize()
-    {
-        parent::initialize(); // TODO: Change the autogenerated stub
-    }
-
-
-}

+ 0 - 18
php/app/common/controller/Token.php

@@ -1,18 +0,0 @@
-<?php
-/**
- * Created by PhpStorm.
- * User: Administrator
- * Date: 2020/1/10
- * Time: 13:18
- */
-
-namespace app\common\controller;
-
-
-class Token
-{
- // TODO token
-
-
-
-}

+ 0 - 47
php/app/common/controller/Wxs.php

@@ -1,47 +0,0 @@
-<?php
-/**
- * Created by PhpStorm.
- * User: Administrator
- * Date: 2020/2/14
- * Time: 13:26
- */
-
-namespace app\common\controller;
-
-
-use EasyWeChat\Factory;
-
-class Wxs
-{
-  // 微信支付相关信息
-//    public static $url="127.0.0.1:8989/index/notify/";// 支付回调地址
-    public static $url="http://ssoe.symc.edu.cn:8989/index/notify/";// 支付回调地址
-
-    /**
-     * @param string $body  支付说明
-     * @param string $out_trade_no 订单编号
-     * @param string $total_fee 支付金额
-     * @param string $openid openid
-     * @param string $notify_url 回调地址
-     * @throws \EasyWeChat\Kernel\Exceptions\InvalidArgumentException
-     * @throws \EasyWeChat\Kernel\Exceptions\InvalidConfigException
-     * @throws \GuzzleHttp\Exception\GuzzleException
-     */
-    public static function pay($body="医学院-重修充值",$out_trade_no="",$total_fee="",$openid="",$notify_url="")
-    {
-        $config= require( APP_PATHS."payconfig.php");
-        $money=$total_fee*100;
-        $app = Factory::payment($config);
-        $result = $app->order->unify([
-            'body' =>$body,
-            'out_trade_no' =>$out_trade_no,
-            'total_fee' => $money,
-            'spbill_create_ip' =>request()->ip(), // 可选,如不传该参数,SDK 将会自动获取相应 IP 地址
-            'notify_url' => self::$url.$notify_url, // 支付结果通知网址,如果不设置则会使用配置里的默认地址
-            'trade_type' => 'JSAPI', // 请对应换成你的支付方式对应的值类型
-            'openid' => $openid,
-        ]);
-        return $result;
-//        var_dump($result);
-    }
-}

+ 1 - 67
php/app/worker/controller/User.php

@@ -9,7 +9,7 @@
 namespace app\worker\controller;
 
 
-use app\index\model\Cweb;
+
 use think\facade\Db;
 use Workerman\Lib\Timer;
 
@@ -27,72 +27,6 @@ class User
 
     }
 
-    /**
-     * 获取学生成绩
-     */
-    public function student_status()
-    {
-        Timer::add(10, function () {
-        $cweb=new Cweb();
-        $cweb->student_status();
-            var_dump("student_status");
-        }, true);
-    }
-
-    /**
-    获取老师数据
-     */
-    public function getteacher()
-    {
-        Timer::add(10, function () {
-            $cweb=new Cweb();
-            $cweb->getteacher();
-            var_dump("getteacher");
-        }, true);
-
-    }
-
-    // 实验室预约 未上课处理
-    public function laboratory_appointment()
-    {
-        $where[] = ["end_time", "<", time()];
-        $where[] = ["status", "=", 0];
-        $laboratory_appointment = Db::name("laboratory_appointment")->where($where)->limit(10)->select()->toArray();
-        if ($laboratory_appointment) {
-            $agreement = Db::name("systems")->where(["id" => 1])->value("agreement");
-            foreach ($laboratory_appointment as $k => $v) {
-                $update["status"] = 2;
-                if ($agreement) {
-                    $update["day"] = (int)$agreement;
-                    $update["kai_time"] = $laboratory_appointment["stat_time"] + $agreement * 24 * 60 * 60;// 禁止报名时间
-                }
-
-                Db::name("laboratory_appointment")->where(["id" => $v["id"]])->update($update);
-
-            }
-        }
-    }
-
-    // 解除爽约时间限制
-    public function laboratory_appointment_status()
-    {
-        $where["status"] = 2;
-        $laboratory_appointment = Db::name("laboratory_appointment")
-            ->where("kai_time", "<>", "")
-            ->where("kai_time", "<", time())->where($where)->limit(10)->select()->toArray();
-        if ($laboratory_appointment) {
-            foreach ($laboratory_appointment as $k => $v) {
-                Db::name("laboratory_appointment")->where(["id" => $v["id"]])->update(["kai_time" => ""]);
-            }
-        }
-    }
-
-// 升级
-    public function star_class()
-    {
-
-
-    }
 
 
 }

+ 2 - 2
php/app/worker/controller/Worker.php

@@ -24,8 +24,8 @@ class Worker extends Server
         // 定时器
         $user=new User();
         $user->index();
-        $user->student_status();
-        $user->getteacher();
+//        $user->student_status();
+//        $user->getteacher();
 //        dump(1212);
 
     }

Файловите разлики са ограничени, защото са твърде много
+ 0 - 25651
php/lemocms2020-3-24.sql


Файловите разлики са ограничени, защото са твърде много
+ 0 - 13551
php/lm_about.sql


+ 475 - 0
php/lm_admin.sql

@@ -0,0 +1,475 @@
+/*
+ Navicat Premium Data Transfer
+
+ Source Server         : 阿里云
+ Source Server Type    : MySQL
+ Source Server Version : 50728
+ Source Host           : rm-2ze41ef9a1037xwc8po.mysql.rds.aliyuncs.com:3306
+ Source Schema         : any_anli
+
+ Target Server Type    : MySQL
+ Target Server Version : 50728
+ File Encoding         : 65001
+
+ Date: 02/06/2020 13:00:41
+*/
+
+SET NAMES utf8mb4;
+SET FOREIGN_KEY_CHECKS = 0;
+
+-- ----------------------------
+-- Table structure for lm_admin
+-- ----------------------------
+DROP TABLE IF EXISTS `lm_admin`;
+CREATE TABLE `lm_admin`  (
+  `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '管理员ID',
+  `username` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '管理员用户名',
+  `password` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '管理员密码',
+  `group_id` mediumint(8) NOT NULL COMMENT '分组ID',
+  `email` varchar(30) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '邮箱',
+  `realname` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '真实姓名',
+  `mobile` varchar(30) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '电话号码',
+  `ip` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT 'IP地址',
+  `mdemail` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '0' COMMENT '传递修改密码参数加密',
+  `status` tinyint(2) NOT NULL DEFAULT 1 COMMENT '审核状态',
+  `avatar` varchar(120) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '头像',
+  `create_time` int(11) NOT NULL COMMENT '添加时间',
+  `update_time` int(11) NOT NULL COMMENT '更新时间',
+  PRIMARY KEY (`id`) USING BTREE,
+  INDEX `admin_username`(`username`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 13 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '后台管理员' ROW_FORMAT = Compact;
+
+-- ----------------------------
+-- Records of lm_admin
+-- ----------------------------
+INSERT INTO `lm_admin` VALUES (1, 'admin', '$2y$12$Ak58w84WGSTMUYP5xwqACuo/skM/vX.GffuEDRt2dbeBPHdOqHeWC', 1, 'admin@admin.com', '😀😁😂😃😄😅😆😉😊😋', '10086', '127.0.0.1', '0', 1, '/storage/uploads/20200109\\c710700a3bb36d594ac98e792e4705b0.png', 1482132862, 1583136277);
+INSERT INTO `lm_admin` VALUES (12, 'anyluck', '$2y$12$SkjoA8vfD2dS2JeXtKBNme4aY3MEVwTueKBO2YFGpG69q6GX1Owty', 1, '', '', '13323821192', '', '0', 1, '', 1590638270, 1590638270);
+
+-- ----------------------------
+-- Table structure for lm_admin_log
+-- ----------------------------
+DROP TABLE IF EXISTS `lm_admin_log`;
+CREATE TABLE `lm_admin_log`  (
+  `id` bigint(16) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '表id',
+  `admin_id` int(10) NULL DEFAULT NULL COMMENT '管理员id',
+  `username` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL,
+  `log_url` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL,
+  `log_content` text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL,
+  `log_title` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '日志描述',
+  `log_agent` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL,
+  `log_ip` varchar(30) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT 'ip地址',
+  `create_time` int(11) NULL DEFAULT NULL COMMENT '日志时间',
+  `update_time` int(11) NULL DEFAULT NULL,
+  `status` tinyint(1) NULL DEFAULT 1,
+  PRIMARY KEY (`id`) USING BTREE,
+  UNIQUE INDEX `id`(`id`) USING BTREE,
+  INDEX `admin_id`(`admin_id`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 14224 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Compact;
+
+-- ----------------------------
+-- Records of lm_admin_log
+-- ----------------------------
+INSERT INTO `lm_admin_log` VALUES (14204, 1, 'admin', '/admin/adminlog/index.html', '点击菜单', '日志管理', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.132 Safari/537.36', '127.0.0.1', 1590993441, 1590993441, 1);
+INSERT INTO `lm_admin_log` VALUES (14205, 1, 'admin', '/admin/system/configlist.html', '点击菜单', '配置列表', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.132 Safari/537.36', '127.0.0.1', 1590993447, 1590993447, 1);
+INSERT INTO `lm_admin_log` VALUES (14206, 1, 'admin', '/admin/system/configlist.html', '点击菜单', '配置列表', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.132 Safari/537.36', '127.0.0.1', 1590993448, 1590993448, 1);
+INSERT INTO `lm_admin_log` VALUES (14207, 1, 'admin', '/admin/system/configedit.html', '{\"id\":\"1\"}', '编辑配置', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.132 Safari/537.36', '127.0.0.1', 1590993468, 1590993468, 1);
+INSERT INTO `lm_admin_log` VALUES (14208, 1, 'admin', '/admin/system/configedit.html', '{\"id\":\"1\",\"pid\":\"site\",\"code\":\"site_name\",\"value\":\"\\u5343\\u7ffc\\u5546\\u57ce\\u5b98\\u7f5122\",\"remark\":\"\\u7f51\\u7ad9\\u540d\\u79f0\"}', '编辑配置', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.132 Safari/537.36', '127.0.0.1', 1590993472, 1590993472, 1);
+INSERT INTO `lm_admin_log` VALUES (14209, 1, 'admin', '/admin/system/configedit.html', '{\"id\":\"1\"}', '编辑配置', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.132 Safari/537.36', '127.0.0.1', 1590993475, 1590993475, 1);
+INSERT INTO `lm_admin_log` VALUES (14210, 1, 'admin', '/admin/adminlog/index.html', '点击菜单', '日志管理', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.132 Safari/537.36', '127.0.0.1', 1590993489, 1590993489, 1);
+INSERT INTO `lm_admin_log` VALUES (14211, 1, 'admin', '/admin/system/configlist.html', '点击菜单', '配置列表', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.132 Safari/537.36', '127.0.0.1', 1590993490, 1590993490, 1);
+INSERT INTO `lm_admin_log` VALUES (14212, 1, 'admin', '/admin/system/configlist.html', '点击菜单', '配置列表', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.132 Safari/537.36', '127.0.0.1', 1590993492, 1590993492, 1);
+INSERT INTO `lm_admin_log` VALUES (14213, 1, 'admin', '/admin/database/restore.html', '点击菜单', '还原数据库', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.132 Safari/537.36', '127.0.0.1', 1590993515, 1590993515, 1);
+INSERT INTO `lm_admin_log` VALUES (14214, 1, 'admin', '/admin/database/restore.html', '点击菜单', '还原数据库', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.132 Safari/537.36', '127.0.0.1', 1590993515, 1590993515, 1);
+INSERT INTO `lm_admin_log` VALUES (14215, 1, 'admin', '/admin/database/index.html', '点击菜单', '数据库列表', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.132 Safari/537.36', '127.0.0.1', 1590993518, 1590993518, 1);
+INSERT INTO `lm_admin_log` VALUES (14216, 1, 'admin', '/admin/database/index.html', '点击菜单', '数据库列表', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.132 Safari/537.36', '127.0.0.1', 1590993519, 1590993519, 1);
+INSERT INTO `lm_admin_log` VALUES (14217, 1, 'admin', '/admin/auth/adminrule.html', '点击菜单', '权限列表', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.132 Safari/537.36', '127.0.0.1', 1590993527, 1590993527, 1);
+INSERT INTO `lm_admin_log` VALUES (14218, 1, 'admin', '/admin/auth/adminrule.html', '点击菜单', '权限列表', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.132 Safari/537.36', '127.0.0.1', 1590993527, 1590993527, 1);
+INSERT INTO `lm_admin_log` VALUES (14219, 1, 'admin', '/admin/auth/group.html', '点击菜单', '权限组', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.132 Safari/537.36', '127.0.0.1', 1590993530, 1590993530, 1);
+INSERT INTO `lm_admin_log` VALUES (14220, 1, 'admin', '/admin/auth/group.html', '点击菜单', '权限组', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.132 Safari/537.36', '127.0.0.1', 1590993531, 1590993531, 1);
+INSERT INTO `lm_admin_log` VALUES (14221, 1, 'admin', '/admin/auth/adminlist.html', '点击菜单', '管理员列表', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.132 Safari/537.36', '127.0.0.1', 1590993533, 1590993533, 1);
+INSERT INTO `lm_admin_log` VALUES (14222, 1, 'admin', '/admin/auth/adminlist.html', '点击菜单', '管理员列表', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.132 Safari/537.36', '127.0.0.1', 1590993533, 1590993533, 1);
+INSERT INTO `lm_admin_log` VALUES (14223, 1, 'admin', '/admin/adminlog/index.html', '点击菜单', '日志管理', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.132 Safari/537.36', '127.0.0.1', 1590995934, 1590995934, 1);
+
+-- ----------------------------
+-- Table structure for lm_auth_group
+-- ----------------------------
+DROP TABLE IF EXISTS `lm_auth_group`;
+CREATE TABLE `lm_auth_group`  (
+  `id` smallint(8) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '分组id',
+  `title` char(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '标题',
+  `status` tinyint(1) NULL DEFAULT 0 COMMENT '状态',
+  `rules` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL COMMENT '规则',
+  `create_time` int(11) NULL DEFAULT NULL COMMENT '添加时间',
+  `update_time` int(11) NULL DEFAULT NULL,
+  PRIMARY KEY (`id`) USING BTREE,
+  UNIQUE INDEX `id`(`id`) USING BTREE,
+  UNIQUE INDEX `title`(`title`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 6 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '管理员分组' ROW_FORMAT = Compact;
+
+-- ----------------------------
+-- Records of lm_auth_group
+-- ----------------------------
+INSERT INTO `lm_auth_group` VALUES (1, '管理权限', 1, '155,173,174,156,169,170,172,157,176,158,177,159,178,179,180,161,181,182,183,162,184,185,163,164,166,167,168,165,1,2,20,21,40,34,39,148,149,150,151,152,153,154,73,3,4,5,9,10,11,12,22,13,6,7,8,14,15,16,17,18,19,26,27,28,29,30,31,32,33,35,36,37,38,', 1465114224, 1579664405);
+
+-- ----------------------------
+-- Table structure for lm_auth_rule
+-- ----------------------------
+DROP TABLE IF EXISTS `lm_auth_rule`;
+CREATE TABLE `lm_auth_rule`  (
+  `id` mediumint(8) UNSIGNED NOT NULL AUTO_INCREMENT,
+  `href` char(80) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '链接',
+  `title` char(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '',
+  `type` tinyint(1) NOT NULL DEFAULT 1 COMMENT '类型',
+  `status` tinyint(1) NOT NULL DEFAULT 1 COMMENT '状态1 可以用,0 所有禁止使用',
+  `auth_open` tinyint(2) NOT NULL DEFAULT 0 COMMENT '1公开 0不公开',
+  `menu_status` tinyint(1) NULL DEFAULT 0 COMMENT '0 不显示,1 显示',
+  `icon` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '图标样式',
+  `condition` char(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '条件',
+  `pid` int(5) NOT NULL DEFAULT 0 COMMENT '父栏目ID',
+  `sort` int(11) NULL DEFAULT 0 COMMENT '排序',
+  `create_time` int(11) NOT NULL DEFAULT 0 COMMENT '添加时间',
+  `update_time` int(11) NULL DEFAULT NULL,
+  PRIMARY KEY (`id`) USING BTREE,
+  UNIQUE INDEX `id`(`id`) USING BTREE,
+  INDEX `href`(`href`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 208 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '权限节点' ROW_FORMAT = Compact;
+
+-- ----------------------------
+-- Records of lm_auth_rule
+-- ----------------------------
+INSERT INTO `lm_auth_rule` VALUES (1, 'System', '系统', 1, 1, 0, 1, 'fa fa-home', '', 0, 58, 1446535750, 1571966892);
+INSERT INTO `lm_auth_rule` VALUES (2, 'System', '系统设置', 1, 1, 0, 1, 'fa fa-gears', '', 1, 0, 1446535789, 1571882291);
+INSERT INTO `lm_auth_rule` VALUES (3, 'Database', '数据库管理', 1, 1, 0, 1, 'fa fa-database', '', 1, 0, 1446535805, 0);
+INSERT INTO `lm_auth_rule` VALUES (4, 'Database/restore', '还原数据库', 2, 1, 0, 1, 'fa fa-database', '', 3, 0, 1446535750, 0);
+INSERT INTO `lm_auth_rule` VALUES (5, 'Database/backup', '数据库备份', 2, 1, 0, 0, 'fa fa-database', '', 3, 0, 1446535834, 0);
+INSERT INTO `lm_auth_rule` VALUES (6, 'Auth', '权限管理', 1, 1, 0, 1, 'fa fa-cog', '', 1, 0, 0, 0);
+INSERT INTO `lm_auth_rule` VALUES (7, 'Auth/adminRule', '权限列表', 1, 1, 0, 1, 'fa fa-cog', '', 6, 0, 0, 0);
+INSERT INTO `lm_auth_rule` VALUES (8, 'Auth/ruleEdit', '权限编辑', 2, 1, 0, 0, 'fa fa-cog', '', 7, 0, 0, 0);
+INSERT INTO `lm_auth_rule` VALUES (9, 'Database/repair', '数据库修复', 2, 1, 0, 0, '', '', 3, 0, 0, 0);
+INSERT INTO `lm_auth_rule` VALUES (10, 'Database/import', '数据还原', 2, 1, 0, 0, '', '', 3, 0, 0, 0);
+INSERT INTO `lm_auth_rule` VALUES (11, 'Database/downFile', '数据下载', 2, 1, 0, 0, '', '', 3, 0, 0, 0);
+INSERT INTO `lm_auth_rule` VALUES (12, 'Database/delSqlFiles', '删除数据库', 2, 1, 0, 0, '', '', 3, 0, 0, 0);
+INSERT INTO `lm_auth_rule` VALUES (13, 'Database/index', '数据库列表', 1, 1, 0, 1, 'fa fa-database', '', 3, 1, 0, 0);
+INSERT INTO `lm_auth_rule` VALUES (14, 'Auth/ruleState', '菜单显示或者隐藏', 2, 1, 0, 0, '', '', 7, 0, 0, 0);
+INSERT INTO `lm_auth_rule` VALUES (15, 'Auth/ruleOpen', '权限是否验证', 2, 1, 0, 0, '', '', 7, 0, 0, 0);
+INSERT INTO `lm_auth_rule` VALUES (16, 'Auth/ruleSort', '权限排序', 2, 1, 0, 0, '', '', 7, 0, 0, 0);
+INSERT INTO `lm_auth_rule` VALUES (17, 'Auth/ruleDel', '权限删除', 2, 1, 0, 0, '', '', 7, 0, 0, 0);
+INSERT INTO `lm_auth_rule` VALUES (18, 'Auth/ruleSelectDel', '权限批量删除', 2, 1, 0, 0, '', '', 7, 0, 0, 0);
+INSERT INTO `lm_auth_rule` VALUES (19, 'Auth/ruleAdd', '权限增加', 2, 1, 0, 0, '', '', 7, 0, 0, 0);
+INSERT INTO `lm_auth_rule` VALUES (20, 'System/index', '站点设置', 1, 1, 0, 1, 'fa fa-gears', '', 2, 0, 0, 1567228601);
+INSERT INTO `lm_auth_rule` VALUES (21, 'Adminlog/index', '日志管理', 1, 1, 0, 1, 'fa fa-life-ring', '', 2, 0, 0, 1566007925);
+INSERT INTO `lm_auth_rule` VALUES (22, 'Database/optimize', '数据库优化', 1, 1, 0, 0, '', '', 3, 0, 0, 0);
+INSERT INTO `lm_auth_rule` VALUES (26, 'Auth/group', '权限组', 1, 1, 0, 1, 'fa fa-globe', '', 6, 0, 0, 0);
+INSERT INTO `lm_auth_rule` VALUES (27, 'Auth/groupDel', '用户组删除', 1, 1, 0, 0, '', '', 26, 0, 0, 0);
+INSERT INTO `lm_auth_rule` VALUES (28, 'Auth/groupAdd', '用户组添加', 1, 1, 0, 0, '', '', 26, 0, 0, 0);
+INSERT INTO `lm_auth_rule` VALUES (29, 'Auth/groupEdit', '用户组修改', 1, 1, 0, 0, '', '', 26, 0, 0, 0);
+INSERT INTO `lm_auth_rule` VALUES (30, 'Auth/groupState', '用户组状态修改', 1, 1, 0, 0, '', '', 26, 0, 0, 0);
+INSERT INTO `lm_auth_rule` VALUES (31, 'Auth/groupSelectDel', '用户组批量删除', 1, 1, 0, 0, '', '', 26, 0, 0, 0);
+INSERT INTO `lm_auth_rule` VALUES (32, 'Auth/groupAccess', '用户组显示权限', 1, 1, 0, 0, '', '', 26, 0, 0, 0);
+INSERT INTO `lm_auth_rule` VALUES (33, 'Auth/groupSetaccess', '用户组保存权限', 1, 1, 0, 0, '', '', 26, 0, 0, 0);
+INSERT INTO `lm_auth_rule` VALUES (34, 'Uploads/uploads', '上传文件', 1, 1, 0, 0, 'fa fa-adjust', '', 2, 0, 0, 1571966280);
+INSERT INTO `lm_auth_rule` VALUES (35, 'Auth/adminList', '管理员列表', 1, 1, 0, 1, 'fa fa-user-circle', '', 6, 0, 1, 0);
+INSERT INTO `lm_auth_rule` VALUES (36, 'Auth/adminAdd', '添加管理员', 1, 1, 0, 0, '', '', 35, 0, 0, 0);
+INSERT INTO `lm_auth_rule` VALUES (37, 'Auth/adminDel', '删除管理员', 1, 1, 0, 0, '', '', 35, 0, 0, 0);
+INSERT INTO `lm_auth_rule` VALUES (38, 'Auth/adminState', '管理员状态', 1, 1, 0, 0, '', '', 35, 0, 0, 0);
+INSERT INTO `lm_auth_rule` VALUES (39, 'Index/password', '修改密码', 1, 1, 0, 0, '', '', 2, 0, 0, 0);
+INSERT INTO `lm_auth_rule` VALUES (40, 'Adminlog/delete', '删除日志', 1, 1, 0, 0, '', '', 21, 0, 0, 0);
+INSERT INTO `lm_auth_rule` VALUES (148, 'System/configlist', '配置列表', 1, 1, 0, 1, 'fa fa-align-justify', '', 2, 0, 0, NULL);
+INSERT INTO `lm_auth_rule` VALUES (149, 'System/configAdd', '添加配置', 1, 1, 0, 0, NULL, '', 148, 0, 0, NULL);
+INSERT INTO `lm_auth_rule` VALUES (150, 'System/configEdit', '编辑配置', 1, 1, 0, 0, NULL, '', 148, 0, 0, NULL);
+INSERT INTO `lm_auth_rule` VALUES (151, 'System/configDel', '删除配置', 1, 1, 0, 0, NULL, '', 148, 0, 0, NULL);
+INSERT INTO `lm_auth_rule` VALUES (152, 'System/configState', '配置状态', 1, 1, 0, 0, NULL, '', 148, 0, 0, NULL);
+INSERT INTO `lm_auth_rule` VALUES (153, 'System/configGroupAdd', '配置组添加', 1, 1, 0, 0, NULL, '', 148, 0, 0, NULL);
+INSERT INTO `lm_auth_rule` VALUES (154, 'System/configGroupDel', '配置组删除', 1, 1, 0, 0, NULL, '', 148, 0, 0, NULL);
+
+-- ----------------------------
+-- Table structure for lm_banner
+-- ----------------------------
+DROP TABLE IF EXISTS `lm_banner`;
+CREATE TABLE `lm_banner`  (
+  `id` int(11) NOT NULL AUTO_INCREMENT,
+  `name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '名称',
+  `image` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '图片地址',
+  `url` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '链接地址',
+  `status` int(1) NOT NULL DEFAULT 0 COMMENT '0 显示 1 不显示',
+  `pai` int(11) NOT NULL DEFAULT 0 COMMENT '排序',
+  PRIMARY KEY (`id`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '轮播图' ROW_FORMAT = Dynamic;
+
+-- ----------------------------
+-- Records of lm_banner
+-- ----------------------------
+INSERT INTO `lm_banner` VALUES (1, '国寿少儿2', 'http://quyum.oss-cn-huhehaote.aliyuncs.com/guanwang/0008de7a746db7b41de523ef259f05f427e3d805.png', 'xcx.sdsxxkn.com2', 0, 2);
+
+-- ----------------------------
+-- Table structure for lm_config
+-- ----------------------------
+DROP TABLE IF EXISTS `lm_config`;
+CREATE TABLE `lm_config`  (
+  `id` smallint(5) NOT NULL AUTO_INCREMENT,
+  `code` varchar(30) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL,
+  `value` mediumtext CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL,
+  `remark` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '解释,备注',
+  `type` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT 'site',
+  `status` tinyint(1) NULL DEFAULT 1,
+  `create_time` int(11) NULL DEFAULT NULL,
+  `update_time` int(11) NULL DEFAULT NULL,
+  PRIMARY KEY (`id`) USING BTREE,
+  UNIQUE INDEX `id`(`id`) USING BTREE,
+  UNIQUE INDEX `code`(`code`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 58 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '配置参数表' ROW_FORMAT = Compact;
+
+-- ----------------------------
+-- Records of lm_config
+-- ----------------------------
+INSERT INTO `lm_config` VALUES (1, 'site_name', '千翼商城官网', '网站名称', 'site', 1, 0, 1590993472);
+INSERT INTO `lm_config` VALUES (2, 'site_phone', '3', '网站客服服务电话', 'site', 0, 0, 1579406816);
+INSERT INTO `lm_config` VALUES (3, 'site_state', '1', '状态', 'site', 1, 0, 0);
+INSERT INTO `lm_config` VALUES (4, 'site_logo', '/storage/uploads/20200529/ad110b5e57ac537529fe3c2a2bf8cdfc.png', '网站logo图', 'site', 1, 0, 0);
+INSERT INTO `lm_config` VALUES (5, 'site_mobile_logo', 'site_mobile_logo.png', '默认网站手机端logo', 'site', 0, 0, 1579406806);
+INSERT INTO `lm_config` VALUES (6, 'site_logowx', 'site_logowx.jpg', '微信网站二维码', 'site', 0, 0, 1579406800);
+INSERT INTO `lm_config` VALUES (7, 'site_icp', '2', 'ICP备案号', 'site', 1, 0, 0);
+INSERT INTO `lm_config` VALUES (8, 'site_tel400', '40002541852', '解释,备注', 'site', 1, 0, 0);
+INSERT INTO `lm_config` VALUES (9, 'site_email', 'www.794230322@outlook.com', '电子邮件', 'site', 1, 0, 0);
+INSERT INTO `lm_config` VALUES (10, 'site_copyright', '千翼科技版权所有@2019', '底部版权信息', 'site', 1, 0, 0);
+INSERT INTO `lm_config` VALUES (11, 'captcha_status_login', '1', '会员登录是否需要验证码', 'site', 1, 0, 0);
+INSERT INTO `lm_config` VALUES (12, 'captcha_status_register', '1', '会员注册是否验证码', 'site', 1, 0, 0);
+INSERT INTO `lm_config` VALUES (14, 'sms_appid', 'LTAIesI7qxnHLgKE', '短信平台账号', 'sms', 1, 0, 0);
+INSERT INTO `lm_config` VALUES (15, 'sms_secret', 'sbA6wnefJLD7pv7WipcxL0M3IMb3l9', '短信平台密钥', 'sms', 1, 0, 0);
+INSERT INTO `lm_config` VALUES (16, 'email_host', 'smtp.qq.com', '邮箱地址', 'email', 0, 0, 1579406788);
+INSERT INTO `lm_config` VALUES (17, 'email_port', '25', '邮箱端口', 'email', 0, 0, 1579406821);
+INSERT INTO `lm_config` VALUES (18, 'email_addr', '994927909@qq.com', '邮箱发件人地址', 'email', 0, 0, 1579406822);
+INSERT INTO `lm_config` VALUES (19, 'email_id', '994927909@qq.com', '身份验证用户名', 'email', 0, 0, 1579406824);
+INSERT INTO `lm_config` VALUES (20, 'email_pass', '11211', '用户名密码', 'email', 0, 0, 1579406828);
+INSERT INTO `lm_config` VALUES (21, 'email_secure', 'smtp', '邮箱发送协议', 'email', 0, 0, 1579406829);
+INSERT INTO `lm_config` VALUES (22, 'upload_file_type', 'bmp|png|gif|jpg|jpeg|zip|rar|txt|ppt|xls|doc|mp3|mp4', '图片上传保存方式', 'upload', 1, 0, 0);
+INSERT INTO `lm_config` VALUES (23, 'cache_open', '0', '是否开启缓存', 'site', 0, 0, 1579406834);
+INSERT INTO `lm_config` VALUES (24, 'alioss_accessid', '', 'accessid', 'oss', 0, 0, 1579406846);
+INSERT INTO `lm_config` VALUES (25, 'alioss_accesssecret', '', 'oss_accesssecret', 'oss', 0, 0, 1579406843);
+INSERT INTO `lm_config` VALUES (26, 'alioss_bucket', '', 'oss_bucket', 'oss', 0, 0, 1579406841);
+INSERT INTO `lm_config` VALUES (27, 'alioss_endpoint', '', 'oss_endpoint', 'oss', 0, 0, 1579406846);
+INSERT INTO `lm_config` VALUES (28, 'aliendpoint_type', '0', 'aliendpoint_type', 'oss', 0, 0, 1579406848);
+INSERT INTO `lm_config` VALUES (29, 'node_site_url', '', '站内IM服务器地址', 'im', 0, 0, 1579406849);
+INSERT INTO `lm_config` VALUES (30, 'node_site_use', '0', '是否启用im', 'im', 0, 0, 1579406851);
+INSERT INTO `lm_config` VALUES (31, 'qq_isuse', '1', '是否使用QQ互联', 'qq', 0, 0, 1579406852);
+INSERT INTO `lm_config` VALUES (32, 'qq_appid', '', 'qq互联id', 'qq', 0, 0, 1579406856);
+INSERT INTO `lm_config` VALUES (33, 'qq_appkey', '', 'qq秘钥', 'qq', 0, 0, 1579406857);
+INSERT INTO `lm_config` VALUES (34, 'sina_isuse', '1', '是的使用微博登录', 'sina', 0, 0, 1579406858);
+INSERT INTO `lm_config` VALUES (35, 'sina_wb_akey', '', '新浪id', 'sina', 0, 0, 1579406859);
+INSERT INTO `lm_config` VALUES (36, 'sina_wb_skey', '', '新浪秘钥', 'sina', 0, 0, 1579406860);
+INSERT INTO `lm_config` VALUES (37, 'sms_register', '0', '是否手机注册', 'mobile', 0, 0, 1579406861);
+INSERT INTO `lm_config` VALUES (38, 'sms_login', '0', '是否手机登录', 'mobile', 0, 0, 1579406869);
+INSERT INTO `lm_config` VALUES (39, 'sms_password', '0', '是否手机找回密码', 'mobile', 0, 0, 1579406872);
+INSERT INTO `lm_config` VALUES (43, 'baidu_ak', '22bb7221fc279a484895afcc6a0bb33a', '百度地图AK密钥', 'baidu', 0, 0, 1579406873);
+INSERT INTO `lm_config` VALUES (44, 'site_licence', '', '营业执照', 'site', 0, 0, 1579406874);
+INSERT INTO `lm_config` VALUES (45, 'site_domain', 'https://www.quyum.com', '网站地址', 'site', 0, 0, 1579406875);
+INSERT INTO `lm_config` VALUES (46, 'upload_file_max', '2048', '最大文件上传大小', 'upload', 1, 0, 0);
+INSERT INTO `lm_config` VALUES (47, 'site_seo_title', '内容管理系统', '首页标题', 'site', 0, 0, 1579406877);
+INSERT INTO `lm_config` VALUES (48, 'site_seo_keywords', '小程序,管理系统,thinkphp6', '首页关键词', 'site', 0, 0, 1579406880);
+INSERT INTO `lm_config` VALUES (49, 'site_seo_desc', '', '首页描述', 'site', 0, 0, 1579406881);
+INSERT INTO `lm_config` VALUES (50, 'upload_water', '1', '水印开始关闭', 'upload', 0, 0, 1579406891);
+INSERT INTO `lm_config` VALUES (51, 'upload_water_position', '', '水印位置', 'upload', 0, 0, 1579406890);
+INSERT INTO `lm_config` VALUES (52, 'sms_product', 'lemocms', '产品', 'sms', 0, 0, 1579406888);
+INSERT INTO `lm_config` VALUES (53, 'sms_template', 'SMS_158941284', '模板id', 'sms', 0, 0, 1579406886);
+INSERT INTO `lm_config` VALUES (54, 'appid', 'wx4025e13383042216', '微信appid', 'weixin', 0, 0, 1579406886);
+INSERT INTO `lm_config` VALUES (55, 'appsecret', 'cde471d1aca9ee5e93bd250a96aee5a9', '微信密钥', 'weixin', 0, NULL, NULL);
+INSERT INTO `lm_config` VALUES (56, 'access_token', NULL, '微信密钥', 'weixin', 1, NULL, NULL);
+INSERT INTO `lm_config` VALUES (57, 'expires_in', NULL, '微信密钥时间', 'weixin', 1, NULL, NULL);
+
+-- ----------------------------
+-- Table structure for lm_config_group
+-- ----------------------------
+DROP TABLE IF EXISTS `lm_config_group`;
+CREATE TABLE `lm_config_group`  (
+  `id` int(11) NOT NULL AUTO_INCREMENT,
+  `name` varchar(30) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL,
+  `title` varchar(60) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL,
+  PRIMARY KEY (`id`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 11 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Compact;
+
+-- ----------------------------
+-- Records of lm_config_group
+-- ----------------------------
+INSERT INTO `lm_config_group` VALUES (1, 'site', '网站');
+INSERT INTO `lm_config_group` VALUES (2, 'qq', 'qq');
+INSERT INTO `lm_config_group` VALUES (3, 'sms', '短信');
+INSERT INTO `lm_config_group` VALUES (4, 'email', '邮箱');
+INSERT INTO `lm_config_group` VALUES (5, 'oss', 'oss');
+INSERT INTO `lm_config_group` VALUES (6, 'sina', '新浪');
+INSERT INTO `lm_config_group` VALUES (7, 'im', 'im');
+INSERT INTO `lm_config_group` VALUES (8, 'upload', '上传');
+INSERT INTO `lm_config_group` VALUES (9, 'mobile', '手机');
+INSERT INTO `lm_config_group` VALUES (10, '百度', '百度配置');
+
+-- ----------------------------
+-- Table structure for lm_field
+-- ----------------------------
+DROP TABLE IF EXISTS `lm_field`;
+CREATE TABLE `lm_field`  (
+  `id` smallint(5) UNSIGNED NOT NULL AUTO_INCREMENT,
+  `moduleid` float UNSIGNED NOT NULL DEFAULT 0 COMMENT '模型id',
+  `field` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '字段',
+  `name` varchar(30) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '名字',
+  `required` tinyint(1) UNSIGNED NOT NULL DEFAULT 0 COMMENT '是否必须',
+  `minlength` int(10) UNSIGNED NOT NULL DEFAULT 0 COMMENT '最少长度',
+  `maxlength` int(10) UNSIGNED NOT NULL DEFAULT 0 COMMENT '最大长度',
+  `rule` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '规则',
+  `msg` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '错误提示',
+  `type` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '字段类型',
+  `is_search` tinyint(1) NULL DEFAULT 0 COMMENT '是否可以搜索 0  不可以,1 搜索',
+  `value` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL,
+  `field_define` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL,
+  `option` text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL COMMENT '默认值',
+  `sort` int(10) UNSIGNED NOT NULL DEFAULT 0,
+  `status` tinyint(1) UNSIGNED NOT NULL DEFAULT 0,
+  `create_time` int(11) NOT NULL DEFAULT 0,
+  `update_time` int(11) NOT NULL DEFAULT 0,
+  PRIMARY KEY (`id`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 94 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Compact;
+
+-- ----------------------------
+-- Records of lm_field
+-- ----------------------------
+INSERT INTO `lm_field` VALUES (31, 32, 'column_id', '栏目', 1, 0, 6, '', '必须选择一个栏目', 'column_id', 0, '', NULL, '', 1, 1, 1571732224, 0);
+INSERT INTO `lm_field` VALUES (32, 32, 'title', '标题', 1, 0, 80, '', '标题必须为1-80个字符', 'text', 0, '', NULL, '', 2, 1, 1571732224, 0);
+INSERT INTO `lm_field` VALUES (33, 32, 'keywords', '关键词', 1, 0, 200, '', '关键词必须在0-200个内', 'text', 0, '', NULL, '', 3, 1, 1571732224, 0);
+INSERT INTO `lm_field` VALUES (34, 32, 'description', 'SEO简介', 1, 0, 0, '', '', 'textarea', 0, '', NULL, '', 4, 1, 1571732224, 0);
+INSERT INTO `lm_field` VALUES (35, 32, 'content', '内容', 0, 0, 255, '', '', 'editor', 0, 'ueditor', NULL, '0|ueditor', 5, 1, 1571732224, 0);
+INSERT INTO `lm_field` VALUES (36, 32, 'create_time', '创建时间', 1, 0, 11, '', '', 'datetime', 0, '', NULL, '', 6, 1, 1571732224, 0);
+INSERT INTO `lm_field` VALUES (37, 32, 'update_time', '更新时间', 1, 0, 11, '', '', 'datetime', 0, '', NULL, '', 6, 1, 1571732224, 0);
+INSERT INTO `lm_field` VALUES (38, 32, 'status', '状态', 1, 0, 1, '', '', 'radio', 0, '1', NULL, '0|未发布,1|发布', 7, 1, 1571732224, 0);
+INSERT INTO `lm_field` VALUES (39, 32, 'recommend', '允许评论', 0, 0, 1, '', '', 'radio', 0, '1', NULL, '0|禁止评论,1|允许评论', 8, 1, 1571732224, 0);
+INSERT INTO `lm_field` VALUES (40, 32, 'readpoint', '阅读收费', 0, 0, 5, '', '', 'number', 0, '0', NULL, '', 9, 1, 1571732224, 0);
+INSERT INTO `lm_field` VALUES (41, 32, 'is_read', '是否可阅读', 0, 0, 1, '', '', 'radio', 0, '1', NULL, '0|禁止,1|允许', 9, 1, 1571732224, 0);
+INSERT INTO `lm_field` VALUES (42, 32, 'hits', '点击次数', 0, 0, 8, '', '', 'number', 0, '1', NULL, '', 10, 1, 1571732224, 0);
+INSERT INTO `lm_field` VALUES (43, 32, 'visite', '访问权限', 0, 0, 1, '', '', 'radio', 0, '1', NULL, '0|开启,1|关闭', 11, 1, 1571732224, 0);
+INSERT INTO `lm_field` VALUES (44, 32, 'posid', '推荐位', 0, 0, 1, '', '', 'posid', 0, '', NULL, '', 12, 12, 1571732224, 0);
+INSERT INTO `lm_field` VALUES (45, 32, 'tags', '标签', 0, 0, 255, '', '', 'text', 0, '', NULL, '', 14, 1, 1571732224, 0);
+INSERT INTO `lm_field` VALUES (46, 2, 'column_id', '栏目', 1, 1, 6, '', '必须选择一个栏目', 'column_id', 0, '', NULL, '', 1, 1, 1571884340, 0);
+INSERT INTO `lm_field` VALUES (47, 2, 'title', '标题', 1, 1, 80, '', '标题必须为1-80个字符', 'text', 0, '', NULL, '', 2, 1, 1571884340, 0);
+INSERT INTO `lm_field` VALUES (48, 2, 'keywords', '关键词', 1, 0, 200, '', '关键词必须在0-200个内', 'text', 0, '', NULL, '', 3, 1, 1571884340, 0);
+INSERT INTO `lm_field` VALUES (49, 2, 'description', 'SEO简介', 1, 0, 0, '', '', 'textarea', 0, '', NULL, '', 4, 1, 1571884340, 0);
+INSERT INTO `lm_field` VALUES (50, 2, 'content', '内容', 0, 0, 0, '', '', 'editor', 0, 'ueditor', NULL, '0|ueditor', 5, 1, 1571884340, 0);
+INSERT INTO `lm_field` VALUES (51, 2, 'create_time', '创建时间', 1, 0, 0, '', '', 'datetime', 0, '', NULL, '', 61, 1, 1571884340, 1571884945);
+INSERT INTO `lm_field` VALUES (52, 2, 'update_time', '更新时间', 1, 0, 0, '', '', 'datetime', 0, '', NULL, '', 6, 1, 1571884340, 0);
+INSERT INTO `lm_field` VALUES (53, 2, 'status', '状态', 1, 0, 0, '', '', 'radio', 0, '1', NULL, '0|未发布,1|发布', 7, 1, 1571884340, 0);
+INSERT INTO `lm_field` VALUES (54, 2, 'recommend', '允许评论', 0, 0, 1, '', '', 'radio', 0, '1', NULL, '0|禁止评论,1|允许评论', 8, 1, 1571884340, 0);
+INSERT INTO `lm_field` VALUES (55, 2, 'readpoint', '阅读收费', 0, 0, 5, '', '', 'number', 0, '0', NULL, '', 9, 1, 1571884340, 0);
+INSERT INTO `lm_field` VALUES (56, 2, 'is_read', '是否可阅读', 0, 0, 5, '', '', 'radio', 0, '1', NULL, '0|禁止,1|允许', 9, 1, 1571884340, 0);
+INSERT INTO `lm_field` VALUES (57, 2, 'hits', '点击次数', 0, 0, 8, '', '', 'number', 0, '1', NULL, '', 10, 1, 1571884340, 0);
+INSERT INTO `lm_field` VALUES (58, 2, 'visite', '访问权限', 0, 0, 0, '', '', 'radio', 0, '1', NULL, '0|开启,1|关闭', 11, 1, 1571884340, 0);
+INSERT INTO `lm_field` VALUES (59, 2, 'posid', '推荐位', 0, 0, 0, '', '', 'posid', 0, '', NULL, '', 12, 12, 1571884340, 0);
+INSERT INTO `lm_field` VALUES (60, 3, 'column_id', '栏目', 1, 0, 6, '', '必须选择一个栏目', 'column_id', 0, '', NULL, '', 1, 1, 1572145912, 0);
+INSERT INTO `lm_field` VALUES (61, 3, 'title', '标题', 1, 0, 180, '', '标题必须为1-180个字符', 'text', 0, '', NULL, '', 2, 1, 1572145912, 0);
+INSERT INTO `lm_field` VALUES (62, 3, 'keywords', '关键词', 1, 0, 80, '', '', 'text', 0, '', NULL, '', 3, 1, 1572145912, 0);
+INSERT INTO `lm_field` VALUES (63, 3, 'description', 'SEO简介', 1, 0, 0, '', '', 'textarea', 0, '', NULL, '', 4, 1, 1572145912, 0);
+INSERT INTO `lm_field` VALUES (64, 3, 'tags', '标签', 0, 0, 0, '', '', 'text', 0, '', NULL, '', 5, 1, 1, 0);
+INSERT INTO `lm_field` VALUES (65, 3, 'content', '内容', 0, 0, 0, '', '', 'editor', 0, 'ueditor', NULL, '0|ueditor', 6, 1, 1572145912, 0);
+INSERT INTO `lm_field` VALUES (78, 6, 'column_id', '栏目', 1, 0, 6, '', '必须选择一个栏目', 'column_id', 0, '', NULL, '', 1, 1, 1572870621, 0);
+INSERT INTO `lm_field` VALUES (79, 6, 'title', '标题', 1, 0, 80, '', '标题必须为1-80个字符', 'text', 0, '', NULL, '', 2, 1, 1572870621, 0);
+INSERT INTO `lm_field` VALUES (80, 6, 'keywords', '关键词', 1, 0, 200, '', '关键词必须在0-200个内', 'text', 0, '', NULL, '', 3, 1, 1572870621, 0);
+INSERT INTO `lm_field` VALUES (81, 6, 'description', 'SEO简介', 1, 0, 0, '', '', 'textarea', 0, '', NULL, '', 4, 1, 1572870621, 0);
+INSERT INTO `lm_field` VALUES (82, 6, 'content', '内容', 0, 0, 255, '', '', 'editor', 0, 'ueditor', NULL, '0|ueditor', 5, 1, 1572870621, 0);
+INSERT INTO `lm_field` VALUES (83, 6, 'create_time', '创建时间', 1, 0, 11, '', '', 'datetime', 0, '', NULL, '', 6, 1, 1572870621, 0);
+INSERT INTO `lm_field` VALUES (84, 6, 'update_time', '更新时间', 1, 0, 11, '', '', 'datetime', 0, '', NULL, '', 6, 1, 1572870621, 0);
+INSERT INTO `lm_field` VALUES (85, 6, 'status', '状态', 1, 0, 1, '', '', 'radio', 0, '1', NULL, '0|未发布,1|发布', 7, 1, 1572870621, 0);
+INSERT INTO `lm_field` VALUES (86, 6, 'recommend', '允许评论', 0, 0, 1, '', '', 'radio', 0, '1', NULL, '0|禁止评论,1|允许评论', 8, 1, 1572870621, 0);
+INSERT INTO `lm_field` VALUES (87, 6, 'readpoint', '阅读收费', 0, 0, 5, '', '', 'number', 0, '0', NULL, '', 9, 1, 1572870621, 0);
+INSERT INTO `lm_field` VALUES (88, 6, 'is_read', '是否可阅读', 0, 0, 1, '', '', 'radio', 0, '1', NULL, '0|禁止,1|允许', 9, 1, 1572870621, 0);
+INSERT INTO `lm_field` VALUES (89, 6, 'hits', '点击次数', 0, 0, 8, '', '', 'number', 0, '1', NULL, '', 10, 1, 1572870621, 0);
+INSERT INTO `lm_field` VALUES (90, 6, 'visite', '访问权限', 0, 0, 1, '', '', 'radio', 0, '1', NULL, '0|开启,1|关闭', 11, 1, 1572870621, 0);
+INSERT INTO `lm_field` VALUES (91, 6, 'posid', '推荐位', 0, 0, 1, '', '', 'posid', 0, '', NULL, '', 12, 1, 1572870621, 0);
+INSERT INTO `lm_field` VALUES (92, 6, 'tags', '标签', 0, 0, 255, '', '', 'text', 0, '', NULL, '', 14, 1, 1572870621, 0);
+INSERT INTO `lm_field` VALUES (93, 6, 'occ_id', '土味乡情', 0, 0, 0, '', '', 'files', 0, '', 'varchar(255) NOT NULL DEFAULT \'\'', NULL, 50, 1, 1573720440, 1573720440);
+
+-- ----------------------------
+-- Table structure for lm_field_type
+-- ----------------------------
+DROP TABLE IF EXISTS `lm_field_type`;
+CREATE TABLE `lm_field_type`  (
+  `id` int(11) NOT NULL AUTO_INCREMENT,
+  `name` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '字段类型',
+  `title` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '中文类型名',
+  `sort` int(4) NOT NULL DEFAULT 0 COMMENT '排序',
+  `default_define` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '默认定义',
+  `isoption` tinyint(1) UNSIGNED NOT NULL DEFAULT 0 COMMENT '是否需要设置选项',
+  `istring` tinyint(1) UNSIGNED NOT NULL DEFAULT 0 COMMENT '是否自由字符',
+  `rules` varchar(256) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '验证规则',
+  PRIMARY KEY (`id`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 17 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '字段类型表' ROW_FORMAT = Compact;
+
+-- ----------------------------
+-- Records of lm_field_type
+-- ----------------------------
+INSERT INTO `lm_field_type` VALUES (1, 'text', '输入框', 1, 'varchar(255) NOT NULL DEFAULT \'\'', 0, 1, '');
+INSERT INTO `lm_field_type` VALUES (2, 'checkbox', '复选框', 2, 'varchar(50) NOT NULL DEFAULT \'\'', 1, 0, '');
+INSERT INTO `lm_field_type` VALUES (3, 'textarea', '多行文本', 3, 'varchar(255) NOT NULL DEFAULT \'\'', 0, 1, '');
+INSERT INTO `lm_field_type` VALUES (4, 'radio', '单选按钮', 4, 'char(10) NOT NULL DEFAULT \'\'', 1, 0, '');
+INSERT INTO `lm_field_type` VALUES (5, 'switch', '开关', 5, 'tinyint(2) UNSIGNED NOT NULL DEFAULT \'0\'', 0, 0, 'isBool');
+INSERT INTO `lm_field_type` VALUES (6, 'array', '数组', 6, 'varchar(512) NOT NULL DEFAULT \'\'', 0, 0, '');
+INSERT INTO `lm_field_type` VALUES (7, 'select', '下拉框', 7, 'char(10) NOT NULL DEFAULT \'\'', 1, 0, '');
+INSERT INTO `lm_field_type` VALUES (8, 'image', '单张图', 8, 'int(5) UNSIGNED NOT NULL DEFAULT \'0\'', 0, 0, 'isNumber');
+INSERT INTO `lm_field_type` VALUES (9, 'tags', '标签', 10, 'varchar(255) NOT NULL DEFAULT \'\'', 0, 1, '');
+INSERT INTO `lm_field_type` VALUES (10, 'number', '数字', 11, 'int(10) UNSIGNED NOT NULL DEFAULT \'0\'', 0, 0, 'isNumber');
+INSERT INTO `lm_field_type` VALUES (11, 'datetime', '日期和时间', 12, 'int(10) UNSIGNED NOT NULL DEFAULT \'0\'', 0, 0, '');
+INSERT INTO `lm_field_type` VALUES (12, 'ueditor', '百度编辑器', 13, 'text NOT NULL', 0, 1, '');
+INSERT INTO `lm_field_type` VALUES (13, 'images', '多张图', 9, 'varchar(256) NOT NULL DEFAULT \'\'', 0, 0, '');
+INSERT INTO `lm_field_type` VALUES (14, 'color', '颜色值', 17, 'varchar(7) NOT NULL DEFAULT \'\'', 0, 0, '');
+INSERT INTO `lm_field_type` VALUES (15, 'file', '单文件', 15, 'int(5) UNSIGNED NOT NULL DEFAULT \'0\'', 0, 0, 'isNumber');
+INSERT INTO `lm_field_type` VALUES (16, 'files', '多文件', 16, 'varchar(255) NOT NULL DEFAULT \'\'', 0, 0, '');
+
+-- ----------------------------
+-- Table structure for lm_task
+-- ----------------------------
+DROP TABLE IF EXISTS `lm_task`;
+CREATE TABLE `lm_task`  (
+  `id` int(11) UNSIGNED NOT NULL AUTO_INCREMENT,
+  `type` int(11) NULL DEFAULT 0 COMMENT '0 实名制 1 下载注册 2 网页注册 3 关注投票 4 分享转发 5电子商务 6多天任务 7 特单任务',
+  `user_id` int(11) NULL DEFAULT 0 COMMENT '用户id',
+  `name` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT '' COMMENT '任务名称',
+  `explain` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT '' COMMENT '任务说明',
+  `text` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT '任务步骤',
+  `num` int(11) NULL DEFAULT 0 COMMENT '剩余数量',
+  `nums` int(11) NULL DEFAULT 0 COMMENT '总数量',
+  `money` decimal(11, 2) NULL COMMENT '实际金额',
+  `put_money` decimal(11, 2) NULL COMMENT '上架金额',
+  `status` int(11) NULL DEFAULT 0 COMMENT '0 审核中 1 审核通过 2 审核失败 3 已完成 4 已禁止',
+  `msg` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT '' COMMENT '审核失败原因 ',
+  `repeat` int(11) NULL DEFAULT 0 COMMENT '0 可以重复做 1 不可以 ',
+  `end_task_time` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT '' COMMENT '设置的结束时间',
+  `push_time` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT '' COMMENT '提交时间',
+  `create_time` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT '' COMMENT '创建时间',
+  `update_time` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT '' COMMENT '更新时间',
+  PRIMARY KEY (`id`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '任务列表' ROW_FORMAT = Compact;
+
+-- ----------------------------
+-- Records of lm_task
+-- ----------------------------
+
+-- ----------------------------
+-- Table structure for lm_user
+-- ----------------------------
+DROP TABLE IF EXISTS `lm_user`;
+CREATE TABLE `lm_user`  (
+  `id` int(11) UNSIGNED NOT NULL AUTO_INCREMENT,
+  `user` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT '' COMMENT '用户',
+  `name` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT '' COMMENT '呢称',
+  `pwd` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT '' COMMENT '密码',
+  `openid` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT '' COMMENT '微信登录openid',
+  `token` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT '' COMMENT 'token',
+  `money` decimal(20, 2) NULL COMMENT '账号余额',
+  `push_money` decimal(20, 2) NULL COMMENT '发布余额',
+  `status` int(1) NULL DEFAULT 0 COMMENT '0 正常 1 禁止登录',
+  `status_time` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT '' COMMENT '封号时间',
+  `create_time` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT '' COMMENT '创建时间',
+  `vip_time` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT '' COMMENT '会员到期时间',
+  `vip_level` int(1) NULL DEFAULT 0 COMMENT '0 普通会员 1 周卡 2月卡 3 年卡 ',
+  PRIMARY KEY (`id`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 7 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '用户表' ROW_FORMAT = Compact;
+
+-- ----------------------------
+-- Records of lm_user
+-- ----------------------------
+
+SET FOREIGN_KEY_CHECKS = 1;

BIN
php/public/favicons.ico


Файловите разлики са ограничени, защото са твърде много
+ 245 - 0
php/runtime/admin/log/202006/02.log


+ 139 - 0
php/runtime/admin/temp/01e433db5e5517b7a2c4587da42797aa.php

@@ -0,0 +1,139 @@
+<?php /*a:3:{s:63:"D:\phpstudy_pro\WWW\cxy\bts\php\view\admin\auth\admin_list.html";i:1590638532;s:61:"D:\phpstudy_pro\WWW\cxy\bts\php\view\admin\common\header.html";i:1582014448;s:61:"D:\phpstudy_pro\WWW\cxy\bts\php\view\admin\common\footer.html";i:1581911356;}*/ ?>
+<!DOCTYPE html>
+<html>
+<head>
+    <meta charset="utf-8">
+    <title><?php echo config('admin.sys_name'); ?>后台管理</title>
+    <meta name="renderer" content="webkit">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
+    <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
+    <meta name="apple-mobile-web-app-status-bar-style" content="black">
+    <meta name="apple-mobile-web-app-capable" content="yes">
+    <meta name="format-detection" content="telephone=no">
+    <link rel="stylesheet" href="/static/plugins/layui/css/layui.css" media="all" />
+    <!--<link rel="stylesheet" href="/static/plugins/bootstrap-3.3.7/css/bootstrap.css" media="all" />-->
+    <!--<link rel="stylesheet" href="/static/plugins/bootstrap-3.3.7/css/bootstrap-theme.css" media="all" />-->
+    <link rel="stylesheet" href="/static/admin/css/main.css?v=<?php echo time(); ?>" media="all">
+    <link rel="stylesheet" href="/static/plugins/font-awesome-4.7.0/css/font-awesome.min.css" media="all">
+    <!--<link rel="stylesheet" href="/static/plugins/bootstrap-select/less/bootstrap-select.less">-->
+    <!--<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap-select@1.13.9/dist/css/bootstrap-select.min.css">-->
+    <!--[if lt IE 9]>
+    <!--<script src="https://cdn.staticfile.org/html5shiv/r29/html5.min.js"></script>-->
+    <!--<script src="https://cdn.staticfile.org/respond.js/1.4.2/respond.min.js"></script>-->
+    <!--<![endif]&ndash;&gt;-->
+    <style id="LM-bg-color">
+    </style>
+</head>
+<div class="LM-container">
+    <div class="LM-main">
+        <fieldset class="layui-elem-field layui-field-title">
+            <legend><?php echo lang('admin'); ?><?php echo lang('list'); ?></legend>
+
+            <blockquote class="layui-elem-quote">
+                <div class="LM-table">
+                    <div class="layui-inline">
+                        <input type="text" name="keys" id="keys" lay-verify="required" placeholder="请输入" autocomplete="off" class="layui-input">
+
+                    </div>
+                    <button class="layui-btn data-add-btn layui-btn-sm" lay-submit="" lay-filter="add" id="search">搜索</button>
+                    <a href="<?php echo url('adminAdd'); ?>" class="layui-btn layui-btn-sm layui-btn-warm"><?php echo lang('add'); ?><?php echo lang('admin'); ?></a>
+
+                </div>
+
+            </blockquote>
+
+        </fieldset>
+
+        <table class="layui-table" id="list" lay-filter="list"></table>
+    </div>
+</div>
+<script src="/static/plugins/layui/layui.js" charset="utf-8"></script>
+<!--<script src="/static/plugins/bootstrap-3.3.7/js/bootstrap.js" charset="utf-8"></script>-->
+<script type="text/html" id="action">
+    <a href="<?php echo url('adminEdit'); ?>?id={{d.id}}" class="layui-btn layui-btn-xs"><?php echo lang('edit'); ?></a>
+    {{# if(d.id==1){ }}
+    <a href="#" class="layui-btn layui-btn-xs layui-btn-disabled"><?php echo lang('del'); ?></a>
+    {{# }else{  }}
+    <a href="#" class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del"><?php echo lang('del'); ?></a>
+    {{# } }}
+</script>
+<script type="text/html" id="status">
+    {{# if(d.id==1){ }}
+    <input type="checkbox" disabled name="status" value="{{d.id}}" lay-skin="switch" lay-text="开启|关闭" lay-filter="status" checked>
+    {{# }else{  }}
+    <input type="checkbox" name="status" value="{{d.id}}" lay-skin="switch" lay-text="开启|关闭" lay-filter="status" {{ d.status == 1 ? 'checked' : '' }}>
+    {{# } }}
+</script>
+
+<script>
+    layui.use(['table','form','layer'], function() {
+        var table = layui.table,form = layui.form,$ = layui.jquery;
+        var tableIn = table.render({
+            elem: '#list',
+            url: '<?php echo url("adminList"); ?>',
+            method:'post',
+            title:'<?php echo lang("admin"); ?><?php echo lang("list"); ?>',
+            cols: [[
+                {field:'id', title: 'ID', width:100,fixed: true}
+                ,{field:'username', title: '用户名', width:180}
+                ,{field:'title', title: '<?php echo lang("adminGroup"); ?>', width:100}
+                // ,{field:'email', title: '<?php echo lang("email"); ?>', width:200}
+                ,{field:'mobile', title: '<?php echo lang("mobile"); ?>', width:150}
+                ,{field:'ip', title: '<?php echo lang("ip"); ?>',width:150,hide:true}
+                ,{field:'status', title: '<?php echo lang("status"); ?>',width:150,toolbar: '#status'}
+                ,{title:'操作',width:150, toolbar: '#action',align:"center"}
+            ]],
+            limits: [10, 15, 20, 25, 50, 100],
+            limit: 10,
+            page: true
+        });
+        form.on('switch(status)', function(obj){
+            loading =layer.load(1, {shade: [0.1,'#fff']});
+            var id = this.value;
+            var is_open = obj.elem.checked===true?1:0;
+            $.post('<?php echo url("adminState"); ?>',{'id':id,'is_open':is_open},function (res) {
+                layer.close(loading);
+                if (res.code>0) {
+                    tableIn.reload();
+                }else{
+                    layer.msg(res.msg,{time:1000,icon:2});
+                    return false;
+                }
+            })
+        });
+        table.on('tool(list)', function(obj){
+            var data = obj.data;
+            if(obj.event === 'del'){
+                layer.confirm('<?php echo lang("Are you sure you want to delete it"); ?>', function(index){
+                    $.post("<?php echo url('adminDel'); ?>",{id:data.id},function(res){
+                        if (res.code>0) {
+                            layer.msg(res.msg,{time:1000,icon:1});
+                            obj.del();
+                        }else{
+                            layer.msg(res.msg,{time:1000,icon:2});
+                        }
+                    });
+                    layer.close(index);
+                });
+            }
+        });
+        $('#LM-add').click(function () {
+            var index = layer.open({
+                type: 2,
+                content: '<?php echo url("adminAdd"); ?>',
+                area: ['800px', '600px'],
+                maxmin: true
+            });
+            layer.full(index);
+        })
+        $('#search').click(function () {
+            var $keys = $('#keys').val();
+            if(!$keys){
+                return layer.msg('请输入关键词');
+            }
+
+            tableIn.reload({ page: {page: 1},where: {keys: $keys}});
+
+        })
+    });
+</script>

+ 185 - 0
php/runtime/admin/temp/14d50cc59972e0ab82b71f4b5f381353.php

@@ -0,0 +1,185 @@
+<?php /*a:1:{s:58:"D:\phpstudy_pro\WWW\cxy\bts\php\view\admin\index\main.html";i:1590993415;}*/ ?>
+<!DOCTYPE html>
+<html>
+<head>
+    <meta charset="utf-8">
+    <title>主页面</title>
+    <meta name="renderer" content="webkit">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
+    <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
+    <link rel="stylesheet" href="/static/plugins/font-awesome-4.7.0/css/font-awesome.min.css" media="all">
+    <link rel="stylesheet" href="/static/admin/css/main.css" media="all">
+    <link rel="stylesheet" href="/static/plugins/layui/css/layui.css" media="all">
+    <!--<style>-->
+        <!--.layui-card {border:1px solid #f2f2f2;border-radius:5px;}-->
+        <!--.icon {margin-right:10px;color:#1aa094;}-->
+        <!--.icon-cray {color:#ffb800!important;}-->
+        <!--.icon-blue {color:#1e9fff!important;}-->
+        <!--.icon-tip {color:#ff5722!important;}-->
+        <!--.LM-qiuck-module {text-align:center;margin-top: 10px}-->
+        <!--.LM-qiuck-module a i {display:inline-block;width:100%;height:60px;line-height:60px;text-align:center;border-radius:2px;font-size:30px;background-color:#F8F8F8;color:#333;transition:all .3s;-webkit-transition:all .3s;}-->
+        <!--.LM-qiuck-module a cite {position:relative;top:2px;display:block;color:#666;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;font-size:14px;}-->
+        <!--.welcome-module {width:100%;height:210px;}-->
+        <!--.panel {background-color:#fff;border:1px solid transparent;border-radius:3px;-webkit-box-shadow:0 1px 1px rgba(0,0,0,.05);box-shadow:0 1px 1px rgba(0,0,0,.05)}-->
+        <!--.panel-body {padding:10px}-->
+        <!--.panel-title {margin-top:0;margin-bottom:0;font-size:12px;color:inherit}-->
+        <!--.label {display:inline;padding:.2em .6em .3em;font-size:75%;font-weight:700;line-height:1;color:#fff;text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:.25em;margin-top: .3em;}-->
+        <!--.layui-red {color:red}-->
+        <!--.main_btn > p {height:40px;}-->
+        <!--.layui-bg-number {background-color:#F8F8F8;}-->
+        <!--.LM-notice:hover {background:#f6f6f6;}-->
+        <!--.LM-notice {padding:7px 16px;clear:both;font-size:12px !important;cursor:pointer;position:relative;transition:background 0.2s ease-in-out;}-->
+        <!--.LM-notice-title,.LM-notice-label {-->
+            <!--padding-right: 70px !important;text-overflow:ellipsis!important;overflow:hidden!important;white-space:nowrap!important;}-->
+        <!--.LM-notice-title {line-height:28px;font-size:14px;}-->
+        <!--.LM-notice-extra {position:absolute;top:50%;margin-top:-8px;right:16px;display:inline-block;height:16px;color:#999;}-->
+    <!--</style>-->
+
+    <style>
+        .center {
+            text-align: center;
+            background-color: #F9F9F9 !important;
+        }
+
+        .boder {
+            border: 1px solid #D2D2D2 !important;
+        }
+
+        .p-size {
+            font-weight: 700;
+            font-size: 20px;
+        }
+        .border-left{
+            border-left-width: 5px;
+            border-left-style: solid;
+        }
+    </style>
+</head>
+<body>
+<div class="LM-container">
+    <div class="LM-main">
+        <div class="layui-row layui-col-space15">
+
+首页
+
+        </div>
+    </div>
+</div>
+<script src="/static/plugins/layui/layui.js" charset="utf-8"></script>
+<script src="/static/plugins/echarts/echarts.min.js" charset="utf-8"></script>
+<script src="/static/plugins/echarts/echarts-theme.js" charset="utf-8"></script>
+<script>
+    // layui.config({
+    //     base: "/static/admin/js/"
+    // }).extend({
+    //     "LM": "LM"
+    // });
+    // layui.use(['layer', 'LM'], function () {
+    //     var $ = layui.jquery,
+    //         layer = layui.layer;
+    //
+    //     /**
+    //      * 查看公告信息
+    //      **/
+    //     $('body').on('click', '.LM-notice', function () {
+    //         var title = $(this).children('.LM-notice-title').text(),
+    //             noticeTime = $(this).children('.LM-notice-extra').text(),
+    //             content = $(this).children('.LM-notice-content').html();
+    //         var html = '<div style="padding:15px 20px; text-align:justify; line-height: 22px;border-bottom:1px solid #e2e2e2;background-color: #2f4056;color: #ffffff">\n' +
+    //             '<div style="text-align: center;margin-bottom: 20px;font-weight: bold;border-bottom:1px solid #718fb5;padding-bottom: 5px"><h4 class="text-danger">' + title + '</h4></div>\n' +
+    //             '<div style="font-size: 12px">' + content + '</div>\n' +
+    //             '</div>\n';
+    //         parent.layer.open({
+    //             type: 1,
+    //             title: '系统公告'+'<span style="float: right;right: 1px;font-size: 12px;color: #b1b3b9;margin-top: 1px">'+noticeTime+'</span>',
+    //             area: '300px;',
+    //             shade: 0.8,
+    //             id: 'LM-notice',
+    //             btn: ['查看', '取消'],
+    //             btnAlign: 'c',
+    //             moveType: 1,
+    //             content:html,
+    //             success: function (layero) {
+    //                 var btn = layero.find('.layui-layer-btn');
+    //                 btn.find('.layui-layer-btn0').attr({
+    //                     href: 'https://github.com/yue909/LEMOCMS',
+    //                     target: '_blank'
+    //                 });
+    //             }
+    //         });
+    //     });
+    //
+    //     /**
+    //      * 报表功能
+    //      */
+    //     var echartsRecords = echarts.init(document.getElementById('echarts-records'), 'walden');
+    //     var optionRecords = {
+    //         tooltip: {
+    //             trigger: 'axis'
+    //         },
+    //         legend: {
+    //             data:['邮件营销','联盟广告','视频广告','直接访问','搜索引擎']
+    //         },
+    //         grid: {
+    //             left: '3%',
+    //             right: '4%',
+    //             bottom: '3%',
+    //             containLabel: true
+    //         },
+    //         toolbox: {
+    //             feature: {
+    //                 saveAsImage: {}
+    //             }
+    //         },
+    //         xAxis: {
+    //             type: 'category',
+    //             boundaryGap: false,
+    //             data: ['周一','周二','周三','周四','周五','周六','周日']
+    //         },
+    //         yAxis: {
+    //             type: 'value'
+    //         },
+    //         series: [
+    //             {
+    //                 name:'邮件营销',
+    //                 type:'line',
+    //                 stack: '总量',
+    //                 data:[120, 132, 101, 134, 90, 230, 210]
+    //             },
+    //             {
+    //                 name:'联盟广告',
+    //                 type:'line',
+    //                 stack: '总量',
+    //                 data:[220, 182, 191, 234, 290, 330, 310]
+    //             },
+    //             {
+    //                 name:'视频广告',
+    //                 type:'line',
+    //                 stack: '总量',
+    //                 data:[150, 232, 201, 154, 190, 330, 410]
+    //             },
+    //             {
+    //                 name:'直接访问',
+    //                 type:'line',
+    //                 stack: '总量',
+    //                 data:[320, 332, 301, 334, 390, 330, 320]
+    //             },
+    //             {
+    //                 name:'搜索引擎',
+    //                 type:'line',
+    //                 stack: '总量',
+    //                 data:[820, 932, 901, 934, 1290, 1330, 1320]
+    //             }
+    //         ]
+    //     };
+    //     echartsRecords.setOption(optionRecords);
+    //
+    //     // echarts 窗口缩放自适应
+    //     window.onresize = function(){
+    //         echartsRecords.resize();
+    //     }
+    //
+    // });
+</script>
+</body>
+</html>

+ 147 - 0
php/runtime/admin/temp/193b3c530962981d3a4dc850749aaa8b.php

@@ -0,0 +1,147 @@
+<?php /*a:1:{s:59:"D:\phpstudy_pro\WWW\cxy\bts\php\view\admin\login\index.html";i:1583924071;}*/ ?>
+<!DOCTYPE html>
+<html>
+<head>
+    <meta charset="UTF-8">
+    <title><?php echo site_name(); ?>后台管理-登陆</title>
+    <meta name="keywords" content="lemocms 基于thinkphp6,thinkphp,layui,easywechat框架,框架,组件">
+    <meta name="description" content="lemocms 是一款采用 layui开发的极简后台管理框架 基于thinkphp6 ,easywechat,开发的cms后台管理系统,thinkphp,yii2,cms,php后台管理系统,cms,cms系统,restful api,thinkphp后台管理系统">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
+    <meta http-equiv="Access-Control-Allow-Origin" content="*">
+    <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
+    <meta name="apple-mobile-web-app-status-bar-style" content="black">
+    <meta name="apple-mobile-web-app-capable" content="yes">
+    <meta name="format-detection" content="telephone=no">
+    <link rel="stylesheet" href="/static/plugins/layui/css/layui.css" media="all">
+    <!--[if lt IE 9]>
+    <script src="https://cdn.staticfile.org/html5shiv/r29/html5.min.js"></script>
+    <script src="https://cdn.staticfile.org/respond.js/1.4.2/respond.min.js"></script>
+    <![endif]-->
+    <style>
+        html, body {width: 100%;height: 100%;overflow: hidden}
+        body {background: #000;}
+        body:after {content:'';background-repeat:no-repeat;background-size:cover;-webkit-filter:blur(3px);-moz-filter:blur(3px);-o-filter:blur(3px);-ms-filter:blur(3px);filter:blur(3px);position:absolute;top:0;left:0;right:0;bottom:0;z-index:-1;}
+        .layui-container {width: 100%;height: 100%;overflow: hidden;}
+        .admin-login-background {width:360px;height:300px;position:absolute;left:50%;top:40%;margin-left:-180px;margin-top:-100px;}
+        .logo-title {text-align:center;letter-spacing:2px;padding:14px 0;}
+        .logo-title h1 {color:#009688;font-size:25px;font-weight:bold;}
+        .login-form {background-color:#fff;border:1px solid #fff;border-radius:3px;padding:14px 20px;box-shadow:0 0 8px #eeeeee;}
+        .login-form .layui-form-item {position:relative;}
+        .login-form .layui-form-item label {position:absolute;left:1px;top:1px;width:38px;line-height:36px;text-align:center;color:#d2d2d2;}
+        .login-form .layui-form-item input {padding-left:36px;}
+        .captcha {width:60%;display:inline-block;}
+        .captcha-img {display:inline-block;width:34%;float:right;}
+        .captcha-img img {height:34px;border:1px solid #e6e6e6;height:36px;width:100%;}
+        .copyright{font-size:12px;color: #ccc; text-align: center;}
+        @media screen  and (max-width: 320px) {
+            .admin-login-background {
+                width:300px;
+                left: 59%;
+            }
+        }
+
+    </style>
+</head>
+<body>
+<div id="canvas"></div>
+<div class="layui-container">
+    <div class="admin-login-background">
+        <div class="layui-form login-form">
+            <form class="layui-form" action="">
+                <div class="layui-form-item logo-title">
+                    <h1><?php echo site_name(); ?>管理后台</h1>
+                </div>
+                <div class="layui-form-item">
+                    <label class="layui-icon layui-icon-username" for="username"></label>
+                    <input type="text" name="username" lay-verify="required|account" placeholder="用户名或者邮箱" autocomplete="off" class="layui-input" value="">
+                </div>
+                <div class="layui-form-item">
+                    <label class="layui-icon layui-icon-password" for="password"></label>
+                    <input type="password" name="password" lay-verify="required|password" placeholder="密码" autocomplete="off" class="layui-input" value="">
+                </div>
+                <div class="layui-form-item">
+                    <label class="layui-icon layui-icon-vercode" for="captcha"></label>
+                    <input type="text" name="captcha" lay-verify="required|captcha" placeholder="图形验证码" autocomplete="off" class="layui-input verification captcha" value="">
+                    <div class="captcha-img">
+                        <img  id="captchaPic" src="<?php echo url('verify'); ?>?<?php echo time(); ?>" alt="captcha" onclick="this.src='<?php echo url("verify"); ?>?'+'id='+Math.random()"/>
+                    </div>
+                </div>
+                <div class="layui-form-item">
+                    <input type="checkbox" name="rememberMe" checked value="true" lay-skin="primary" title="记住密码">
+                </div>
+                <div class="layui-form-item">
+                    <button class="layui-btn layui-btn-fluid" lay-submit="" lay-filter="login">登 入</button>
+                </div>
+                <div class="copyright">
+                    © 2009-<?php echo date("Y");?> <a href="http://quyum.com" target="_blank">千翼科技</a> All Rights Reserved.
+                </div>
+            </form>
+        </div>
+    </div>
+</div>
+<script src="/static/plugins/jquery-3.4.1/jquery-3.4.1.min.js" charset="utf-8"></script>
+<script src="/static/plugins/layui/layui.js" charset="utf-8"></script>
+<script src="/static/plugins/firework/firework.js" charset="utf-8"></script>
+<script>
+    layui.use(['form'], function () {
+        var form = layui.form,
+            layer = layui.layer;
+        // 登录过期的时候,跳出ifram框架
+        if (top.location != self.location) top.location = self.location;
+
+        // 粒子线条背景
+        $(document).ready(function(){
+
+                $("#canvas").fireworks({
+                    width: "100%",
+                    height: "100%"
+                });
+
+        });
+
+        // 进行登录操作
+        form.on('submit(login)', function (data) {
+            data = data.field;
+
+            if (data.username == '') {
+                layer.msg('用户名不能为空');
+                return false;
+            }
+            if (data.password == '') {
+                layer.msg('密码不能为空');
+                return false;
+            }
+            if (data.captcha == '') {
+                layer.msg('验证码不能为空');
+                return false;
+            }
+
+            $.ajax({
+
+                method:'post',
+                data:data,
+                success:function (res) {
+                    if(res.code>0){
+                        layer.msg(res.msg, function () {
+                            window.location = "<?php echo url('index/index'); ?>";
+                        });
+                    }else{
+                        layer.msg(res.msg);
+                        $('#captchaPic').attr('src','<?php echo url("verify"); ?>?id='+Math.random());
+                        return false;
+                    }
+
+                },fail:function (res) {
+                    layer.msg(res.msg, function () {
+                        $('#captchaPic').attr('src','<?php echo url("verify"); ?>?id='+Math.random());
+                        return false;
+                    });
+                }
+            });
+
+            return false;
+        });
+    });
+</script>
+</body>
+</html>

+ 182 - 0
php/runtime/admin/temp/42d182ba955a14984e138f63987ed1b0.php

@@ -0,0 +1,182 @@
+<?php /*a:3:{s:63:"D:\phpstudy_pro\WWW\cxy\bts\php\view\admin\auth\admin_rule.html";i:1581911356;s:61:"D:\phpstudy_pro\WWW\cxy\bts\php\view\admin\common\header.html";i:1582014448;s:61:"D:\phpstudy_pro\WWW\cxy\bts\php\view\admin\common\footer.html";i:1581911356;}*/ ?>
+<!DOCTYPE html>
+<html>
+<head>
+    <meta charset="utf-8">
+    <title><?php echo config('admin.sys_name'); ?>后台管理</title>
+    <meta name="renderer" content="webkit">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
+    <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
+    <meta name="apple-mobile-web-app-status-bar-style" content="black">
+    <meta name="apple-mobile-web-app-capable" content="yes">
+    <meta name="format-detection" content="telephone=no">
+    <link rel="stylesheet" href="/static/plugins/layui/css/layui.css" media="all" />
+    <!--<link rel="stylesheet" href="/static/plugins/bootstrap-3.3.7/css/bootstrap.css" media="all" />-->
+    <!--<link rel="stylesheet" href="/static/plugins/bootstrap-3.3.7/css/bootstrap-theme.css" media="all" />-->
+    <link rel="stylesheet" href="/static/admin/css/main.css?v=<?php echo time(); ?>" media="all">
+    <link rel="stylesheet" href="/static/plugins/font-awesome-4.7.0/css/font-awesome.min.css" media="all">
+    <!--<link rel="stylesheet" href="/static/plugins/bootstrap-select/less/bootstrap-select.less">-->
+    <!--<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap-select@1.13.9/dist/css/bootstrap-select.min.css">-->
+    <!--[if lt IE 9]>
+    <!--<script src="https://cdn.staticfile.org/html5shiv/r29/html5.min.js"></script>-->
+    <!--<script src="https://cdn.staticfile.org/respond.js/1.4.2/respond.min.js"></script>-->
+    <!--<![endif]&ndash;&gt;-->
+    <style id="LM-bg-color">
+    </style>
+</head>
+<div class="LM-container">
+    <div class="LM-main">
+        <div class="admin-main layui-anim layui-anim-upbit">
+            <fieldset class="layui-elem-field layui-field-title">
+                <legend>权限<?php echo lang('list'); ?></legend>
+            </fieldset>
+            <blockquote class="layui-elem-quote">
+                <a href="<?php echo url('ruleAdd'); ?>" class="layui-btn layui-btn-sm LM-add"><?php echo lang('add'); ?>路由</a>
+                <a class="layui-btn layui-btn-normal layui-btn-sm" onclick="openAll();">展开或折叠全部</a>
+            </blockquote>
+            <table class="layui-table" id="treeGrid" lay-filter="treeGrid"></table>
+        </div>
+    </div>
+</div>
+
+<script type="text/html" id="auth">
+    <input type="checkbox" name="auth_open" value="{{d.id}}" lay-skin="switch" lay-text="是|否" lay-filter="auth_open" {{ d.auth_open == 0 ? 'checked' : '' }}>
+</script>
+<script type="text/html" id="status">
+    <input type="checkbox" name="menu_status" value="{{d.id}}" lay-skin="switch" lay-text="显示|隐藏" lay-filter="menu_status" {{ d.menu_status == 1 ? 'checked' : '' }}>
+</script>
+<script type="text/html" id="order">
+    <input name="{{d.id}}" data-id="{{d.id}}" class="list_order layui-input" value=" {{d.sort}}" size="10"/>
+</script>
+<script type="text/html" id="icon">
+    <span class="icon {{d.icon}}"></span>
+</script>
+<script type="text/html" id="action">
+    <a href="<?php echo url('ruleEdit'); ?>?id={{d.id}}" class="layui-btn layui-btn-xs"><?php echo lang('edit'); ?></a>
+    <a class="layui-btn layui-btn-xs layui-btn-warm" lay-event="add"><?php echo lang('add'); ?><?php echo lang('child'); ?></a>
+    <a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del"><?php echo lang('del'); ?></a>
+</script>
+<script type="text/html" id="topBtn">
+    <a href="<?php echo url('ruleAdd'); ?>" class="layui-btn layui-btn-sm"><?php echo lang('add'); ?>权限</a>
+</script>
+<script src="/static/plugins/layui/layui.js" charset="utf-8"></script>
+<!--<script src="/static/plugins/bootstrap-3.3.7/js/bootstrap.js" charset="utf-8"></script>-->
+<script>
+    var editObj=null,ptable=null,treeGrid=null,tableId='treeGrid',layer=null;
+    layui.config({
+        base: '/static/plugins/layui/extend/'
+    }).extend({
+        treeGrid: 'treeGrid/treeGrid'
+    }).use(['jquery','treeGrid','layer','form'], function(){
+        var $=layui.jquery ,form = layui.form;
+        treeGrid = layui.treeGrid;
+        layer=layui.layer;
+
+        ptable=treeGrid.render({
+            id:tableId
+            ,elem: '#'+tableId
+            ,idField:'id'
+            ,url:'<?php echo url("adminRule"); ?>'
+            ,cellMinWidth: 100
+            ,treeId:'id'//树形id字段名称
+            ,treeUpId:'pid'//树形父id字段名称
+            ,treeShowName:'title'//以树形式显示的字段
+            ,height:'full-140'
+            ,isFilter:false
+            ,iconOpen:true//是否显示图标【默认显示】
+            ,isOpenDefault:true//节点默认是展开还是折叠【默认展开】
+            ,cols: [[
+                {field: 'id', title: '<?php echo lang("id"); ?>', width: 70, fixed: true},
+                {field: 'icon', align: 'center',title: '<?php echo lang("icon"); ?>', width: 60,templet: '#icon'},
+                {field: 'title', title: '权限名称', width: 200},
+                {field: 'href', title: '控制器/方法', width: 200},
+                {field: 'auth_open',align: 'center', title: '是否验证权限', width: 150,toolbar: '#auth'},
+                {field: 'menu_status',align: 'center',title: '菜单<?php echo lang("status"); ?>', width: 150,toolbar: '#status'},
+                {field: 'sort',align: 'center', title: '<?php echo lang("order"); ?>', width: 80, templet: '#order'},
+                {title:'操作',width:200, toolbar: '#action',align:"center"},
+            ]]
+            ,page:false
+        });
+        treeGrid.on('tool('+tableId+')',function (obj) {
+            var data = obj.data;
+            if(obj.event === 'del'){
+                layer.confirm('<?php echo lang("Are you sure you want to delete it"); ?>', function(index){
+                    var loading = layer.load(1, {shade: [0.1, '#fff']});
+                    $.post("<?php echo url('ruleDel'); ?>",{id:data.id},function(res){
+                        layer.close(loading);
+                        if(res.code==1){
+                            layer.msg(res.msg,{time:1000,icon:1});
+                            obj.del();
+                        }else{
+                            layer.msg(res.msg,{time:1000,icon:2});
+                        }
+                    });
+                    layer.close(index);
+                });
+            }else if(obj.event === 'add'){
+
+                var index = layer.open({
+                    type: 2,
+                    content: '<?php echo url("ruleAdd"); ?>'+'?rule_id='+data.id,
+                    area: ['800px', '600px'],
+                    maxmin: true
+                });
+                layer.full(index);
+
+            }
+        });
+        form.on('switch(auth_open)', function(obj){
+            loading =layer.load(1, {shade: [0.1,'#fff']});
+            var id = this.value;
+            var auth_open = obj.elem.checked===true?0:1;
+            $.post('<?php echo url("ruleOpen"); ?>',{'id':id,'auth_open':auth_open},function (res) {
+                layer.close(loading);
+                if (res.code==1) {
+                    treeGrid.render;
+                }else{
+                    layer.msg(res.msg,{time:1000,icon:2});
+                    treeGrid.render;
+                    return false;
+                }
+            })
+        });
+        form.on('switch(menu_status)', function(obj){
+            loading =layer.load(1, {shade: [0.1,'#fff']});
+            var id = this.value;
+            var menu_status = obj.elem.checked===true?1:0;
+            $.post('<?php echo url("ruleState"); ?>',{'id':id,'menu_status':menu_status},function (res) {
+                layer.close(loading);
+                if (res.code==1) {
+                    treeGrid.render;
+                }else{
+                    layer.msg(res.msg,{time:1000,icon:2});
+                    treeGrid.render;
+                    return false;
+                }
+            })
+        });
+        $('body').on('blur','.list_order',function() {
+            var id = $(this).attr('data-id');
+            var sort = $(this).val();
+            $.post('<?php echo url("ruleSort"); ?>',{id:id,sort:sort},function(res){
+                if(res.code > 0){
+                    layer.msg(res.msg,{time:1000,icon:1},function(){
+                        location.href = res.url;
+                    });
+                }else{
+                    layer.msg(res.msg,{time:1000,icon:2});
+                    treeGrid.render;
+                }
+            })
+        })
+
+
+
+    });
+
+    function openAll() {
+        var treedata=treeGrid.getDataTreeList(tableId);
+        treeGrid.treeOpenAll(tableId,!treedata[0][treeGrid.config.cols.isOpen]);
+    }
+
+</script>

+ 145 - 0
php/runtime/admin/temp/a5b87fd77913dd9b0ad9dd783203b8ce.php

@@ -0,0 +1,145 @@
+<?php /*a:3:{s:59:"D:\phpstudy_pro\WWW\cxy\bts\php\view\admin\index\index.html";i:1581911356;s:61:"D:\phpstudy_pro\WWW\cxy\bts\php\view\admin\common\header.html";i:1582014448;s:61:"D:\phpstudy_pro\WWW\cxy\bts\php\view\admin\common\footer.html";i:1581911356;}*/ ?>
+<!DOCTYPE html>
+<html>
+<head>
+    <meta charset="utf-8">
+    <title><?php echo config('admin.sys_name'); ?>后台管理</title>
+    <meta name="renderer" content="webkit">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
+    <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
+    <meta name="apple-mobile-web-app-status-bar-style" content="black">
+    <meta name="apple-mobile-web-app-capable" content="yes">
+    <meta name="format-detection" content="telephone=no">
+    <link rel="stylesheet" href="/static/plugins/layui/css/layui.css" media="all" />
+    <!--<link rel="stylesheet" href="/static/plugins/bootstrap-3.3.7/css/bootstrap.css" media="all" />-->
+    <!--<link rel="stylesheet" href="/static/plugins/bootstrap-3.3.7/css/bootstrap-theme.css" media="all" />-->
+    <link rel="stylesheet" href="/static/admin/css/main.css?v=<?php echo time(); ?>" media="all">
+    <link rel="stylesheet" href="/static/plugins/font-awesome-4.7.0/css/font-awesome.min.css" media="all">
+    <!--<link rel="stylesheet" href="/static/plugins/bootstrap-select/less/bootstrap-select.less">-->
+    <!--<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap-select@1.13.9/dist/css/bootstrap-select.min.css">-->
+    <!--[if lt IE 9]>
+    <!--<script src="https://cdn.staticfile.org/html5shiv/r29/html5.min.js"></script>-->
+    <!--<script src="https://cdn.staticfile.org/respond.js/1.4.2/respond.min.js"></script>-->
+    <!--<![endif]&ndash;&gt;-->
+    <style id="LM-bg-color">
+    </style>
+</head>
+<link rel="stylesheet" href="/static/admin/css/common.css" media="all">
+
+<body class="layui-layout-body LM-all">
+<div class="layui-layout layui-layout-admin">
+
+    <div class="layui-header header">
+        <div class="layui-logo"><a href="">
+            <img src="<?php echo site_logo(); ?>" alt="lemocms">
+            <h1><?php echo site_name(); ?></h1>
+        </a>
+        </div>
+        <a>
+            <div class="LM-tool"><i title="展开" class="fa fa-outdent" data-side-fold="1"></i></div>
+        </a>
+
+        <!--pc 端-->
+        <ul class="layui-nav layui-layout-left layui-header-menu layui-header-pc-menu mobile layui-hide-xs">
+        </ul>
+            <!--手机端-->
+        <ul class="layui-nav layui-layout-left layui-header-menu mobile layui-hide-sm">
+            <li class="layui-nav-item">
+                <a href="javascript:;"><i class="fa fa-list-ul"></i> 选择模块</a>
+                <dl class="layui-nav-child layui-header-mini-menu">
+                </dl>
+            </li>
+        </ul>
+
+
+        <ul class="layui-nav layui-layout-right">
+            <li class="layui-nav-item">
+                <a href="javascript:;" data-refresh="刷新"><i class="fa fa-refresh"></i></a>
+            </li>
+            <li class="layui-nav-item">
+                <a href="javascript:;" data-clear="清理" data-href="<?php echo url('cleardata'); ?>" class="LM-clear"><i class="fa fa-trash-o"></i></a>
+            </li>
+            <li class="layui-nav-item LM-setting">
+                <a href="javascript:;"><?php echo session('admin.username'); ?></a>
+                <dl class="layui-nav-child">
+                    <dd>
+                        <a href="javascript:;" data-iframe-tab="<?php echo url('auth/adminEdit'); ?>" data-title="基本资料" data-icon="fa fa-gears">基本资料</a>
+                    </dd>
+                    <dd>
+                        <a href="javascript:;" data-iframe-tab="<?php echo url('password'); ?>" data-title="修改密码" data-icon="fa fa-gears">修改密码</a>
+                    </dd>
+                    <dd>
+                        <a href="javascript:;" class="login-out">退出登录</a>
+                    </dd>
+                </dl>
+            </li>
+            <li class="layui-nav-item LM-select-bgcolor mobile layui-hide-xs">
+                <a href="javascript:;" data-bgcolor="配色方案"><i class="fa fa-ellipsis-v"></i></a>
+            </li>
+        </ul>
+    </div>
+
+    <div class="layui-side layui-bg-black">
+        <div class="layui-side-scroll layui-left-menu">
+        </div>
+    </div>
+
+    <div class="layui-body">
+        <div class="layui-tab" lay-filter="LMTab" id="top_tabs_box">
+            <ul class="layui-tab-title" id="top_tabs">
+                <li class="layui-this" id="LMHomeTabId" lay-id=""></li>
+            </ul>
+<!--            关闭按钮-->
+            <ul class="layui-nav closeBox">
+                <li class="layui-nav-item">
+                    <a href="javascript:;"> <i class="fa fa-dot-circle-o"></i> 页面操作</a>
+                    <dl class="layui-nav-child">
+                        <dd><a href="javascript:;" data-page-close="other"><i class="fa fa-window-close"></i> 关闭其他</a></dd>
+                        <dd><a href="javascript:;" data-page-close="all"><i class="fa fa-window-close-o"></i> 关闭全部</a></dd>
+                    </dl>
+                </li>
+            </ul>
+            <div class="layui-tab-content clildFrame">
+                <!--           加载iframe          /-->
+                <div id="LMHomeTabIframe" class="layui-tab-item layui-show"
+                </div>
+
+            </div>
+        </div>
+
+        <div class="layui-footer footer footer-demo" id="admin-footer">
+            <div class="layui-main">
+                <p><?php  echo( date("Y",time())); ?> ©
+                    <a href="http://www.quyum.com/">千翼科技</a> Apache Licence 2.0
+                </p>
+            </div>
+        </div>
+    </div>
+
+
+<script src="/static/plugins/layui/layui.js" charset="utf-8"></script>
+<!--<script src="/static/plugins/bootstrap-3.3.7/js/bootstrap.js" charset="utf-8"></script>-->
+<script>
+    var menus ='<?php echo $menus; ?>';
+    layui.config({
+        base: "/static/admin/js/",
+        version: true
+    }).extend({
+        LM: "LM"
+    }).use(['element', 'layer', 'LM'], function () {
+        var $ = layui.jquery,
+            element = layui.element,
+            layer = layui.layer;
+        if(layui.cache.menus){
+            menus = layui.cache.menus;
+        }else{
+            layui.cache.menus = menus;
+        }
+        // console.log("menus",menus)
+
+        LM.init(menus);
+
+    });
+</script>
+</body>
+

+ 157 - 0
php/runtime/admin/temp/a8ba287c844b92a9904d92bc00486605.php

@@ -0,0 +1,157 @@
+<?php /*a:3:{s:58:"D:\phpstudy_pro\WWW\cxy\bts\php\view\admin\auth\group.html";i:1581911356;s:61:"D:\phpstudy_pro\WWW\cxy\bts\php\view\admin\common\header.html";i:1582014448;s:61:"D:\phpstudy_pro\WWW\cxy\bts\php\view\admin\common\footer.html";i:1581911356;}*/ ?>
+<!DOCTYPE html>
+<html>
+<head>
+    <meta charset="utf-8">
+    <title><?php echo config('admin.sys_name'); ?>后台管理</title>
+    <meta name="renderer" content="webkit">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
+    <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
+    <meta name="apple-mobile-web-app-status-bar-style" content="black">
+    <meta name="apple-mobile-web-app-capable" content="yes">
+    <meta name="format-detection" content="telephone=no">
+    <link rel="stylesheet" href="/static/plugins/layui/css/layui.css" media="all" />
+    <!--<link rel="stylesheet" href="/static/plugins/bootstrap-3.3.7/css/bootstrap.css" media="all" />-->
+    <!--<link rel="stylesheet" href="/static/plugins/bootstrap-3.3.7/css/bootstrap-theme.css" media="all" />-->
+    <link rel="stylesheet" href="/static/admin/css/main.css?v=<?php echo time(); ?>" media="all">
+    <link rel="stylesheet" href="/static/plugins/font-awesome-4.7.0/css/font-awesome.min.css" media="all">
+    <!--<link rel="stylesheet" href="/static/plugins/bootstrap-select/less/bootstrap-select.less">-->
+    <!--<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap-select@1.13.9/dist/css/bootstrap-select.min.css">-->
+    <!--[if lt IE 9]>
+    <!--<script src="https://cdn.staticfile.org/html5shiv/r29/html5.min.js"></script>-->
+    <!--<script src="https://cdn.staticfile.org/respond.js/1.4.2/respond.min.js"></script>-->
+    <!--<![endif]&ndash;&gt;-->
+    <style id="LM-bg-color">
+    </style>
+</head>
+<div class="LM-container">
+    <div class="LM-main">
+        <div class="admin-main layui-anim layui-anim-upbit">
+            <fieldset class="layui-elem-field layui-field-title">
+                <legend>权限组<?php echo lang('list'); ?></legend>
+                <blockquote class="layui-elem-quote">
+                    <div class="LM-table">
+                        <form class="layui-form layui-form-pane">
+                            <div class="layui-inline">
+                                <input type="text" name="title" lay-verify="required" placeholder="<?php echo lang('pleaseEnter'); ?>添加" autocomplete="off" class="layui-input">
+                            </div>
+                            <button class="layui-btn data-add-btn layui-btn-sm" lay-submit="" lay-filter="add"><?php echo lang('add'); ?></button>
+
+                        </form>
+
+                    </div>
+
+                  </blockquote>
+
+            </fieldset>
+
+
+
+            <table class="layui-table" id="list" lay-filter="list"></table>
+        </div>
+    </div>
+</div>
+
+
+<script type="text/html" id="action">
+    <a href="<?php echo url('groupAccess'); ?>?id={{d.id}}" class="layui-btn layui-btn-xs layui-btn-normal">配置规则</a>
+    <a href="<?php echo url('groupEdit'); ?>?id={{d.id}}" class="layui-btn layui-btn-warm layui-btn-xs"><?php echo lang('edit'); ?></a>
+    {{# if(d.id==1){ }}
+    <a class="layui-btn layui-btn-danger layui-btn-xs layui-btn-disabled"><?php echo lang('del'); ?></a>
+    {{# }else{  }}
+    <a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del"><?php echo lang('del'); ?></a>
+    {{# } }}
+</script>
+<script type="text/html" id="status">
+    {{# if(d.id==1){ }}
+    <input type="checkbox" disabled name="status" value="{{d.id}}" lay-skin="switch" lay-text="开启|关闭" lay-filter="status" checked>
+    {{# }else{  }}
+    <input type="checkbox" name="status" value="{{d.id}}" lay-skin="switch" lay-text="开启|关闭" lay-filter="status" {{ d.status == 1 ? 'checked' : '' }}>
+    {{# } }}
+</script>
+<script type="text/html" id="create_time">
+    {{layui.util.toDateString(d.create_time*1000, 'yyyy-MM-dd HH:mm:ss')}}
+</script>
+<script type="text/html" id="update_time">
+    {{layui.util.toDateString(d.update_time*1000, 'yyyy-MM-dd HH:mm:ss')}}
+</script>
+<script src="/static/plugins/layui/layui.js" charset="utf-8"></script>
+<!--<script src="/static/plugins/bootstrap-3.3.7/js/bootstrap.js" charset="utf-8"></script>-->
+<script>
+    layui.use(['form', 'table'], function () {
+        var $ = layui.jquery,
+            form = layui.form,
+            table = layui.table;
+
+        var tableIn = table.render({
+            elem: '#list',
+            url: '<?php echo url("group"); ?>',
+            method: 'post',
+            cols: [[
+                {checkbox: true, fixed: true},
+                {field: 'id', title: 'ID', width: 80, fixed: true, sort: true},
+                {field: 'title', title: '组名', width: 150, fixed: true,},
+                {field: 'status', title: '状态', width: 180, templet:'#status'},
+                {field: 'create_time', title: '添加时间', width: 180,templet:'#create_time'},
+                {field: 'update_time', title: '修改时间', width: 180,templet:'#update_time'},
+                {title:'操作',width:250, toolbar: '#action',align:"center"},
+
+            ]],
+
+        });
+        // 监听添加操作
+        form.on('submit(add)', function (data) {
+            var result = data.field;
+            loading =layer.load(1, {shade: [0.1,'#fff']});
+            $.post("<?php echo url('groupAdd'); ?>", result, function (res) {
+                layer.close(loading);
+                if (res.code > 0) {
+                    layer.msg(res.msg, {time: 2000, icon: 1});
+                    tableIn.reload();
+                } else {
+                    layer.msg(res.msg, {time: 2000, icon: 2});
+                    return false;
+                }
+
+            });
+            return false;
+        })
+
+        table.on('tool(list)', function(data){
+            console.log(data);
+            var obj = data.data;
+            if(data.event === 'del'){
+                layer.confirm('<?php echo lang("Are you sure you want to delete it"); ?>', function(index){
+                    loading =layer.load(1, {shade: [0.1,'#fff']});
+                    $.post("<?php echo url('groupDel'); ?>",{id:obj.id},function(res){
+                        layer.close(loading);
+                        layer.close(index);
+                        if(res.code>0){
+                            layer.msg(res.msg,{time:1000,icon:1});
+                            data.del();
+                        }else{
+                            layer.msg(res.msg,{time:1000,icon:2});
+                        }
+                    });
+                });
+            }
+
+
+        });
+
+        form.on('switch(status)', function(data){
+                loading =layer.load(1, {shade: [0.1,'#fff']});
+                $.post("<?php echo url('groupState'); ?>",{id:data.value},function(res){
+                    layer.close(loading);
+                    if(res.code>0){
+                        layer.msg(res.msg,{time:1000,icon:1});
+                    }else{
+                        layer.msg(res.msg,{time:1000,icon:2});
+                    }
+                });
+        });
+
+    });
+
+
+</script>

+ 152 - 0
php/runtime/admin/temp/b04ecd3398bf75dee5dd9dee974fadba.php

@@ -0,0 +1,152 @@
+<?php /*a:3:{s:61:"D:\phpstudy_pro\WWW\cxy\bts\php\view\admin\auth\rule_add.html";i:1581911356;s:61:"D:\phpstudy_pro\WWW\cxy\bts\php\view\admin\common\header.html";i:1582014448;s:61:"D:\phpstudy_pro\WWW\cxy\bts\php\view\admin\common\footer.html";i:1581911356;}*/ ?>
+<!DOCTYPE html>
+<html>
+<head>
+    <meta charset="utf-8">
+    <title><?php echo config('admin.sys_name'); ?>后台管理</title>
+    <meta name="renderer" content="webkit">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
+    <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
+    <meta name="apple-mobile-web-app-status-bar-style" content="black">
+    <meta name="apple-mobile-web-app-capable" content="yes">
+    <meta name="format-detection" content="telephone=no">
+    <link rel="stylesheet" href="/static/plugins/layui/css/layui.css" media="all" />
+    <!--<link rel="stylesheet" href="/static/plugins/bootstrap-3.3.7/css/bootstrap.css" media="all" />-->
+    <!--<link rel="stylesheet" href="/static/plugins/bootstrap-3.3.7/css/bootstrap-theme.css" media="all" />-->
+    <link rel="stylesheet" href="/static/admin/css/main.css?v=<?php echo time(); ?>" media="all">
+    <link rel="stylesheet" href="/static/plugins/font-awesome-4.7.0/css/font-awesome.min.css" media="all">
+    <!--<link rel="stylesheet" href="/static/plugins/bootstrap-select/less/bootstrap-select.less">-->
+    <!--<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap-select@1.13.9/dist/css/bootstrap-select.min.css">-->
+    <!--[if lt IE 9]>
+    <!--<script src="https://cdn.staticfile.org/html5shiv/r29/html5.min.js"></script>-->
+    <!--<script src="https://cdn.staticfile.org/respond.js/1.4.2/respond.min.js"></script>-->
+    <!--<![endif]&ndash;&gt;-->
+    <style id="LM-bg-color">
+    </style>
+</head>
+<style> .layui-iconpicker-body.layui-iconpicker-body-page .hide {display: none;}</style>
+<div class="LM-container">
+    <div class="LM-main">
+        <div class="admin-main layui-anim layui-anim-upbit">
+            <fieldset class="layui-elem-field layui-field-title">
+                <legend><?php echo lang('add'); ?>权限节点</legend>
+            </fieldset>
+            <blockquote class="layui-elem-quote">
+                1、控制器/方法 例如 Wechat/index
+            </blockquote>
+            <form class="layui-form layui-form-pane" lay-filter="form">
+                <div class="layui-form-item">
+                    <label class="layui-form-label">父级</label>
+                    <div class="layui-input-inline">
+                        <select name="pid" lay-verify="required" lay-filter="pid">
+                            <option value="0">默认顶级</option>
+                            <?php if(is_array($ruleList) || $ruleList instanceof \think\Collection || $ruleList instanceof \think\Paginator): $i = 0; $__LIST__ = $ruleList;if( count($__LIST__)==0 ) : echo "" ;else: foreach($__LIST__ as $key=>$vo): $mod = ($i % 2 );++$i;?>
+                            <option value="<?php echo htmlentities($vo['id']); ?>" <?php if($rule and $rule['id']==$vo['id']): ?>selected
+                            <?php endif; ?>><?php echo htmlentities($vo['lefthtml']); ?><?php echo htmlentities($vo['title']); ?></option>
+                            <?php endforeach; endif; else: echo "" ;endif; ?>
+                        </select>
+                    </div>
+                </div>
+                <div class="layui-form-item">
+                    <label class="layui-form-label">权限名称</label>
+                    <div class="layui-input-inline">
+                        <input type="text" name="title" lay-verify="required" placeholder="<?php echo lang('pleaseEnter'); ?>权限名称"
+                               class="layui-input">
+                    </div>
+                </div>
+                <div class="layui-form-item">
+                    <label class="layui-form-label">控制器/方法</label>
+                    <div class="layui-input-inline">
+                        <input type="text" name="href" lay-verify="required" placeholder="<?php echo lang('pleaseEnter'); ?>控制器/方法"
+                               class="layui-input">
+                    </div>
+                </div>
+                <div class="layui-form-item">
+                    <label class="layui-form-label">图标名称</label>
+                    <div class="layui-input-inline">
+                        <input type="text" name="icon" id="iconPicker" lay-filter="iconPicker" class="hide">
+                    </div>
+                    <div class="layui-form-mid layui-word-aux"><a target="_blank" href="http://www.fontawesome.com.cn/">点击查看图标</a></div>
+                </div>
+                <div class="layui-form-item">
+                    <label class="layui-form-label">菜单状态</label>
+                    <div class="layui-input-inline">
+                        <input type="radio" name="menu_status" lay-filter="menu_status" checked value="1" title="开启">
+                        <input type="radio" name="menu_status" lay-filter="menu_status" value="0" title="关闭">
+                    </div>
+                </div>
+                <div class="layui-form-item">
+                    <label class="layui-form-label">排序</label>
+                    <div class="layui-input-inline">
+                        <input type="text" name="sort" value="50" placeholder="<?php echo lang('pleaseEnter'); ?>排序编号"
+                               class="layui-input">
+                        <input type="hidden" name="id">
+                    </div>
+                </div>
+                <div class="layui-form-item">
+                    <div class="layui-input-inline">
+                        <button type="button" class="layui-btn" lay-submit="" lay-filter="submit">立即提交</button>
+                        <a href="<?php echo url('adminRule'); ?>" class="layui-btn layui-btn-primary">返回</a>
+                    </div>
+                </div>
+            </form>
+        </div>
+    </div>
+</div>
+
+<script src="/static/plugins/layui/layui.js" charset="utf-8"></script>
+<!--<script src="/static/plugins/bootstrap-3.3.7/js/bootstrap.js" charset="utf-8"></script>-->
+<script>
+    layui.config({
+        base: '/static/plugins/layui/extend/'
+    }).extend({
+        iconPickerFa: 'iconPicker/iconPickerFa'
+    }).use(['form', 'layer','iconPickerFa'], function () {
+        var form = layui.form,layer = layui.layer,$= layui.jquery;
+        var iconPickerFa = layui.iconPickerFa;
+        var info  = <?php echo json_encode($info); ?>;
+        var url = "<?php echo url('ruleAdd'); ?>";
+        var icon = '';
+        if(info){
+            form.val('form',info);
+            url = "<?php echo url('ruleEdit'); ?>";
+            icon= info.icon;
+        }
+        iconPickerFa.render({
+            // 选择器,推荐使用input
+            elem: '#iconPicker',
+            // fa 图标接口
+            url: "/static/plugins/font-awesome-4.7.0/less/variables.less",
+            // 是否开启搜索:true/false,默认true
+            search: true,
+            // 是否开启分页:true/false,默认true
+            page: true,
+            // 每页显示数量,默认12
+            limit: 20,
+            // 点击回调
+            click: function (data) {
+                $('#iconPicker').val('fa '+ data.icon);
+            },
+            // 渲染成功后的回调
+            success: function (d) {
+                $('#iconPicker').val('fa '+ d.icon);
+            }
+        });
+        form.on('submit(submit)', function (data) {
+            // 提交到方法 默认为本身
+            console.log(data.field);
+            if(data.field.icon=='fa undefined'){
+                data.field.icon = icon;
+            }
+            $.post(url,data.field,function(res){
+                if(res.code > 0){
+                    layer.msg(res.msg,{time:1000,icon:1},function(){
+                        location.href = res.url;
+                    });
+                }else{
+                    layer.msg(res.msg,{time:1000,icon:2});
+                }
+            });
+        })
+    });
+</script>

Файловите разлики са ограничени, защото са твърде много
+ 4 - 0
php/runtime/cache/0b/dc60c1eb9bd2792cd1fa7f85d9c865.php


+ 4 - 0
php/runtime/cache/b5/0db2208db974a3bc060e4d7255aa98.php

@@ -0,0 +1,4 @@
+<?php
+//000000003600
+ exit();?>
+a:11:{s:3:"url";s:14:"127.0.0.1:8000";s:13:"document_root";s:38:"D:\phpstudy_pro\WWW\cxy\bts\php\public";s:17:"document_protocol";s:8:"HTTP/1.1";s:9:"server_os";s:5:"WINNT";s:11:"server_port";s:4:"8000";s:9:"server_ip";s:9:"127.0.0.1";s:11:"server_soft";s:28:"PHP 7.3.4 Development Server";s:11:"server_file";s:49:"D:\phpstudy_pro\WWW\cxy\bts\php\public\router.php";s:11:"php_version";s:5:"7.3.4";s:13:"mysql_version";s:10:"5.6.41-log";s:15:"max_upload_size";s:5:"1024M";}

Файловите разлики са ограничени, защото са твърде много
+ 4 - 0
php/runtime/cache/ca/361393b5a02e8a62e8dd6d5373a473.php


BIN
php/runtime/session/sess_3f972420e5bb26ed1e69c519f52d4119


+ 0 - 137
php/view/admin/adv/add.html

@@ -1,137 +0,0 @@
-{include file="common/header"/}
-<div class="LM-container">
-    <div class="LM-main">
-        <div class="admin-main layui-anim layui-anim-upbit">
-            <fieldset class="layui-elem-field layui-field-title">
-                <legend>{$title}</legend>
-            </fieldset>
-            <form class="layui-form layui-form-pane" lay-filter="form">
-                <div class="layui-form-item">
-                    <label class="layui-form-label">所属位置</label>
-                    <div class="layui-input-inline">
-                        <select name="pid" lay-verify="required">
-                            <option value="">请选择广告位置</option>
-                            {volist name="posGroup" id="vo"}
-                            <option value="{$vo.id}" {if !empty($info) && $info.pid==$vo.id} selected {/if} >{$vo.position_name}</option>
-                            {/volist}
-                        </select>
-                    </div>
-                </div>
-
-                <div class="layui-form-item">
-                    <label class="layui-form-label">广告名</label>
-                    <div class="layui-input-inline">
-                        <input type="text" name="ad_name" lay-verify="required" placeholder="{:lang('pleaseEnter')}广告名" class="layui-input">
-                    </div>
-                    <div class="layui-form-mid layui-word-aux">
-                        在4到25个字符之间。
-                    </div>
-                </div>
-
-                <div class="layui-form-item">
-                    <label class="layui-form-label">链接</label>
-                    <div class="layui-input-inline">
-                        <input type="text" name="ad_link" placeholder="{:lang('pleaseEnter')}链接" lay-verify="url" class="layui-input">
-                    </div>
-                    <div class="layui-form-mid layui-word-aux">
-                        必须是https 或者http
-                    </div>
-                </div>
-                <div class="layui-form-item">
-                    <label class="layui-form-label">图片</label>
-                    <input type="hidden" name="ad_image" id="avatar">
-                    <div class="layui-input-inline">
-                        <div class="layui-upload">
-                            <button type="button" class="layui-btn layui-btn-primary" id="addBtn"><i class="icon icon-upload3"></i>点击上传</button>
-                            <div class="layui-upload-list">
-                                <img class="layui-upload-img" id="addPic">
-                                <p id="notice"></p>
-                            </div>
-                        </div>
-                    </div>
-                </div>
-                <div class="layui-form-item">
-                    <label class="layui-form-label">{:lang('email')}</label>
-                    <div class="layui-input-inline">
-                        <input type="text" name="link_email" lay-verify="email" placeholder="{:lang('pleaseEnter')}邮箱" class="layui-input">
-                    </div>
-
-                </div>
-                <div class="layui-form-item">
-                    <label class="layui-form-label">日期范围</label>
-                    <div class="layui-input-inline">
-                        <input type="text"  name="time" class="layui-input" id="date" placeholder=" - ">
-                    </div>
-                </div>
-                <div class="layui-form-item">
-                    <div class="layui-input-inline">
-                        <input type="hidden" name="id"  >
-                        <button type="button" class="layui-btn" lay-submit="" lay-filter="submit">{:lang('submit')}</button>
-                        <a href="{:url('index')}" class="layui-btn layui-btn-primary">{:lang('back')}</a>
-                    </div>
-                </div>
-            </form>
-        </div>
-
-    </div>
-</div>
-
-{include file="common/footer"/}
-<script>
-    layui.use(['form', 'layer','upload','laydate'], function () {
-        var form = layui.form, laydate=layui.laydate,layer = layui.layer,$= layui.jquery,upload = layui.upload;
-        var info = '';
-        //日期范围
-        laydate.render({
-            elem: '#date'
-            ,range: true
-        });
-
-        info = {:json_encode($info)};
-        form.val("form", info);
-        if(info){
-            $('#addPic').attr('src',info.avatar);
-        }
-        form.render();
-        form.on('submit(submit)', function (data) {
-            loading =layer.load(1, {shade: [0.1,'#fff']});
-            $.post("", data.field, function (res) {
-                layer.close(loading);
-                if (res.code > 0) {
-                    layer.msg(res.msg, {time: 1800, icon: 1}, function () {
-                       location.href = res.url;
-                    });
-                } else {
-                    layer.msg(res.msg, {time: 1800, icon: 2});
-                }
-            });
-        });
-        //普通图片上传
-        var uploadInt = upload.render({
-            elem: '#addBtn'
-            ,url: '{:url("uploads/uploads")}'
-            ,before: function(obj){
-                //预读本地文件示例,不支持ie8
-                obj.preview(function(index, file, result){
-                    $('#addPic').attr('src', result); //图片链接(base64)
-                });
-            },
-            done: function(res){
-                if(res.code>0){
-                    $('#avatar').val(res.url);
-                }else{
-                    //如果上传失败
-                    return layer.msg('上传失败');
-                }
-            }
-            ,error: function(){
-                //演示失败状态,并实现重传
-                var notice = $('#notice');
-                notice.html('<span style="color: #FF5722;">上传失败</span> <a class="layui-btn layui-btn-mini demo-reload">重试</a>');
-                notice.find('.demo-reload').on('click', function(){
-                    uploadInt.upload();
-                });
-            }
-        });
-    });
-</script>

+ 0 - 130
php/view/admin/adv/index.html

@@ -1,130 +0,0 @@
-{include file="common/header"/}
-<div class="LM-container">
-    <div class="LM-main">
-            <fieldset class="layui-elem-field layui-field-title">
-                <legend>{:lang('ad')}{:lang('list')}</legend>
-                <blockquote class="layui-elem-quote">
-
-                    <div class="LM-table">
-                        <div class="layui-inline">
-                            <input type="text" id='keys' name="keys" lay-verify="required" placeholder="{:lang('pleaseEnter')}" autocomplete="off" class="layui-input">
-                        </div>
-                        <a href="javascript:;" class="layui-btn data-add-btn layui-btn-sm" lay-submit="" lay-filter="add" id="search">{:lang('search')}</a>
-                        <a href="{:url('add')}"  class="layui-btn layui-btn-sm layui-btn-warm">{:lang('add')}{:lang('ad')}</a>
-
-                    </div>
-
-                </blockquote>
-
-            </fieldset>
-
-            <table class="layui-table layui-hide" id="list" lay-filter="list"></table>
-    </div>
-</div>
-
-
-<script type="text/html" id="action">
-    <a href="{:url('edit')}?id={{d.id}}" class="layui-btn  layui-btn-xs" lay-event="edit">{:lang('edit')}</a>
-    <a  class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del">{:lang('del')}</a>
-</script>
-<script type="text/html" id="status">
-    <input type="checkbox" name="status" value="{{d.id}}" lay-skin="switch" lay-text="开启|关闭" lay-filter="status" {{ d.status == 1 ? 'checked' : '' }}>
-</script>
-
-<script type="text/html" id="image">
-    {{d.ad_name}}<img src="/static/admin/images/image.gif" onmouseover="layer.tips('<img src={{d.ad_image}}>',this,{tips: [1, '#fff']});" onmouseout="layer.closeAll();">
-</script>
-<script type="text/html" id="start_time">
-    {{layui.util.toDateString(d.start_time*1000, 'yyyy-MM-dd HH:mm:ss')}}
-</script>
-
-<script type="text/html" id="end_time">
-    {{layui.util.toDateString(d.end_time*1000, 'yyyy-MM-dd HH:mm:ss')}}
-</script>
-<script type="text/html" id="create_time">
-    {{layui.util.toDateString(d.create_time*1000, 'yyyy-MM-dd HH:mm:ss')}}
-</script>
-<script type="text/html" id="update_time">
-    {{layui.util.toDateString(d.update_time*1000, 'yyyy-MM-dd HH:mm:ss')}}
-</script>
-
-{include file="common/footer"/}
-<script>
-    layui.use(['form', 'table'], function () {
-        var $ = layui.jquery,
-            form = layui.form,
-            table = layui.table;
-
-        var tableIn = table.render({
-            elem: '#list',
-            url: '{:url("index")}',
-            method: 'post',
-            cols: [[
-                {checkbox: true, fixed: true},
-                {field: 'id', title: 'ID', width: 80,  sort: true},
-                {field: 'ad_name', title: '名称', width: 120,},
-                {field: 'position_name', title: '位置', width: 250},
-                {field: 'ad_link', title: '链接', width: 220, templet:'#link'},
-                {field: 'ad_image', title: '图片', width: 180, templet:'#image'},
-                {field: 'status', title: '状态', width: 180, templet:'#status'},
-                {field: 'start_time', title: '开始时间', width: 180, templet:'#start_time'},
-                {field: 'end_time', title: '结束时间', width: 180, templet:'#end_time'},
-                // {field: 'create_time', title: '添加时间', width: 180,templet:'#create_time'},
-                // {field: 'update_time', title: '修改时间', width: 180,templet:'#update_time'},
-                {title:'操作',width:120, toolbar: '#action',align:"center"}
-
-            ]],
-            limits: [10, 15, 20, 25, 50, 100],
-            limit: 15,
-            page: true
-        });
-
-
-
-        table.on('tool(list)', function(obj){
-            var data = obj.data;
-            if(obj.event === 'del'){
-                layer.confirm('{:lang("Are you sure you want to delete it")}', function(index){
-                    loading =layer.load(1, {shade: [0.1,'#fff']});
-                    $.post("{:url('delete')}",{id:data.id},function(res){
-                        layer.close(loading);
-                        layer.close(index);
-                        if(res.code>0){
-                            layer.msg(res.msg,{time:1000,icon:1});
-                            obj.del();
-                        }else{
-                            layer.msg(res.msg,{time:1000,icon:2});
-                        }
-                    });
-                });
-            }
-
-        });
-
-        form.on('switch(status)', function(data){
-                loading =layer.load(1, {shade: [0.1,'#fff']});
-                $.post("{:url('state')}",{id:data.value},function(res){
-                    layer.close(loading);
-                    if(res.code>0){
-                        layer.msg(res.msg,{time:1000,icon:1});
-                    }else{
-                        layer.msg(res.msg,{time:1000,icon:2});
-                    }
-                });
-        });
-
-        $('#search').click(function () {
-            var $keys = $('#keys').val();
-            if(!$keys){
-                return layer.msg('请输入关键词');
-            }
-
-            tableIn.reload({ page: {page: 1},where: {keys: $keys}});
-
-        })
-
-
-    });
-
-
-</script>

+ 0 - 115
php/view/admin/adv/pos.html

@@ -1,115 +0,0 @@
-{include file="common/header"/}
-<div class="LM-container">
-    <div class="LM-main">
-            <fieldset class="layui-elem-field layui-field-title">
-                <legend>广告位{:lang('list')}</legend>
-                <blockquote class="layui-elem-quote">
-                    <div class="LM-table">
-                        <div class="layui-inline">
-                            <input type="text" id='keys' name="keys" lay-verify="required" placeholder="{:lang('pleaseEnter')}" autocomplete="off" class="layui-input">
-                                    </div>
-                        <button class="layui-btn data-add-btn layui-btn-sm" lay-submit="" lay-filter="add" id="search">{:lang('search')}</button>
-                        <a href="{:url('posAdd')}"  class="layui-btn layui-btn-sm layui-btn-warm" >{:lang('add')}广告位</a>
-                    </div>
-
-                </blockquote>
-
-            </fieldset>
-            <table class="layui-table" id="list" lay-filter="list"></table>
-    </div>
-</div>
-
-
-<script type="text/html" id="action">
-    <a href="{:url('posEdit')}?id={{d.id}}" class="layui-btn  layui-btn-xs" lay-event="edit">{:lang('edit')}</a>
-    <a  class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del">{:lang('del')}</a>
-</script>
-<script type="text/html" id="status">
-    <input type="checkbox" name="status" value="{{d.id}}" lay-skin="switch" lay-text="开启|关闭" lay-filter="status" {{ d.status == 1 ? 'checked' : '' }}>
-</script>
-
-<script type="text/html" id="image">
-    {{d.ad_name}}<img src="/static/admin/images/image.gif" onmouseover="layer.tips('<img src={{d.ad_image}}>',this,{tips: [1, '#fff']});" onmouseout="layer.closeAll();">
-</script>
-
-<script type="text/html" id="create_time">
-    {{layui.util.toDateString(d.create_time*1000, 'yyyy-MM-dd HH:mm:ss')}}
-</script>
-
-{include file="common/footer"/}
-<script>
-    layui.use(['form', 'table'], function () {
-        var $ = layui.jquery,
-            form = layui.form,
-            table = layui.table;
-
-        var tableIn = table.render({
-            elem: '#list',
-            url: '{:url("pos")}',
-            method: 'post',
-            cols: [[
-                {checkbox: true, fixed: true},
-                {field: 'id', title: 'ID', width: 80, fixed: true, sort: true},
-                {field: 'position_name', title: '名称', width: 120, fixed: true,},
-                {field: 'position_desc', title: '描述', width: 250},
-
-                {field: 'status', title: '状态', width: 180, templet:'#status'},
-                {field: 'create_time', title: '添加时间', width: 180,templet:'#create_time'},
-                // {field: 'update_time', title: '修改时间', width: 180,templet:'#update_time'},
-                {title:'操作',width:150, toolbar: '#action',align:"center"}
-
-            ]],
-
-            limits: [10, 15, 20, 25, 50, 100],
-            limit: 15,
-            page: true
-        });
-
-        table.on('tool(list)', function(obj){
-            var data = obj.data;
-            if(obj.event === 'del'){
-                layer.confirm('{:lang("Are you sure you want to delete it")}', function(index){
-                    loading =layer.load(1, {shade: [0.1,'#fff']});
-                    $.post("{:url('posDel')}",{id:data.id},function(res){
-                        layer.close(loading);
-                        layer.close(index);
-                        if(res.code>0){
-                            layer.msg(res.msg,{time:1000,icon:1});
-                            obj.del();
-                        }else{
-                            layer.msg(res.msg,{time:1000,icon:2});
-                        }
-                    });
-                });
-            }
-
-
-        });
-
-        form.on('switch(status)', function(data){
-                loading =layer.load(1, {shade: [0.1,'#fff']});
-                $.post("{:url('posState')}",{id:data.value},function(res){
-                    layer.close(loading);
-                    if(res.code>0){
-                        layer.msg(res.msg,{time:1000,icon:1});
-                    }else{
-                        layer.msg(res.msg,{time:1000,icon:2});
-                    }
-                });
-        });
-
-        $('#search').click(function () {
-            var $keys = $('#keys').val();
-            if(!$keys){
-                return layer.msg('请输入关键词');
-            }
-
-            tableIn.reload({ page: {page: 1},where: {keys: $keys}});
-
-        })
-
-
-    });
-
-
-</script>

+ 0 - 91
php/view/admin/adv/pos_add.html

@@ -1,91 +0,0 @@
-{include file="common/header"/}
-<div class="LM-container">
-    <div class="LM-main">
-        <div class="admin-main layui-anim layui-anim-upbit">
-            <fieldset class="layui-elem-field layui-field-title">
-                <legend>{$title}</legend>
-            </fieldset>
-            <form class="layui-form layui-form-pane" lay-filter="form">
-
-
-                <div class="layui-form-item">
-                    <label class="layui-form-label">广告位置名</label>
-                    <div class="layui-input-inline">
-                        <input type="text" name="position_name" lay-verify="required" placeholder="{:lang('pleaseEnter')}广告位置名" class="layui-input">
-                    </div>
-                    <div class="layui-form-mid layui-word-aux">
-                        在4到25个字符之间。
-                    </div>
-                </div>
-
-                <div class="layui-form-item">
-                    <label class="layui-form-label">广告位置描述</label>
-                    <div class="layui-input-inline">
-                        <input type="text" name="position_desc" lay-verify="required" placeholder="{:lang('pleaseEnter')}广告位置描述" class="layui-input">
-                    </div>
-                    <div class="layui-form-mid layui-word-aux">
-                        在4到25个字符之间。
-                    </div>
-                </div>
-
-                <div class="layui-form-item">
-                    <label class="layui-form-label">宽度</label>
-                    <div class="layui-input-inline">
-                        <input type="text" name="ad_width" value="1080" placeholder="{:lang('pleaseEnter')}宽度"  class="layui-input">
-                    </div>
-                    <div class="layui-form-mid layui-word-aux">
-                        输入整数 :单位px
-                    </div>
-                </div>
-
-                <div class="layui-form-item">
-                    <label class="layui-form-label">高度</label>
-                    <div class="layui-input-inline">
-                        <input type="text" name="ad_height" value="300" placeholder="{:lang('pleaseEnter')}高度"  class="layui-input">
-                    </div>
-                    <div class="layui-form-mid layui-word-aux">
-                        输入整数 :单位px
-                    </div>
-                </div>
-
-                <div class="layui-form-item">
-                    <div class="layui-input-inline">
-                        <input type="hidden" name="id"  >
-                        <button type="button" class="layui-btn" lay-submit="" lay-filter="submit">{:lang('submit')}</button>
-                        <a href="{:url('pos')}" class="layui-btn layui-btn-primary">{:lang('back')}</a>
-                    </div>
-                </div>
-            </form>
-        </div>
-
-    </div>
-</div>
-
-{include file="common/footer"/}
-<script>
-    layui.use(['form', 'layer','upload','laydate'], function () {
-        var form = layui.form,layer = layui.layer,$= layui.jquery,upload = layui.upload;
-        var info = '';
-
-        info = {:json_encode($info)};
-        form.val("form", info);
-        if(info){
-            $('#addPic').attr('src',info.avatar);
-        }
-        form.render();
-        form.on('submit(submit)', function (data) {
-            loading =layer.load(1, {shade: [0.1,'#fff']});
-            $.post("", data.field, function (res) {
-                layer.close(loading);
-                if (res.code > 0) {
-                    layer.msg(res.msg, {time: 1800, icon: 1}, function () {
-                        location.href = res.url;
-                    });
-                } else {
-                    layer.msg(res.msg, {time: 1800, icon: 2});
-                }
-            });
-        });
-
-    });
-</script>

+ 1 - 37
php/view/admin/contents/feedback.html

@@ -35,24 +35,7 @@
             <legend>反馈意见</legend>
             <blockquote class="layui-elem-quote">
                 <div class="LM-table">
-                    <!--<div class="layui-inline">-->
-                        <!--<input type="text" id='name' name="name" lay-verify="required"-->
-                               <!--placeholder="名字" autocomplete="off" class="layui-input">-->
-                    <!--</div>-->
-                    <!--<a href="javascript:;" class="layui-btn data-add-btn layui-btn-sm" lay-submit="" lay-filter="add"-->
-                       <!--id="search">-->
-                        <!--{:lang('search')}-->
-                    <!--</a>-->
-
-                    <!--<button type="button" class="layui-btn" id="LAY-excel-import-excel">-->
-                    <!--<div class="layui-form-label">导入操作</div>-->
-                    <!--</button>-->
-
-
-                    <!--<div class="layui-btn layui-btn-sm upload-wrap anticon">-->
-                        <!--<input class="file-ele" type="file" id="LAY-excel-import-excel" multiple="multiple"/>-->
-                        <!--<div class="file-open"><em class="icon icon-upload"></em>excel导入</div>-->
-                    <!--</div>-->
+
                 </div>
 
             </blockquote>
@@ -92,16 +75,6 @@
                     {field: 'id', title: 'ID', width: 80, fixed: true, sort: true},
                     {field: 'name', title: '反馈人名', width: 120, sort: true},
                     {field: 'center', title: '内容', width: 400, sort: true},
-                    // {field: 'create_time', title: '反馈时间', width: 120, sort: true},
-                    // {field: 'major_id', title: '专业', width: 120, sort: true},
-                    // {field: 'phone', title: '手机', width: 120, sort: true},
-                    // {field: 'level', title: '会员等级', width: 120, sort: true},
-                    // {field: 'image', title: '头像', width: 120, templet: '#image'},
-                    // {field: 'status', title: '状态', width: 180, templet: '#status', sort: true},
-                    // // {field: 'create_time', title: '注册时间', width: 180, sort: true},
-                    // {field: 'update_time', title: '最后一次登录时间', width: 180, sort: true},
-                    // {title: '操作', width: 150, align: "center", toolbar: "#barDemo"},
-                    // {fixed: 'right', width:150, align:'center', toolbar: '#barHead'}
 
                 ]],
                 limits: [10, 15, 20, 25, 50, 100],
@@ -136,15 +109,6 @@
 
             form.on('switch(status)', function (data) {
 
-                // loading = layer.load(1, {shade: [0.1, '#fff']});
-                // $.post("{:url('state')}", {id: data.value}, function (res) {
-                //     layer.close(loading);
-                //     if (res.code > 0) {
-                //         layer.msg(res.msg, {time: 1000, icon: 1});
-                //     } else {
-                //         layer.msg(res.msg, {time: 1000, icon: 2});
-                //     }
-                // });
             });
 
             $('#search').click(function () {

+ 0 - 124
php/view/admin/friendship/add_banner.html

@@ -1,124 +0,0 @@
-{include file="common/header"/}
-<div class="LM-container">
-    <div class="LM-main">
-        <fieldset class="layui-elem-field layui-field-title">
-
-        </fieldset>
-        <form class="layui-form layui-form-pane" lay-filter="form">
-
-
-            <div class="layui-form-item">
-                <label class="layui-form-label">轮播图名称
-                </label>
-                <div class="layui-input-inline">
-                    <input type="text" name="name" lay-verify="required" placeholder="{:lang('pleaseEnter')}轮播图名称" class="layui-input">
-                </div>
-
-            </div>
-
-
-            <div class="layui-form-item">
-                <label class="layui-form-label">链接地址
-                </label>
-                <div class="layui-input-inline">
-                    <input type="text" name="url" lay-verify="required" placeholder="{:lang('pleaseEnter')}链接地址" class="layui-input">
-                </div>
-
-            </div>
-
-
-            <div class="layui-form-item">
-                <label class="layui-form-label">显示状态</label>
-                <div class="layui-input-block">
-                    <input type="radio" name="status" value="0" title="显示" checked>
-                    <input type="radio" name="status" value="1" title="隐藏"  >
-                </div>
-            </div>
-            <div class="layui-form-item">
-                <label class="layui-form-label">广告图片</label>
-                <input type="hidden" name="image" id="avatar">
-                <div class="layui-input-inline">
-                    <div class="layui-upload">
-                        <button type="button" class="layui-btn layui-btn-primary" id="addBtn"><i class="icon icon-upload3"></i>点击上传</button>
-                        <div class="layui-upload-list">
-                            <img class="layui-upload-img" id="addPic">
-                            <p id="notice"></p>
-                        </div>
-                    </div>
-                </div>
-            </div>
-
-
-            <div class="layui-form-item">
-                <div class="layui-input-inline">
-                    <input type="hidden" name="id"  >
-                    <button type="button" class="layui-btn" lay-submit="" lay-filter="submit">{:lang('submit')}</button>
-                    <a href="{:url('banner')}" class="layui-btn layui-btn-primary">{:lang('back')}</a>
-                </div>
-            </div>
-        </form>
-    </div>
-</div>
-
-{include file="common/footer"/}
-<script>
-    layui.use(['form', 'layer','upload','laydate'], function () {
-        var form = layui.form, laydate=layui.laydate,layer = layui.layer,$= layui.jquery,upload = layui.upload;
-        var info = '';
-        //日期范围
-        laydate.render({
-            elem: '#date'
-            ,range: true
-        });
-
-        info = {:json_encode($info)};
-        form.val("form", info);
-        if(info){
-            $('#addPic').attr('src',info.image);
-        }
-        form.render();
-        form.on('submit(submit)', function (data) {
-            loading =layer.load(1, {shade: [0.1,'#fff']});
-            // console.log(data.field);return;
-            $.post("", data.field, function (res) {
-                layer.close(loading);
-                if (res.code > 0) {
-                    layer.msg(res.msg, {time: 1800, icon: 1}, function () {
-                        location.href = res.url;
-                    });
-                } else {
-                    layer.msg(res.msg, {time: 1800, icon: 2});
-                }
-            });
-        });
-        //普通图片上传
-        var uploadInt = upload.render({
-            elem: '#addBtn'
-            ,url: '{:url("Friendship/upimage")}'
-            ,before: function(obj){
-                //预读本地文件示例,不支持ie8
-                obj.preview(function(index, file, result){
-                    $('#addPic').attr('src', result); //图片链接(base64)
-                });
-            },
-            done: function(res){
-                // console.log("上传图片",res)
-                if(res.code==200){
-                    $('#avatar').val(res.data);
-                    return layer.msg('上传成功');
-                }else{
-                    //如果上传失败
-                    return layer.msg('上传失败');
-                }
-            }
-            ,error: function(){
-                //演示失败状态,并实现重传
-                var notice = $('#notice');
-                notice.html('<span style="color: #FF5722;">上传失败</span> <a class="layui-btn layui-btn-mini demo-reload">重试</a>');
-                notice.find('.demo-reload').on('click', function(){
-                    uploadInt.upload();
-                });
-            }
-        });
-    });
-</script>

+ 0 - 110
php/view/admin/friendship/add_dh.html

@@ -1,110 +0,0 @@
-{include file="common/header"/}
-<div class="LM-container">
-    <div class="LM-main">
-        <fieldset class="layui-elem-field layui-field-title">
-
-        </fieldset>
-        <form class="layui-form layui-form-pane" lay-filter="form">
-
-
-            <div class="layui-form-item">
-                <label class="layui-form-label">导航名称
-                </label>
-                <div class="layui-input-inline">
-                    <input type="text" name="name" lay-verify="required" placeholder="{:lang('pleaseEnter')}链接名称" class="layui-input">
-                </div>
-                <div class="layui-form-mid layui-word-aux">
-                    在4到25个字符之间。
-                </div>
-            </div>
-
-            <div class="layui-form-item">
-                <label class="layui-form-label">所属一级导航</label>
-                <div class="layui-input-block">
-                    <select name="type" lay-verify="required">
-                        <option value=""></option>
-                        <option value="1">商城系统</option>
-                        <option value="2">解决方案</option>
-                    </select>
-                </div>
-            </div>
-
-            <div class="layui-form-item">
-                <label class="layui-form-label">显示状态</label>
-                <div class="layui-input-block">
-                    <input type="radio" name="status" value="0" title="显示" checked>
-                    <input type="radio" name="status" value="1" title="隐藏"  >
-                </div>
-            </div>
-
-            <div class="layui-form-item">
-                <div class="layui-input-inline">
-                    <input type="hidden" name="id"  >
-                    <button type="button" class="layui-btn" lay-submit="" lay-filter="submit">{:lang('submit')}</button>
-                    <a href="{:url('dh_list')}" class="layui-btn layui-btn-primary">{:lang('back')}</a>
-                </div>
-            </div>
-        </form>
-    </div>
-</div>
-
-{include file="common/footer"/}
-<script>
-    layui.use(['form', 'layer','upload','laydate'], function () {
-        var form = layui.form, laydate=layui.laydate,layer = layui.layer,$= layui.jquery,upload = layui.upload;
-        var info = '';
-        //日期范围
-        laydate.render({
-            elem: '#date'
-            ,range: true
-        });
-
-        info = {:json_encode($info)};
-        form.val("form", info);
-        if(info){
-            $('#addPic').attr('src',info.avatar);
-        }
-        form.render();
-        form.on('submit(submit)', function (data) {
-            loading =layer.load(1, {shade: [0.1,'#fff']});
-            // console.log(data.field);return;
-            $.post("", data.field, function (res) {
-                layer.close(loading);
-                if (res.code > 0) {
-                    layer.msg(res.msg, {time: 1800, icon: 1}, function () {
-                        location.href = res.url;
-                    });
-                } else {
-                    layer.msg(res.msg, {time: 1800, icon: 2});
-                }
-            });
-        });
-        //普通图片上传
-        var uploadInt = upload.render({
-            elem: '#addBtn'
-            ,url: '{:url("uploads/uploads")}'
-            ,before: function(obj){
-                //预读本地文件示例,不支持ie8
-                obj.preview(function(index, file, result){
-                    $('#addPic').attr('src', result); //图片链接(base64)
-                });
-            },
-            done: function(res){
-                if(res.code>0){
-                    $('#avatar').val(res.url);
-                }else{
-                    //如果上传失败
-                    return layer.msg('上传失败');
-                }
-            }
-            ,error: function(){
-                //演示失败状态,并实现重传
-                var notice = $('#notice');
-                notice.html('<span style="color: #FF5722;">上传失败</span> <a class="layui-btn layui-btn-mini demo-reload">重试</a>');
-                notice.find('.demo-reload').on('click', function(){
-                    uploadInt.upload();
-                });
-            }
-        });
-    });
-</script>

+ 0 - 100
php/view/admin/friendship/add_links.html

@@ -1,100 +0,0 @@
-{include file="common/header"/}
-<div class="LM-container">
-    <div class="LM-main">
-        <fieldset class="layui-elem-field layui-field-title">
-
-        </fieldset>
-        <form class="layui-form layui-form-pane" lay-filter="form">
-
-
-            <div class="layui-form-item">
-                <label class="layui-form-label">链接名称</label>
-                <div class="layui-input-inline">
-                    <input type="text" name="name" lay-verify="required" placeholder="{:lang('pleaseEnter')}链接名称" class="layui-input">
-                </div>
-                <div class="layui-form-mid layui-word-aux">
-                    在4到25个字符之间。
-                </div>
-            </div>
-
-            <div class="layui-form-item">
-                <label class="layui-form-label">链接地址</label>
-                <div class="layui-input-inline">
-                    <input type="text" name="url" lay-verify="required" placeholder="{:lang('pleaseEnter')}链接地址" class="layui-input">
-                </div>
-                <!--<div class="layui-form-mid layui-word-aux">-->
-                    <!--在4到25个字符之间。-->
-                <!--</div>-->
-            </div>
-
-            <div class="layui-form-item">
-                <div class="layui-input-inline">
-                    <input type="hidden" name="id"  >
-                    <button type="button" class="layui-btn" lay-submit="" lay-filter="submit">{:lang('submit')}</button>
-                    <a href="{:url('links')}" class="layui-btn layui-btn-primary">{:lang('back')}</a>
-                </div>
-            </div>
-        </form>
-    </div>
-</div>
-
-{include file="common/footer"/}
-<script>
-    layui.use(['form', 'layer','upload','laydate'], function () {
-        var form = layui.form, laydate=layui.laydate,layer = layui.layer,$= layui.jquery,upload = layui.upload;
-        var info = '';
-        //日期范围
-        laydate.render({
-            elem: '#date'
-            ,range: true
-        });
-
-        info = {:json_encode($info)};
-        form.val("form", info);
-        if(info){
-            $('#addPic').attr('src',info.avatar);
-        }
-        form.render();
-        form.on('submit(submit)', function (data) {
-            loading =layer.load(1, {shade: [0.1,'#fff']});
-            // console.log(data.field);return;
-            $.post("", data.field, function (res) {
-                layer.close(loading);
-                if (res.code > 0) {
-                    layer.msg(res.msg, {time: 1800, icon: 1}, function () {
-                        location.href = res.url;
-                    });
-                } else {
-                    layer.msg(res.msg, {time: 1800, icon: 2});
-                }
-            });
-        });
-        //普通图片上传
-        var uploadInt = upload.render({
-            elem: '#addBtn'
-            ,url: '{:url("uploads/uploads")}'
-            ,before: function(obj){
-                //预读本地文件示例,不支持ie8
-                obj.preview(function(index, file, result){
-                    $('#addPic').attr('src', result); //图片链接(base64)
-                });
-            },
-            done: function(res){
-                if(res.code>0){
-                    $('#avatar').val(res.url);
-                }else{
-                    //如果上传失败
-                    return layer.msg('上传失败');
-                }
-            }
-            ,error: function(){
-                //演示失败状态,并实现重传
-                var notice = $('#notice');
-                notice.html('<span style="color: #FF5722;">上传失败</span> <a class="layui-btn layui-btn-mini demo-reload">重试</a>');
-                notice.find('.demo-reload').on('click', function(){
-                    uploadInt.upload();
-                });
-            }
-        });
-    });
-</script>

+ 0 - 183
php/view/admin/friendship/banner.html

@@ -1,183 +0,0 @@
-{include file="common/header"/}
-
-<style type="text/css">
-    .layui-table-cell{
-        text-align:center;
-        height: auto;
-        white-space: normal;
-    }
-    .layui-table img{
-        max-width:100px
-    }
-</style>
-<div class="LM-container">
-    <div class="LM-main">
-        <fieldset class="layui-elem-field layui-field-title">
-            <legend>轮播图列表</legend>
-            <blockquote class="layui-elem-quote">
-
-                <!--<div class="LM-table">-->
-                    <!--<div class="layui-input-block">-->
-                        <!--<select name="type" id="type" class="el-select-group">-->
-                            <!--<option value="1">商城系统</option>-->
-                            <!--<option value="2">解决方案</option>-->
-                        <!--</select>-->
-                        <!--<a href="javascript:;" class="layui-btn data-add-btn layui-btn-sm" lay-submit="" lay-filter="add"-->
-                           <!--id="search">-->
-                            <!--{:lang('search')}-->
-                        <!--</a>-->
-                    <!--</div>-->
-                   <!---->
-                <!--</div>-->
-
-                <div class="LM-table">
-                    <a href="{:url('add_banner')}" class="layui-btn layui-btn-sm layui-btn-warm">添加轮播图</a>
-                </div>
-            </blockquote>
-
-
-        </fieldset>
-        <table class="layui-table" id="list" lay-filter="list">
-        </table>
-    </div>
-</div>
-
-<script type="text/html" id="barDemo">
-    <a href="{:url('add_banner')}?id={{d.id}}" class="layui-btn layui-btn-sm">修改</a>
-    <button type="button" lay-event="del" class="layui-btn layui-btn-sm "> 删除</button>
-
-</script>
-<script type="text/html" id="is_show">
-    <input type="checkbox" name="switch" value="{{d.id}}" lay-filter="is_show" lay-skin="switch" lay-text="开启|关闭" {{
-           d.status== 0 ? 'checked' : '' }}>
-</script>
-
-<script type="text/html" id="avatar">
-   <img src="{{d.image}}"  onmouseover="layer.tips('<img src={{d.image}}>',this,{tips: [1, '#fff']});" onmouseout="layer.closeAll();">
-</script>
-
-
-
-{include file="common/footer"/}
-<script src="/static/plugins/jquery-3.4.1/jquery-3.4.1.min.js"></script>
-<script>
-    layui.use(['form', 'table'], function () {
-        var $ = layui.jquery,
-            form = layui.form,
-            table = layui.table;
-        var tableIn = table.render({
-            elem: '#list',
-            url: '{:url("banner")}',
-            method: 'post',
-            title: '轮播图',
-            loading: true,
-            toolbar: '#toolbar', //开启头部工具栏,并为其绑定左侧模板
-            defaultToolbar: ['filter', 'exports', 'print', "excel", { //自定义头部工具栏右侧图标。如无需自定义,去除该参数即可
-                title: '提示'
-                , layEvent: 'LAYTABLE_TIPS'
-                , icon: 'layui-icon-tips'
-            }],
-            cols: [[
-                // {checkbox: true, fixed: true},
-                {field: 'id', title: '编号', width: 200, sort: true},
-                {field: 'name', title: '轮播名称', width: 200, edit: 'text', sort: true},
-                {field: 'image', title: '图片预览', width: 200,templet:"#avatar" },
-                {field: 'url', title: '链接地址', width: 200,edit: 'text', sort: true},
-                {title: '是否显示', width: 120, align: "center", toolbar: "#is_show"},
-                {field: 'pai', title: '排序', width: 120, align: "center", edit: 'text',},
-                {title: '操作', width: 150, align: "center", toolbar: "#barDemo"},
-
-            ]],
-            limits: [10, 15, 20, 25, 50, 100],
-            limit: 10,
-            page: true
-        });
-
-
-        table.on('tool(list)', function (obj) {
-            var data = obj.data;
-            let event = obj.event;
-            // let loading = layer.load(1, {shade: [0.1, '#fff']});
-            switch (event) {
-
-                case "del":
-                    // console.log("del")
-                    layer.confirm('确定要删除吗', function (index) {
-                        let loading = layer.load(1, {shade: [0.1, '#fff']});
-                        $.post("{:url('del_banner')}", {id: data.id}, function (res) {
-                            layer.close(loading);
-                            layer.close(index);
-                            if (res.code == 1) {
-                                layer.msg(res.msg, {time: 1000, icon: 1});
-                                tableIn.reload();
-                            } else {
-                                layer.msg(res.msg, {time: 1000, icon: 2});
-                            }
-                        }, "json")
-                    })
-                    break;
-            }
-        });
-        // 是否显示
-        form.on('switch(is_show)', function (obj) {
-            var id = this.value;
-            var auth_open = obj.elem.checked === true ? 0 : 1;
-            let loading = layer.load(1, {shade: [0.1, '#fff']});
-            $.post("{:url('update_banner_status')}", {'id': id, 'status': auth_open}, function (res) {
-                layer.close(loading);
-                // layer.close(index)
-                console.log(res)
-                if (res.code == 1) {
-                    layer.msg(res.msg, {time: 1000, icon: 1});
-                    // tableIn.reload();
-                } else {
-                    layer.msg(res.msg, {time: 1000, icon: 2});
-                }
-            }, "json")
-        });
-
-        //监听单元格编辑
-        table.on('edit(list)', function (obj) {
-            var value = obj.value //得到修改后的值
-                , data = obj.data //得到所在行所有键值
-                , field = obj.field; //得到字段
-            let da = {
-                id: data.id,
-                value: value,
-                field: field
-            }
-
-            let loading = layer.load(1, {shade: [0.1, '#fff']});
-            $.post("{:url('update_pai_banner')}", da, function (res) {
-                layer.close(loading);
-                console.log(res)
-                if (res.code == 1) {
-                    layer.msg(res.msg, {time: 1000, icon: 1});
-                    tableIn.reload();
-                } else {
-                    tableIn.reload();
-                    layer.msg(res.msg, {time: 1000, icon: 2});
-                }
-            }, "json")
-        });
-
-        // 搜索功能
-        $('#search').click(function () {
-            let type = $('#type').val();
-            // let stat_time = $('#stat_time').val();
-            // let end_time = $('#end_time').val();
-            let data = {
-                type: type,
-            }
-            // console.log("type",type);
-            // return ;
-
-            tableIn.reload({page: {page: 1}, where: data});
-
-        })
-        // setInterval(function () {
-        //     tableIn.reload();
-        // }, 50000)
-    });
-
-</script>

+ 0 - 165
php/view/admin/friendship/dh_list.html

@@ -1,165 +0,0 @@
-{include file="common/header"/}
-<div class="LM-container">
-    <div class="LM-main">
-        <fieldset class="layui-elem-field layui-field-title">
-            <legend>导航列表</legend>
-            <blockquote class="layui-elem-quote">
-
-                <div class="LM-table">
-                    <div class="layui-input-block">
-                        <select name="type" id="type" class="el-select-group">
-                            <option value="1">商城系统</option>
-                            <option value="2">解决方案</option>
-                        </select>
-                        <a href="javascript:;" class="layui-btn data-add-btn layui-btn-sm" lay-submit="" lay-filter="add"
-                           id="search">
-                            {:lang('search')}
-                        </a>
-                    </div>
-                    <a href="{:url('add_dh')}" class="layui-btn layui-btn-sm layui-btn-warm">添加导航</a>
-                </div>
-
-                <!--<div class="LM-table">-->
-
-                <!--</div>-->
-            </blockquote>
-
-
-        </fieldset>
-        <table class="layui-table" id="list" lay-filter="list">
-        </table>
-    </div>
-</div>
-
-<script type="text/html" id="barDemo">
-    <a href="{:url('add_dh')}?id={{d.id}}" class="layui-btn layui-btn-sm">修改</a>
-    <button type="button" lay-event="del" class="layui-btn layui-btn-sm "> 删除</button>
-
-</script>
-<script type="text/html" id="is_show">
-    <input type="checkbox" name="switch" value="{{d.id}}" lay-filter="is_show" lay-skin="switch" lay-text="开启|关闭" {{
-           d.status== 0 ? 'checked' : '' }}>
-</script>
-
-{include file="common/footer"/}
-<script src="/static/plugins/jquery-3.4.1/jquery-3.4.1.min.js"></script>
-<script>
-    layui.use(['form', 'table'], function () {
-        var $ = layui.jquery,
-            form = layui.form,
-            table = layui.table;
-        var tableIn = table.render({
-            elem: '#list',
-            url: '{:url("dh_list")}',
-            method: 'post',
-            title: '导航',
-            loading: true,
-            toolbar: '#toolbar', //开启头部工具栏,并为其绑定左侧模板
-            defaultToolbar: ['filter', 'exports', 'print', "excel", { //自定义头部工具栏右侧图标。如无需自定义,去除该参数即可
-                title: '提示'
-                , layEvent: 'LAYTABLE_TIPS'
-                , icon: 'layui-icon-tips'
-            }],
-            cols: [[
-                // {checkbox: true, fixed: true},
-                {field: 'id', title: '编号', width: 80, fixed: true, sort: true},
-                {field: 'name', title: '名称', width: 200, edit: 'text', sort: true},
-                {field: 'type', title: '所属一级导航', width: 200, sort: true},
-                {title: '是否显示', width: 120, align: "center", toolbar: "#is_show"},
-                {field: 'pai', title: '排序', width: 120, align: "center", edit: 'text',},
-                {title: '操作', width: 150, align: "center", toolbar: "#barDemo"},
-
-            ]],
-            limits: [10, 15, 20, 25, 50, 100],
-            limit: 10,
-            page: true
-        });
-
-
-        table.on('tool(list)', function (obj) {
-            var data = obj.data;
-            let event = obj.event;
-            // let loading = layer.load(1, {shade: [0.1, '#fff']});
-            switch (event) {
-
-                case "del":
-                    // console.log("del")
-                    layer.confirm('确定要删除吗', function (index) {
-                        let loading = layer.load(1, {shade: [0.1, '#fff']});
-                        $.post("{:url('del_dh')}", {id: data.id}, function (res) {
-                            layer.close(loading);
-                            layer.close(index);
-                            if (res.code == 1) {
-                                layer.msg(res.msg, {time: 1000, icon: 1});
-                                tableIn.reload();
-                            } else {
-                                layer.msg(res.msg, {time: 1000, icon: 2});
-                            }
-                        }, "json")
-                    })
-                    break;
-            }
-        });
-        // 是否显示
-        form.on('switch(is_show)', function (obj) {
-            var id = this.value;
-            var auth_open = obj.elem.checked === true ? 0 : 1;
-            let loading = layer.load(1, {shade: [0.1, '#fff']});
-            $.post("{:url('update_dh_status')}", {'id': id, 'status': auth_open}, function (res) {
-                layer.close(loading);
-                // layer.close(index)
-                console.log(res)
-                if (res.code == 1) {
-                    layer.msg(res.msg, {time: 1000, icon: 1});
-                    // tableIn.reload();
-                } else {
-                    layer.msg(res.msg, {time: 1000, icon: 2});
-                }
-            }, "json")
-        });
-
-        //监听单元格编辑
-        table.on('edit(list)', function (obj) {
-            var value = obj.value //得到修改后的值
-                , data = obj.data //得到所在行所有键值
-                , field = obj.field; //得到字段
-            let da = {
-                id: data.id,
-                value: value,
-                field: field
-            }
-
-            let loading = layer.load(1, {shade: [0.1, '#fff']});
-            $.post("{:url('update_pai_dh')}", da, function (res) {
-                layer.close(loading);
-                console.log(res)
-                if (res.code == 1) {
-                    layer.msg(res.msg, {time: 1000, icon: 1});
-                    tableIn.reload();
-                } else {
-                    tableIn.reload();
-                    layer.msg(res.msg, {time: 1000, icon: 2});
-                }
-            }, "json")
-        });
-
-        // 搜索功能
-        $('#search').click(function () {
-            let type = $('#type').val();
-            // let stat_time = $('#stat_time').val();
-            // let end_time = $('#end_time').val();
-            let data = {
-                type: type,
-            }
-            // console.log("type",type);
-            // return ;
-
-            tableIn.reload({page: {page: 1}, where: data});
-
-        })
-        // setInterval(function () {
-        //     tableIn.reload();
-        // }, 50000)
-    });
-
-</script>

+ 0 - 95
php/view/admin/friendship/index.html

@@ -1,95 +0,0 @@
-
-{include file="common/header"/}
-
-<style>
-    .center {
-        text-align: center;
-        background-color: #F9F9F9 !important;
-    }
-
-    .boder {
-        border: 1px solid #D2D2D2 !important;
-    }
-
-    .p-size {
-        font-weight: 700;
-        font-size: 20px;
-    }
-    .border-left{
-        border-left-width: 5px;
-        border-left-style: solid;
-    }
-</style>
-<div class="LM-container">
-    <div class="LM-main">
-        <fieldset class="layui-elem-field layui-field-title">
-
-        </fieldset>
-        <div class="layui-row layui-col-space10">
-            <div class="layui-col-md4 ">
-                <div class="layui-card boder">
-                    <div class="layui-card-header ">当前系统用户</div>
-                    <div class="layui-card-body center">
-                        <p class="p-size">{$info.admin} 人</p>
-                        <a href="{:url('auth/adminlist')}" class="layui-btn layui-btn-primary">进入模块</a>
-                    </div>
-                </div>
-            </div>
-            <div class="layui-col-md4 ">
-                <div class="layui-card boder">
-                    <div class="layui-card-header ">友情链接</div>
-                    <div class="layui-card-body center">
-                        <p class="p-size">{$info.links}个</p>
-                        <a href="{:url('friendship/links')}" class="layui-btn layui-btn-primary">进入模块</a>
-                    </div>
-                </div>
-            </div>
-            <div class="layui-col-md4 ">
-                <div class="layui-card boder">
-                    <div class="layui-card-header ">轮播图</div>
-                    <div class="layui-card-body center">
-                        <p class="p-size">{$info.banner} 张</p>
-                        <a href="{:url('friendship/banner')}" class="layui-btn layui-btn-primary">进入模块</a>
-                    </div>
-                </div>
-            </div>
-        </div>
-
-        <div class="layui-row layui-col-space10">
-            <div class="layui-col-md4 ">
-                <div class="layui-card boder">
-                    <div class="layui-card-header center">浏览量(PV)</div>
-                    <div class="layui-card-body center">
-                        <p class="p-size">{$info.liull}</p>
-                        <p>日 <i class="fa fa-line-chart"></i>{$info.liull_zt}%</p>
-                    </div>
-                </div>
-            </div>
-            <div class="layui-col-md4 ">
-                <div class="layui-card boder">
-                    <div class="layui-card-header center">独立用户(UV)</div>
-                    <div class="layui-card-body center">
-                        <p class="p-size">{$info.user}</p>
-                        <p>日 <i class="fa fa-line-chart" aria-hidden="true"></i>0%</p>
-                    </div>
-                </div>
-            </div>
-            <div class="layui-col-md4 ">
-                <div class="layui-card boder">
-                    <div class="layui-card-header center">最终咨询数</div>
-                    <div class="layui-card-body center">
-                        <p class="p-size">{$info.zhixing}</p>
-                        <p>日 <i class="fa fa-area-chart" aria-hidden="true"></i>0%</p>
-                    </div>
-                </div>
-            </div>
-        </div>
-
-
-    </div>
-</div>
-
-{include file="common/footer"/}
-<script>
-
-</script>

+ 0 - 177
php/view/admin/friendship/links.html

@@ -1,177 +0,0 @@
-{include file="common/header"/}
-<style>
-    .upload-wrap {
-        position: relative;
-        display: inline-block;
-        overflow: hidden;
-        border: 1px solid #2d78f4;
-        border-radius: 3px;
-    }
-
-    .upload-wrap .file-ele {
-        position: absolute;
-        top: 0;
-        right: 0;
-        opacity: 0;
-        height: 100%;
-        width: 100%;
-        cursor: pointer;
-
-    }
-
-    .upload-wrap .file-open {
-        width: 90px;
-        height: 30px;
-        line-height: 30px;
-        text-align: center;
-        color: #fff;
-        background: #3385ff;
-    }
-
-</style>
-<div class="LM-container">
-    <div class="LM-main">
-        <fieldset class="layui-elem-field layui-field-title">
-            <legend>友情链接列表</legend>
-            <blockquote class="layui-elem-quote">
-                <div class="LM-table">
-                    <a href="{:url('add_links')}" class="layui-btn layui-btn-sm layui-btn-warm">添加友情链接</a>
-                </div>
-            </blockquote>
-        </fieldset>
-        <table class="layui-table" id="list" lay-filter="list">
-        </table>
-    </div>
-</div>
-
-<script type="text/html" id="barDemo">
-    <a href="{:url('add_links')}?id={{d.id}}" class="layui-btn layui-btn-sm">修改</a>
-    <button type="button" lay-event="del" class="layui-btn layui-btn-sm "> 删除</button>
-
-</script>
-<script type="text/html" id="is_show">
-    <input type="checkbox" name="switch" value="{{d.id}}"  lay-filter="is_show"   lay-skin="switch" lay-text="开启|关闭" {{ d.status == 0 ? 'checked' : '' }}>
-</script>
-
-{include file="common/footer"/}
-<script src="/static/plugins/jquery-3.4.1/jquery-3.4.1.min.js"></script>
-<script>
-    layui.use(['form', 'table'], function () {
-        var $ = layui.jquery,
-            form = layui.form,
-            table = layui.table;
-        var tableIn = table.render({
-            elem: '#list',
-            url: '{:url("links")}',
-            method: 'post',
-            title: '友情链接',
-            loading: true,
-            toolbar: '#toolbar', //开启头部工具栏,并为其绑定左侧模板
-            defaultToolbar: ['filter', 'exports', 'print', "excel", { //自定义头部工具栏右侧图标。如无需自定义,去除该参数即可
-                title: '提示'
-                , layEvent: 'LAYTABLE_TIPS'
-                , icon: 'layui-icon-tips'
-            }],
-            cols: [[
-                // {checkbox: true, fixed: true},
-                {field: 'id', title: '编号', width: 80, fixed: true, sort: true},
-                {field: 'name', title: '链接名称', width: 200, edit: 'text', sort: true},
-                {field: 'url', title: '链接地址', width: 200, edit: 'text', sort: true},
-                {title: '是否显示', width: 120, align: "center", toolbar: "#is_show"},
-                { field: 'pai',title: '排序', width: 120,align: "center",edit: 'text',},
-                {title: '操作', width: 150, align: "center", toolbar: "#barDemo"},
-
-            ]],
-            limits: [10, 15, 20, 25, 50, 100],
-            limit: 10,
-            page: true
-        });
-
-
-        table.on('tool(list)', function (obj) {
-            var data = obj.data;
-            let event = obj.event;
-            // let loading = layer.load(1, {shade: [0.1, '#fff']});
-            switch (event) {
-
-                case "del":
-                    // console.log("del")
-                    layer.confirm('确定要删除吗', function (index) {
-                        let loading = layer.load(1, {shade: [0.1, '#fff']});
-                        $.post("{:url('del_links')}", {id: data.id}, function (res) {
-                            layer.close(loading);
-                            layer.close(index);
-                            if (res.code == 1) {
-                                layer.msg(res.msg, {time: 1000, icon: 1});
-                                tableIn.reload();
-                            } else {
-                                layer.msg(res.msg, {time: 1000, icon: 2});
-                            }
-                        }, "json")
-                    })
-                    break;
-            }
-        });
-        // 是否显示
-        form.on('switch(is_show)', function(obj){
-            var id = this.value;
-            var auth_open = obj.elem.checked===true?0:1;
-            let loading = layer.load(1, {shade: [0.1, '#fff']});
-            $.post("{:url('update_links')}", {'id':id,'status':auth_open}, function (res) {
-                layer.close(loading);
-                // layer.close(index)
-                console.log(res)
-                if (res.code == 1) {
-                    layer.msg(res.msg, {time: 1000, icon: 1});
-                    // tableIn.reload();
-                } else {
-                    layer.msg(res.msg, {time: 1000, icon: 2});
-                }
-            }, "json")
-        });
-
-        //监听单元格编辑
-        table.on('edit(list)', function(obj){
-            var value = obj.value //得到修改后的值
-                ,data = obj.data //得到所在行所有键值
-                ,field = obj.field; //得到字段
-            let da={
-                id:data.id,
-                value:value,
-                field:field
-            }
-
-            let loading = layer.load(1, {shade: [0.1, '#fff']});
-            $.post("{:url('update_pai_links')}",da, function (res) {
-                layer.close(loading);
-                console.log(res)
-                if (res.code == 1) {
-                    layer.msg(res.msg, {time: 1000, icon: 1});
-                    tableIn.reload();
-                } else {
-                    tableIn.reload();
-                    layer.msg(res.msg, {time: 1000, icon: 2});
-                }
-            }, "json")
-        });
-
-        // 搜索功能
-        $('#search').click(function () {
-            let name = $('#name').val();
-            let stat_time = $('#stat_time').val();
-            let end_time = $('#end_time').val();
-            let data={
-                name:name,
-                stat_time:stat_time,
-                end_time:end_time
-            }
-
-            tableIn.reload({page: {page: 1}, where: data});
-
-        })
-        // setInterval(function () {
-        //     tableIn.reload();
-        // }, 50000)
-    });
-
-</script>

+ 0 - 343
php/view/admin/friendship/statistics.html

@@ -1,343 +0,0 @@
-
-{include file="common/header"/}
-
-<style>
-    .center {
-        text-align: center;
-        background-color: #F9F9F9 !important;
-    }
-
-    .boder {
-        border: 1px solid #D2D2D2 !important;
-    }
-
-    .p-size {
-        font-weight: 700;
-        font-size: 20px;
-    }
-  .border-left{
-      border-left-width: 5px;
-      border-left-style: solid;
-  }
-</style>
-<div class="LM-container">
-    <div class="LM-main">
-        <fieldset class="layui-elem-field layui-field-title">
-
-        </fieldset>
-
-
-        <div class="layui-row layui-col-space10">
-            <div class="layui-col-md4 ">
-                <div class="layui-card boder">
-                    <div class="layui-card-header center">浏览量(PV)</div>
-                    <div class="layui-card-body center">
-                        <p class="p-size">{$info.liull}</p>
-                        <p>日 <i class="fa fa-line-chart"></i>{$info.liull_zt}%</p>
-                        <!--<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="17" height="17" style="fill: rgba(255,0,0,1);"><path d="M16 6l2.29 2.29-4.88 4.88-4-4L2 16.59 3.41 18l6-6 4 4 6.3-6.29L22 12V6z"/></svg>-->
-                    </div>
-                </div>
-            </div>
-            <div class="layui-col-md4 ">
-                <div class="layui-card boder">
-                    <div class="layui-card-header center">独立用户(UV)</div>
-                    <div class="layui-card-body center">
-                        <p class="p-size">{$info.user}</p>
-                        <p>日 <i class="fa fa-line-chart" aria-hidden="true"></i>0%</p>
-                    </div>
-                </div>
-            </div>
-            <div class="layui-col-md4 ">
-                <div class="layui-card boder">
-                    <div class="layui-card-header center">最终咨询数</div>
-                    <div class="layui-card-body center">
-                        <p class="p-size">{$info.zhixing}</p>
-                        <p>日 <i class="fa fa-area-chart" aria-hidden="true"></i>0%</p>
-                    </div>
-                </div>
-            </div>
-        </div>
-        <div class="layui-tab layui-tab-card" lay-filter="demo">
-            <ul class="layui-tab-title">
-                <li class="layui-this">日指标</li>
-                <li>浏览量</li>
-                <li>独立用户</li>
-                <li>最终咨询</li>
-            </ul>
-            <div class="layui-tab-content" style="height: 100px;">
-                <!--日指标-->
-                <div class="layui-tab-item layui-show">
-
-                </div>
-                <!--浏览量-->
-                <div class="layui-tab-item">
-                    <div class="layui-card">
-                        <div class="layui-card-header border-left">柱形图
-                            <button type="button" class="layui-btn layui-btn-primary layui-btn-sm xianzhon layui-btn-disabled "   id="qitian">7天</button>
-                            <button type="button" class="layui-btn layui-btn-primary layui-btn-sm xianzhon" id="bangeyue">14天</button>
-                            <button type="button" class="layui-btn layui-btn-primary layui-btn-sm xianzhon" id="sanday">30天</button>
-                            <input type="text" class="test1" >
-                        </div>
-                    </div>
-                </div>
-                <!--独立用户-->
-                <div class="layui-tab-item">
-
-                </div>
-                <!--最终咨询-->
-                <div class="layui-tab-item">
-
-                </div>
-
-                <div class="layui-card-body">
-                    <div id="mainss" style="width: 100%;height: 500px;"></div>
-                </div>
-
-            </div>
-        </div>
-
-    </div>
-</div>
-<script src="/static/plugins/jquery-3.4.1/jquery-3.4.1.min.js"></script>
-
-<script src="/static/plugins/layui/extend/echarts/echarts.min.js"></script>
-{include file="common/footer"/}
-<script>
-        let index=0
-    layui.use(['element',"laydate","jquery","layer"], function(){
-        var $ = layui.jquery, layer = layui.layer;
-        var element = layui.element;
-        var laydate = layui.laydate;
-
-        element.on('tab(demo)', function(data){
-            index=data.index
-            let push={
-                type:index,
-                day:7,
-            }
-
-            getdata(push,function (res) {
-                hello(res.data)
-                // console.log("选中时间",res)
-            })
-            console.log("tab(demo)",data.index);
-        });
-        $(".xianzhon").click(function () {
-            // console.log("选中", $(this))
-            $(this).addClass("layui-btn-disabled") // 添加不能选中事件
-           $(this).siblings().removeClass("layui-btn-disabled") // 移除日期的选中事件
-        })
-        // 时间选择器
-        laydate.render({
-            elem: '.test1' //指定元素
-            ,range: true
-            ,value: '2020-05-07 - 2020-06-17'
-            ,done: function(value, date){
-               let data =value.split(" - ")
-                $(".xianzhon").prevAll().removeClass("layui-btn-disabled")// 移除日期的选中事件
-
-                let push={
-                    type:index,
-                    start_time:data[0],
-                    end_time:data[1],
-                }
-
-                getdata(push,function (res) {
-                    console.log("选中时间",res)
-                })
-
-            }
-
-        });
-
-        window.hello = function(obj){
-            var dom = document.getElementById("mainss"),
-                myChart = echarts.init(dom), option = null;
-            option={
-                tooltip: {
-                    show: true
-                },
-                xAxis: {
-                    type: 'category',
-                    data: obj.day
-                },
-                yAxis: {
-                    type: 'value'
-                },
-                series: [{
-                    data: obj.data,
-                    type: 'bar',
-                    showBackground: true,
-
-                    backgroundStyle: {
-                        // color: 'rgba(220, 220, 220, 0.8)'
-                        color: 'yellow'
-                    },
-                    animation:true,
-                    animationEasing:"cubicOut",
-                    animationEasingUpdate :"cubicOut",
-                    animationDuration:function (idx) {
-                        return idx*100
-                    },
-                    animationDelay: function (idx) {
-                        // 越往后的数据延迟越大
-                        return idx * 100;
-                    },
-                    animationDurationUpdate: function (idx) {
-                        // 越往后的数据时长越大
-                        return idx * 100;
-                    },
-                    animationDelayUpdate: function (idx) {
-                        // 越往后的数据延迟越大
-                        return idx * 100;
-                    },
-                    itemStyle:{
-                        normal:{
-                            label:{
-                                show:true,
-                                position:"top",
-                                textStyle:{
-                                    color:"black",
-                                    fontSize: 16
-                                }
-                            }
-                        }
-                    }
-                }]
-            }
-            if (option && typeof option === "object") {
-                myChart.setOption(option, true);
-            }
-        };
-        // 七天
-        $("#qitian").click(function () {
-            // let data={
-            //     day:['5.25', '5.26'],
-            //     data:[120, 500]
-            // }
-            // hello(data);
-            // console.log(getDay(-7));//7天前日期
-            let push={
-                type:index,
-                day:7
-            }
-            getdata(push,function (res) {
-                console.log("回调数据",res)
-                hello(res.data);
-            })
-        });
-        // 14天
-        $("#bangeyue").click(function () {
-            let push={
-                type:index,
-                day:14
-            }
-            getdata(push,function (res) {
-                console.log("回调数据",res)
-                hello(res.data);
-            })
-        });
-        // 30天
-        $("#sanday").click(function () {
-            let push={
-                type:index,
-                day:30
-            }
-            getdata(push,function (res) {
-                console.log("回调数据",res)
-                hello(res.data);
-            })
-        });
-
-    });
-    (function(){
-        var dom = document.getElementById("mainss"),
-            myChart = echarts.init(dom), option = null;
-
-        let push={
-            type:index,
-            // start_time:getDay(),
-            // end_time:getDay(-7),
-        }
-
-        getdata(push,function (res) {
-            hellos(res.data)
-            console.log("初始化",res.data)
-        })
-        option={
-            xAxis: {
-                type: 'category',
-                data: ['5.25', '5.26', '5.27', '5.28', '5.29', '5.30', '5.25']
-            },
-            yAxis: {
-                type: 'value'
-            },
-            series: [{
-                data: [120, 500, 150, 80, 70, 110, 130],
-                type: 'bar',
-                showBackground: true,
-                backgroundStyle: {
-                    color: 'rgba(220, 220, 220, 0.8)'
-                }
-            }]
-        }
-        if (option && typeof option === "object") {
-            myChart.setOption(option, true);
-        }
-    })();
-    // 请求后台数据
-    /**
-     * 请求服务器
-     * @param type 0 日指标 1 浏览量 2 独立用户 3 最终咨询
-     * @param data 提交数据
-     * @param callback 回调数据
-     */
-    function getdata(data,callback) {
-        $.post("{:url('statistics')}",data,function(res){
-            callback(res)
-        },"json")
-    }
-
-    function hellos(obj){
-        var dom = document.getElementById("mainss"),
-            myChart = echarts.init(dom), option = null;
-        option={
-            xAxis: {
-                type: 'category',
-                data: obj.day
-            },
-            yAxis: {
-                type: 'value'
-            },
-            series: [{
-                data: obj.data,
-                type: 'bar',
-                showBackground: true,
-                backgroundStyle: {
-                    color: 'rgba(220, 220, 220, 0.8)'
-                }
-            }]
-        }
-        if (option && typeof option === "object") {
-            myChart.setOption(option, true);
-        }
-    };
-    function getDay(day){
-        var today = new Date();
-        var targetday_milliseconds=today.getTime() + 1000*60*60*24*day;
-        today.setTime(targetday_milliseconds); //注意,这行是关键代码
-        var tYear = today.getFullYear();
-        var tMonth = today.getMonth();
-        var tDate = today.getDate();
-        tMonth = doHandleMonth(tMonth + 1);
-        tDate = doHandleMonth(tDate);
-        return tYear+"-"+tMonth+"-"+tDate;
-    }
-    function doHandleMonth(month){
-        var m = month;
-        if(month.toString().length == 1){
-            m = "0" + month;
-        }
-        return m;
-    }
-</script>

+ 0 - 172
php/view/admin/site/index.html

@@ -1,172 +0,0 @@
-{include file="common/header"/}
-<div class="LM-container">
-    <div class="LM-main">
-        <fieldset class="layui-elem-field layui-field-title">
-            <legend>场地管理</legend>
-            <blockquote class="layui-elem-quote">
-                <div class="LM-table">
-                    <div class="layui-inline">
-                        <input type="text" id='name' name="name" lay-verify="required"
-                               placeholder="场地称" autocomplete="off" class="layui-input">
-                    </div>
-                    <a  href="javascript:;" class="layui-btn data-add-btn layui-btn-sm" lay-submit="" lay-filter="add" id="search">
-                        {:lang('search')}
-                    </a>
-
-                    <!--<a href="javascript:;" class="layui-btn layui-btn-sm layui-btn-warm" id="adds" >添加</a>-->
-
-                </div>
-
-            </blockquote>
-
-        </fieldset>
-
-        <table class="layui-table" id="list" lay-filter="list"></table>
-    </div>
-</div>
-
-<script type="text/html" id="barDemo">
-    <a href="{:url('sitetree')}?id={{d.id}}" class="layui-btn layui-btn-xs layui-btn-normal">设置科目</a>
-
-    {{#  if(d.status ==0 ){ }}
-    <a class="layui-btn layui-btn-xs" lay-event="status">禁用</a>
-    {{# } else { }}
-    <a class="layui-btn layui-btn-xs" lay-event="status">启用</a>
-    {{#  } }}
-
-
-</script>
-{include file="common/footer"/}
-<script>
-
-
-    layui.use(['form', 'table'], function () {
-        var $ = layui.jquery,
-            form = layui.form,
-            table = layui.table;
-
-        var tableIn = table.render({
-            elem: '#list',
-            url: '{:url("index")}',
-            method: 'post',
-            title: '场地管理',
-            loading:true,
-            toolbar: '#toolbar', //开启头部工具栏,并为其绑定左侧模板
-
-            defaultToolbar: ['filter', 'exports', 'print', { //自定义头部工具栏右侧图标。如无需自定义,去除该参数即可
-                title: '提示'
-                ,layEvent: 'LAYTABLE_TIPS'
-                ,icon: 'layui-icon-tips' }],
-            cols: [[
-                // {checkbox: true, fixed: true},
-                {field: 'id', title: 'ID', width: 80, fixed: true, sort: true},
-                {field: 'name', title: '场地名称', width: 200, sort: true},
-                {field: 'person', title: '上课人数', width: 100, sort: true},
-                {field: 'building', title: '所在教学楼', width: 200, sort: true},
-                {field: 'floor', title: '楼层', width: 50, sort: true},
-                {field: 'subject_id', title: '科目', width: 400, sort: true},
-                {field: 'start_time', title: '时间段', width: 100, sort: true},
-                // {field: 'borrow', title: '借用否', width: 100, sort: true},
-                {field: 'status', title: '状态', width: 100, sort: true,templet:function (d) {
-                    let value=""
-                        // console.log("d",d)
-                    if (d.status==1){
-                            value="禁用"
-                        }else {
-                        value="启用中"
-                    }
-                    return value;
-                    }},
-                {title:'操作',width:150,align:"center",toolbar:"#barDemo"},
-
-            ]],
-            limits: [10, 15, 20, 25, 50, 100],
-            limit: 15,
-            page: true
-        });
-
-        table.on('tool(list)', function(obj){
-            var data = obj.data;
-            let event=obj.event;
-            switch (event) {
-                case "status":
-                    layer.confirm('您确定要修改状态吗?', function(index) {
-                        let   loading =layer.load(1, {shade: [0.1,'#fff']});
-                        $.post("{:url('updata_status')}",{id:data.id},function(res){
-                            layer.close(loading);
-                            layer.close(index);
-                            if(res.code==1){
-                                layer.msg(res.msg,{time:1000,icon:1});
-                                tableIn.reload();
-                            }else{
-                                layer.msg(res.msg,{time:1000,icon:2});
-                            }
-                        },"json")
-                    })
-                    break;
-
-                case "detail":// 修改
-
-                    // layer.prompt({title: '修改专业', formType: 3,value:data.name}, function(text, index){
-                    //     layer.close(index);
-                    //     let  loading =layer.load(1, {shade: [0.1,'#fff']});
-                    //     $.post("{:url('update_major')}",{id:data.id,name:text},function(res){
-                    //         layer.close(loading);
-                    //         // layer.close(index);
-                    //         if(res.code==1){
-                    //             layer.msg(res.msg,{time:1000,icon:1});
-                    //             tableIn.reload();
-                    //         }else{
-                    //             layer.msg(res.msg,{time:1000,icon:2});
-                    //         }
-                    //     },"json")
-                    // });
-
-
-                    break;
-
-                case "add":// 修改
-
-                    layer.msg("添加")
-                    break;
-            }
-
-
-
-        });
-
-        $('#search').click(function () {
-            var $keys = $('#name').val();
-            if(!$keys){
-                return layer.msg('请输入关键词');
-            }
-
-            tableIn.reload({ page: {page: 1},where: {name: $keys}});
-
-        })
-        setInterval(function () {
-            tableIn.reload();
-        },50000);
-
-        $("#adds").click(function () {
-            layer.prompt({title: '添加专业', formType: 3}, function(text, index){
-                layer.close(index);
-                let  loading =layer.load(1, {shade: [0.1,'#fff']});
-                $.post("{:url('add_major')}",{name:text},function(res){
-                    layer.close(loading);
-                    if(res.code==1){
-                        layer.msg(res.msg,{time:1000,icon:1});
-                        tableIn.reload();
-                    }else{
-                        layer.msg(res.msg,{time:1000,icon:2});
-                    }
-                },"json")
-            });
-        })
-
-    });
-
-
-
-
-</script>

+ 0 - 86
php/view/admin/site/sitetree.html

@@ -1,86 +0,0 @@
-{include file="common/header"/}
-<div class="LM-container">
-    <div class="LM-main">
-        <div class="admin-main layui-anim layui-anim-upbit">
-            <fieldset class="layui-elem-field layui-field-title">
-                <legend>科目分配</legend>
-                <blockquote class="layui-elem-quote">
-                    <button type="button" class="layui-btn layui-btn-sm" lay-demo="setChecked">全选</button>
-                    <button type="button" class="layui-btn layui-btn-sm layui-btn-warm" lay-demo="reload">取消</button>
-                </blockquote>
-
-            </fieldset>
-            <div class="layui-form-item">
-                <div id="tree" class="demo-tree-more"></div>
-
-            </div>
-
-            <form class="layui-form layui-form-pane" lay-filter="form">
-                <div class="layui-form-item">
-                    <div class="layui-input-inline">
-                        <input type="hidden" name="id"  >
-                        <button type="button" class="layui-btn" lay-submit="" lay-filter="submit">{:lang('submit')}</button>
-                        <a href="{:url('index')}" class="layui-btn layui-btn-primary">{:lang('back')}</a>
-                    </div>
-                </div>
-            </form>
-
-        </div>
-    </div>
-</div>
-
-{include file="common/footer"/}
-<script>
-    layui.use(['form', 'table','tree','form'], function () {
-        var $ = layui.jquery,
-            util = layui.util,
-            form = layui.form,
-            tree = layui.tree;
-        var idList = {:json_encode($idList)};
-        tree.render({
-            elem: '#tree'
-            ,data: {:json_encode($list)}
-            ,showCheckbox: true  //是否显示复选框
-            ,id: 'treebox'
-            // ,edit: ['add', 'update', 'del']
-            ,showLine:true
-            ,accordion:true//是否开启手风琴模式,默认 false
-            ,isJump: false //是否允许点击节点时弹出新窗口跳转
-
-
-    });
-
-        //按钮事件
-        util.event('lay-demo', {
-            getChecked: function (othis) {
-                var checkedData = tree.getChecked('treebox'); //获取选中节点的数据
-            }
-            , setChecked: function () {
-                tree.setChecked('treebox', idList); //勾选指定节点
-            }
-            , reload: function () {
-                //重载实例
-                tree.reload('treebox', {});
-
-            }
-        })
-        form.on('submit(submit)', function (data) {
-            let loading =layer.load(1, {shade: [0.1,'#fff']});
-            var data  = tree.getChecked('treebox');
-            $.post("teacher", {rules:data,group_id:'{$group_id}'}, function (res) {
-                layer.close(loading);
-                if (res.code === 1) {
-                    layer.msg(res.msg, {time: 1800, icon: 1}, function () {
-                        location.href = "index";
-                    });
-                } else {
-                    layer.msg(res.msg, {time: 1800, icon: 2});
-                }
-            },"json");
-        });
-
-
-    });
-
-
-</script>

+ 0 - 153
php/view/admin/training/course.html

@@ -1,153 +0,0 @@
-{include file="common/header"/}
-<div class="LM-container">
-    <div class="LM-main">
-        <fieldset class="layui-elem-field layui-field-title">
-            <legend>科目名称管理</legend>
-            <blockquote class="layui-elem-quote">
-                <div class="LM-table">
-                    <div class="layui-inline">
-                        <input type="text" id='name' name="name" lay-verify="required"
-                               placeholder="专业名称" autocomplete="off" class="layui-input">
-                    </div>
-                    <a  href="javascript:;" class="layui-btn data-add-btn layui-btn-sm" lay-submit="" lay-filter="add" id="search">
-                        {:lang('search')}
-                    </a>
-                    <a class="layui-btn layui-btn-normal layui-btn-sm" onclick="openAll();">展开或折叠全部</a>
-                </div>
-
-            </blockquote>
-
-        </fieldset>
-
-        <table class="layui-table " id="treeTable" lay-filter="treeTable"></table>
-
-    </div>
-</div>
-
-{include file="common/footer"/}
-<script>
-
-    var editObj=null,ptable=null,treeGrid=null,tableId='treeTable',layer=null;
-    layui.config({
-        base: '/static/plugins/layui/extend/'
-    }).extend({
-        treeGrid: 'treeGrid/treeGrid'
-    }).use(['jquery','treeGrid','layer','form'], function(){
-        var $=layui.jquery;form = layui.form;
-        treeGrid = layui.treeGrid;//很重要
-        layer=layui.layer;
-        ptable=treeGrid.render({
-            id:tableId
-            ,elem: '#'+tableId
-            ,idField:'id'
-            ,url:'{:url("course")}'
-            ,cellMinWidth: 100
-            ,treeId:'id'//树形id字段名称
-            ,treeUpId:'pId'//树形父id字段名称
-            ,treeShowName:'name'//以树形式显示的字段
-               , loading:true
-            ,cols: [[
-                {field:'id',width:50, title: 'ID'},
-                {field:'name',width:200, title: '专业/科目名称'},
-                {width:400,title: '操作', align:'center'
-                    ,templet: function(d){
-                        var html='';
-                        // var addBtn='<a class="layui-btn layui-btn-xs" lay-event="add">添加</a>';
-                        var addCHildBtn='<a class="layui-btn layui-btn-xs" lay-event="add">添加科目名称</a>';
-                        var delBtn='<a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del">删除</a>';
-                        return addCHildBtn+delBtn;
-                    }
-                },
-
-            ]],
-            // limits: [10, 15, 20, 25, 50, 100],
-            // limit: 10,
-            page: false
-        });
-
-        treeGrid.on('tool('+tableId+')',function (obj) {
-            //删除行
-            if(obj.event === 'del'){
-                del(obj);
-            }else if(obj.event==="add"){
-                //添加行
-                add(obj.data);
-            }
-        });
-
-        $('#search').click(function () {
-            var $keys = $('#name').val();
-            if(!$keys){
-                return layer.msg('请输入关键词');
-            }
-            treeGrid.reload(tableId,{ page: {page: 1},where: {name: $keys}});
-            // tableIn.reload();
-
-        })
-        function del(obj) {
-            layer.confirm("你确定删除数据吗?", {icon: 3, title:'提示'},
-                //确定回调
-                function(index){
-
-                    // console.log("obj",obj)
-                    layer.close(index);
-                    let  loading =layer.load(1, {shade: [0.1,'#fff']});
-                    $.post("{:url('del')}", {id: obj.data.id}, function (res) {
-                        layer.close(loading);
-                        if (res.code == 1) {
-                            layer.msg(res.msg, {time: 1000, icon: 1});
-                            obj.del();
-                        } else {
-                            layer.msg(res.msg, {time: 1000, icon: 2});
-                        }
-                    }, "json")
-
-                },function (index) {
-                    //取消回调
-                    layer.close(index);
-                }
-            );
-        }
-
-        function add(pObj) {
-            // console.log(pObj)
-            let id=pObj.id
-            // layer.msg("dsaasd")
-            layer.prompt({title: '添加科目名称', formType: 3}, function(text, index) {
-                layer.close(index);
-                let  loading =layer.load(1, {shade: [0.1,'#fff']});
-                $.post("{:url('add_major')}", {pid: id, name: text}, function (res) {
-                    layer.close(loading);
-                    if (res.code == 1) {
-
-                        console.log("res",res)
-                        layer.msg(res.msg, {time: 1000, icon: 1});
-                        treeGrid.reload(tableId,{});
-                        //
-                        // let datas=res.data
-                        // var param={};
-                        // param.name=datas.name;
-                        // param.id=datas.id;
-                        // param.pId=datas.pId;
-                        // treeGrid.addRow(tableId,pObj?pObj.LAY_TABLE_INDEX+1:0,param);
-
-                    } else {
-                        layer.msg(res.msg, {time: 1000, icon: 2});
-                    }
-                }, "json")
-            })
-
-
-
-        }
-    });
-
-
-
-
-    function openAll() {
-        var treedata=treeGrid.getDataTreeList(tableId);
-        treeGrid.treeOpenAll(tableId,!treedata[0][treeGrid.config.cols.isOpen]);
-    }
-
-</script>

+ 0 - 152
php/view/admin/training/index.html

@@ -1,152 +0,0 @@
-{include file="common/header"/}
-<div class="LM-container">
-    <div class="LM-main">
-        <fieldset class="layui-elem-field layui-field-title">
-            <legend>专业管理</legend>
-            <blockquote class="layui-elem-quote">
-                <div class="LM-table">
-                    <div class="layui-inline">
-                        <input type="text" id='name' name="name" lay-verify="required"
-                               placeholder="专业名称" autocomplete="off" class="layui-input">
-                    </div>
-                    <a  href="javascript:;" class="layui-btn data-add-btn layui-btn-sm" lay-submit="" lay-filter="add" id="search">
-                        {:lang('search')}
-                    </a>
-
-                    <a href="javascript:;" class="layui-btn layui-btn-sm layui-btn-warm" id="adds" >添加</a>
-
-                </div>
-
-            </blockquote>
-
-        </fieldset>
-
-        <table class="layui-table" id="list" lay-filter="list"></table>
-    </div>
-</div>
-
-<script type="text/html" id="barDemo">
-  <a class="layui-btn layui-btn-xs" lay-event="detail">修改</a>
-  <!--<a class="layui-btn layui-btn-xs" lay-event="adddetail">添加课程科目</a>-->
-
-  <a class="layui-btn layui-btn-xs" lay-event="del">删除</a>
-
-</script>
-{include file="common/footer"/}
-<script>
-
-
-    layui.use(['form', 'table'], function () {
-        var $ = layui.jquery,
-            form = layui.form,
-            table = layui.table;
-
-        var tableIn = table.render({
-            elem: '#list',
-            url: '{:url("index")}',
-            method: 'post',
-            title: '专业管理',
-            loading:true,
-            toolbar: '#toolbar', //开启头部工具栏,并为其绑定左侧模板
-
-            defaultToolbar: ['filter', 'exports', 'print', { //自定义头部工具栏右侧图标。如无需自定义,去除该参数即可
-                title: '提示'
-                ,layEvent: 'LAYTABLE_TIPS'
-                ,icon: 'layui-icon-tips' }],
-            cols: [[
-                // {checkbox: true, fixed: true},
-                {field: 'id', title: 'ID', width: 80, fixed: true, sort: true},
-                {field: 'name', title: '专业', width: 400, sort: true},
-                {title:'操作',width:150,align:"center",toolbar:"#barDemo"},
-
-            ]],
-            limits: [10, 15, 20, 25, 50, 100],
-            limit: 10,
-            page: true
-        });
-
-        table.on('tool(list)', function(obj){
-            var data = obj.data;
-            let event=obj.event;
-            switch (event) {
-                case "del":
-                    layer.confirm('您确定要删除改专业吗', function(index) {
-                      let   loading =layer.load(1, {shade: [0.1,'#fff']});
-                        $.post("{:url('del')}",{id:data.id},function(res){
-                            layer.close(loading);
-                            layer.close(index);
-                            if(res.code==1){
-                                layer.msg(res.msg,{time:1000,icon:1});
-                                tableIn.reload();
-                            }else{
-                                layer.msg(res.msg,{time:1000,icon:2});
-                            }
-                        },"json")
-                    })
-                    break;
-
-                case "detail":// 修改
-
-                        layer.prompt({title: '修改专业', formType: 3,value:data.name}, function(text, index){
-                            layer.close(index);
-                           let  loading =layer.load(1, {shade: [0.1,'#fff']});
-                            $.post("{:url('update_major')}",{id:data.id,name:text},function(res){
-                                layer.close(loading);
-                                // layer.close(index);
-                                if(res.code==1){
-                                    layer.msg(res.msg,{time:1000,icon:1});
-                                    tableIn.reload();
-                                }else{
-                                    layer.msg(res.msg,{time:1000,icon:2});
-                                }
-                            },"json")
-                        });
-
-
-                    break;
-
-                case "add":// 修改
-
-                    layer.msg("添加")
-                    break;
-            }
-
-
-
-        });
-
-        $('#search').click(function () {
-            var $keys = $('#name').val();
-            if(!$keys){
-                return layer.msg('请输入关键词');
-            }
-
-            tableIn.reload({ page: {page: 1},where: {name: $keys}});
-
-        })
-        setInterval(function () {
-            tableIn.reload();
-        },50000);
-
-        $("#adds").click(function () {
-            layer.prompt({title: '添加专业', formType: 3}, function(text, index){
-                layer.close(index);
-                let  loading =layer.load(1, {shade: [0.1,'#fff']});
-                $.post("{:url('add_major')}",{name:text},function(res){
-                    layer.close(loading);
-                    if(res.code==1){
-                        layer.msg(res.msg,{time:1000,icon:1});
-                        tableIn.reload();
-                    }else{
-                        layer.msg(res.msg,{time:1000,icon:2});
-                    }
-                },"json")
-            });
-        })
-
-    });
-
-
-
-
-</script>

+ 0 - 210
php/view/admin/training/text.html

@@ -1,210 +0,0 @@
-{include file="common/header"/}
-<style>
-    .upload-wrap {
-        position: relative;
-        display: inline-block;
-        overflow: hidden;
-        border: 1px solid #2d78f4;
-        border-radius: 3px;
-    }
-
-    .upload-wrap .file-ele {
-        position: absolute;
-        top: 0;
-        right: 0;
-        opacity: 0;
-        height: 100%;
-        width: 100%;
-        cursor: pointer;
-    }
-
-    .upload-wrap .file-open {
-        width: 90px;
-        height: 30px;
-        line-height: 30px;
-        text-align: center;
-        color: #fff;
-        background: #3385ff;
-    }
-
-</style>
-<div class="LM-container">
-    <div class="LM-main">
-        <fieldset class="layui-elem-field layui-field-title">
-            <legend>课程科目管理</legend>
-            <!--<blockquote class="layui-elem-quote">-->
-                <!--&lt;!&ndash;<div class="LM-table">&ndash;&gt;-->
-                    <!--&lt;!&ndash;<div class="layui-inline">&ndash;&gt;-->
-                        <!--&lt;!&ndash;<input type="text" id='name' name="name" lay-verify="required"&ndash;&gt;-->
-                               <!--&lt;!&ndash;placeholder="名字|学号" autocomplete="off" class="layui-input">&ndash;&gt;-->
-                    <!--&lt;!&ndash;</div>&ndash;&gt;-->
-                    <!--&lt;!&ndash;<a href="javascript:;" class="layui-btn data-add-btn layui-btn-sm" lay-submit="" lay-filter="add"&ndash;&gt;-->
-                       <!--&lt;!&ndash;id="search">&ndash;&gt;-->
-                        <!--&lt;!&ndash;{:lang('search')}&ndash;&gt;-->
-                    <!--&lt;!&ndash;</a>&ndash;&gt;-->
-                <!--&lt;!&ndash;</div>&ndash;&gt;-->
-
-            <!--</blockquote>-->
-
-        </fieldset>
-        <div class="row pre-scrollable"></div>
-        <table class="layui-table row pre-scrollable" id="list" lay-filter="list">
-
-        </table>
-    </div>
-</div>
-
-{include file="common/footer"/}
-<script src="/static/plugins/jquery-3.4.1/jquery-3.4.1.min.js"></script>
-<script>
-    layui.use(['form', 'table'], function () {
-        var $ = layui.jquery,
-            form = layui.form,
-            table = layui.table;
-        var tableIn = table.render({
-            elem: '#list',
-            url: '{:url("course")}',
-            method: 'post',
-            title: '学生信息管理',
-            loading: true,
-            toolbar: '#toolbar', //开启头部工具栏,并为其绑定左侧模板
-
-            defaultToolbar: ['filter', 'exports', 'print', "excel", { //自定义头部工具栏右侧图标。如无需自定义,去除该参数即可
-                title: '提示'
-                , layEvent: 'LAYTABLE_TIPS'
-                , icon: 'layui-icon-tips'
-            }],
-            cols: [[
-                {field:'id',width:50, title: 'ID'},
-                {field:'name',width:200, title: '专业/科目名称'  ,templet: function(d){
-                        var html=d.html+d.name;
-                        return html;
-                    }},
-                {width:400,title: '操作', align:'center'
-                    ,templet: function(d){
-                        var html='';
-                        if (d.level==1){
-                            var addCHildBtn='<a class="layui-btn layui-btn-xs" lay-event="add">添加课程名称</a>';
-                        } else if (d.level==2){
-                            var addCHildBtn='<a class="layui-btn layui-btn-xs" lay-event="add">添加科目名称</a>';
-                        } else {
-                            addCHildBtn="";
-                        }
-
-                        var delBtn='<a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del">删除</a>';
-                        return addCHildBtn+delBtn;
-                    }
-                },
-
-            ]],
-            limits: [10, 15, 20, 25, 50, 100],
-            limit: 10,
-            page: false
-        });
-
-
-        table.on('tool(list)', function (obj) {
-            var data = obj.data;
-            let event = obj.event;
-            switch (event) {
-                case "check":
-                    layer.confirm('确定要进行这样的操作码', function (index) {
-                        loading = layer.load(1, {shade: [0.1, '#fff']});
-                        $.post("{:url('status')}", {id: data.id}, function (res) {
-                            layer.close(loading);
-                            layer.close(index);
-                            if (res.code == 1) {
-                                layer.msg(res.msg, {time: 1000, icon: 1});
-                                tableIn.reload();
-                            } else {
-                                layer.msg(res.msg, {time: 1000, icon: 2});
-                            }
-                        }, "json")
-                    })
-                    break;
-            }
-            //删除行
-            if(obj.event === 'del'){
-                del(obj);
-            }else if(obj.event==="add"){
-                //添加行
-                add(obj.data);
-            }
-
-        });
-
-        form.on('switch(status)', function (data) {
-
-        });
-        function del(obj) {
-            layer.confirm("你确定删除数据吗?", {icon: 3, title:'提示'},
-                //确定回调
-                function(index){
-
-                    // console.log("obj",obj)
-                    layer.close(index);
-                    let  loading =layer.load(1, {shade: [0.1,'#fff']});
-                    $.post("{:url('del')}", {id: obj.data.id}, function (res) {
-                        layer.close(loading);
-                        if (res.code == 1) {
-                            layer.msg(res.msg, {time: 1000, icon: 1});
-                            obj.del();
-                        } else {
-                            layer.msg(res.msg, {time: 1000, icon: 2});
-                        }
-                    }, "json")
-
-                },function (index) {
-                    //取消回调
-                    layer.close(index);
-                }
-            );
-        }
-
-        function add(pObj) {
-            let id=pObj.id
-                let string=""
-            if (pObj.level==2){
-                string="添加科目名称"
-            } else {
-                string="添加课程名称"
-            }
-            layer.prompt({title: string, formType: 3}, function(text, index) {
-                layer.close(index);
-                let  loading =layer.load(1, {shade: [0.1,'#fff']});
-                $.post("{:url('add_major')}", {pid: id, name: text}, function (res) {
-                    layer.close(loading);
-                    if (res.code == 1) {
-
-                        console.log("res",res)
-                        layer.msg(res.msg, {time: 1000, icon: 1});
-                        // treeGrid.reload(tableId,{});
-                        tableIn.reload();
-
-                    } else {
-                        layer.msg(res.msg, {time: 1000, icon: 2});
-                    }
-                }, "json")
-            })
-
-
-
-        }
-        $('#search').click(function () {
-            var $keys = $('#name').val();
-            if (!$keys) {
-                return layer.msg('请输入关键词');
-            }
-
-            tableIn.reload({page: {page: 1}, where: {name: $keys}});
-
-        })
-        // setInterval(function () {
-        //     tableIn.reload();
-        // }, 50000)
-
-
-
-    });
-
-</script>

+ 0 - 188
php/view/admin/training/upgrade.html

@@ -1,188 +0,0 @@
-{include file="common/header"/}
-<div class="LM-container">
-    <div class="LM-main">
-        <fieldset class="layui-elem-field layui-field-title">
-            <legend>专业升级参数</legend>
-            <blockquote class="layui-elem-quote">
-                <div class="LM-table">
-                    <div class="layui-inline">
-                        <input type="text" id='name' name="name" lay-verify="required"
-                               placeholder="专业名称" autocomplete="off" class="layui-input">
-                    </div>
-                    <a  href="javascript:;" class="layui-btn data-add-btn layui-btn-sm" lay-submit="" lay-filter="add" id="search">
-                        {:lang('search')}
-                    </a>
-
-                    <!--<a href="javascript:;" class="layui-btn layui-btn-sm layui-btn-warm" id="adds" >添加</a>-->
-
-                </div>
-
-            </blockquote>
-
-        </fieldset>
-
-        <table class="layui-table" id="list" lay-filter="list"></table>
-    </div>
-</div>
-
-<script type="text/html" id="barDemo">
-    <a class="layui-btn layui-btn-xs" lay-event="detail">修改</a>
-    <!--<a class="layui-btn layui-btn-xs" lay-event="adddetail">添加课程科目</a>-->
-
-    <!--<a class="layui-btn layui-btn-xs" lay-event="del">删除</a>-->
-
-</script>
-{include file="common/footer"/}
-<script>
-
-
-    layui.use(['form', 'table'], function () {
-        var $ = layui.jquery,
-            form = layui.form,
-            table = layui.table;
-
-        var tableIn = table.render({
-            elem: '#list',
-            url: '{:url("upgrade")}',
-            method: 'post',
-            title: '专业管理',
-            loading:true,
-            toolbar: '#toolbar', //开启头部工具栏,并为其绑定左侧模板
-
-            defaultToolbar: ['filter', 'exports', 'print', { //自定义头部工具栏右侧图标。如无需自定义,去除该参数即可
-                title: '提示'
-                ,layEvent: 'LAYTABLE_TIPS'
-                ,icon: 'layui-icon-tips' }],
-            cols: [[
-                // {checkbox: true, fixed: true},
-
-                {field: 'id', title: 'ID', width: 80, fixed: true, sort: true},
-                {field: 'pro_name', title: '专业名称', width: 200, sort: true},
-                {field: 'type', title: '等级', width: 100, sort: true,templet:function (d) {
-                    let value=""
-                        // console.log("d",d)
-                        // console.log("val",val)
-                        // console.log("val",val)
-                        // console.log("item",item)
-                        switch (d.type) {
-                            case 0: value ="初出茅庐";break;
-                            case 1: value ="心领神会";break;
-                            case 2: value ="出类拔萃";break;
-                            case 3: value ="名列前茅";break;
-                            case 4: value ="百里挑一";break;
-                        }
-                        return value;
-                    }},
-                {field: 'min', title: '升级科目最小值', width: 100, sort: true},
-                {field: 'max', title: '升级科目最大值', width: 100, sort: true},
-
-                {title:'操作',width:150,align:"center",toolbar:"#barDemo"},
-
-            ]],
-            limits: [10, 15, 20, 25, 50, 100],
-            limit: 10,
-            page: true
-        });
-
-        table.on('tool(list)', function(obj){
-            var data = obj.data;
-            let event=obj.event;
-            switch (event) {
-                case "del":
-                    layer.confirm('您确定要删除改专业吗', function(index) {
-                        let   loading =layer.load(1, {shade: [0.1,'#fff']});
-                        $.post("{:url('del')}",{id:data.id},function(res){
-                            layer.close(loading);
-                            layer.close(index);
-                            if(res.code==1){
-                                layer.msg(res.msg,{time:1000,icon:1});
-                                tableIn.reload();
-                            }else{
-                                layer.msg(res.msg,{time:1000,icon:2});
-                            }
-                        },"json")
-                    })
-                    break;
-
-                case "detail":// 修改
-                    let values=""
-                    switch (data.type) {
-                        case 0: values ="初出茅庐";break;
-                        case 1: values ="心领神会";break;
-                        case 2: values ="出类拔萃";break;
-                        case 3: values ="名列前茅";break;
-                        case 4: values ="百里挑一";break;
-                    }
-
-
-                    layer.prompt({title: '修改'+data.pro_name+"/"+values, formType: 3,value:data.min?data.min:"0"}, function(text, index,elem){
-                        layer.close(index);
-                        let datas={
-                            min:text,
-                            max:$("#zxr").val(),
-                            id:data.id,
-                        }
-                        if (datas.max===""){
-                            layer.tips("请设置最大值")
-                            return ;
-                        }
-                        let  loading =layer.load(1, {shade: [0.1,'#fff']});
-                        // console.log("data",datas)
-                        $.post("{:url('update_upgrade')}",datas,function(res){
-                            layer.close(loading);
-                            // layer.close(index);
-                            if(res.code==1){
-                                layer.msg(res.msg,{time:1000,icon:1});
-                                tableIn.reload();
-                            }else{
-                                layer.msg(res.msg,{time:1000,icon:2});
-                            }
-                        },"json")
-                    });
-                    $(".layui-layer-content").append("<br/><input type=\"text\" value='"+data.max+"' id= \"zxr\" class=\"layui-input\"/>");
-                    break;
-                case "add":// 修改
-
-                    layer.msg("添加")
-                    break;
-            }
-
-
-
-        });
-
-        $('#search').click(function () {
-            var $keys = $('#name').val();
-            if(!$keys){
-                return layer.msg('请输入关键词');
-            }
-
-            tableIn.reload({ page: {page: 1},where: {name: $keys}});
-
-        })
-        setInterval(function () {
-            tableIn.reload();
-        },100000);
-
-        $("#adds").click(function () {
-            layer.prompt({title: '添加专业', formType: 3}, function(text, index){
-                layer.close(index);
-                let  loading =layer.load(1, {shade: [0.1,'#fff']});
-                $.post("{:url('add_major')}",{name:text},function(res){
-                    layer.close(loading);
-                    if(res.code==1){
-                        layer.msg(res.msg,{time:1000,icon:1});
-                        tableIn.reload();
-                    }else{
-                        layer.msg(res.msg,{time:1000,icon:2});
-                    }
-                },"json")
-            });
-        })
-
-    });
-
-
-
-
-</script>

+ 0 - 208
php/view/admin/wechat/add.html

@@ -1,208 +0,0 @@
-{include file="common/header"/}
-<div class="LM-container">
-    <div class="LM-main">
-        <fieldset class="layui-elem-field layui-field-title">
-            <legend>{$title}</legend>
-        </fieldset>
-        <form class="layui-form layui-form-pane" lay-filter="form">
-
-
-            <div class="layui-form-item">
-                <label class="layui-form-label">公众号名称</label>
-                <div class="layui-input-inline">
-                    <input type="text" name="wxname" lay-verify="required" placeholder="{:lang('pleaseEnter')}昵称" class="layui-input">
-                </div>
-                <div class="layui-form-mid layui-word-aux">
-                    在4到25个字符之间。
-                </div>
-            </div>
-
-            <div class="layui-form-item">
-                <label class="layui-form-label">{:lang('type')}</label>
-                <div class="layui-input-block">
-                    <input type="radio" name="type" lay-filter="type" checked value="1" title="普通订阅号">
-                    <input type="radio" name="type" lay-filter="type" value="2" title="认证订阅号">
-                    <input type="radio" name="type" lay-filter="type" value="3" title="普通服务号">
-                    <input type="radio" name="type" lay-filter="type" value="4" title="认证服务号/认证媒体/政府订阅号">
-                </div>
-            </div>
-
-            <div class="layui-form-item">
-                <label class="layui-form-label">APP_ID</label>
-                <div class="layui-input-inline">
-                    <input type="text" name="app_id" placeholder="{:lang('pleaseEnter')}APP_ID" lay-verify="require" class="layui-input">
-                </div>
-
-            </div>
-            <div class="layui-form-item">
-                <label class="layui-form-label">APP_SECRET</label>
-                <div class="layui-input-inline">
-                    <input type="text" name="app_secret" placeholder="{:lang('pleaseEnter')}{:lang('APP_SECRET')}" lay-verify="require" class="layui-input">
-                </div>
-
-            </div>
-
-            <div class="layui-form-item">
-                <label class="layui-form-label">aeskey</label>
-                <div class="layui-input-inline">
-                    <input type="text" name="aeskey" placeholder="{:lang('pleaseEnter')}{:lang('aeskey')}" lay-verify="require" class="layui-input">
-                </div>
-
-            </div>
-            <div class="layui-form-item">
-                <label class="layui-form-label">encode加密(可不填)</label>
-                <div class="layui-input-inline">
-                    <input type="text" name="encode" placeholder="{:lang('pleaseEnter')}{:lang('encode')}" lay-verify="" class="layui-input">
-                </div>
-
-            </div>
-
-            <div class="layui-form-item">
-                <label class="layui-form-label">对接Token</label>
-                <div class="layui-input-inline">
-                    <input type="text" name="w_token" placeholder="{:lang('pleaseEnter')}{:lang('w_token')}" lay-verify="require" class="layui-input">
-                </div>
-
-            </div>
-
-            <div class="layui-form-item">
-                <label class="layui-form-label">原始ID</label>
-                <div class="layui-input-inline">
-                    <input type="text" name="origin_id" placeholder="{:lang('pleaseEnter')}{:lang('原始ID')}" lay-verify="require" class="layui-input">
-                </div>
-
-            </div>
-            <div class="layui-form-item">
-                <label class="layui-form-label">二维码</label>
-                <input type="hidden" name="qr" id="qr">
-                <div class="layui-input-inline">
-                    <div class="layui-upload">
-                        <button type="button" class="layui-btn layui-btn-primary" id="addBtn"><i class="icon icon-upload3"></i>点击上传</button>
-                        <div class="layui-upload-list">
-                            <img class="layui-upload-img" id="addPic">
-                            <p id="notice"></p>
-                        </div>
-                    </div>
-                </div>
-            </div>
-
-            <div class="layui-form-item">
-                <label class="layui-form-label">LOGO</label>
-                <input type="hidden" name="logo" id="logo">
-                <div class="layui-input-inline">
-                    <div class="layui-upload">
-                        <button type="button" class="layui-btn layui-btn-primary" id="addBtnLogo"><i class="icon icon-upload3"></i>点击上传</button>
-                        <div class="layui-upload-list">
-                            <img class="layui-upload-img" id="addLogo">
-                            <p id="noticeLogo"></p>
-                        </div>
-                    </div>
-                </div>
-            </div>
-
-            <div class="layui-form-item">
-                <label class="layui-form-label">{:lang('status')}</label>
-                <div class="layui-input-block">
-                        <input type="radio" name="status" lay-filter="status"  value="1" title="启用">
-                        <input type="radio" name="status" lay-filter="status" checked value="0" title="关闭">
-                </div>
-            </div>
-            <div class="layui-form-item">
-                <div class="layui-input-inline">
-                    <input type="hidden" name="id"  >
-                    <button type="button" class="layui-btn" lay-submit="" lay-filter="submit">{:lang('submit')}</button>
-                    <a href="{:url('index')}" class="layui-btn layui-btn-primary">{:lang('back')}</a>
-                </div>
-            </div>
-        </form>
-    </div>
-</div>
-
-{include file="common/footer"/}
-<script>
-    layui.use(['form', 'layer','upload','laydate'], function () {
-        var form = layui.form, laydate=layui.laydate,layer = layui.layer,$= layui.jquery,upload = layui.upload;
-        var info = '';
-        //日期范围
-        laydate.render({
-            elem: '#date'
-            ,range: true
-        });
-
-        info = {:json_encode($info)};
-        form.val("form", info);
-        if(info){
-            $('#logo').attr('src',info.logo);
-            $('#qr').attr('src',info.qr);
-        }
-        form.render();
-        form.on('submit(submit)', function (data) {
-            loading =layer.load(1, {shade: [0.1,'#fff']});
-            $.post("", data.field, function (res) {
-                layer.close(loading);
-                if (res.code > 0) {
-                    layer.msg(res.msg, {time: 1800, icon: 1}, function () {
-                       location.href = res.url;
-                    });
-                } else {
-                    layer.msg(res.msg, {time: 1800, icon: 2});
-                }
-            });
-        });
-        //普通图片上传
-        var uploadInt = upload.render({
-            elem: '#addBtn'
-            ,url: '{:url("uploads/uploads")}'
-            ,before: function(obj){
-                //预读本地文件示例,不支持ie8
-                obj.preview(function(index, file, result){
-                    $('#addPic').attr('src', result); //图片链接(base64)
-                });
-            },
-            done: function(res){
-                if(res.code>0){
-                    $('#qr').val(res.url);
-                }else{
-                    //如果上传失败
-                    return layer.msg('上传失败');
-                }
-            }
-            ,error: function(){
-                //演示失败状态,并实现重传
-                var notice = $('#notice');
-                notice.html('<span style="color: #FF5722;">上传失败</span> <a class="layui-btn layui-btn-mini demo-reload">重试</a>');
-                notice.find('.demo-reload').on('click', function(){
-                    uploadInt.upload();
-                });
-            }
-        });
-
-        var uploadInt = upload.render({
-            elem: '#addBtnLogo'
-            ,url: '{:url("uploads/uploads")}'
-            ,before: function(obj){
-                //预读本地文件示例,不支持ie8
-                obj.preview(function(index, file, result){
-                    $('#addLogo').attr('src', result); //图片链接(base64)
-                });
-            },
-            done: function(res){
-                if(res.code>0){
-                    $('#logo').val(res.url);
-                }else{
-                    //如果上传失败
-                    return layer.msg('上传失败');
-                }
-            }
-            ,error: function(){
-                //演示失败状态,并实现重传
-                var notice = $('#noticeLogo');
-                notice.html('<span style="color: #FF5722;">上传失败</span> <a class="layui-btn layui-btn-mini demo-reload">重试</a>');
-                notice.find('.demo-reload').on('click', function(){
-                    uploadInt.upload();
-                });
-            }
-        });
-
-    });
-</script>

+ 0 - 209
php/view/admin/wechat/fans.html

@@ -1,209 +0,0 @@
-{include file="common/header"/}
-<style>
-    /* 防止下拉框的下拉列表被隐藏---必须设置--- 此样式和表格的样式有冲突 如果表格列数太多 会出现错乱的情况 目前我的解决方法是忽略下拉框的美化渲染 <select lay-ignore> */
-    .layui-table-cell {
-        overflow: visible;
-    }
-
-    .layui-table-box {
-        overflow: visible;
-    }
-
-    .layui-table-body {
-        overflow: visible;
-    }
-</style>
-<div class="LM-container">
-    <div class="LM-main">
-        <fieldset class="layui-elem-field layui-field-title">
-            <legend>{:lang('fans')}{:lang('list')}</legend>
-            <blockquote class="layui-elem-quote">
-                <div class="LM-table">
-                    <form class="layui-form" action="">
-
-                        <div class="layui-input-inline">
-
-                            <select name="wx_aid" lay-filter="select" lay-verify="required" lay-search="">
-                                <option value="">直接选择或搜索选择</option>
-                                {volist name='wxAccount' id ='vo'}
-                                <option value="{$vo.id}" {if $vo.status==1 } selected {/if}>{$vo.wxname}</option>
-                                {/volist}
-                            </select>
-                        </div>
-                        <a href="javascript:;" class="layui-btn layui-btn-sm layui-btn-warm aysn">同步粉丝</a>
-
-                        <div class="layui-inline">
-                            <input type="text" id='keys' name="keys" lay-verify="required"
-                                   placeholder="{:lang('pleaseEnter')}" autocomplete="off" class="layui-input">
-                        </div>
-                        <a href="javascript:;" class="layui-btn data-add-btn layui-btn-sm" lay-submit=""
-                           lay-filter="search" id="search">{:lang('search')}</a>
-
-                    </form>
-                </div>
-
-            </blockquote>
-
-        </fieldset>
-
-        <table class="layui-table" id="list" lay-filter="list"></table>
-    </div>
-</div>
-
-
-<!--<script type="text/html" id="action">-->
-<!--    <a href="{:url('edit')}?id={{d.id}}" class="layui-btn  layui-btn-xs" lay-event="edit">{:lang('edit')}</a>-->
-<!--    <a  class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del">{:lang('del')}</a>-->
-<!--</script>-->
-<script type="text/html" id="subscribe">
-    <input type="checkbox" name="status" value="{{d.id}}" disabled lay-skin="switch" lay-text="开启|关闭" lay-filter="status" {{ d.status == 1 ? 'checked' : '' }}>
-</script>
-
-<script type="text/html" id="headimgurl">
-    {{d.nickname}}<img src="/static/admin/images/image.gif" onmouseover="layer.tips('<img src={{d.headimgurl}}>',this,{tips: [1, '#fff']});" onmouseout="layer.closeAll();">
-</script>
-<script type="text/html" id="sex">
-    {{# if(d.sex==1){ }}
-    男
-    {{# }else if( d.sex==2){ }}
-    女
-    {{# }else{ }}
-    保密
-    {{# } }}
-</script>
-<script type="text/html" id="tag">
-
-    <select name="tag" lay-filter="tagSelect" lay-verify="required" data-value="{{d.tag}}" >
-        <option value=""></option>
-        {{# layui.each(d.tag_list, function(index, item){ }}
-            {{# if(d.tag==item.name){ }}
-            <option value="{{item.name}}" title="{{d.fans_id}}" selected>{{item.name}}</option>
-            {{# }else{ }}
-            <option value="{{item.name}}" title="{{d.fans_id}}" >{{item.name}}</option>
-
-            {{# } }}
-        {{# }); }}
-
-    </select>
-</script>
-<script type="text/html" id="create_time">
-    {{layui.util.toDateString(d.subscribe_time*1000, 'yyyy-MM-dd HH:mm:ss')}}
-</script>
-
-<script type="text/html" id="update_time">
-    {{# if(d.unsubscribe_time) { }}
-    {{layui.util.toDateString(d.unsubscribe_time*1000, 'yyyy-MM-dd HH:mm:ss')}}
-    {{# } }}
-</script>
-{include file="common/footer"/}
-<script>
-    layui.use(['form', 'table'], function () {
-        var $ = layui.jquery,
-            form = layui.form,
-            table = layui.table;
-        var tableIn = table.render({
-            elem: '#list',
-            url: '{:url("fans")}',
-            method: 'post',
-            size: 'lg',
-
-            cols: [[
-                {checkbox: true, fixed: true},
-                {field: 'fans_id', title: 'ID', width: 80, fixed: true, sort: true},
-                {field: 'uid', title: '会员id', width: 80, fixed: true, sort: true},
-                {field: 'nickname', title: '昵称', width: 180,sort: true},
-                {field: 'headimgurl', title: '头像', width: 150,templet:'#headimgurl',sort: true},
-                {field: 'sex', title: '性别', width: 120, templet:'#sex',sort: true},
-                // {field: 'openid', title: 'openid', width: 120, sort: true},
-                // {field: 'unionid', title: 'unionid', width: 120, sort: true},
-                {field: 'groupid', title: '粉丝所在组id', width: 120,sort: true},
-                {field: 'subscribe', title: '是否关注', width: 120,templet:'#subscribe',sort: true},
-                {field: 'remark', title: '类型', width: 120, sort: true},
-                {field: 'tag', title: '标签', width: 120,sort: true,templet:'#tag'},
-                {field: 'subscribe_time', title: '订阅时间', width: 180,templet:'#create_time',sort: true},
-                {field: 'unsubscribe_time', title: '解订阅时间', width: 180,templet:'#update_time',sort: true},
-                // {title:'操作',width:150, toolbar: '#action',align:"center"},
-
-            ]],
-            done: function (res, curr, count) {
-
-                form.render();
-            },
-            limits: [10, 15, 20, 25, 50, 100],
-            limit: 15,
-            page: true,
-        });
-
-
-        table.on('tool(list)', function(obj){
-            var data = obj.data;
-            if(obj.event === 'del'){
-                layer.confirm('{:lang("Are you sure you want to delete it")}', function(index){
-                    loading =layer.load(1, {shade: [0.1,'#fff']});
-                    $.post("{:url('delete')}",{id:data.id},function(res){
-                        layer.close(loading);
-                        layer.close(index);
-                        if(res.code>0){
-                            layer.msg(res.msg,{time:1000,icon:1});
-                            obj.del();
-                        }else{
-                            layer.msg(res.msg,{time:1000,icon:2});
-                        }
-                    });
-                });
-            }
-
-        });
-        // 监听修改update到表格中
-        form.on('select(tagSelect)', function (data) {
-            // debugger;
-            var indexGID = data.elem.selectedIndex;
-            //获取当前选中下拉项的自定义属性值 title
-            var id = data.elem[indexGID].title;
-            $.post('{:url("fansTagGroup")}',{id:id,tag:data.value},function (res) {
-                if(res.code>0){
-                    tableIn.reload({ page: {page: 1} });
-                }
-            });
-
-        });
-        form.on('select(select)', function(data) {
-
-            var wx_aid = data.value;
-            tableIn.reload({ page: {page: 1},where: {wx_aid: wx_aid}});
-
-
-
-        })
-        //同步
-        $('.aysn').click(function () {
-            var url = '{:url("fansAysn")}';
-            var wx_aid = $("select[name='wx_aid']").val();
-            loading =layer.load(1, {shade: [0.1,'#fff']});
-
-            $.post(url,{'wx_aid':wx_aid},function (res) {
-                layer.close(loading);
-                if(res.code>0){
-                    layer.msg(res.msg)
-                    tableIn.reload();
-                }else{
-                    return layer.msg(res.msg)
-
-                }
-            })
-        })
-        $('#search').click(function () {
-            var $keys = $('#keys').val();
-            if(!$keys){
-                return layer.msg('请输入关键词');
-            }
-
-            tableIn.reload({ page: {page: 1},where: {keys: $keys}});
-
-        })
-
-
-    });
-
-
-</script>

+ 0 - 122
php/view/admin/wechat/index.html

@@ -1,122 +0,0 @@
-{include file="common/header"/}
-<div class="LM-container">
-    <div class="LM-main">
-        <fieldset class="layui-elem-field layui-field-title">
-            <legend>{:lang('wechat')}{:lang('list')}</legend>
-            <blockquote class="layui-elem-quote">
-                <div class="LM-table">
-
-                    <a href="{:url('add')}" class="layui-btn layui-btn-sm layui-btn-warm">{:lang('add')}{:lang('wechat')}</a>
-                </div>
-                测试号二维码:lemocms 请不要把此测试公众号状态关闭,否则其他微信体验功能可能会受到影响
-                <img width="120" src="http://mmbiz.qpic.cn/mmbiz_jpg/nKp1y5rQibOYE5UibSIrwLn6mFYy8L2SN74G3zPPZ12lxGHWH0eOTXs8trAnic2EctzibGkP42G48kmx7osiaibFKibWA/0" alt="二维码">
-            </blockquote>
-
-        </fieldset>
-
-        <table class="layui-table" id="list" lay-filter="list"></table>
-    </div>
-</div>
-
-
-<script type="text/html" id="action">
-    <a href="{:url('edit')}?id={{d.id}}" class="layui-btn  layui-btn-xs" lay-event="edit">{:lang('edit')}</a>
-    <a  class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del">{:lang('del')}</a>
-</script>
-<script type="text/html" id="status">
-    <input type="checkbox" name="status" value="{{d.id}}" lay-skin="switch" lay-text="开启|关闭" lay-filter="status" {{ d.status == 1 ? 'checked' : '' }}>
-</script>
-
-<script type="text/html" id="qr">
-    {{d.qr}}<img src="/static/admin/images/image.gif" onmouseover="layer.tips('<img src={{d.qr}}>',this,{tips: [1, '#fff']});" onmouseout="layer.closeAll();">
-</script>
-<script type="text/html" id="logo">
-    {{d.logo}}<img src="/static/admin/images/image.gif" onmouseover="layer.tips('<img src={{d.logo}}>',this,{tips: [1, '#fff']});" onmouseout="layer.closeAll();">
-</script>
-
-<script type="text/html" id="create_time">
-    {{layui.util.toDateString(d.create_time*1000, 'yyyy-MM-dd HH:mm:ss')}}
-</script>
-<script type="text/html" id="update_time">
-    {{layui.util.toDateString(d.update_time*1000, 'yyyy-MM-dd HH:mm:ss')}}
-</script>
-{include file="common/footer"/}
-<script>
-    layui.use(['form', 'table'], function () {
-        var $ = layui.jquery,
-            form = layui.form,
-            table = layui.table;
-
-        var tableIn = table.render({
-            elem: '#list',
-            url: '{:url("index")}',
-            method: 'post',
-            cols: [[
-                {checkbox: true, fixed: true},
-                {field: 'id', title: 'ID', width: 80, fixed: true, sort: true},
-                {field: 'wxname', title: '公众号名字', width: 120,},
-                {field: 'origin_id', title: '公众号原始ID', width: 120,},
-                {field: 'app_id', title: 'appid', width: 120, },
-                {field: 'app_secret', title: 'appsecret', width: 120, },
-                {field: 'w_token', title: '微信对接token', width: 120,},
-                {field: 'qr', title: '二维码', width: 120,templet:'#qr'},
-                {field: 'logo', title: 'logo', width: 120,templet:'#logo'},
-                {field: 'type_name', title: '类型', width: 120, },
-                // {field: 'store_id', title: '店铺id', width: 120,sort: true},
-                {field: 'status', title: '接入状态', width: 180, templet:'#status'},
-                {field: 'create_time', title: '添加时间', width: 180,templet:'#create_time'},
-                {field: 'update_time', title: '更新时间', width: 180,templet:'#update_time'},
-                {title:'操作',width:150, toolbar: '#action',align:"center"},
-
-            ]],
-
-        });
-
-        table.on('tool(list)', function(obj){
-            var data = obj.data;
-            if(obj.event === 'del'){
-                layer.confirm('{:lang("Are you sure you want to delete it")}', function(index){
-                    loading =layer.load(1, {shade: [0.1,'#fff']});
-                    $.post("{:url('delete')}",{id:data.id},function(res){
-                        layer.close(loading);
-                        layer.close(index);
-                        if(res.code>0){
-                            layer.msg(res.msg,{time:1000,icon:1});
-                            obj.del();
-                        }else{
-                            layer.msg(res.msg,{time:1000,icon:2});
-                        }
-                    });
-                });
-            }
-
-        });
-
-        form.on('switch(status)', function(data){
-                loading =layer.load(1, {shade: [0.1,'#fff']});
-                $.post("{:url('state')}",{id:data.value},function(res){
-                    layer.close(loading);
-                    if(res.code>0){
-                        layer.msg(res.msg,{time:1000,icon:1});
-                        tableIn.reload();
-                    }else{
-                        layer.msg(res.msg,{time:1000,icon:2});
-                    }
-                });
-        });
-
-        $('#search').click(function () {
-            var $keys = $('#keys').val();
-            if(!$keys){
-                return layer.msg('请输入关键词');
-            }
-
-            tableIn.reload({ page: {page: 1},where: {keys: $keys}});
-
-        })
-
-
-    });
-
-
-</script>

+ 0 - 102
php/view/admin/wechat/level_add.html

@@ -1,102 +0,0 @@
-{include file="common/header"/}
-<div class="LM-container">
-    <div class="LM-main">
-        <div class="admin-main layui-anim layui-anim-upbit">
-            <fieldset class="layui-elem-field layui-field-title">
-                <legend>{$title}</legend>
-            </fieldset>
-            <form class="layui-form layui-form-pane" lay-filter="form">
-
-
-                <div class="layui-form-item">
-                    <label class="layui-form-label">等级名</label>
-                    <div class="layui-input-inline">
-                        <input type="text" name="level_name" lay-verify="required" placeholder="{:lang('pleaseEnter')}等级名" class="layui-input">
-                    </div>
-                    <div class="layui-form-mid layui-word-aux">
-                        在4到25个字符之间。
-                    </div>
-                </div>
-
-                <div class="layui-form-item">
-                    <label class="layui-form-label">等级金额</label>
-                    <div class="layui-input-inline">
-                        <input type="text" name="amount" lay-verify="required|number" placeholder="{:lang('pleaseEnter')}等级金额" class="layui-input">
-                    </div>
-                    <div class="layui-form-mid layui-word-aux">
-                        整数
-                    </div>
-                </div>
-
-                <div class="layui-form-item">
-                    <label class="layui-form-label">折扣</label>
-                    <div class="layui-input-inline">
-                        <input type="text" name="discount" value="100" placeholder="{:lang('pleaseEnter')}折扣"  class="layui-input">
-                    </div>
-                    <div class="layui-form-mid layui-word-aux">
-                        100 不打折,90 九折
-                    </div>
-                </div>
-
-                <div class="layui-form-item">
-                    <label class="layui-form-label">描述</label>
-                    <div class="layui-input-inline">
-                        <input type="text" name="description" value="" placeholder="{:lang('pleaseEnter')}描述"  class="layui-input">
-                    </div>
-                    <div class="layui-form-mid layui-word-aux">
-                        100 不打折,90 九折
-                    </div>
-                </div>
-
-
-                <div class="layui-form-item">
-                    <label class="layui-form-label">状态</label>
-                    <div class="layui-input-inline">
-                        <input type="radio" name="status" lay-filter="status" checked value="1" title="开启">
-                        <input type="radio" name="status" lay-filter="status" value="0" title="关闭">
-
-                    </div>
-
-                </div>
-
-                <div class="layui-form-item">
-                    <div class="layui-input-inline">
-                        <input type="hidden" name="id"  >
-                        <button type="button" class="layui-btn" lay-submit="" lay-filter="submit">{:lang('submit')}</button>
-                        <a href="{:url('levelIndex')}" class="layui-btn layui-btn-primary">{:lang('back')}</a>
-                    </div>
-                </div>
-            </form>
-        </div>
-
-    </div>
-</div>
-
-{include file="common/footer"/}
-<script>
-    layui.use(['form', 'layer','upload','laydate'], function () {
-        var form = layui.form,layer = layui.layer,$= layui.jquery,upload = layui.upload;
-        var info = '';
-
-        info = {:json_encode($info)};
-        form.val("form", info);
-        if(info){
-            $('#addPic').attr('src',info.avatar);
-        }
-        form.render();
-        form.on('submit(submit)', function (data) {
-            loading =layer.load(1, {shade: [0.1,'#fff']});
-            $.post("", data.field, function (res) {
-                layer.close(loading);
-                if (res.code > 0) {
-                    layer.msg(res.msg, {time: 1800, icon: 1}, function () {
-                        location.href = res.url;
-                    });
-                } else {
-                    layer.msg(res.msg, {time: 1800, icon: 2});
-                }
-            });
-        });
-
-    });
-</script>

+ 0 - 122
php/view/admin/wechat/level_index.html

@@ -1,122 +0,0 @@
-{include file="common/header"/}
-<div class="LM-container">
-    <div class="LM-main">
-        <fieldset class="layui-elem-field layui-field-title">
-            <legend>会员等级{:lang('list')}</legend>
-            <blockquote class="layui-elem-quote">
-                <div class="LM-table">
-                    <div class="layui-inline">
-                        <input type="text" id='keys' name="keys" lay-verify="required" placeholder="{:lang('pleaseEnter')}" autocomplete="off" class="layui-input">
-                    </div>
-                    <button class="layui-btn data-add-btn layui-btn-sm" lay-submit="" lay-filter="add" id="search">{:lang('search')}</button>
-
-                    <a href="{:url('levelAdd')}"  class="layui-btn layui-btn-sm layui-btn-warm" >{:lang('add')}会员等级</a>
-
-                </div>
-
-              </blockquote>
-
-        </fieldset>
-
-
-
-        <table class="layui-table" id="list" lay-filter="list"></table>
-    </div>
-</div>
-
-
-<script type="text/html" id="action">
-    <a href="{:url('levelEdit')}?id={{d.id}}" class="layui-btn  layui-btn-xs" lay-event="edit">{:lang('edit')}</a>
-    <a  class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del">{:lang('del')}</a>
-</script>
-<script type="text/html" id="status">
-    <input type="checkbox" name="status" value="{{d.id}}" lay-skin="switch" lay-text="开启|关闭" lay-filter="status" {{ d.status == 1 ? 'checked' : '' }}>
-</script>
-
-<script type="text/html" id="image">
-    {{d.ad_name}}<img src="/static/admin/images/image.gif" onmouseover="layer.tips('<img src={{d.ad_image}}>',this,{tips: [1, '#fff']});" onmouseout="layer.closeAll();">
-</script>
-
-<script type="text/html" id="create_time">
-    {{layui.util.toDateString(d.create_time*1000, 'yyyy-MM-dd HH:mm:ss')}}
-</script>
-
-{include file="common/footer"/}
-<script>
-    layui.use(['form', 'table'], function () {
-        var $ = layui.jquery,
-            form = layui.form,
-            table = layui.table;
-
-        var tableIn = table.render({
-            elem: '#list',
-            url: '{:url("levelIndex")}',
-            method: 'post',
-            cols: [[
-                {checkbox: true, fixed: true},
-                {field: 'id', title: 'ID', width: 80, fixed: true, sort: true},
-                {field: 'level_name', title: '名称', width: 120, },
-                {field: 'amount', title: '等级金额', width: 150},
-                {field: 'discount', title: '折扣', width: 80},
-                {field: 'description', title: '头街 描述', width: 150},
-
-                {field: 'status', title: '状态', width: 180, templet:'#status'},
-                {field: 'create_time', title: '添加时间', width: 180,templet:'#create_time'},
-                {field: 'update_time', title: '修改时间', width: 180,templet:'#update_time'},
-                {title:'操作',width:150, align:'center', toolbar: '#action'}
-
-            ]],
-
-            limits: [10, 15, 20, 25, 50, 100],
-            limit: 15,
-            page: true
-        });
-
-        table.on('tool(list)', function(obj){
-            var data = obj.data;
-            if(obj.event === 'del'){
-                layer.confirm('{:lang("Are you sure you want to delete it")}', function(index){
-                    loading =layer.load(1, {shade: [0.1,'#fff']});
-                    $.post("{:url('levelDel')}",{id:data.id},function(res){
-                        layer.close(loading);
-                        layer.close(index);
-                        if(res.code>0){
-                            layer.msg(res.msg,{time:1000,icon:1});
-                            obj.del();
-                        }else{
-                            layer.msg(res.msg,{time:1000,icon:2});
-                        }
-                    });
-                });
-            }
-
-
-        });
-
-        form.on('switch(status)', function(data){
-                loading =layer.load(1, {shade: [0.1,'#fff']});
-                $.post("{:url('levelState')}",{id:data.value},function(res){
-                    layer.close(loading);
-                    if(res.code>0){
-                        layer.msg(res.msg,{time:1000,icon:1});
-                    }else{
-                        layer.msg(res.msg,{time:1000,icon:2});
-                    }
-                });
-        });
-
-        $('#search').click(function () {
-            var $keys = $('#keys').val();
-            if(!$keys){
-                return layer.msg('请输入关键词');
-            }
-
-            tableIn.reload({ page: {page: 1},where: {keys: $keys}});
-
-        })
-
-
-    });
-
-
-</script>

+ 0 - 320
php/view/admin/wechat/material.html

@@ -1,320 +0,0 @@
-{include file="common/header"/}
-<link rel="stylesheet" href="/static/admin/css/material/material.css">
-
-<div class="LM-container">
-    <div class="LM-main">
-        <fieldset class="layui-elem-field layui-field-title">
-            <legend>{:lang('material')}{:lang('list')}</legend>
-            <blockquote class="layui-elem-quote">
-                <div class="LM-table">
-
-                    <a href="javascript:;"  class="layui-btn layui-btn-sm layui-btn-warm LM-add">{:lang('add')} {:lang('material')}</a>
-                    <a href="javascript:;"  class="layui-btn layui-btn-sm layui-btn-danger LM-aysn">{:lang('aysn')} {:lang('material')}</a>
-                </div>
-
-            </blockquote>
-
-        </fieldset>
-
-        <div class="layui-tab layui-tab-brief" lay-filter="docDemoTabBrief">
-            <ul class="layui-tab-title">
-                <li class="layui-this">图片</li>
-                <li>图文</li>
-                <li>视频</li>
-                <li>音频</li>
-            </ul>
-            <div class="layui-tab-content" style="padding: 15px;">
-                <div class="layui-tab-item  layui-show">
-                    <div class="layui-row">
-                        {volist name="materialGroup['image']" id="vo"}
-                        <div class="layui-col-md3">
-                            <div class="media-body">
-                                <div class="media-time">
-                                    发布时间:2019-08-12 : 10:38
-                                </div>
-                                <span style="display: block;">
-                                  <div class="media-content">
-                                        <div class="media-desc"><p class="media-desc-sp"></p></div>
-                                        <img class="media-img" width="100%" height="180"
-                                             src="{$vo.media_url}">
-                                  </div>
-                                 </span>
-                                <div>
-                                    <ul>
-                                    </ul>
-                                </div>
-                                <div class="media-item-type2">
-                                    <div class="layui-btn-group media-btn">
-                                        <button onclick="materialSend('{$vo.id}')"
-                                                class="layui-btn layui-btn-primary layui-btn-sm">
-                                            <i class="layui-icon"></i>群发
-                                        </button>
-                                        <button onclick="materialPreview('{$vo.id}')" class="layui-btn layui-btn-primary layui-btn-sm">
-                                            <i class="layui-icon"></i>预览
-                                        </button>
-                                        <a class="layui-btn layui-btn-primary layui-btn-sm" onclick="materialDel(this,'{$vo.id}')">
-                                            <i class="layui-icon layui-icon-delete"></i>删除
-                                        </a>
-                                    </div>
-                                </div>
-                            </div>
-
-                        </div>
-                        {/volist}
-                    </div>
-                </div>
-                <div class="layui-tab-item">
-                    <div class="layui-row">
-                        {volist name="materialGroup['news']" id="vo"}
-
-                        <div class="layui-col-md3">
-                            <div class="media-body">
-                                <div class="media-time">
-                                    发布时间 {$vo.create_time|date="Y-m-d H:i:s"}
-                                </div>
-                                <span style="display: block;">
-                                     <div class="media-content">
-                                         <div class="media-desc">
-                                             <p class="media-desc-sp">{if isset($vo['item_info'][0]['title'])}{$vo['item_info'][0]['title']}{/if}</p>
-                                         </div>
-                                            <img class="media-img"  src="{if isset($vo['item_info'][0]['cover'])}{$vo['item_info'][0]['cover']}{/if}">
-                                      </div>
-                                </span>
-<!--                                //多图文&ndash;&gt;-->
-                                {if count($vo['item_info'])>1}
-                                <div>
-                                    <ul>
-                                        {volist name="vo.item_info" id="v" offset='1' }
-                                        <li>
-                                            <div class="mdedia-lists-box">
-                                                <div class="media-title-box layui-col-md9 fl">
-                                                    {$v.title}
-                                                </div>
-                                                <div class="media-img-box layui-col-md3 fr">
-                                                    <img class="media-lists-img" src="{$v.cover}">
-                                                </div>
-                                            </div>
-                                        </li>
-                                        {/volist}
-                                    </ul>
-                                </div>
-                                {/if}
-                                <div class="media-item-type2">
-                                    <div class="layui-btn-group media-btn">
-                                        <button onclick="materialSend('{$vo.id}')" class="layui-btn layui-btn-primary layui-btn-sm">
-                                            <i class="layui-icon"></i>群发
-                                        </button>
-                                        <button onclick="materialPreview('{$vo.id}')" class="layui-btn layui-btn-primary layui-btn-sm">
-                                            <i class="layui-icon"></i>预览
-                                        </button>
-<!--                                        <button onclick="upload('{$vo.id}')" class="layui-btn layui-btn-primary layui-btn-sm">-->
-<!--                                            <i class="layui-icon"></i>上传-->
-<!--                                        </button>-->
-                                        <a class="layui-btn layui-btn-primary layui-btn-sm" onclick="materialEdit('{$vo.id}')">
-                                            <i class="layui-icon"></i>编&amp;删
-                                        </a>
-                                    </div>
-                                </div>
-                            </div>
-
-                        </div>
-
-                        {/volist}
-                    </div>
-                </div>
-                <div class="layui-tab-item">
-                    <div class="layui-row">
-                            {volist name="materialGroup['video']" id="vo"}
-                        <div class="layui-col-md3">
-                            <div class="media-body">
-                                <div class="media-time">
-                                    发布时间 {$vo.create_time|date="Y-m-d H:i:s"}
-                                </div>
-                                <span style="display: block;">
-                                     <div class="media-content">
-                                         <div class="media-desc">
-                                             <p class="media-desc-sp"></p>
-                                         </div>
-                                         <div  style="font-size: 50px;height: 180px;line-height:180px;text-align: center">
-                                             <i class="fa fa-play-circle-o"></i>
-                                         </div>
-                                      </div>
-                                </span>
-
-                                <div class="media-item-type2">
-                                    <div class="layui-btn-group media-btn">
-                                        <button onclick="materialSend('{$vo.id}')" class="layui-btn layui-btn-primary layui-btn-sm">
-                                            <i class="layui-icon"></i>群发
-                                        </button>
-                                        <button onclick="materialPreview('{$vo.id}')" class="layui-btn layui-btn-primary layui-btn-sm">
-                                            <i class="layui-icon"></i>预览
-                                        </button>
-                                        <!--                                        <button onclick="upload('{$vo.id}')" class="layui-btn layui-btn-primary layui-btn-sm">-->
-                                        <!--                                            <i class="layui-icon"></i>上传-->
-                                        <!--                                        </button>-->
-                                        <a class="layui-btn layui-btn-primary layui-btn-sm" onclick="materialDel(this,'{$vo.id}')">
-                                            <i class="layui-icon layui-icon-delete"></i>删除
-                                        </a>
-                                    </div>
-                                </div>
-                            </div>
-
-                        </div>
-                        {/volist}
-                    </div>
-                </div>
-                <div class="layui-tab-item">
-                    <div class="layui-row">
-                            {volist name="materialGroup['voice']" id="vo"}
-                        <div class="layui-col-md3">
-                            <div class="media-body">
-                                <div class="media-time">
-                                    发布时间 {$vo.create_time|date="Y-m-d H:i:s"}
-                                </div>
-                                <span style="display: block;">
-                                     <div class="media-content">
-                                         <div class="media-desc">
-                                             <p class="media-desc-sp"></p>
-                                         </div>
-                                         <audio class="media-img"  src="{$vo.media_url}"></audio>
-                                      </div>
-                                </span>
-                                <!--                                //多图文&ndash;&gt;-->
-
-                                <div class="media-item-type2">
-                                    <div class="layui-btn-group media-btn">
-                                        <button onclick="materialSend('{$vo.id}')" class="layui-btn layui-btn-primary layui-btn-sm">
-                                            <i class="layui-icon"></i>群发
-                                        </button>
-                                        <button onclick="materialPreview('{$vo.id}')" class="layui-btn layui-btn-primary layui-btn-sm">
-                                            <i class="layui-icon"></i>预览
-                                        </button>
-                                        <!--                                        <button onclick="upload('{$vo.id}')" class="layui-btn layui-btn-primary layui-btn-sm">-->
-                                        <!--                                            <i class="layui-icon"></i>上传-->
-                                        <!--                                        </button>-->
-                                        <a class="layui-btn layui-btn-primary layui-btn-sm" onclick="materialDel(this,'{$vo.id}')">
-                                            <i class="layui-icon layui-icon-delete"></i>删除
-                                        </a>
-                                    </div>
-                                </div>
-                            </div>
-
-                        </div>
-                        {/volist}
-                    </div>
-                </div>
-            </div>
-        </div>
-    </div>
-</div>
-
-
-{include file="common/footer"/}
-
-<script>
-    var $='';
-    var layer='';
-    layui.use(['form','layer','element'], function () {
-
-        var form = layui.form,
-        layer = layui.layer;
-        $ = layui.jquery;
-
-        $('.LM-add').click(function () {
-            var index = layer.open({
-                type: 2,
-                content: '{:url("materialAdd")}',
-                area: ['800px', '600px'],
-                anim: 2,
-                maxmin: true,
-            });
-            layer.full(index);
-        })
-
-        $('.LM-aysn').click(function () {
-            loading =layer.load(1, {shade: [0.1,'#fff']});
-            $.post("{:url('materialAysn')}",{},function(res){
-                layer.close(loading);
-                if(res.code>0){
-                    layer.msg(res.msg,{time:1000,icon:1});
-                    window.reload();
-                }else{
-                    layer.msg(res.msg,{time:1000,icon:2});
-                }
-
-            });
-        })
-
-    });
-    //预览
-    function materialPreview(id) {
-        //例子2
-        layer.prompt({
-            formType: 0,
-            value: 'yue909',
-            title: '请输入微信号',
-        }, function(value, index, elem){
-            loading =layer.load(1, {shade: [0.1,'#fff']});
-            $.post("{:url('materialPreview')}",{id:id,wxname:value},function(res){
-                layer.close(loading);
-                layer.close(index);
-                if(res.code>0){
-                    layer.msg(res.msg,{time:1000,icon:1});
-                    obj.del();
-                }else{
-                    layer.msg(res.msg,{time:1000,icon:2});
-                }
-            });
-            layer.close(index);
-        });
-
-
-    }
-    //群发
-    function materialSend(id) {
-
-        layer.confirm('{:lang("send all")}', function(index){
-            loading =layer.load(1, {shade: [0.1,'#fff']});
-            $.post("{:url('materialSend')}",{id:id},function(res){
-                layer.close(loading);
-                layer.close(index);
-                if(res.code>0){
-                    layer.msg(res.msg,{time:1000,icon:1});
-                    obj.del();
-                }else{
-                    layer.msg(res.msg,{time:1000,icon:2});
-                }
-            });
-        });
-
-
-    }
-    function materialDel(obj,id){
-        var _that = $(obj);
-        console.log(obj);
-        $.post('{:url("materialDel")}',{id:id},function(res){
-
-            if(res.code>0){
-                _that.parents().parents('.layui-col-md3').remove();
-                layer.msg(res.msg);
-
-            }else {
-                layer.msg(res.msg);
-            }
-
-        })
-    }
-
-    function materialEdit(id) {
-        var index = layer.open({
-            type: 2,
-            content: '{:url("materialEdit")}'+'?id='+id,
-            area: ['800px', '600px'],
-            anim: 2,
-            maxmin: true,
-        });
-        layer.full(index);
-
-    }
-
-</script>

+ 0 - 551
php/view/admin/wechat/material_add.html

@@ -1,551 +0,0 @@
-{include file="common/header"/}
-<link rel="stylesheet" href="/static/admin/css/material/material.css">
-<div class="LM-container">
-    <div class="LM-main">
-        <div class="layui-tab layui-tab-brief" lay-filter="docDemoTabBrief">
-            <ul class="layui-tab-title">
-                <li class="layui-this">图文</li>
-                <li >图片</li>
-                <li>视频</li>
-                <li>音频</li>
-            </ul>
-            <div class="layui-tab-content" style="padding: 15px;">
-                <div class="layui-tab-item layui-show">
-                    <form action="" class="layui-form" lay-filter="form">
-                    <div class="media" style="">
-                        <div class="media-left">
-                            {if $info}
-                            <div class="media-border-title js-action action" onmouseover="show(this)" onmouseout="hide(this)" onclick="edit(this,0)">
-                                <div style="position: relative;text-align:center;">
-                                    <img class="type-img-0" src="{$info[0]['cover']}" style="max-width:275px;max-height:150px;">
-<!--                                    <span class="img-text">封面图片</span>-->
-                                    <h5 class="type-title-0" style="position: absolute; bottom: 0; width: 100%; background: #000; opacity:0.5; color: #fff; margin: 0; padding: 5px 0;text-align:left;">{$info[0]['title']}</h5>
-                                </div>
-                                <div class="actions" style="display: none;"><span class="edit">编辑</span></div>
-                                <span class="editting">编辑中</span>
-                                <input type="hidden" name="hidden0" id="title0" value="{$info[0]['title']}">
-                                <input type="hidden" name="hidden0" id="author0" value="{$info[0]['author']}">
-                                <input type="hidden" name="hidden0" id="show_cover0" value="{$info[0]['show_cover']}">
-                                <input type="hidden" name="hidden0" id="content_source_url0" value="{$info[0]['content_source_url']}">
-                                <input type="hidden" name="hidden0" id="cover0" value="{$info[0]['thumb_media_id']}">
-                                <input type="hidden" name="hidden0" id="need_open_comment0" value="{$info[0]['need_open_comment']}">
-                                <input type="hidden" name="hidden0" id="only_fans_can_comment0" value="{$info[0]['only_fans_can_comment']}">
-                                <input type="hidden" name="hidden0" id="digest0" value="{$info[0]['digest']}">
-                                <input type="hidden" name="hidden0" id="content0" value="{$info[0]['content']}">
-                            </div>
-                            {else /}
-                            <div class="media-border-title js-action action" onmouseover="show(this)" onmouseout="hide(this)" onclick="edit(this, 0)">
-                                <div style="position: relative;text-align:center;">
-                                    <img class="type-img-0" src="" style="max-width:275px;max-height:150px;display:none;">
-                                    <span class="img-text">封面图片</span>
-                                    <h5 class="type-title-0" style="position: absolute; bottom: 0; width: 100%; background: #000; opacity:0.5; color: #fff; margin: 0; padding: 5px 0;text-align:left;">标题</h5>
-                                </div>
-                                <div class="actions" style="display: none;"><span class="edit">编辑</span></div>
-                                <span class="editting">编辑中</span>
-                                <input type="hidden" name="hidden0" id="title0" value="">
-                                <input type="hidden" name="hidden0" id="author0" value="">
-                                <input type="hidden" name="hidden0" id="show_cover0" value="1">
-                                <input type="hidden" name="hidden0" id="content_source_url0" value="">
-                                <input type="hidden" name="hidden0" id="cover0" value="">
-                                <input type="hidden" name="hidden0" id="need_open_comment0" value="1">
-                                <input type="hidden" name="hidden0" id="only_fans_can_comment0" value="0">
-                                <input type="hidden" name="hidden0" id="digest0" value="">
-                                <input type="hidden" name="hidden0" id="content0" value="">
-                            </div>
-                            {/if}
-                            {if count($info)>1}
-                            {volist name="info" id='vo' key='k' offset='1'}
-                            <div class="media-body js-action" onmouseover="show(this)" onmouseout="hide(this)"
-                                 onclick="edit(this, {$k})"><p class="type-title-1">{$vo.title}</p>
-                                <div class="media-body-div"><img class="type-img-1" src="{$vo.cover}"
-                                                                 style="max-width:62px;max-height:62px;"></div>
-                                <div class="actions" style="display: none;"><span class="edit">编辑</span></div>
-                                <span class="editting">编辑中</span>
-                                <input type="hidden" name="hidden1" id="title{$k}" value="{$vo.title}">
-                                <input type="hidden" name="hidden1"  id="author{$k}" value="{$vo.author}">
-                                <input type="hidden" name="hidden1" id="show_cover{$k}" value="{$vo.show_cover}">
-                                <input type="hidden"  name="hidden1"  id="content_source_url{$k}" value="{$vo.content_source_url}">
-                                <input type="hidden" name="hidden1" id="cover{$k}" value="{$vo.thumb_media_id}">
-                                <input type="hidden"  name="hidden1" id="need_open_comment{$k}" value="{$vo.need_open_comment}">
-                                <input type="hidden" name="hidden1" id="only_fans_can_comment{$k}" value="{$vo.only_fans_can_comment}">
-                                <input type="hidden" name="hidden1" id="digest{$k}" value="{$vo.digest}">
-                                <input type="hidden"  name="hidden1" id="content{$k}"  value="{$vo.content}"></div>
-                            {/volist}
-                            {/if}
-                            <div class="media-body">
-                                        <span class="media-plus">
-                                            <a href="javascript:;"><i class="layui-icon "></i></a>
-                                        </span>
-                            </div>
-
-
-                        </div>
-
-                        <div class="media-right" id="dir" dir="0" style="">
-                            <div class="layui-form-item">
-                                <label class="layui-form-label"><span style="color:red;"> * </span> 标题</label>
-                                <div class="layui-input-block">
-                                    <input type="text" id="form_title" class="layui-input" onchange="changeElement('title')">
-                                </div>
-                            </div>
-
-                            <div class="layui-form-item">
-                                <label class="layui-form-label">作者</label>
-                                <div class="layui-input-block">
-                                    <input type="text" name="author" id="form_author" class="layui-input" onchange="changeElement('author')">
-                                </div>
-                            </div>
-
-                            <div class="layui-form-item">
-                                <label class="layui-form-label">是否显示封面</label>
-                                <div class="layui-input-block">
-                                    <input type="radio" lay-filter="radio" lay-skin="primary" name="show_cover" class="show_cover"  value="0" title="不打开">
-                                    <input type="radio" lay-filter="radio" lay-skin="primary" name="show_cover" class="show_cover"  value="1" title="打开" checked>
-                                </div>
-                            </div>
-                            <div class="layui-form-item">
-                                <label class="layui-form-label">原文链接</label>
-                                <div class="layui-input-block">
-                                    <input type="text" name="content_source_url" id="form_content_source_url" class="layui-input" onchange="changeElement('content_source_url')">
-                                </div>
-                            </div>
-                            <div class="layui-form-item">
-                                <label class="layui-form-label"><span style="color:red;"> * </span>封面</label>
-                                <div class="layui-upload-drag" id="coverUpload">
-                                    <i class="layui-icon"><img id="coverImage" width="260px" height="126px" alt="" src=""></i>
-                                    <input type="hidden" name="cover" id="cover">
-                                    <p>点击上传,或将文件拖拽到此处</p>
-                                </div>
-                            </div>
-
-                            <div class="layui-form-item">
-                                <label class="layui-form-label">打开评论</label>
-                                <div class="layui-input-block">
-                                    <input type="radio" lay-filter="radio" lay-skin="primary" name="need_open_comment" class="need_open_comment"  value="0" title="不打开">
-                                    <input type="radio" lay-filter="radio" lay-skin="primary" name="need_open_comment" class="need_open_comment"  value="1" title="打开" checked>
-                                </div>
-                            </div>
-                            <div class="layui-form-item">
-                                <label class="layui-form-label">仅粉丝评论</label>
-
-                                <div class="layui-input-block">
-                                    <input type="radio" lay-filter="radio" lay-skin="primary" name="only_fans_can_comment" class="only_fans_can_comment"  value="0" title="所有人评论" checked>
-                                    <input type="radio" lay-filter="radio" lay-skin="primary" name="only_fans_can_comment" class="only_fans_can_comment"  value="1" title="粉丝评论">
-                                </div>
-                            </div>
-
-                            <div class="layui-form-item layui-form-text">
-                                <label class="layui-form-label"><span style="color:red;"> *</span> 摘要</label>
-                                <div class="layui-input-block">
-                                    <textarea id="form_digest" name="digest" class="layui-textarea" onchange="changeElement('digest')"></textarea>
-                                </div>
-                            </div>
-                            <div class="layui-form-item layui-form-text" style="">
-                                <label class="layui-form-label"><span style="color:red;"> *</span> 正文</label>
-                                <div class="layui-input-block" style="">
-                                    <script id="container" name="content" type="text/plain"></script>
-                                </div>
-                            </div>
-                            <div class="layui-form-item">
-                                <div class="layui-input-block">
-                                    <button type="button" class="layui-btn" onclick="save();">立即提交</button>
-                                    {if $info}
-                                    <button type="button" class="layui-btn layui-btn-danger" onclick="materialDel(this,{$info[0]['material_id']})">删除素材</button>
-                                    {/if}
-                                </div>
-                            </div>
-
-
-                        </div>
-                    </div>
-                    </form>
-                </div>
-
-                <div class="layui-tab-item">
-                    <label class="layui-form-label">上传图片</label>
-
-                    <div class="layui-upload-drag" id="imageUpload">
-                        <i class="layui-icon"></i>
-                        <p>点击上传,或将文件拖拽到此处</p>
-                    </div>
-                </div>
-                <div class="layui-tab-item">
-                    <form action="" class="layui-form">
-                        <div class="layui-form-item">
-                            <label class="layui-form-label">视频标题</label>
-                            <div class="layui-input-block">
-                                <input type="text" name="file_name" lay-verify="required" lay-reqtext="视频标题,岂能为空?" placeholder="请输入" autocomplete="off" class="layui-input">
-                            </div>
-                        </div>
-                        <div class="layui-form-item">
-                            <label class="layui-form-label">视频描述</label>
-                            <div class="layui-input-block">
-                                <input type="text" name="des" lay-verify="required" lay-reqtext="视频描述,岂能为空?" placeholder="请输入" autocomplete="off" class="layui-input">
-                            </div>
-                        </div>
-
-                        <label class="layui-form-label">上传视频</label>
-
-                        <div class="layui-upload-drag" id="videoUpload">
-
-                            <input type="hidden" class="" name="url" value="" lay-verify="required" lay-reqtext="视频,岂能为空?">
-                            <i class="layui-icon">
-                                <video src="" width="400" height="200"></video></i>
-                            <p>点击上传,或将文件拖拽到此处</p>
-                        </div>
-
-                        <div class="layui-input-block">
-                            <button type="submit" class="layui-btn" lay-submit="" lay-filter="video">立即提交</button>
-                        </div>
-
-                    </form>
-
-                </div>
-                <div class="layui-tab-item">
-                    <label class="layui-form-label">上传音频</label>
-
-                    <div class="layui-upload-drag" id="voiceUpload">
-                        <i class="layui-icon"></i>
-                        <p>点击上传,或将文件拖拽到此处</p>
-                    </div>
-                </div>
-            </div>
-        </div>
-    </div>
-</div>
-
-
-{include file="common/footer"/}
-<script src="/static/plugins/jquery-3.4.1/jquery-3.4.1.min.js"></script>
-{$ueditor|raw};
-
-<script>
-    var form ='';
-    var info = {:json_encode($info)};
-
-    layui.use(['layer','element','form','upload'],function(){
-        var element = layui.element,layer= layui.layer, upload = layui.upload,$ = layui.jquery;
-        form=layui.form;
-        UE.Editor.prototype._bkGetActionUrl = UE.Editor.prototype.getActionUrl;
-        UE.Editor.prototype.getActionUrl = function (action) {
-            if (action == 'uploadimage' || action == 'uploadscrawl' || action == 'uploadimage') {
-                return '{:url("UeditUploadImage")}';
-            } else if (action == 'uploadvideo') {
-                return '{:url("UeditUploadVideo")}';
-            }else if(action == 'uploadvoice'){
-                return '{:url("UeditUploaVoice")}';
-            }else if (action == 'listimage') {
-                return '{:url("getListImage")}';
-            } else {
-                return this._bkGetActionUrl.call(this, action);
-            }
-        };
-        UE.getEditor('container').addListener("selectionchange", function () {
-            changeElement('content');
-        });
-        var ue = UE.getEditor('container', {scaleEnabled: false});
-
-        //设定文件大小限制
-        upload.render({
-            elem: '#coverUpload'
-            ,url: "{:url('imageUpload')}"
-            ,size: 2048 //限制文件大小,单位 KB
-            ,done: function(res){
-                if(res.code>0){
-                    var dir = $("#dir").attr('dir');
-                    console.log(dir);
-                    $('#coverUpload').find('img').attr('src',res.data.url);
-                    $(".type-img-"+ dir).attr('src',res.data.url).show();
-
-                    $(".type-img-"+ dir).next().hide();
-                    $("#cover"+ dir).val(res.data.media_id);
-                    layer.msg(res.msg);
-
-                }else{
-
-                    layer.msg(res.msg);
-                }
-            }
-        });
-
-        //设定图片大小限制
-        upload.render({
-            elem: '#imageUpload'
-            ,url: "{:url('imageUpload')}"
-            ,size: 2048 //限制文件大小,单位 KB
-            ,done: function(res){
-
-            }
-        });
-        //设定视频大小限制
-        upload.render({
-            elem: '#videoUpload'
-            ,url: "{:url('uploads/videoUploads')}"
-            ,accept: 'video' //视频
-            ,size: 10240 //限制文件大小,单位 KB
-            ,done: function(res){
-                if(res.code>0){
-                    $('#videoUpload').find('input').val(res.url);
-                    $('#videoUpload').find('input').val(res.url);
-                    $('#videoUpload').find('video').attr('src',res.url);
-                    layer.msg(res.msg);
-                }else{
-                    layer.msg(res.msg);
-                }
-                
-            }
-        });
-
-        //设定音频大小限制
-        upload.render({
-            elem: '#voiceUpload'
-            ,url: "{:url('voiceUpload')}"
-            ,accept: 'audio' //音频
-            ,size: 2048 //限制文件大小,单位 KB
-            ,done: function(res){
-                if(res.code>0){
-
-                    layer.msg(res.msg);
-
-                }else{
-
-                    layer.msg(res.msg);
-                }
-            }
-        });
-
-        form.on('submit(video)',function (data) {
-
-            $.post('{:url("videoUpload")}',data.field,function (res) {
-                if(res.code>0){
-                    layer.msg('上传成功');
-                }else {
-
-                    layer.msg('上传失败');
-                }
-            });
-            return false;
-        });
-
-        $(".media-plus").click(function () {
-            var num = $(this).parents(".media-left").find(
-                ".media-body").length;
-            if (num > 7) {
-                showMessage('error', '最多只可以加入8条图文消息。');
-                return false;
-            }
-            if(info.length>0){
-                htmlEdit = '';
-
-            }else{
-                htmlEdit = '<span class="del" onclick="removeMedia(this)">删除</span>';
-
-            }
-            var html = '';
-            html += '<div class="media-body js-action" onmouseover="show(this)" onmouseout="hide(this)" onclick="edit(this, ' + num + ')">';
-            html += '<p class="type-title-' + num + '">标题</p><div class="media-body-div"><img class="type-img-' + num + '" src="" style="max-width:62px;max-height:62px;display:none;"><span class="img-text">缩略图</span></div>';
-            html += '<div class="actions"><span class="edit">编辑</span>'+htmlEdit+'</div>';
-            html += '<span class="editting">编辑中</span>';
-            html += '<input type="hidden" name="hidden' + num + '" id="title' + num + '" value="">';
-            html += '<input type="hidden" name="hidden' + num + '" id="author' + num + '" value="">';
-            html += '<input type="hidden" name="hidden' + num + '" id="show_cover' + num + '" value="1">';
-            html += '<input type="hidden" name="hidden' + num + '" id="content_source_url' + num + '" value="">';
-            html += '<input type="hidden" name="hidden' + num + '" id="cover' + num + '" value="">';
-            html += '<input type="hidden" name="hidden' + num + '" id="need_open_comment' + num + '" value="1">';
-            html += '<input type="hidden" name="hidden' + num + '" id="only_fans_can_comment' + num + '" value="0">';
-            html += '<input type="hidden" name="hidden' + num + '" id="digest' + num + '" value="">';
-            html += '<input type="hidden" name="hidden' + num + '" id="content' + num + '" value="">';
-            html += '</div>';
-            $(this).parents(".media-left").find(".media-body").eq(num -1).before(html);
-        });
-
-
-        $("#title").change(function () {
-            if ($(this).val() == '') {
-                $(this).parents(".media").find("h5.type-title").html('标题');
-            } else {
-                $(this).parents(".media").find("h5.type-title").html($(this).val());
-            }
-        });
-
-
-        //单选按钮
-        form.on('radio(radio)',function (data) {
-            var dir = $("#dir").attr('dir');
-            var name = $(this).attr('class');
-            console.log(name);
-            console.log(name);
-            $("#" + name + dir).val($(this).val());
-        })
-    });
-
-
-    function changeElement(name) {
-        var dir = $("#dir").attr('dir');
-        if (name == 'content') {
-            var content = UE.getEditor('container').getContent();
-            $("#" + name + dir).val(content);
-        } else {
-            $("#" + name + dir).val($("#form_" + name).val());
-        }
-        if (name == 'title') {
-            if ($("#form_" + name).val() == '') {
-                $(".type-title-" + dir).html('标题');
-            } else {
-                $(".type-title-" + dir).html($("#form_" + name).val());
-            }
-        }
-    }
-
-    //切换编辑
-    function edit(event, num) {
-        $(".js-action").removeClass('action');
-        $(event).addClass('action');
-        $("#dir").attr('dir', num);
-        var title = $("#title" + num).val();
-        var author = $("#author" + num).val();
-        var cover = $(".type-img-" + num).attr('src');
-        var need_open_comment = $("#need_open_comment" + num).val();
-        var only_fans_can_comment = $("#only_fans_can_comment" + num).val();
-        var digest = $("#digest" + num).val();
-        var content = $("#content" + num).val();
-        var content_source_url = $("#content_source_url" + num).val();
-        $("#form_title").val(title);
-        $("#form_author").val(author);
-        $("#imgLogo1").attr('src', '');
-
-        if (cover != "") {
-            $("#coverImage").attr('src', cover);
-        }else{
-            $("#coverImage").attr('src', '');
-
-        }
-        obj = {need_open_comment:need_open_comment,only_fans_can_comment:only_fans_can_comment,digest:digest};
-        form.val("form", obj);
-        UE.getEditor('container').setContent(content);
-        $("#form_content_source_url").val(content_source_url);
-    }
-
-    function save() {
-        var contents = {};
-        var num = $(".js-action").length;
-        var flag = true;
-        for (var i = 0; i < num; i++) {
-
-            $("input[name='hidden" + i + "']").each(function (index) {
-                if ($("input[name='hidden" + i + "']").eq(0).val() == "") {
-                    showMessage('error', '第' + (i + 1) + '篇文章的标题不能为空');
-                    flag = false;
-                    return false;
-                } else if ($("input[name='hidden" + i + "']").eq(4).val() == "") {
-                    showMessage('error', '第' + (i + 1) + '篇文章的封面图片不能为空');
-                    flag = false;
-                    return false;
-                }
-                else if ($("input[name='hidden" + i + "']").eq(7).val() == "") {
-                    showMessage('error', '第' + (i + 1) + '篇文章的摘要不能为空');
-                    flag = false;
-                    return false;
-                } else if ($("input[name='hidden" + i + "']").eq(8).val() == "") {
-                    showMessage('error', '第' + (i + 1) + '篇文章的正文不能为空');
-                    flag = false;
-                    return false;
-                } else {
-
-                }
-            });
-            var title =  $("input[name='hidden" + i + "']").eq(0).val();
-            var author =  $("input[name='hidden" + i + "']").eq(1).val();
-            var show_cover =  $("input[name='hidden" + i + "']").eq(2).val();
-            var content_source_url =  $("input[name='hidden" + i + "']").eq(3).val();
-            var thumb_media_id =  $("input[name='hidden" + i + "']").eq(4).val();
-            var need_open_comment =  $("input[name='hidden" + i + "']").eq(5).val();
-            var only_fans_can_comment =  $("input[name='hidden" + i + "']").eq(6).val();
-            var digest =  $("input[name='hidden" + i + "']").eq(7).val();
-            var content =  $("input[name='hidden" + i + "']").eq(8).val();
-
-            contents[i] = {title:title,author:author,show_cover:show_cover,content_source_url:content_source_url
-                    ,thumb_media_id:thumb_media_id,need_open_comment:need_open_comment,only_fans_can_comment:only_fans_can_comment,
-                    digest:digest,content:content};
-
-
-        }
-        if (flag == false) {
-
-            return false;
-        }
-        var load;
-        if(info.length>0){
-            url = "{:url('materialEdit')}";
-            mediaId = info[0]['material_id']
-        }else{
-            url = "{:url('materialAdd')}"
-            mediaId = '';
-        }
-        $.ajax({
-            type: "post",
-            url: url,
-            async: true,
-            data: {
-                'mediaId':mediaId,"content": contents
-            },
-            success: function (res) {
-                layer.close(load);
-                if (res.code > 0) {
-                    layer.msg(res.msg, {time: 2000}, function () {
-                        // layer.closeAll("iframe");
-                        //刷新父页面
-                        // parent.location.reload();
-                    });
-                } else
-                {
-                    layer.alert(res.msg)
-                    return false;
-                }
-            }, beforeSend: function (res) {
-                load = layer.load(1);
-                return load;
-            }, error: function (res) {
-                layer.close(load);
-            }
-        });
-    }
-
-
-    function showMessage(type, msg, url) {
-        layer.alert(msg);
-        return false;
-    }
-    function removeMedia(obj) {
-        $(obj).parents(".media-body").remove();
-    }
-
-    function show(obj) {
-        $(obj).children('.actions').show();
-    }
-
-    function hide(obj) {
-        $(obj).children('.actions').hide();
-    }
-
-    function materialDel(obj,id) {
-        layer.confirm('{:lang("Are you sure you want to delete it")}', function(index){
-            loading =layer.load(1, {shade: [0.1,'#fff']});
-            $.post("{:url('materialDel')}",{id:id},function(res){
-                layer.close(loading);
-                layer.close(index);
-                if(res.code>0){
-                    layer.msg(res.msg,{time:1000,icon:1});
-                    obj.del();
-                }else{
-                    layer.msg(res.msg,{time:1000,icon:2});
-                }
-            });
-        });
-
-    }
-
-
-
-
-</script>

+ 0 - 252
php/view/admin/wechat/menu.html

@@ -1,252 +0,0 @@
-
-{include file="common/header"/}
-
-<link rel="stylesheet" href="/static/plugins/bootstrap-3.3.7/css/bootstrap.css">
-<link rel="stylesheet" type="text/css" href="/static/admin/css/menu/wx-audiocopy.css">
-<link rel="stylesheet" type="text/css" href="/static/admin/css/menu/selfmenu.css?v={:time()}">
-<link rel="stylesheet" type="text/css" href="/static/admin/css/menu/bottom.css">
-<link rel="stylesheet" type="text/css" href="/static/admin/css/menu/scroll.css">
-<link rel="stylesheet" type="text/css" href="/static/admin/css/menu/weui.min.css">
-<!-- 自定义样式 -->
-<link rel="stylesheet" href="/static/admin/css/menu/wx-custom.css?v={:time()}">
-
-<div class="LM-container">
-    <div class="LM-main">
-    <div class="custom-menu-edit-con">
-        <div  class="form-group placeholders" style="width: 40%; float:left ">
-      自定义菜单:
-
-        </div>
-        <div  class="form-group placeholders" style="width: 40%; float:right ">
-            <label class="control-label col-xs-3 col-sm-3 col-md-3 no-padding-right phonelabel" for="appIdcode">服务号:</label>
-            <div class="col-xs-8 col-sm-8 col-md-8 placeholder input-group input-group-sm">
-                <select id='appIdcode' class='form-control' name="appIdcode"></select>
-            </div>
-        </div>
-        <div class="hbox">
-            <div class="inner-left">
-                <div class="custom-menu-view-con">
-                    <div class="custom-menu-view">
-                        <div class="custom-menu-view__title">公众号名称</div>
-                        <div class="custom-menu-view__body">
-                            <div class="weixin-msg-list"><ul class="msg-con"></ul></div>
-                        </div>
-                        <div id="menuMain" class="custom-menu-view__footer">
-                            <div class="custom-menu-view__footer__left"></div>
-                            <div class="custom-menu-view__footer__right" ></div>
-                        </div>
-                    </div>
-                </div>
-            </div>
-            <div class="inner-right">
-                <div class="cm-edit-after">
-                    <div class="cm-edit-right-header b-b"><span id="cm-tit"></span> <a id="delMenu" class="pull-right" href="javascript:;">删除菜单</a></div>
-                    <form class="form-horizontal wrapper-md" name="custom_form">
-                        <div class="form-group">
-                            <label class="col-sm-2 control-label">菜单名称:</label><div class="col-sm-5">
-                            <input name="custom_input_title" type="text" class="form-control" ng-model="menuname" value="" placeholder="" ng-maxlength="5"></div><div class="col-sm-5 help-block">
-                            <div ng-show="custom_form.custom_input_title.$dirty&&custom_form.custom_input_title.$invalid-maxlength">字数不超过5个汉字或16个字符</div>
-                            <div class="font_sml" style="display: block;">若无二级菜单,可输入20个汉字或60个字符</div>
-                        </div>
-                        </div>
-                        <div class="form-group" id="radioGroup">
-                            <label class="col-sm-2 control-label">菜单内容:</label>
-                            <div class="col-sm-10 LebelRadio">
-                                <label class="checkbox-inline"><input type="radio" name="radioBtn" value="sendmsg" checked> 发送消息</label>
-                                <label class="checkbox-inline"><input type="radio" name="radioBtn" value="link"> 跳转网页</label>
-                            </div>
-                        </div>
-                    </form>
-                    <div class="cm-edit-content-con" id="editMsg">
-                        <div class="editTab">
-                            <div class="editTab-heading">
-                                <ul id="clickUl" class="msg-panel__tab">
-                                    <li id="imgtextLi" class="msg-tab_item on" onclick="imageText()">
-                                        <span class="msg-icon msg-icon-tuwen"></span>
-                                        图文消息
-                                    </li>
-                                    <li id="imgLi" class="msg-tab_item" onclick="picture()">
-                                        <span class="msg-icon msg-icon-pic"></span>
-                                        图片
-                                    </li>
-                                    <li id="voice" class="msg-tab_item" onclick="voice()">
-                                        <span class="msg-icon msg-icon-audio"></span>
-                                        语音
-                                    </li>
-                                    <li id="video" class="msg-tab_item" onclick="video1()">
-                                        <span class="msg-icon msg-icon-video"></span>
-                                        视频
-                                    </li>
-                                </ul>
-                            </div>
-                            <div class="editTab-body">
-                                <div class="msg-panel__context">
-                                    <div class="msg-context__item">
-                                        <div class="msg-panel__center msg-panel_select"  data-toggle="modal" data-target="#selectModal"><span class="message-plus">+</span><br>从素材库中选择</div>
-                                    </div>
-                                    <div class="msg-context__item">
-                                        <a href="javascript:;" class="msg-panel-add msg-panel__center msg-panel_select"  ><span class="message-plus">+</span><br>新建素材</a>
-                                    </div>
-                                    <div class="msg-template"></div>
-                                </div>
-                            </div>
-                        </div>
-                    </div>
-                    <div class="cm-edit-content-con" id="editPage">
-                        <div class="cm-edit-page">
-                            <div class="row">
-                                <label class="col-sm-6 control-label" style="text-align: left;">粉丝点击该菜单会跳转到以下链接:
-                                </label>
-                            </div>
-                            <div class="row">
-                                <label class="col-sm-2 control-label" style="text-align: left;">页面地址:
-                                </label>
-                                <div class="col-sm-5">
-                                    <input type="text" name="url" class="form-control" placeholder="认证号才可手动输入地址">
-                                    <span class="help-block">必填,必须是正确的URL格式</span>
-                                </div>
-                            </div>
-                        </div>
-                    </div>
-                </div>
-                <div class="cm-edit-before"><h5>点击左侧菜单进行操作</h5></div>
-            </div>
-        </div>
-    </div>
-    <div class="edit-footer">
-        <button id="saveBtns" type="button" class="layui-btn layui-btn-sm">保存</button>
-        <button id="synchroBtns" type="button" class="layui-btn layui-btn-sm">同步</button>
-        <button id="showPhone"  type="button" class="layui-btn layui-btn-sm">预览</button>
-        <button id="deleteMenu"  type="button" class="layui-btn layui-btn-sm" onclick="deleteMenu()">清空菜单</button>
-    </div>
-
-
-
-
-
-
-<div id="selectModal" class="modal fade" tabindex="-1" role="dialog">
-    <div class="modal-dialog modal-lg">
-        <div class="modal-content">
-            <div class="modal-header">
-                <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span>×</span></button>
-                <h4 class="modal-title modal-title1">
-                    选择
-                </h4>
-            </div>
-            <div class="modal-body">
-                <div id='imgTextAdd' class="row">
-
-                </div>
-            </div>
-            <div class="modal-footer">
-                <button type="button" class="layui-btn layui-btn-sm ensure">确定</button>
-                <button type="button" class="layui-btn layui-btn-sm" data-dismiss="modal">取消</button>
-            </div>
-        </div>
-    </div>
-</div>
-
-
-<div id="abnormalModal" class="modal fade" tabindex="-1" role="dialog">
-    <div class="modal-dialog">
-        <div class="modal-content">
-            <div class="modal-header">
-                <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span>×</span></button>
-                <h4 class="modal-title">
-                    温馨提示
-                </h4>
-            </div>
-            <div class="modal-body">
-                <h5>数据异常</h5>
-            </div>
-            <div class="modal-footer">
-                <!-- <button type="button" class="btn btn-info reminder">确定</button> -->
-                <button type="button" class="btn btn-default" data-dismiss="modal">取消</button>
-            </div>
-        </div>
-    </div>
-</div>
-
-<div class="mobile_preview" id="mobileDiv" style="display: none;">
-    <div class="mobile_preview_hd">
-        <strong class="nickname"></strong>
-    </div>
-    <div class="mobile_preview_bd">
-        <ul id="viewShow" class="show_list"></ul>
-    </div>
-    <div class="mobile_preview_ft">
-        <ul class="pre_menu_list grid_line" id="viewList">
-
-        </ul>
-    </div>
-    <div class="moblie_preview_weapp js_preview_weapp_wrapper" style="display: none">
-        <div class="weapp_hd">
-            <i class="icon_back_weapp js_preview_weapp_close">返回</i>
-            <p class="weapp_title js_preview_weapp_title"></p>
-        </div>
-        <div class="preview_extra">电脑端暂不支持预览小程序</div>
-    </div>
-    <a href="javascript:void(0);" class="mobile_preview_closed btn btn_default" id="viewClose">退出预览</a>
-</div>
-<!--背景半透明-->
-<div class="mask" style="display:none;">
-    <div style="position: relative; left: 957px; top: 468px;">
-        <div style="position: absolute; top: -2px; transform: translate3d(0px, 0px, 0px); animation: 1s linear -1s infinite normal none running opacity-100-25;">
-            <div style="position: absolute; width: 12px; height: 5px; background: rgb(53, 53, 53); box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 1px; transform-origin: left center; transform: rotate(0deg) translate(10px, 0px); border-radius: 100em;"></div>
-        </div>
-        <div style="position: absolute; top: -2px; transform: translate3d(0px, 0px, 0px); animation: 1s linear -0.916667s infinite normal none running opacity-100-25;">
-            <div style="position: absolute; width: 12px; height: 5px; background: rgb(53, 53, 53); box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 1px; transform-origin: left center; transform: rotate(30deg) translate(10px, 0px); border-radius: 100em;"></div>
-        </div>
-        <div style="position: absolute; top: -2px; transform: translate3d(0px, 0px, 0px); animation: 1s linear -0.833333s infinite normal none running opacity-100-25;">
-            <div style="position: absolute; width: 12px; height: 5px; background: rgb(53, 53, 53); box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 1px; transform-origin: left center; transform: rotate(60deg) translate(10px, 0px); border-radius: 100em;"></div>
-        </div>
-        <div style="position: absolute; top: -2px; transform: translate3d(0px, 0px, 0px); animation: 1s linear -0.75s infinite normal none running opacity-100-25;">
-            <div style="position: absolute; width: 12px; height: 5px; background: rgb(53, 53, 53); box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 1px; transform-origin: left center; transform: rotate(90deg) translate(10px, 0px); border-radius: 100em;"></div>
-        </div>
-        <div style="position: absolute; top: -2px; transform: translate3d(0px, 0px, 0px); animation: 1s linear -0.666667s infinite normal none running opacity-100-25;">
-            <div style="position: absolute; width: 12px; height: 5px; background: rgb(53, 53, 53); box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 1px; transform-origin: left center; transform: rotate(120deg) translate(10px, 0px); border-radius: 100em;"></div>
-        </div>
-        <div style="position: absolute; top: -2px; transform: translate3d(0px, 0px, 0px); animation: 1s linear -0.583333s infinite normal none running opacity-100-25;">
-            <div style="position: absolute; width: 12px; height: 5px; background: rgb(53, 53, 53); box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 1px; transform-origin: left center; transform: rotate(150deg) translate(10px, 0px); border-radius: 100em;"></div>
-        </div>
-        <div style="position: absolute; top: -2px; transform: translate3d(0px, 0px, 0px); animation: 1s linear -0.5s infinite normal none running opacity-100-25;">
-            <div style="position: absolute; width: 12px; height: 5px; background: rgb(53, 53, 53); box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 1px; transform-origin: left center; transform: rotate(180deg) translate(10px, 0px); border-radius: 100em;"></div>
-        </div>
-        <div style="position: absolute; top: -2px; transform: translate3d(0px, 0px, 0px); animation: 1s linear -0.416667s infinite normal none running opacity-100-25;">
-            <div style="position: absolute; width: 12px; height: 5px; background: rgb(53, 53, 53); box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 1px; transform-origin: left center; transform: rotate(210deg) translate(10px, 0px); border-radius: 100em;"></div>
-        </div>
-        <div style="position: absolute; top: -2px; transform: translate3d(0px, 0px, 0px); animation: 1s linear -0.333333s infinite normal none running opacity-100-25;">
-            <div style="position: absolute; width: 12px; height: 5px; background: rgb(53, 53, 53); box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 1px; transform-origin: left center; transform: rotate(240deg) translate(10px, 0px); border-radius: 100em;"></div>
-        </div>
-        <div style="position: absolute; top: -2px; transform: translate3d(0px, 0px, 0px); animation: 1s linear -0.25s infinite normal none running opacity-100-25;">
-            <div style="position: absolute; width: 12px; height: 5px; background: rgb(53, 53, 53); box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 1px; transform-origin: left center; transform: rotate(270deg) translate(10px, 0px); border-radius: 100em;"></div>
-        </div>
-        <div style="position: absolute; top: -2px; transform: translate3d(0px, 0px, 0px); animation: 1s linear -0.166667s infinite normal none running opacity-100-25;">
-            <div style="position: absolute; width: 12px; height: 5px; background: rgb(53, 53, 53); box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 1px; transform-origin: left center; transform: rotate(300deg) translate(10px, 0px); border-radius: 100em;"></div>
-        </div>
-        <div style="position: absolute; top: -2px; transform: translate3d(0px, 0px, 0px); animation: 1s linear -0.0833333s infinite normal none running opacity-100-25;">
-            <div style="position: absolute; width: 12px; height: 5px; background: rgb(53, 53, 53); box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 1px; transform-origin: left center; transform: rotate(330deg) translate(10px, 0px); border-radius: 100em;"></div>
-        </div>
-    </div>
-</div>
-    </div>
-</div>
-{include file="common/footer"/}
-<script src="/static/plugins/jquery-3.4.1/jquery-3.4.1.min.js"></script>
-<script src="/static/plugins/bootstrap-3.3.7/js/bootstrap.js"></script>
-<script>
-    var layer='' ;
-    var $;
-    layui.use('layer',function () {
-        layer= layui.layer;
-        $ = layui.jquery;
-    });
-    var baseURL = '{$baseURL}';
-    var api_account = '';//账号
-    var api_imageText = '';//图文
-    var api_image = '';//图片
-    var api_video = '';//视频
-    var api_voice = '';//音频
-</script>
-{include file="wechat/menu_api"/}

Файловите разлики са ограничени, защото са твърде много
+ 0 - 1523
php/view/admin/wechat/menu_api.html


+ 0 - 95
php/view/admin/wechat/message.html

@@ -1,95 +0,0 @@
-{include file="common/header"/}
-<div class="LM-container">
-    <div class="LM-main">
-        <fieldset class="layui-elem-field layui-field-title">
-            <legend>{:lang('message')}{:lang('list')}</legend>
-
-
-        </fieldset>
-
-        <table class="layui-table" id="list" lay-filter="list"></table>
-
-    </div>
-
-</div>
-<script type="text/html" id="content">
-{{qqWechatEmotionParser(d.content)}}
-</script>
-
-<script type="text/html" id="action">
-    <a class="layui-btn layui-btn-xs" lay-event="reply">回复消息</a>
-    <a class="layui-btn layui-btn-xs layui-btn-danger" lay-event="del">{:lang('del')}</a>
-</script>
-
-<script type="text/html" id="create_time">
-    {{layui.util.toDateString(d.create_time*1000, 'yyyy-MM-dd HH:mm:ss')}}
-</script>
-
-<script type="text/html" id="update_time">
-    {{layui.util.toDateString(d.create_time*1000, 'yyyy-MM-dd HH:mm:ss')}}
-</script>
-{include file="common/footer"/}
-<script src="/static/plugins/emoji/qq-wechat-emotion-parser.min.js?v={:time()}"></script>
-<script>
-    layui.use(['layer','table','element'],function () {
-
-        var $ = layui.jquery,
-            table = layui.table;
-        var tableIn = table.render({
-            elem: '#list',
-            url: '{:url("message")}',
-            method: 'post',
-            cols: [[
-                {checkbox: true, fixed: true},
-                {field: 'id', title: 'ID', width: 80, fixed: true, sort: true},
-                {field: 'nickname', title: '昵称', width: 120,},
-                {field: 'openid', title: 'openid', width: 120,},
-                {field: 'content', title: '内容', width: 120,templet:"#content"},
-                {field: 'type', title: '类型', width: 120,},
-                {field: 'event', title: '事件', width: 120,},
-                {field: 'create_time', title: '添加时间', width: 180,templet:'#create_time'},
-                {field: 'update_time', title: '更新时间', width: 180,templet:'#update_time'},
-                {title:'操作',width:150, toolbar: '#action',align:"center"},
-
-            ]],
-            limits: [10, 15, 20, 25, 50, 100],
-            limit: 15,
-            page: true
-
-        });
-
-        table.on('tool(list)', function(obj){
-            var data = obj.data;
-            if(obj.event === 'del'){
-                layer.confirm('{:lang("Are you sure you want to delete it")}', function(index){
-                    loading =layer.load(1, {shade: [0.1,'#fff']});
-                    $.post("{:url('messageDel')}",{id:data.id},function(res){
-                        layer.close(loading);
-                        layer.close(index);
-                        if(res.code>0){
-                            layer.msg(res.msg,{time:1000,icon:1});
-                            obj.del();
-                        }else{
-                            layer.msg(res.msg,{time:1000,icon:2});
-                        }
-                    });
-                });
-            }else if(obj.event=='reply'){
-
-                var wx_aid = $("select[name='wx_aid']").val();
-
-                var index = layer.open({
-                    type: 2,
-                    content: '{:url("messageReply")}'+'?wx_aid='+wx_aid+"&id="+data.id,
-                    area: ['800px', '600px'],
-                    anim: 2,
-                    maxmin: true,
-                });
-                layer.full(index);
-
-            }
-
-        });
-    })
-</script>
-

+ 0 - 342
php/view/admin/wechat/message_reply.html

@@ -1,342 +0,0 @@
-{include file="common/header"/}
-<style>
-    .img-box {
-        position: relative;
-        overflow: hidden;
-        width: 230px;
-        height: 150px;
-        vertical-align: middle;
-        text-align: center;
-        cursor: pointer;
-        border: 1px #efefed solid;
-        color: #76838f;
-    }
-    .img-box img{
-        max-width:100% ;
-    }
-    .layui-col-md3 {
-        padding:0 10px;
-        text-align: center
-    }
-
-    .media-body {
-        padding: 10px 5px;
-        border: 1px solid rgb(231, 231, 235);
-    }
-
-    .media-btn {
-        margin-top: 10px;
-        text-align: center
-    }
-    .media-desc img{
-        width: 100%;
-        height: 180px;
-    }
-    .mdedia-lists-box {
-        border-bottom: 1px solid rgb(231, 231, 235);
-        display: inline-block;
-        padding: 5px 0 5px 0px;
-        height: 48px;
-        width: 100%;
-    }
-    .media-img-box img{
-        width: 100%;
-        height: 48px;
-    }
-    .media-content{
-        position: relative;
-        height: 180px;
-    }
-    .media-content img{
-        width: 100%;
-        height: 180px;
-    }
-    .media-desc {
-
-        position: absolute;
-        background: rgba(0, 0, 0, 0.5) none repeat scroll 0 0;
-        color: #ffffff;
-        width: 100%;
-        bottom: 0;
-        height: 45px;
-        text-align: left;
-    }
-</style>
-
-<div class="LM-container">
-    <div class="LM-main">
-        <fieldset class="layui-elem-field layui-field-title">
-            <legend>{:lang('reply')}{:lang('message')}</legend>
-            <blockquote class="layui-elem-quote">
-                <div class="LM-table">
-                    <div>
-
-                        <label for="">{$user.nickname}</label>
-                        <div class="layui-input-inline">
-
-                            <img width="50" src="{$user.headimgurl}" alt="">
-                        </div>
-                    </div>
-                </div>
-
-            </blockquote>
-
-        </fieldset>
-
-
-        <form class="layui-form" action="">
-            <input name="material_id" type="hidden" value="">
-            <input name='msg_type' type="hidden" value="text">
-            <div class="layui-tab layui-tab-brief" lay-filter="docDemoTabBrief">
-                <ul class="layui-tab-title">
-                    <li class="layui-this">文本内容</li>
-                    <li>图片</li>
-                    <li>图文</li>
-                    <li>视频</li>
-                    <li>音频</li>
-                </ul>
-                <div class="layui-tab-content" style="padding: 15px;">
-                    <div class="layui-tab-item layui-show text">
-                        <div class="layui-form-item layui-form-text">
-                            <label class="layui-form-label">回复内容</label>
-                            <div class="layui-input-block">
-                                <textarea placeholder="请输入内容" class="layui-textarea" name="data"></textarea>
-                            </div>
-                        </div>
-                    </div>
-                    <div class="layui-tab-item image">
-                        <div class="img-box" id="image">
-                            <img src="/static/admin/images/add-img.png" alt="" style="height:auto;padding-top:40px">                                        <div class="bottomBar">点击选择</div>
-                        </div>
-                        <div class="layui-row"  style="display: none">
-                            {volist name="materialGroup['image']" id="vo"}
-                            <div class="layui-col-md3">
-                                <div class="media-body">
-                                    <div class="media-time">
-                                        发布时间:2019-08-12 : 10:38
-                                    </div>
-                                    <span style="display: block;">
-                                  <div class="media-content">
-                                        <div class="media-desc"><p class="media-desc-sp"></p></div>
-                                        <img class="media-img" width="100%" height="180" src="{$vo.media_url}">
-                                  </div>
-                                 </span>
-                                    <div>
-                                        <ul>
-                                        </ul>
-                                    </div>
-                                    <div class="media-item-type2">
-                                        <div class="layui-btn-group media-btn">
-                                            <a href="javascript:;" onclick="materialSelect(this,'{$vo.id}','image')"
-                                               class="layui-btn layui-btn-primary layui-btn-sm">
-                                                <i class="layui-icon"></i>选择
-                                            </a>
-                                        </div>
-                                    </div>
-                                </div>
-
-                            </div>
-                            {/volist}
-                        </div>
-                    </div>
-                    <div class="layui-tab-item news">
-                        <div class="img-box" id="news">
-                            <img src="/static/admin/images/add-img.png" alt="" style="height:auto;padding-top:40px">                                        <div class="bottomBar">点击选择</div>
-                        </div>
-                        <div class="layui-row"  style="display: none">
-                            {volist name="materialGroup['news']" id="vo"}
-
-                            <div class="layui-col-md3">
-                                <div class="media-body">
-                                    <div class="media-time">
-                                        发布时间 {$vo.create_time|date="Y-m-d H:i:s"}
-                                    </div>
-                                    <span style="display: block;">
-                                     <div class="media-content">
-                                         <div class="media-desc">
-                                             <p class="media-desc-sp">{if isset($vo['item_info'][0]['title'])}{$vo['item_info'][0]['title']}{/if}</p>
-                                         </div>
-                                            <img class="media-img"  src="{if isset($vo['item_info'][0]['cover'])}{$vo['item_info'][0]['cover']}{/if}">
-                                      </div>
-                                </span>
-                                    <!--                                //多图文&ndash;&gt;-->
-                                    {if count($vo['item_info'])>1}
-                                    <div>
-                                        <ul>
-                                            {volist name="vo.item_info" id="v" offset='1' }
-                                            <li>
-                                                <div class="mdedia-lists-box">
-                                                    <div class="media-title-box layui-col-md9 fl">
-                                                        {$v.title}
-                                                    </div>
-                                                    <div class="media-img-box layui-col-md3 fr">
-                                                        <img class="media-lists-img" src="{$v.cover}">
-                                                    </div>
-                                                </div>
-                                            </li>
-                                            {/volist}
-                                        </ul>
-                                    </div>
-                                    {/if}
-                                    <div class="media-item-type2">
-                                        <div class="layui-btn-group media-btn">
-                                            <a href="javascript:;" onclick="materialSelect(this,'{$vo.id}','news')"
-                                               class="layui-btn layui-btn-primary layui-btn-sm">
-                                                <i class="layui-icon"></i>选择
-                                            </a>
-                                        </div>
-                                    </div>
-                                </div>
-
-                            </div>
-
-                            {/volist}
-                        </div>
-                    </div>
-                    <div class="layui-tab-item video">
-                        <div class="img-box" id="video">
-                            <img src="/static/admin/images/add-img.png" alt="" style="height:auto;padding-top:40px">                                        <div class="bottomBar">点击选择</div>
-                        </div>
-                        <div class="layui-row"  style="display: none">
-                            {volist name="materialGroup['video']" id="vo"}
-                            <div class="layui-col-md3">
-                                <div class="media-body">
-                                    <div class="media-time">
-                                        发布时间 {$vo.create_time|date="Y-m-d H:i:s"}
-                                    </div>
-                                    <span style="display: block;">
-                                     <div class="media-content">
-                                         <div class="media-desc">
-                                             <p class="media-desc-sp"></p>
-                                         </div>
-                                         <div  style="font-size: 50px;height: 180px;line-height:180px;text-align: center">
-                                             <i class="fa fa-play-circle-o"></i>
-                                         </div>
-                                      </div>
-                                </span>
-                                    <!--                                //多图文&ndash;&gt;-->
-
-                                    <div class="media-item-type2">
-                                        <div class="layui-btn-group media-btn">
-                                            <a href="javascript:;" onclick="materialSelect(this,'{$vo.id}','video')"
-                                               class="layui-btn layui-btn-primary layui-btn-sm">
-                                                <i class="layui-icon"></i>选择
-                                            </a>
-                                        </div>
-                                    </div>
-                                </div>
-
-                            </div>
-                            {/volist}
-                        </div>
-                    </div>
-                    <div class="layui-tab-item voice">
-                        <div class="img-box" id="voice">
-                            <img src="/static/admin/images/add-img.png" alt="" style="height:auto;padding-top:40px">                                        <div class="bottomBar">点击选择</div>
-                        </div>
-                        <div class="layui-row"  style="display: none">
-                            {volist name="materialGroup['voice']" id="vo"}
-                            <div class="layui-col-md3">
-                                <div class="media-body">
-                                    <div class="media-time">
-                                        发布时间 {$vo.create_time|date="Y-m-d H:i:s"}
-                                    </div>
-                                    <span style="display: block;">
-                                     <div class="media-content">
-                                         <div class="media-desc">
-                                             <p class="media-desc-sp"></p>
-                                         </div>
-                                         <audio class="media-img"  src="{$vo.media_url}"></audio>
-                                      </div>
-                                </span>
-                                    <!--                                //多图文&ndash;&gt;-->
-
-                                    <div class="media-item-type2">
-                                        <div class="layui-btn-group media-btn">
-                                            <a  href="javascript:;" onclick="materialSelect(this,'{$vo.id}','video')"
-                                                class="layui-btn layui-btn-primary layui-btn-sm">
-                                                <i class="layui-icon"></i>选择
-                                            </a>
-                                        </div>
-                                    </div>
-                                </div>
-
-                            </div>
-                            {/volist}
-                        </div>
-                    </div>
-                </div>
-            </div>
-
-            <div class="layui-form-item">
-                <div class="layui-input-block">
-                    <button type="submit" class="layui-btn" lay-submit="" lay-filter="submit">立即发送</button>
-                </div>
-            </div>
-        </form>
-
-
-    </div>
-</div>
-
-
-{include file="common/footer"/}
-<script>
-    var $='';
-    var layer;
-    var index='';
-    layui.use(['form','element','layer'], function () {
-        $ = layui.jquery;
-        var  form = layui.form,
-            layer = layui.layer,
-            element = layui.element;
-        var openid = '{$user.openid}';
-        form.on('submit(submit)', function(data){
-            var type = '';
-            if($("input[name='msg_type']").val()=='text' && !$("textarea[name='data']").val()){
-
-                layer.msg('请填写文本内容');
-                return false;
-            }
-
-
-            loading =layer.load(1, {shade: [0.1,'#fff']});
-            data.field.openid = openid;
-            $.post("{:url('messageReply')}",data.field,function(res){
-                layer.close(loading);
-                if(res.code>0){
-                    layer.msg(res.msg,{time:1000,icon:1});
-
-                }else{
-                    layer.msg(res.msg,{time:1000,icon:2});
-                }
-                return false;
-            });
-            return false;
-        });
-
-
-        $('.img-box').click(function (e) {
-            index = layer.open({
-                type: 1,
-                content: $(this).next('.layui-row'),
-                area: ['800px', '600px'],
-                anim: 2,
-                maxmin: true,
-            });
-        })
-
-
-
-    });
-    function materialSelect(obj,id,type) {
-        var src = $(obj).parents('.layui-tab-item').find('.media-img').attr('src');
-        console.log(src);
-        $("input[name='material_id']").val(id)
-        $("input[name='msg_type']").val(type)
-        $(obj).parents('.layui-tab-item').find('.img-box').find('img').attr('src',src);
-        layer.close(index);
-
-    }
-
-</script>

+ 0 - 116
php/view/admin/wechat/qrcode.html

@@ -1,116 +0,0 @@
-{include file="common/header"/}
-<style>.layui-table-cell{height: auto!important;}</style>
-<div class="LM-container">
-    <div class="LM-main">
-        <fieldset class="layui-elem-field layui-field-title">
-            <legend>{:lang('qrcode')}{:lang('list')}</legend>
-            <blockquote class="layui-elem-quote">
-                <div class="LM-table">
-                    <a href="{:url('qrcodeAdd')}" class="layui-btn layui-btn-sm layui-btn-warm">{:lang('add')}{:lang('qrcode')}</a>
-                </div>
-            </blockquote>
-
-        </fieldset>
-
-        <table class="layui-table" id="list" lay-filter="list"></table>
-    </div>
-</div>
-
-
-<script type="text/html" id="action">
-<!--    <a href="{:url('edit')}?id={{d.id}}" class="layui-btn  layui-btn-xs" lay-event="edit">{:lang('edit')}</a>-->
-    <a  class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del">{:lang('del')}</a>
-</script>
-<script type="text/html" id="status">
-    <input type="checkbox" name="status" value="{{d.id}}" lay-skin="switch" lay-text="开启|关闭" lay-filter="status" {{ d.status == 1 ? 'checked' : '' }}>
-</script>
-
-<script type="text/html" id="qrcode">
-   <img width="50" src="{{d.qrcode}}">
-</script>
-
-
-<script type="text/html" id="create_time">
-    {{layui.util.toDateString(d.create_time*1000, 'yyyy-MM-dd HH:mm:ss')}}
-</script>
-<script type="text/html" id="update_time">
-    {{layui.util.toDateString(d.update_time*1000, 'yyyy-MM-dd HH:mm:ss')}}
-</script>
-{include file="common/footer"/}
-<script>
-    layui.use(['form', 'table'], function () {
-        var $ = layui.jquery,
-            form = layui.form,
-            table = layui.table;
-
-        var tableIn = table.render({
-            elem: '#list',
-            url: '{:url("qrcode")}',
-            method: 'post',
-            cols: [[
-                {checkbox: true, },
-                {field: 'id', title: 'ID', width: 80,  sort: true},
-                {field: 'name', title: '二维码名字', width: 120,sort:true},
-                {field: 'type', title: '类型', width: 80,templet:'#type',sort:true},
-                {field: 'qrcode', title: '二维码', width: 120,templet:'#qrcode',sort:true},
-                {field: 'url', title: 'url', width: 120,sort:true},
-                {field: 'ticket', title: 'ticket', width: 120, sort:true},
-                {field: 'expire_seconds', title: '过期时间', width: 120, sort:true},
-                // {field: 'store_id', title: '店铺id', width: 120,sort: true},
-                {field: 'status', title: '接入状态', width: 180, templet:'#status',sort:true},
-                {field: 'create_time', title: '添加时间', width: 180,templet:'#create_time',sort:true},
-                {field: 'update_time', title: '更新时间', width: 180,templet:'#update_time',sort:true},
-                {title:'操作',width:150, toolbar: '#action',align:"center"},
-
-            ]],
-
-        });
-
-        table.on('tool(list)', function(obj){
-            var data = obj.data;
-            if(obj.event === 'del'){
-                layer.confirm('{:lang("Are you sure you want to delete it")}', function(index){
-                    loading =layer.load(1, {shade: [0.1,'#fff']});
-                    $.post("{:url('qrcodeDel')}",{id:data.id},function(res){
-                        layer.close(loading);
-                        layer.close(index);
-                        if(res.code>0){
-                            layer.msg(res.msg,{time:1000,icon:1});
-                            obj.del();
-                        }else{
-                            layer.msg(res.msg,{time:1000,icon:2});
-                        }
-                    });
-                });
-            }
-
-        });
-
-        form.on('switch(status)', function(data){
-                loading =layer.load(1, {shade: [0.1,'#fff']});
-                $.post("{:url('qrcodeState')}",{id:data.value},function(res){
-                    layer.close(loading);
-                    if(res.code>0){
-                        layer.msg(res.msg,{time:1000,icon:1});
-                        tableIn.reload();
-                    }else{
-                        layer.msg(res.msg,{time:1000,icon:2});
-                    }
-                });
-        });
-
-        $('#search').click(function () {
-            var $keys = $('#keys').val();
-            if(!$keys){
-                return layer.msg('请输入关键词');
-            }
-
-            tableIn.reload({ page: {page: 1},where: {keys: $keys}});
-
-        })
-
-
-    });
-
-
-</script>

+ 0 - 75
php/view/admin/wechat/qrcode_add.html

@@ -1,75 +0,0 @@
-{include file="common/header"/}
-<div class="LM-container">
-    <div class="LM-main">
-        <div class="admin-main layui-anim layui-anim-upbit">
-            <fieldset class="layui-elem-field layui-field-title">
-                <legend>{$title}</legend>
-            </fieldset>
-            <form class="layui-form layui-form-pane" lay-filter="form">
-
-                <div class="layui-form-item">
-                    <label class="layui-form-label">{:lang('qrcode name')}</label>
-                    <div class="layui-input-inline">
-                        <input type="text" name="name" lay-verify="required" placeholder="{:lang('pleaseEnter')}{:lang('qrcode name')}" class="layui-input">
-                    </div>
-                    <div class="layui-form-mid layui-word-aux">
-                        在4到25个字符之间。
-                    </div>
-                </div>
-
-                <div class="layui-form-item">
-                    <label class="layui-form-label">{:lang('type')}</label>
-                    <div class="layui-input-inline">
-                        <input type="radio" name="type"  value="0" lay-verify="required" placeholder="{:lang('pleaseEnter')}{:lang('type')}" title="临时" checked>
-                        <input type="radio" name="type"  value="1" lay-verify="required" placeholder="{:lang('pleaseEnter')}{:lang('type')}" title="永久">
-                    </div>
-                </div>
-
-                <div class="layui-form-item">
-                    <label class="layui-form-label">{:lang('expire seconds')}</label>
-                    <div class="layui-input-inline">
-                        <input type="text" name="expire_seconds" value="2592000" placeholder="{:lang('pleaseEnter')}{:lang('expire seconds')}" class="layui-input">
-                    </div>
-                    <div class="layui-form-mid layui-word-aux">
-                        临时二维码过期时间, 最大为30天(2592000秒)
-                    </div>
-                </div>
-
-                <div class="layui-form-item">
-                    <div class="layui-input-inline">
-                        <input type="hidden" name="id"  >
-                        <button type="button" class="layui-btn" lay-submit="" lay-filter="submit">{:lang('submit')}</button>
-                        <a href="{:url('qrcode')}" class="layui-btn layui-btn-primary">{:lang('back')}</a>
-                    </div>
-                </div>
-            </form>
-        </div>
-
-    </div>
-</div>
-
-{include file="common/footer"/}
-<script>
-    layui.use(['form', 'layer','upload'], function () {
-        var form = layui.form, layer = layui.layer,$= layui.jquery,upload = layui.upload;
-        var info = '';
-        info = {:json_encode($info)};
-        form.val("form", info);
-
-        form.render();
-        form.on('submit(submit)', function (data) {
-            loading =layer.load(1, {shade: [0.1,'#fff']});
-            $.post("", data.field, function (res) {
-                layer.close(loading);
-                if (res.code > 0) {
-                    layer.msg(res.msg, {time: 1800, icon: 1}, function () {
-                        location.href = res.url;
-                    });
-                } else {
-                    layer.msg(res.msg, {time: 1800, icon: 2});
-                }
-            });
-        });
-
-    });
-</script>

+ 0 - 107
php/view/admin/wechat/reply.html

@@ -1,107 +0,0 @@
-{include file="common/header"/}
-
-<div class="LM-container">
-    <div class="LM-main">
-
-        <fieldset class="layui-elem-field layui-field-title">
-            <legend>回复{:lang('list')}</legend>
-            <blockquote class="layui-elem-quote">
-                <div class="LM-table">
-
-                    <a href="{:url('replyAdd')}" class="layui-btn layui-btn-sm layui-btn-warm">{:lang('add')}关键词回复</a>
-
-                </div>
-
-            </blockquote>
-
-        </fieldset>
-
-        <div class="layui-tab layui-tab-brief" lay-filter="lemo-brief">
-            <ul class="layui-tab-title">
-                {volist name="typeList" id="vo"}
-                <li {if $vo.type== $type } class="layui-this" {/if}><a href="{$vo.url}">{$vo.item}</a></li>
-                {/volist}
-            </ul>
-            <div class="layui-tab-content" style="height: auto;">
-                <div class="layui-tab-item layui-show">
-                    <fieldset class="layui-elem-field layui-field-title" style="margin-top: 20px;">
-                        <legend>字段信息</legend>
-                    </fieldset>
-
-
-                    <table class="layui-table" id="list" lay-filter="list"></table>
-
-
-                </div>
-
-            </div>
-        </div>
-
-    </div>
-</div>
-
-<script type="text/html" id="action">
-    <a href="{:url('replyEdit')}?id={{d.id}}" class="layui-btn  layui-btn-xs" lay-event="edit">{:lang('edit')}</a>
-    {{# if(d.type=='keyword') { }}
-    <a  class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del">{:lang('del')}</a>
-    {{# } }}
-</script>
-
-
-<script type="text/html" id="create_time">
-    {{layui.util.toDateString(d.create_time*1000, 'yyyy-MM-dd HH:mm:ss')}}
-</script>
-<script type="text/html" id="update_time">
-    {{layui.util.toDateString(d.update_time*1000, 'yyyy-MM-dd HH:mm:ss')}}
-</script>
-{include file="common/footer"/}
-<script>
-    layui.use(['form', 'table','element'], function () {
-        var $ = layui.jquery,
-            form = layui.form,
-            table = layui.table,
-            element = layui.element;
-        var info = {:json_encode($info)};
-        var tableIn = table.render({
-            elem: '#list',
-            data:info,
-            cols: [[
-                {checkbox: true, fixed: true},
-                {field: 'id', title: 'ID', width: 80, fixed: true, sort: true},
-                {field: 'keyword', title: '关键字', width: 120,},
-                {field: 'type', title: '事件类型', width: 120,},
-                {field: 'msg_type', title: '回复消息类型 ', width: 120, },
-                {field: 'data', title: '文本回复内容', width: 120, },
-                {field: 'material_id', title: '媒体id', width: 120,},
-                {field: 'create_time', title: '添加时间', width: 180,templet:'#create_time'},
-                {field: 'update_time', title: '更新时间', width: 180,templet:'#update_time'},
-                {title:'操作',width:150, toolbar: '#action',align:"center"},
-
-            ]],
-
-        });
-
-        table.on('tool(list)', function(obj){
-            var data = obj.data;
-            if(obj.event === 'del'){
-                layer.confirm('{:lang("Are you sure you want to delete it")}', function(index){
-                    loading =layer.load(1, {shade: [0.1,'#fff']});
-                    $.post("{:url('replayDel')}",{id:data.id},function(res){
-                        layer.close(loading);
-                        layer.close(index);
-                        if(res.code>0){
-                            layer.msg(res.msg,{time:1000,icon:1});
-                            obj.del();
-                        }else{
-                            layer.msg(res.msg,{time:1000,icon:2});
-                        }
-                    });
-                });
-            }
-
-        });
-
-    });
-
-
-</script>

+ 0 - 351
php/view/admin/wechat/reply_add.html

@@ -1,351 +0,0 @@
-{include file="common/header"/}
-<style>
-    .img-box {
-        position: relative;
-        overflow: hidden;
-        width: 230px;
-        height: 150px;
-        vertical-align: middle;
-        text-align: center;
-        cursor: pointer;
-        border: 1px #efefed solid;
-        color: #76838f;
-    }
-    .img-box img{
-        max-width:100% ;
-    }
-    .layui-col-md3 {
-        padding:0 10px;
-        text-align: center
-    }
-
-    .media-body {
-        padding: 10px 5px;
-        border: 1px solid rgb(231, 231, 235);
-    }
-
-    .media-btn {
-        margin-top: 10px;
-        text-align: center
-    }
-    .media-desc img{
-        width: 100%;
-        height: 180px;
-    }
-    .mdedia-lists-box {
-        border-bottom: 1px solid rgb(231, 231, 235);
-        display: inline-block;
-        padding: 5px 0 5px 0px;
-        height: 48px;
-        width: 100%;
-    }
-    .media-img-box img{
-        width: 100%;
-        height: 48px;
-    }
-    .media-content{
-        position: relative;
-        height: 180px;
-    }
-    .media-content img{
-        width: 100%;
-        height: 180px;
-    }
-    .media-desc {
-
-        position: absolute;
-        background: rgba(0, 0, 0, 0.5) none repeat scroll 0 0;
-        color: #ffffff;
-        width: 100%;
-        bottom: 0;
-        height: 45px;
-        text-align: left;
-    }
-</style>
-
-<div class="LM-container">
-    <div class="LM-main">
-
-        <fieldset class="layui-elem-field layui-field-title">
-            <legend>回复{$title}</legend>
-
-        </fieldset>
-
-        <form class="layui-form layui-form-pane" lay-filter="form">
-
-
-            <div class="layui-form-item">
-                <label class="layui-form-label">关键词</label>
-                <div class="layui-input-inline">
-                    <input type="text" name="keyword" lay-verify="required" placeholder="{:lang('pleaseEnter')}{:lang('keyword')}" class="layui-input">
-                </div>
-
-            </div>
-            <input type="hidden" name="msg_type" value="text">
-            <input type="hidden" name="type" value="">
-            <input type="hidden" name="id" value="">
-            <input type="hidden" name="material_id" value="">
-            <div class="layui-form-item">
-                <label class="layui-form-label">{:lang('status')}</label>
-                <div class="layui-input-block">
-                    <input type="radio" name="status" lay-filter="required" checked value="1" title="启用">
-                    <input type="radio" name="status" lay-filter="required" value="0" title="禁用">
-                </div>
-            </div>
-
-
-            <div class="layui-tab layui-tab-brief" lay-filter="docDemoTabBrief">
-            <ul class="layui-tab-title">
-                <li class="layui-this">内容</li>
-                <li>图片</li>
-                <li>图文</li>
-                <li>视频</li>
-                <li>音频</li>
-            </ul>
-
-            <div class="layui-tab-content" style="padding: 15px;">
-                <div class="layui-tab-item layui-show text">
-                    <div class="layui-form-item layui-form-text">
-                        <label class="layui-form-label">回复内容</label>
-                        <div class="layui-input-block">
-                            <textarea placeholder="请输入内容" class="layui-textarea" name="data"></textarea>
-                        </div>
-                    </div>
-                </div>
-                <div class="layui-tab-item image">
-                    <div class="img-box" id="image">
-                        <img src="/static/admin/images/add-img.png" alt="" style="height:auto;padding-top:40px">                                        <div class="bottomBar">点击选择</div>
-                    </div>
-                    <div class="layui-row"  style="display: none">
-                        {volist name="materialGroup['image']" id="vo"}
-                        <div class="layui-col-md3">
-                            <div class="media-body">
-                                <div class="media-time">
-                                    发布时间:2019-08-12 : 10:38
-                                </div>
-                                <span style="display: block;">
-                                  <div class="media-content">
-                                        <div class="media-desc"><p class="media-desc-sp"></p></div>
-                                        <img class="media-img" width="100%" height="180" src="{$vo.media_url}">
-                                  </div>
-                                 </span>
-                                <div>
-                                    <ul>
-                                    </ul>
-                                </div>
-                                <div class="media-item-type2">
-                                    <div class="layui-btn-group media-btn">
-                                        <a href="javascript:;" onclick="materialSelect(this,'{$vo.id}','image')"
-                                                class="layui-btn layui-btn-primary layui-btn-sm">
-                                            <i class="layui-icon"></i>选择
-                                        </a>
-                                    </div>
-                                </div>
-                            </div>
-
-                        </div>
-                        {/volist}
-                    </div>
-                </div>
-                <div class="layui-tab-item news">
-                    <div class="img-box" id="news">
-                        <img src="/static/admin/images/add-img.png" alt="" style="height:auto;padding-top:40px">                                        <div class="bottomBar">点击选择</div>
-                    </div>
-                    <div class="layui-row"  style="display: none">
-                        {volist name="materialGroup['news']" id="vo"}
-
-                        <div class="layui-col-md3">
-                            <div class="media-body">
-                                <div class="media-time">
-                                    发布时间 {$vo.create_time|date="Y-m-d H:i:s"}
-                                </div>
-                                <span style="display: block;">
-                                     <div class="media-content">
-                                         <div class="media-desc">
-                                             <p class="media-desc-sp">{if isset($vo['item_info'][0]['title'])}{$vo['item_info'][0]['title']}{/if}</p>
-                                         </div>
-                                            <img class="media-img"  src="{if isset($vo['item_info'][0]['cover'])}{$vo['item_info'][0]['cover']}{/if}">
-                                      </div>
-                                </span>
-                                <!--                                //多图文&ndash;&gt;-->
-                                {if count($vo['item_info'])>1}
-                                <div>
-                                    <ul>
-                                        {volist name="vo.item_info" id="v" offset='1' }
-                                        <li>
-                                            <div class="mdedia-lists-box">
-                                                <div class="media-title-box layui-col-md9 fl">
-                                                    {$v.title}
-                                                </div>
-                                                <div class="media-img-box layui-col-md3 fr">
-                                                    <img class="media-lists-img" src="{$v.cover}">
-                                                </div>
-                                            </div>
-                                        </li>
-                                        {/volist}
-                                    </ul>
-                                </div>
-                                {/if}
-                                <div class="media-item-type2">
-                                    <div class="layui-btn-group media-btn">
-                                        <a href="javascript:;" onclick="materialSelect(this,'{$vo.id}','news')"
-                                                class="layui-btn layui-btn-primary layui-btn-sm">
-                                            <i class="layui-icon"></i>选择
-                                        </a>
-                                    </div>
-                                </div>
-                            </div>
-
-                        </div>
-
-                        {/volist}
-                    </div>
-                </div>
-                <div class="layui-tab-item video">
-                    <div class="img-box" id="video">
-                        <img src="/static/admin/images/add-img.png" alt="" style="height:auto;padding-top:40px">                                        <div class="bottomBar">点击选择</div>
-                    </div>
-                    <div class="layui-row"  style="display: none">
-                        {volist name="materialGroup['video']" id="vo"}
-                        <div class="layui-col-md3">
-                            <div class="media-body">
-                                <div class="media-time">
-                                    发布时间 {$vo.create_time|date="Y-m-d H:i:s"}
-                                </div>
-                                <span style="display: block;">
-                                     <div class="media-content">
-                                         <div class="media-desc">
-                                             <p class="media-desc-sp"></p>
-                                         </div>
-                                         <div  style="font-size: 50px;height: 180px;line-height:180px;text-align: center">
-                                             <i class="fa fa-play-circle-o"></i>
-                                         </div>
-                                      </div>
-                                </span>
-                                <!--                                //多图文&ndash;&gt;-->
-
-                                <div class="media-item-type2">
-                                    <div class="layui-btn-group media-btn">
-                                        <a href="javascript:;" onclick="materialSelect(this,'{$vo.id}','video')"
-                                                class="layui-btn layui-btn-primary layui-btn-sm">
-                                            <i class="layui-icon"></i>选择
-                                        </a>
-                                    </div>
-                                </div>
-                            </div>
-
-                        </div>
-                        {/volist}
-                    </div>
-                </div>
-                <div class="layui-tab-item voice">
-                    <div class="img-box" id="voice">
-                        <img src="/static/admin/images/add-img.png" alt="" style="height:auto;padding-top:40px">                                        <div class="bottomBar">点击选择</div>
-                    </div>
-                    <div class="layui-row"  style="display: none">
-                        {volist name="materialGroup['voice']" id="vo"}
-                        <div class="layui-col-md3">
-                            <div class="media-body">
-                                <div class="media-time">
-                                    发布时间 {$vo.create_time|date="Y-m-d H:i:s"}
-                                </div>
-                                <span style="display: block;">
-                                     <div class="media-content">
-                                         <div class="media-desc">
-                                             <p class="media-desc-sp"></p>
-                                         </div>
-                                         <audio class="media-img"  src="{$vo.media_url}"></audio>
-                                      </div>
-                                </span>
-                                <!--                                //多图文&ndash;&gt;-->
-
-                                <div class="media-item-type2">
-                                    <div class="layui-btn-group media-btn">
-                                        <a  href="javascript:;" onclick="materialSelect(this,'{$vo.id}','video')"
-                                                class="layui-btn layui-btn-primary layui-btn-sm">
-                                            <i class="layui-icon"></i>选择
-                                        </a>
-                                    </div>
-                                </div>
-                            </div>
-
-                        </div>
-                        {/volist}
-                    </div>
-                </div>
-            </div>
-        </div>
-
-            <div class="layui-form-item">
-                <div class="layui-input-inline">
-                    <input type="hidden" name="id"  >
-                    <button type="button" class="layui-btn" lay-submit="" lay-filter="submit">{:lang('submit')}</button>
-                    <a href="{:url('reply')}" class="layui-btn layui-btn-primary">{:lang('back')}</a>
-                </div>
-            </div>
-        </form>
-    </div>
-</div>
-
-<script type="text/html" id="action">
-    <a href="{:url('replyEdit')}?id={{d.id}}" class="layui-btn  layui-btn-xs" lay-event="edit">{:lang('edit')}</a>
-    <a  class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del">{:lang('del')}</a>
-</script>
-
-
-<script type="text/html" id="create_time">
-    {{layui.util.toDateString(d.create_time*1000, 'yyyy-MM-dd HH:mm:ss')}}
-</script>
-<script type="text/html" id="update_time">
-    {{layui.util.toDateString(d.update_time*1000, 'yyyy-MM-dd HH:mm:ss')}}
-</script>
-{include file="common/footer"/}
-<script>
-    var $='';
-    var layer;
-    var index='';
-    layui.use(['form', 'table','element','layer'], function () {
-
-        var form = layui.form,
-            layer = layui.layer,
-            table = layui.table,
-            element = layui.element;
-        $ = layui.jquery;
-        var info = {:json_encode($info)};
-        form.val('form',info)
-        form.on('submit(submit)', function(data){
-                loading =layer.load(1, {shade: [0.1,'#fff']});
-                $.post('{:url("")}',data.field,function(res){
-                    layer.close(loading);
-                    if(res.code>0){
-                        layer.msg(res.msg,{time:1000,icon:1});
-                    }else{
-                        layer.msg(res.msg,{time:1000,icon:2});
-                    }
-                });
-        });
-
-
-        $('.img-box').click(function (e) {
-            index = layer.open({
-                type: 1,
-                content: $(this).next('.layui-row'),
-                area: ['800px', '600px'],
-                anim: 2,
-                maxmin: true,
-            });
-        })
-
-
-    });
-
-    function materialSelect(obj,id,type) {
-        var src = $(obj).parents('.layui-tab-item').find('.media-img').attr('src');
-        console.log(src);
-        $("input[name='material_id']").val(id)
-        $("input[name='msg_type']").val(type)
-        $(obj).parents('.layui-tab-item').find('.img-box').find('img').attr('src',src);
-        layer.close(index);
-
-    }
-</script>

+ 0 - 166
php/view/admin/wechat/tag.html

@@ -1,166 +0,0 @@
-{include file="common/header"/}
-<div class="LM-container">
-    <div class="LM-main">
-        <fieldset class="layui-elem-field layui-field-title">
-            <legend>{:lang('tag')}{:lang('list')}</legend>
-            <blockquote class="layui-elem-quote">
-                <div class="LM-table">
-
-                    <form class="layui-form" action="">
-
-                        <a href="javascript:;"  class="layui-btn layui-btn-sm layui-btn-warm LM-add">{:lang('add')}{:lang('标签')}</a>
-
-                        <div class="layui-input-inline">
-
-                            <select name="wx_aid" lay-filter="select" lay-verify="required" lay-search="">
-                                <option value="">直接选择或搜索选择</option>
-                                {volist name='wxaccount' id ='vo'}
-                                <option value="{$vo.id}" {if $vo.status==1 } selected {/if}>{$vo.wxname}</option>
-                                {/volist}
-                            </select>
-                        </div>
-                        <a href="javascript:;" class="layui-btn layui-btn-sm layui-btn-danger aysn">{:lang('aysn')}{:lang('标签')}</a>
-                    </form>
-                </div>
-
-            </blockquote>
-
-        </fieldset>
-
-        <table class="layui-table" id="list" lay-filter="list"></table>
-    </div>
-</div>
-
-<script type="text/html" id="action">
-    <a  class="layui-btn  layui-btn-xs" lay-event="edit">{:lang('edit')}</a>
-    <a  class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del">{:lang('del')}</a>
-</script>
-<script type="text/html" id="status">
-    <input type="checkbox" name="status" value="{{d.id}}" lay-skin="switch" lay-text="开启|关闭" lay-filter="status" {{ d.status == 1 ? 'checked' : '' }}>
-</script>
-
-<script type="text/html" id="create_time">
-    {{layui.util.toDateString(d.create_time*1000, 'yyyy-MM-dd HH:mm:ss')}}
-</script>
-<script type="text/html" id="update_time">
-    {{layui.util.toDateString(d.update_time*1000, 'yyyy-MM-dd HH:mm:ss')}}
-</script>
-{include file="common/footer"/}
-<script>
-    layui.use(['form', 'table'], function () {
-        var $ = layui.jquery,
-            form = layui.form,
-            table = layui.table;
-
-        var tableIn = table.render({
-            elem: '#list',
-            url: '{:url("tag")}',
-            method: 'post',
-            cols: [[
-                {checkbox: true, fixed: true},
-                {field: 'id', title: 'ID', width: 80, fixed: true, sort: true},
-                {field: 'name', title: '标签名', width: 120,},
-                {field: 'tag_id', title: '标签id', width: 120,},
-                {field: 'status', title: '状态', width: 180, templet:'#status'},
-                {field: 'create_time', title: '添加时间', width: 180,templet:'#create_time'},
-                {field: 'update_time', title: '更新时间', width: 180,templet:'#update_time'},
-                {title:'操作',width:150, toolbar: '#action',align:"center"},
-
-            ]],
-
-        });
-
-        table.on('tool(list)', function(obj){
-            var data = obj.data;
-            if(obj.event === 'del'){
-                layer.confirm('{:lang("Are you sure you want to delete it")}', function(index){
-                    loading =layer.load(1, {shade: [0.1,'#fff']});
-                    $.post("{:url('tagDel')}",{id:data.id},function(res){
-                        layer.close(loading);
-                        layer.close(index);
-                        if(res.code>0){
-                            layer.msg(res.msg,{time:1000,icon:1});
-                            obj.del();
-                        }else{
-                            layer.msg(res.msg,{time:1000,icon:2});
-                        }
-                    });
-                });
-            }
-            if(obj.event === 'edit'){
-                var index = layer.open({
-                    type: 2,
-                    content: '{:url("tagEdit")}'+'?id='+data.id,
-                    area: ['800px', '600px'],
-                    anim: 2,
-                    maxmin: true,
-                });
-                layer.full(index);
-            }
-
-        });
-
-        form.on('switch(status)', function(data){
-                loading =layer.load(1, {shade: [0.1,'#fff']});
-                $.post("{:url('tagState')}",{id:data.value},function(res){
-                    layer.close(loading);
-                    if(res.code>0){
-                        layer.msg(res.msg,{time:1000,icon:1});
-                        tableIn.reload();
-                    }else{
-                        layer.msg(res.msg,{time:1000,icon:2});
-                    }
-                });
-        });
-
-        form.on('select(select)', function(data) {
-
-            var wx_aid = data.value;
-            tableIn.reload({ page: {page: 1},where: {wx_aid: wx_aid}});
-
-
-
-        })
-
-        $('.LM-add').click(function () {
-            var wx_aid = $("select[name='wx_aid']").val();
-            var index = layer.open({
-                type: 2,
-                content: '{:url("tagAdd")}'+'?wx_aid='+wx_aid,
-                area: ['800px', '600px'],
-                anim: 2,
-                maxmin: true,
-            });
-            layer.full(index);
-        })
-        $('.aysn').click(function () {
-            var url = '{:url("tagAysn")}';
-            var wx_aid = $("select[name='wx_aid']").val();
-            loading =layer.load(1, {shade: [0.1,'#fff']});
-
-            $.post(url,{'wx_aid':wx_aid},function (res) {
-                layer.close(loading);
-                if(res.code>0){
-                    layer.msg(res.msg)
-                    tableIn.reload();
-                }else{
-                    return layer.msg(res.msg)
-
-                }
-            })
-        })
-        $('#search').click(function () {
-            var $keys = $('#keys').val();
-            if(!$keys){
-                return layer.msg('请输入关键词');
-            }
-
-            tableIn.reload({ page: {page: 1},where: {keys: $keys}});
-
-        })
-
-
-    });
-
-
-</script>

+ 0 - 65
php/view/admin/wechat/tag_add.html

@@ -1,65 +0,0 @@
-{include file="common/header"/}
-<div class="LM-container">
-    <div class="LM-main">
-        <fieldset class="layui-elem-field layui-field-title">
-            <legend>{$title}</legend>
-        </fieldset>
-        <form class="layui-form layui-form-pane" lay-filter="form">
-
-
-            <div class="layui-form-item">
-                <label class="layui-form-label">标签名称</label>
-                <div class="layui-input-inline">
-                    <input type="text" name="name" lay-verify="required" placeholder="{:lang('pleaseEnter')}标签名称" class="layui-input">
-                </div>
-                <div class="layui-form-mid layui-word-aux">
-                    在4到25个字符之间。
-                </div>
-            </div>
-            <div class="layui-form-item">
-                <label class="layui-form-label">{:lang('status')}</label>
-                <div class="layui-input-block">
-                        <input type="radio" name="status" lay-filter="status" checked value="1" title="启用">
-                        <input type="radio" name="status" lay-filter="status" value="0" title="关闭">
-                </div>
-            </div>
-            <div class="layui-form-item">
-                <div class="layui-input-inline">
-                    <input type="hidden" name="id"  >
-                    <input type="hidden" name="wx_aid"  >
-                    <button type="button" class="layui-btn" lay-submit="" lay-filter="submit">{:lang('submit')}</button>
-<!--                    <a href="{:url('index')}" class="layui-btn layui-btn-primary">{:lang('back')}</a>-->
-                </div>
-            </div>
-        </form>
-    </div>
-</div>
-
-{include file="common/footer"/}
-<script>
-    layui.use(['form', 'layer'], function () {
-        var form = layui.form,layer = layui.layer,$= layui.jquery;
-        var info = '';
-        info = {:json_encode($info)};
-        form.val("form", info);
-
-        form.render();
-        form.on('submit(submit)', function (data) {
-            loading =layer.load(1, {shade: [0.1,'#fff']});
-            $.post("", data.field, function (res) {
-                layer.close(loading);
-                if (res.code > 0) {
-                    layer.msg(res.msg, {time: 1800, icon: 1}, function () {
-                       location.href = res.url;
-                    });
-                } else {
-                    layer.msg(res.msg, {time: 1800, icon: 2});
-                }
-            });
-        });
-
-
-
-
-    });
-</script>

+ 0 - 25
php/view/web/index/index.html

@@ -1,25 +0,0 @@
-<!DOCTYPE html>
-<html lang="en">
-<head>
-    <meta charset="UTF-8">
-    <title>Title</title>
-</head>
-<script src="/static/vue/vue.min.js"></script>
-<body>
- <div id="app"></div>
-<p>{{message}}</p>
-<script>
-    new Vue({
-        data(){
-            return {
-                message:"asdasd"
-            }
-
-        },
-        render(h){
-            return h("div",this.hi)
-        }
-    })
-</script>
-</body>
-</html>

+ 3 - 0
服务器.txt

@@ -0,0 +1,3 @@
+https://org.modao.cc/app/a549a9bbd56595c3fb30a3483f9e84cfdcb02ede?simulator_type=device&sticky=#screen=skaeybk3yv843jd
+
+https://www.processon.com/view/link/5ec3310a7d9c08156c4d0828

BIN
虚拟币抢单系统功能清单.xlsx