rails_crm 0.0.1 → 0.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (316) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +1 -23
  3. data/app/controllers/crm/admin/addresses_controller.rb +57 -0
  4. data/app/controllers/crm/admin/agencies_controller.rb +65 -0
  5. data/app/controllers/crm/admin/card_purchases_controller.rb +16 -0
  6. data/app/controllers/crm/admin/card_templates_controller.rb +49 -0
  7. data/app/controllers/crm/admin/home_controller.rb +8 -0
  8. data/app/controllers/crm/admin/maintain_logs_controller.rb +2 -20
  9. data/app/controllers/crm/admin/maintain_sources_controller.rb +2 -20
  10. data/app/controllers/crm/admin/maintain_tags_controller.rb +3 -21
  11. data/app/controllers/crm/admin/maintains_controller.rb +53 -94
  12. data/app/controllers/crm/admin/orders_controller.rb +70 -0
  13. data/app/controllers/crm/admin/payments_controller.rb +11 -0
  14. data/app/controllers/crm/admin/wallet_logs_controller.rb +25 -0
  15. data/app/controllers/crm/admin/wallet_payments_controller.rb +41 -0
  16. data/app/controllers/crm/admin/wallet_templates_controller.rb +44 -0
  17. data/app/controllers/crm/admin/wallets_controller.rb +41 -0
  18. data/app/controllers/crm/controller/me.rb +16 -0
  19. data/app/controllers/crm/me/agencies_controller.rb +69 -0
  20. data/app/controllers/crm/me/base_controller.rb +4 -0
  21. data/app/controllers/crm/me/home_controller.rb +12 -0
  22. data/app/controllers/crm/me/maintain_sources_controller.rb +38 -0
  23. data/app/controllers/crm/me/maintains_controller.rb +5 -0
  24. data/app/controllers/crm/my/agencies_controller.rb +53 -0
  25. data/app/controllers/crm/panel/base_controller.rb +5 -0
  26. data/app/controllers/crm/panel/home_controller.rb +8 -0
  27. data/app/controllers/crm/panel/qrcodes_controller.rb +29 -0
  28. data/app/controllers/crm/panel/sources_controller.rb +23 -0
  29. data/app/controllers/crm/panel/tags_controller.rb +26 -0
  30. data/app/controllers/crm/panel/texts_controller.rb +29 -0
  31. data/app/imports/crm/maintain_import.rb +11 -0
  32. data/app/jobs/crm/order_maintain_sync_job.rb +9 -0
  33. data/app/models/crm/agency.rb +5 -0
  34. data/app/models/crm/ext/address.rb +10 -0
  35. data/app/models/crm/ext/agency.rb +18 -0
  36. data/app/models/crm/ext/agent.rb +13 -0
  37. data/app/models/crm/ext/client.rb +13 -0
  38. data/app/models/crm/ext/maintainable.rb +24 -0
  39. data/app/models/crm/ext/member.rb +11 -0
  40. data/app/models/crm/{model → ext}/organ.rb +3 -3
  41. data/app/models/crm/maintain.rb +1 -1
  42. data/app/models/crm/model/agency.rb +11 -6
  43. data/app/models/crm/model/maintain.rb +54 -22
  44. data/app/models/crm/model/maintain_log.rb +2 -1
  45. data/app/models/crm/model/maintain_source.rb +5 -3
  46. data/app/models/crm/model/maintain_tag.rb +6 -5
  47. data/app/models/crm/model/qrcode.rb +54 -0
  48. data/app/models/crm/model/source.rb +55 -0
  49. data/app/models/crm/model/source_contact.rb +40 -0
  50. data/app/models/crm/model/{maintain_tag_template.rb → tag.rb} +1 -1
  51. data/app/models/crm/model/text.rb +45 -0
  52. data/app/models/crm/qrcode.rb +5 -0
  53. data/app/models/crm/source.rb +18 -0
  54. data/app/models/crm/source_contact.rb +5 -0
  55. data/app/models/crm/tag.rb +5 -0
  56. data/app/models/crm/text.rb +5 -0
  57. data/app/views/admin/_crm_nav.html.erb +9 -9
  58. data/app/views/crm/admin/addresses/_index/_breadcrumb.html.erb +6 -0
  59. data/app/views/crm/admin/addresses/_index/_top_bar.html+phone.erb +9 -0
  60. data/app/views/crm/admin/addresses/_nav.html.erb +4 -0
  61. data/app/views/crm/admin/addresses/_new/_top_bar.html.erb +12 -0
  62. data/app/views/crm/admin/addresses/_order/_weui_dialog_ft.html.erb +4 -0
  63. data/app/views/crm/admin/addresses/_order_from/_weui_dialog_ft.html.erb +4 -0
  64. data/app/views/crm/admin/addresses/index.html+phone.erb +7 -0
  65. data/app/views/crm/admin/agencies/_filter_form.html.erb +9 -0
  66. data/app/views/crm/admin/agencies/_form.html.erb +5 -0
  67. data/app/views/crm/admin/agencies/_index/_index_tbody.html.erb +38 -0
  68. data/app/views/crm/admin/agencies/_index/_index_thead.html.erb +7 -0
  69. data/app/views/crm/admin/agencies/_show_table.html.erb +33 -0
  70. data/app/views/crm/admin/agencies/edit_crowd.html.erb +6 -0
  71. data/app/views/crm/admin/base/_nav.html.erb +4 -0
  72. data/app/views/crm/admin/card_purchases/_index/_top_bar.html+phone.erb +12 -0
  73. data/app/views/crm/admin/card_templates/_index/_index_table.html+phone.erb +8 -0
  74. data/app/views/crm/admin/card_templates/_index/_index_tbody.html+phone.erb +6 -0
  75. data/app/views/crm/admin/card_templates/_index/_index_tr.html+phone.erb +6 -0
  76. data/app/views/crm/admin/card_templates/_index/_top_bar.html+phone.erb +11 -0
  77. data/app/views/crm/admin/card_templates/_show/_top_bar.html+phone.erb +12 -0
  78. data/app/views/crm/admin/home/index.html.erb +0 -0
  79. data/app/views/crm/admin/maintain_logs/_filter_form.html.erb +1 -1
  80. data/app/views/crm/admin/maintain_logs/_form.html.erb +2 -6
  81. data/app/views/crm/admin/maintain_logs/{_breadcrumb.html.erb → _index/_breadcrumb.html.erb} +1 -1
  82. data/app/views/crm/admin/maintain_logs/{_index_tbody.html.erb → _index/_index_tbody.html.erb} +1 -1
  83. data/app/views/crm/admin/maintain_logs/_index/_index_thead.html.erb +13 -0
  84. data/app/views/crm/admin/maintain_logs/_show_table.html.erb +5 -5
  85. data/app/views/crm/admin/maintain_sources/_filter_form.html.erb +1 -1
  86. data/app/views/crm/admin/maintain_sources/_form.html.erb +0 -1
  87. data/app/views/crm/admin/maintain_sources/_index/_index_tbody.html.erb +2 -0
  88. data/app/views/crm/admin/maintain_sources/_index/_index_thead.html.erb +2 -0
  89. data/app/views/crm/admin/maintain_sources/_index/_index_tr.html.erb +13 -0
  90. data/app/views/crm/admin/maintain_sources/templates.html.erb +0 -1
  91. data/app/views/crm/admin/maintain_tags/_form.html.erb +1 -2
  92. data/app/views/crm/admin/maintain_tags/{_index_tbody.html.erb → _index/_index_tbody.html.erb} +3 -1
  93. data/app/views/crm/admin/maintain_tags/_index/_index_thead.html.erb +5 -0
  94. data/app/views/crm/admin/maintain_tags/_show_table.html.erb +6 -6
  95. data/app/views/crm/admin/maintain_tags/templates.html.erb +6 -6
  96. data/app/views/crm/admin/maintains/_actions.html.erb +36 -0
  97. data/app/views/crm/admin/maintains/_agent_form.html.erb +14 -0
  98. data/app/views/crm/admin/maintains/_base/_agent_detect.html.erb +16 -0
  99. data/app/views/crm/admin/maintains/_base/_agent_show_table.html.erb +30 -0
  100. data/app/views/crm/admin/maintains/_base/_agent_tbody.html.erb +5 -0
  101. data/app/views/crm/admin/maintains/_base/_agent_thead.html.erb +5 -0
  102. data/app/views/crm/admin/maintains/_base/_filter_table.html+phone.erb +0 -0
  103. data/app/views/crm/admin/maintains/_base/_filter_table.html.erb +35 -0
  104. data/app/views/crm/admin/maintains/_base/_tabs.html.erb +7 -0
  105. data/app/views/crm/admin/maintains/_client_form.html+phone.erb +15 -0
  106. data/app/views/crm/admin/maintains/_client_form.html.erb +11 -0
  107. data/app/views/crm/admin/maintains/_create_detect.html.erb +9 -21
  108. data/app/views/crm/admin/maintains/_edit_assign.html.erb +10 -19
  109. data/app/views/crm/admin/maintains/_edit_form.html.erb +4 -2
  110. data/app/views/crm/admin/maintains/_edit_transfer.html.erb +8 -17
  111. data/app/views/crm/admin/maintains/_form.html.erb +15 -33
  112. data/app/views/crm/admin/maintains/_index/_button.html+phone.erb +4 -0
  113. data/app/views/crm/admin/maintains/_index/_button.html.erb +4 -0
  114. data/app/views/crm/admin/maintains/_index/_filter_form.html+phone.erb +14 -0
  115. data/app/views/crm/admin/maintains/{_filter_form.html.erb → _index/_filter_form.html.erb} +5 -5
  116. data/app/views/crm/admin/maintains/_index/_index_tbody.html+phone.erb +9 -0
  117. data/app/views/crm/admin/maintains/_index/_index_tbody.html.erb +49 -0
  118. data/app/views/crm/admin/maintains/_index/_index_thead.html.erb +42 -0
  119. data/app/views/crm/admin/maintains/_index/_index_tr.html+phone.erb +10 -0
  120. data/app/views/crm/admin/maintains/_index/_index_tr.html.erb +30 -0
  121. data/app/views/crm/admin/maintains/_new_batch_assign.html.erb +4 -13
  122. data/app/views/crm/admin/maintains/_new_detect/_new_detect.html+phone.erb +10 -0
  123. data/app/views/crm/admin/maintains/_new_detect/_new_detect.html.erb +4 -0
  124. data/app/views/crm/admin/maintains/_new_form.html+phone.erb +4 -0
  125. data/app/views/crm/admin/maintains/_new_form.html.erb +4 -2
  126. data/app/views/crm/admin/maintains/_public/_filter_form.html.erb +10 -0
  127. data/app/views/crm/admin/maintains/_public/_index_tbody.html.erb +33 -0
  128. data/app/views/crm/admin/maintains/_public/_index_thead.html.erb +33 -0
  129. data/app/views/crm/admin/maintains/_public/_index_tr.html.erb +24 -0
  130. data/app/views/crm/admin/maintains/_show/_external.html.erb +19 -0
  131. data/app/views/crm/admin/maintains/_show/_profile.html.erb +24 -0
  132. data/app/views/crm/admin/maintains/_show/_show_head.html+phone.erb +16 -0
  133. data/app/views/crm/admin/maintains/_show_table.html.erb +4 -49
  134. data/app/views/crm/admin/maintains/assume.turbo_stream.erb +3 -0
  135. data/app/views/crm/admin/maintains/create_detect.html.erb +3 -0
  136. data/app/views/crm/admin/maintains/detach.turbo_stream.erb +3 -0
  137. data/app/views/crm/admin/maintains/edit_assign.html.erb +3 -0
  138. data/app/views/crm/admin/maintains/edit_transfer.html.erb +3 -0
  139. data/app/views/crm/admin/maintains/index.html+phone.erb +8 -0
  140. data/app/views/crm/admin/maintains/index.html.erb +9 -26
  141. data/app/views/crm/admin/maintains/new_batch_assign.html.erb +3 -0
  142. data/app/views/crm/admin/maintains/new_detect.html.erb +7 -0
  143. data/app/views/crm/admin/maintains/public.html.erb +6 -80
  144. data/app/views/crm/admin/orders/_actions.html+phone.erb +16 -0
  145. data/app/views/crm/admin/orders/_add/_top_bar.html.erb +18 -0
  146. data/app/views/crm/admin/orders/_base/_address.html+phone.erb +25 -0
  147. data/app/views/crm/admin/orders/_base/_from_address.html+phone.erb +25 -0
  148. data/app/views/crm/admin/{maintains/_edit_order.html.erb → orders/_edit_form.html.erb} +1 -1
  149. data/app/views/crm/admin/orders/_index/_breadcrumb.html.erb +6 -0
  150. data/app/views/crm/admin/orders/_index/_button.html+phone.erb +4 -0
  151. data/app/views/crm/admin/orders/_index/_button.html.erb +4 -0
  152. data/app/views/crm/admin/orders/_index/_index_tbody.html+phone.erb +10 -0
  153. data/app/views/crm/admin/orders/_index/_index_tr.html+phone.erb +10 -0
  154. data/app/views/crm/admin/orders/_index/_index_tr.html.erb +16 -0
  155. data/app/views/crm/admin/orders/_index/_top_bar.html+phone.erb +13 -0
  156. data/app/views/crm/admin/orders/_nav.html.erb +4 -0
  157. data/app/views/crm/admin/orders/_new/_address_button.html.erb +4 -0
  158. data/app/views/crm/admin/orders/_new/_breadcrumb.html.erb +7 -0
  159. data/app/views/crm/admin/orders/_new/_head.html.erb +3 -0
  160. data/app/views/crm/admin/orders/_new/_top_bar.html.erb +12 -0
  161. data/app/views/crm/admin/orders/index.html+phone.erb +7 -0
  162. data/app/views/crm/admin/orders/index.html.erb +7 -0
  163. data/app/views/crm/admin/orders/payment_types.html+phone.erb +19 -0
  164. data/app/views/crm/admin/orders/payment_types.html.erb +17 -0
  165. data/app/views/crm/admin/payments/create.turbo_stream+phone.erb +3 -0
  166. data/app/views/crm/admin/payments/destroy.turbo_stream+phone.erb +3 -0
  167. data/app/views/crm/admin/payments/order_create.turbo_stream+phone.erb +3 -0
  168. data/app/views/crm/admin/wallet_logs/_index/_top_bar.html+phone.erb +12 -0
  169. data/app/views/crm/admin/wallet_payments/_index/_top_bar.html+phone.erb +12 -0
  170. data/app/views/crm/admin/wallet_templates/_index/_breadcrumb.html.erb +12 -0
  171. data/app/views/crm/admin/wallet_templates/_index/_filter_form.html.erb +0 -0
  172. data/app/views/crm/admin/wallet_templates/_index/_index_table.html+phone.erb +8 -0
  173. data/app/views/crm/admin/wallet_templates/_index/_index_tbody.html+phone.erb +6 -0
  174. data/app/views/crm/admin/wallet_templates/_index/_index_tbody.html.erb +13 -0
  175. data/app/views/crm/admin/wallet_templates/_index/_index_thead.html.erb +2 -0
  176. data/app/views/crm/admin/wallet_templates/_index/_index_tr.html+phone.erb +6 -0
  177. data/app/views/crm/admin/wallet_templates/_index/_top_bar.html+phone.erb +11 -0
  178. data/app/views/crm/admin/wallet_templates/_show/_top_bar.html+phone.erb +12 -0
  179. data/app/views/crm/admin/{maintain_sources → wallets/_index}/_breadcrumb.html.erb +2 -1
  180. data/app/views/crm/admin/wallets/_index/_index_table.html.erb +12 -0
  181. data/app/views/crm/admin/wallets/_index/_index_tbody.html.erb +25 -0
  182. data/app/views/crm/admin/wallets/_index/_index_thead.html.erb +5 -0
  183. data/app/views/crm/admin/wallets/_index/_index_tr.html.erb +19 -0
  184. data/app/views/crm/admin/wallets/_index/_tab_bar_footer.html.erb +4 -0
  185. data/app/views/crm/admin/wallets/_index/_template_tbody.html.erb +12 -0
  186. data/app/views/crm/admin/wallets/_index/_template_tr.html.erb +10 -0
  187. data/app/views/crm/admin/wallets/_index/_top_bar.html+phone.erb +11 -0
  188. data/app/views/crm/admin/wallets/_index/_wallet.html.erb +21 -0
  189. data/app/views/crm/admin/wallets/index.html+phone.erb +3 -0
  190. data/app/views/crm/admin/wallets/index.html.erb +6 -0
  191. data/app/views/crm/me/agencies/_client_form.html.erb +9 -0
  192. data/app/views/crm/me/agencies/_filter.html.erb +8 -0
  193. data/app/views/crm/me/agencies/_form.html.erb +7 -0
  194. data/app/views/crm/me/agencies/_show_table.html.erb +36 -0
  195. data/app/views/crm/me/agencies/index.html+phone.erb +18 -0
  196. data/app/views/crm/me/agencies/index.html.erb +40 -0
  197. data/app/views/crm/me/home/_cart_item.html.erb +15 -0
  198. data/app/views/crm/me/home/index.html+phone.erb +38 -0
  199. data/app/views/crm/me/maintain_sources/_about_item.html.erb +33 -0
  200. data/app/views/crm/me/maintain_sources/_order.html.erb +11 -0
  201. data/app/views/crm/me/maintain_sources/index.html.erb +20 -0
  202. data/app/views/crm/me/maintain_sources/list.html.erb +13 -0
  203. data/app/views/crm/me/maintain_sources/source.html.erb +33 -0
  204. data/app/views/crm/my/agencies/_client_form.html.erb +9 -0
  205. data/app/views/crm/my/agencies/_edit_form.html.erb +4 -0
  206. data/app/views/crm/{admin/maintain_source_templates → my/agencies}/_filter_form.html.erb +1 -1
  207. data/app/views/crm/my/agencies/_form.html.erb +19 -0
  208. data/app/views/crm/my/agencies/_new_form.html.erb +4 -0
  209. data/app/views/crm/my/agencies/_show_table.html.erb +36 -0
  210. data/app/views/crm/my/agencies/index.html+phone.erb +24 -0
  211. data/app/views/crm/my/agencies/index.html.erb +40 -0
  212. data/app/views/crm/panel/base/_nav.html.erb +4 -0
  213. data/app/views/crm/panel/home/index.html.erb +0 -0
  214. data/app/views/crm/panel/qrcodes/_form.html.erb +5 -0
  215. data/app/views/crm/panel/qrcodes/_index/_breadcrumb.html.erb +7 -0
  216. data/app/views/crm/panel/qrcodes/_index/_index_tbody.html.erb +13 -0
  217. data/app/views/crm/panel/qrcodes/_index/_index_thead.html.erb +11 -0
  218. data/app/views/crm/panel/qrcodes/_show_table.html.erb +4 -0
  219. data/app/views/crm/panel/qrcodes/index.html.erb +3 -0
  220. data/app/views/crm/panel/sources/_form.html.erb +4 -0
  221. data/app/views/crm/{admin/maintain_tag_templates → panel/sources/_index}/_filter_form.html.erb +1 -1
  222. data/app/views/crm/panel/sources/_index/_index_tbody.html.erb +13 -0
  223. data/app/views/crm/panel/sources/_index/_index_thead.html.erb +3 -0
  224. data/app/views/crm/panel/sources/_index/_index_tr.html.erb +25 -0
  225. data/app/views/crm/panel/sources/_show/_breadcrumb.html.erb +6 -0
  226. data/app/views/crm/panel/sources/_show/_qrcode_button.html.erb +4 -0
  227. data/app/views/crm/panel/sources/_show/_qrcode_table.html.erb +18 -0
  228. data/app/views/crm/panel/sources/_show/_qrcode_tbody.html.erb +13 -0
  229. data/app/views/crm/panel/sources/_show/_qrcode_thead.html.erb +11 -0
  230. data/app/views/crm/panel/sources/_show/_qrcode_tr.html.erb +16 -0
  231. data/app/views/crm/panel/sources/_show/_show_table.html.erb +16 -0
  232. data/app/views/crm/panel/sources/_show/_text_button.html.erb +4 -0
  233. data/app/views/crm/panel/sources/_show/_text_table.html.erb +18 -0
  234. data/app/views/crm/panel/sources/_show/_text_tbody.html.erb +9 -0
  235. data/app/views/crm/panel/sources/_show/_text_thead.html.erb +9 -0
  236. data/app/views/crm/panel/sources/_show/_text_tr.html.erb +16 -0
  237. data/app/views/crm/panel/sources/index.html.erb +8 -0
  238. data/app/views/crm/panel/sources/show.html.erb +14 -0
  239. data/app/views/crm/{admin/maintain_tag_templates → panel/tags}/_form.html.erb +0 -1
  240. data/app/views/crm/{admin/maintain_tag_templates → panel/tags/_index}/_index_tbody.html.erb +4 -2
  241. data/app/views/crm/panel/tags/_index/_index_thead.html.erb +8 -0
  242. data/app/views/crm/panel/tags/_show_table.html.erb +20 -0
  243. data/app/views/crm/panel/texts/_form.html.erb +5 -0
  244. data/app/views/crm/panel/texts/_index/_breadcrumb.html.erb +7 -0
  245. data/app/views/crm/panel/texts/_index/_index_tbody.html.erb +9 -0
  246. data/app/views/crm/panel/texts/_index/_index_thead.html.erb +9 -0
  247. data/app/views/crm/panel/texts/_show_table.html.erb +4 -0
  248. data/app/views/crm/panel/texts/index.html.erb +3 -0
  249. data/app/views/panel/_crm_nav.html.erb +11 -0
  250. data/config/locales/en.enum.yml +6 -0
  251. data/config/locales/zh.attributes.yml +16 -7
  252. data/config/locales/zh.controller.yml +82 -5
  253. data/config/locales/zh.enum.yml +40 -2
  254. data/config/routes.rb +88 -14
  255. data/lib/rails_crm/engine.rb +2 -6
  256. metadata +254 -80
  257. data/app/controllers/crm/admin/maintain_source_templates_controller.rb +0 -52
  258. data/app/controllers/crm/admin/maintain_tag_templates_controller.rb +0 -56
  259. data/app/models/crm/maintain_source_template.rb +0 -5
  260. data/app/models/crm/maintain_tag_template.rb +0 -5
  261. data/app/models/crm/model/maintain_source_template.rb +0 -12
  262. data/app/models/crm/model/member.rb +0 -11
  263. data/app/models/crm/model/order.rb +0 -10
  264. data/app/views/crm/admin/maintain_logs/_index_thead.html.erb +0 -14
  265. data/app/views/crm/admin/maintain_logs/_maintain_log.json.jbuilder +0 -11
  266. data/app/views/crm/admin/maintain_logs/_show.json.jbuilder +0 -1
  267. data/app/views/crm/admin/maintain_logs/index.json.jbuilder +0 -2
  268. data/app/views/crm/admin/maintain_source_templates/_edit_form.html.erb +0 -4
  269. data/app/views/crm/admin/maintain_source_templates/_form.html.erb +0 -2
  270. data/app/views/crm/admin/maintain_source_templates/_index_tbody.html.erb +0 -14
  271. data/app/views/crm/admin/maintain_source_templates/_index_thead.html.erb +0 -2
  272. data/app/views/crm/admin/maintain_source_templates/_maintain_source.json.jbuilder +0 -7
  273. data/app/views/crm/admin/maintain_source_templates/_new_form.html.erb +0 -4
  274. data/app/views/crm/admin/maintain_source_templates/_show.json.jbuilder +0 -1
  275. data/app/views/crm/admin/maintain_source_templates/_show_table.html.erb +0 -8
  276. data/app/views/crm/admin/maintain_source_templates/index.json.jbuilder +0 -1
  277. data/app/views/crm/admin/maintain_sources/_edit_form.html.erb +0 -4
  278. data/app/views/crm/admin/maintain_sources/_index_tbody.html.erb +0 -12
  279. data/app/views/crm/admin/maintain_sources/_index_thead.html.erb +0 -3
  280. data/app/views/crm/admin/maintain_sources/_maintain_source.json.jbuilder +0 -6
  281. data/app/views/crm/admin/maintain_sources/_show.json.jbuilder +0 -1
  282. data/app/views/crm/admin/maintain_sources/index.json.jbuilder +0 -1
  283. data/app/views/crm/admin/maintain_tag_templates/_edit_form.html.erb +0 -4
  284. data/app/views/crm/admin/maintain_tag_templates/_index_thead.html.erb +0 -7
  285. data/app/views/crm/admin/maintain_tag_templates/_maintain_tag_template.json.jbuilder +0 -11
  286. data/app/views/crm/admin/maintain_tag_templates/_new_form.html.erb +0 -4
  287. data/app/views/crm/admin/maintain_tag_templates/_show.json.jbuilder +0 -1
  288. data/app/views/crm/admin/maintain_tag_templates/_show_table.html.erb +0 -20
  289. data/app/views/crm/admin/maintain_tag_templates/index.json.jbuilder +0 -1
  290. data/app/views/crm/admin/maintain_tags/_breadcrumb.html.erb +0 -6
  291. data/app/views/crm/admin/maintain_tags/_edit_form.html.erb +0 -4
  292. data/app/views/crm/admin/maintain_tags/_filter_form.html.erb +0 -9
  293. data/app/views/crm/admin/maintain_tags/_index_thead.html.erb +0 -6
  294. data/app/views/crm/admin/maintain_tags/_maintain_tag.json.jbuilder +0 -9
  295. data/app/views/crm/admin/maintain_tags/_new_form.html.erb +0 -4
  296. data/app/views/crm/admin/maintain_tags/_show.json.jbuilder +0 -1
  297. data/app/views/crm/admin/maintain_tags/index.json.jbuilder +0 -1
  298. data/app/views/crm/admin/maintains/_button.html.erb +0 -3
  299. data/app/views/crm/admin/maintains/_filter_table.html.erb +0 -54
  300. data/app/views/crm/admin/maintains/_index_thead.html.erb +0 -40
  301. data/app/views/crm/admin/maintains/_index_tr.html.erb +0 -36
  302. data/app/views/crm/admin/maintains/_maintain.json.jbuilder +0 -24
  303. data/app/views/crm/admin/maintains/_new_detect.html.erb +0 -15
  304. data/app/views/crm/admin/maintains/_show.json.jbuilder +0 -1
  305. data/app/views/crm/admin/maintains/create_detect.js.erb +0 -3
  306. data/app/views/crm/admin/maintains/edit_assign.js +0 -8
  307. data/app/views/crm/admin/maintains/edit_assign.js.erb +0 -3
  308. data/app/views/crm/admin/maintains/edit_order.js.erb +0 -12
  309. data/app/views/crm/admin/maintains/edit_transfer.js +0 -8
  310. data/app/views/crm/admin/maintains/edit_transfer.js.erb +0 -3
  311. data/app/views/crm/admin/maintains/index.json.jbuilder +0 -2
  312. data/app/views/crm/admin/maintains/new.json.jbuilder +0 -5
  313. data/app/views/crm/admin/maintains/new_batch_assign.js.erb +0 -3
  314. data/app/views/crm/admin/maintains/new_detect.js.erb +0 -1
  315. data/app/views/crm/admin/maintains/orders.html.erb +0 -54
  316. data/app/views/crm/admin/maintains/public.json.jbuilder +0 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 72c2a95f835e19a0e39f7809c25bb57c34329fb6ddf643842ad46d1bce49319f
4
- data.tar.gz: acb8d4f08c07645b95cff04448afc51251f7f4e2d921985124771edaf3550b1a
3
+ metadata.gz: 6fad1ed33e1370ffef47cf387ddbfb66ef688467ac5bf1c96fcd37a969b5889b
4
+ data.tar.gz: cc4e62a59b42408c86e4b6a74563861d07078dbd5c51550c4198e0a5a2153504
5
5
  SHA512:
6
- metadata.gz: 349336ec26ed4919be8ac2c95eb723ad1976bf9b8595d41d45cbc199c521aea742871011f9d0322b0e2c877d24d43fd4e87bc9c5cc4f97da6e4e9f4e8330db68
7
- data.tar.gz: c561031829901c37c790d63141642ab74dffc497561158fc764f678a0bcbf4a3179b2495af4a209f806477b10b6bc3ac573246f496cf2f8c0a195cea5297499f
6
+ metadata.gz: e23228bbb60559196fdcbadfd74be650f92617759f7c1f4a30ddadae516337725d08b40311873a4a2f6e444ab37008be73aa97556c28030552d8bbdec7881fef
7
+ data.tar.gz: 1653607118ca70084ee927b637136013a39347ac5d4a0554b444f283bb2029954831cdd532a2306b19c85e62a53574a6a19902f26c369986d5d2124c7dc76078
data/README.md CHANGED
@@ -6,28 +6,6 @@
6
6
 
7
7
  简单 CRM 架构
8
8
 
9
- ## Usage
10
- How to use my plugin.
11
-
12
- ## Installation
13
- Add this line to your application's Gemfile:
14
-
15
- ```ruby
16
- gem 'rails_crm'
17
- ```
18
-
19
- And then execute:
20
- ```bash
21
- $ bundle
22
- ```
23
-
24
- Or install it yourself as:
25
- ```bash
26
- $ gem install rails_crm
27
- ```
28
-
29
- ## Contributing
30
- Contribution directions go here.
31
9
 
32
10
  ## 开源协议
33
- 遵循 [MIT](https://opensource.org/licenses/MIT) 协议
11
+ 遵循 [MIT](LICENSE) 协议
@@ -0,0 +1,57 @@
1
+ module Crm
2
+ class Admin::AddressesController < Profiled::Admin::AddressesController
3
+ before_action :set_maintain
4
+ before_action :set_address, only: [:show, :edit, :update, :destroy, :actions]
5
+ before_action :set_new_address, only: [:new, :create, :order_new, :order_create, :from_new, :from_create]
6
+ before_action :set_addresses, only: [:order, :order_from, :order_create, :from_create]
7
+
8
+ def index
9
+ q_params = {}
10
+ q_params.merge! params.permit(:tel)
11
+
12
+ @addresses = @maintain.addresses.includes(:area, :station).default_where(q_params).page(params[:page])
13
+ end
14
+
15
+ def new
16
+ end
17
+
18
+ def order
19
+ end
20
+
21
+ def order_from
22
+ end
23
+
24
+ def from_create
25
+ @address.save
26
+ end
27
+
28
+ private
29
+ def set_maintain
30
+ @maintain = Maintain.find params[:maintain_id]
31
+ end
32
+
33
+ def set_address
34
+ @address = @maintain.addresses.find(params[:id])
35
+ end
36
+
37
+ def set_addresses
38
+ @addresses = @maintain.addresses.includes(:area).order(id: :desc).page(params[:page])
39
+ end
40
+
41
+ def set_new_address
42
+ @address = @maintain.addresses.build(address_params)
43
+ @address.area ||= Profiled::Area.new
44
+ end
45
+
46
+ def _prefixes
47
+ super do |pres|
48
+ if ['order', 'order_from', 'order_new', 'order_create', 'from_new', 'from_create'].include?(params[:action])
49
+ pres + ['profiled/my/addresses/_base', 'profiled/my/addresses']
50
+ else
51
+ pres
52
+ end
53
+ end
54
+ end
55
+
56
+ end
57
+ end
@@ -0,0 +1,65 @@
1
+ module Crm
2
+ class Admin::AgenciesController < Admin::BaseController
3
+ before_action :set_agency, only: [
4
+ :show, :edit, :update,
5
+ :edit_crowd, :update_crowd, :destroy_crowd, :destroy_card,
6
+ :destroy
7
+ ]
8
+
9
+ def index
10
+ q_params = {}
11
+ #q_params.merge! default_params
12
+ #q_params.merge! member_id: current_member.id if current_member
13
+ q_params.merge! params.permit('client.real_name')
14
+
15
+ @agencies = Agency.distinct.joins(:cards).where.not(cards: { id: nil }).default_where(q_params).order(id: :desc).page(params[:page])
16
+ end
17
+
18
+ def edit_crowd
19
+ q_params = {
20
+ 'id-not': @agency.crowd_ids
21
+ }
22
+ q_params.merge! default_params
23
+ @crowds = Crowd.default_where(q_params)
24
+ end
25
+
26
+ def update_crowd
27
+ if @agency.join_crowd params[:crowd_id]
28
+ render 'update'
29
+ else
30
+ render :edit_crowd, locals: { model: @agency }, status: :unprocessable_entity
31
+ end
32
+ end
33
+
34
+ def destroy_crowd
35
+ cs = @agency.crowd_members.find_by(crowd_id: params[:crowd_id])
36
+ if cs&.destroy
37
+ render 'update'
38
+ end
39
+ end
40
+
41
+ def destroy_card
42
+ card = @agency.cards.find(params[:card_id])
43
+ card.agency = nil
44
+ card.client = nil
45
+
46
+ if card.save
47
+ render 'update'
48
+ end
49
+ end
50
+
51
+ private
52
+ def set_agency
53
+ @agency = Agency.find(params[:id])
54
+ end
55
+
56
+ def agency_params
57
+ params.fetch(:agency, {}).permit(
58
+ :real_name,
59
+ :gender,
60
+ :note
61
+ )
62
+ end
63
+
64
+ end
65
+ end
@@ -0,0 +1,16 @@
1
+ module Crm
2
+ class Admin::CardPurchasesController < Trade::Admin::CardPurchasesController
3
+ before_action :set_maintain
4
+ before_action :set_card_purchase, only: [:show, :edit, :update, :destroy, :actions]
5
+
6
+ def index
7
+ @card_purchases = @card.card_purchases.order(last_expire_on: :desc).page(params[:page])
8
+ end
9
+
10
+ private
11
+ def set_maintain
12
+ @maintain = Maintain.find params[:maintain_id]
13
+ end
14
+
15
+ end
16
+ end
@@ -0,0 +1,49 @@
1
+ module Crm
2
+ class Admin::CardTemplatesController < Trade::Admin::CardTemplatesController
3
+ before_action :set_maintain
4
+ before_action :set_card_template, only: [:show, :edit, :update, :destroy, :actions]
5
+ before_action :set_card_template_ids, only: [:index]
6
+ before_action :set_card_templates
7
+ before_action :set_new_order, only: [:show]
8
+
9
+ def index
10
+ q_params = {}
11
+ q_params.merge! params.permit(:tel)
12
+
13
+ @card_templates = Trade::CardTemplate.default_where(default_params).page(params[:page])
14
+ end
15
+
16
+ def show
17
+ @card = @maintain.cards.find_by(card_template_id: @card_template.id)
18
+ end
19
+
20
+ private
21
+ def set_maintain
22
+ @maintain = Maintain.find params[:maintain_id]
23
+ end
24
+
25
+ def set_card_templates
26
+ @card_templates = Trade::CardTemplate.default_where(default_params)
27
+ end
28
+
29
+ def set_new_order
30
+ @order = @maintain.orders.build
31
+ @order.items.build
32
+ end
33
+
34
+ def set_card_template_ids
35
+ @card_template_ids = @maintain.cards.pluck(:card_template_id)
36
+ end
37
+
38
+ def _prefixes
39
+ super do |pres|
40
+ if ['show'].include?(params[:action])
41
+ pres + ['trade/my/card_templates/_show', 'trade/my/card_templates', 'trade/my/base']
42
+ else
43
+ pres
44
+ end
45
+ end
46
+ end
47
+
48
+ end
49
+ end
@@ -0,0 +1,8 @@
1
+ module Crm
2
+ class Admin::HomeController < Admin::BaseController
3
+
4
+ def index
5
+ end
6
+
7
+ end
8
+ end
@@ -2,7 +2,7 @@ module Crm
2
2
  class Admin::MaintainLogsController < Admin::BaseController
3
3
  before_action :set_maintain
4
4
  before_action :set_maintain_log, only: [:show, :edit, :update, :destroy]
5
- before_action :prepare_form, only: [:new, :edit]
5
+ before_action :set_maintain_tags, only: [:new, :edit]
6
6
 
7
7
  def index
8
8
  @maintain_logs = @maintain.maintain_logs.order(id: :desc).page(params[:page]).per(params[:per])
@@ -21,26 +21,8 @@ module Crm
21
21
  end
22
22
  end
23
23
 
24
- def show
25
- end
26
-
27
- def edit
28
- end
29
-
30
- def update
31
- @maintain_log.assign_attributes(maintain_log_params)
32
-
33
- unless @maintain_log.save
34
- render :edit, locals: { model: @maintain_log }, status: :unprocessable_entity
35
- end
36
- end
37
-
38
- def destroy
39
- @maintain_log.destroy
40
- end
41
-
42
24
  private
43
- def prepare_form
25
+ def set_maintain_tags
44
26
  @maintain_tags = MaintainTag.default_where(default_params)
45
27
  end
46
28
 
@@ -7,11 +7,11 @@ module Crm
7
7
  q_params.merge! default_params
8
8
  q_params.merge! params.permit(:name)
9
9
 
10
- @maintain_sources = MaintainSource.includes(:maintain_source_template).default_where(q_params).page(params[:page])
10
+ @maintain_sources = MaintainSource.includes(:source).default_where(q_params).page(params[:page])
11
11
  end
12
12
 
13
13
  def templates
14
- @maintain_source_templates = MaintainSourceTemplate.order(id: :asc)
14
+ @maintain_source_templates = Source.order(id: :asc)
15
15
  @selected_maintain_sources = MaintainSource.where.not(maintain_source_template_id: nil).default_where(q_params).order(maintain_source_template_id: :asc)
16
16
  end
17
17
 
@@ -27,24 +27,6 @@ module Crm
27
27
  end
28
28
  end
29
29
 
30
- def show
31
- end
32
-
33
- def edit
34
- end
35
-
36
- def update
37
- @maintain_source.assign_attributes(maintain_source_params)
38
-
39
- unless @maintain_source.save
40
- render :edit, locals: { model: @maintain_source }, status: :unprocessable_entity
41
- end
42
- end
43
-
44
- def destroy
45
- @maintain_source.destroy
46
- end
47
-
48
30
  private
49
31
  def set_maintain_source
50
32
  @maintain_source = MaintainSource.find(params[:id])
@@ -7,9 +7,9 @@ module Crm
7
7
  q_params.merge! default_params
8
8
  q_params.merge! params.permit(:name)
9
9
 
10
- @maintain_tags = MaintainTag.where(maintain_tag_template_id: nil).default_where(q_params).page(params[:page])
11
- @selected_maintain_tags = MaintainTag.where.not(maintain_tag_template_id: nil).default_where(q_params).order(maintain_tag_template_id: :asc)
12
- @maintain_tag_templates = MaintainTagTemplate.order(id: :asc)
10
+ @maintain_tags = MaintainTag.where(tag_id: nil).default_where(q_params).page(params[:page])
11
+ @selected_maintain_tags = MaintainTag.where.not(tag_id: nil).default_where(q_params).order(tag_id: :asc)
12
+ @tags = Tag.order(id: :asc)
13
13
  end
14
14
 
15
15
  def new
@@ -29,24 +29,6 @@ module Crm
29
29
  MaintainTag.default_where(q_params).sync_from_template
30
30
  end
31
31
 
32
- def show
33
- end
34
-
35
- def edit
36
- end
37
-
38
- def update
39
- @maintain_tag.assign_attributes(maintain_tag_params)
40
-
41
- unless @maintain_tag.save
42
- render :edit, locals: { model: @maintain_tag }, status: :unprocessable_entity
43
- end
44
- end
45
-
46
- def destroy
47
- @maintain_tag.destroy
48
- end
49
-
50
32
  private
51
33
  def set_maintain_tag
52
34
  @maintain_tag = MaintainTag.find(params[:id])
@@ -7,20 +7,22 @@ module Crm
7
7
  :edit_assign, :update_assign,
8
8
  :detach, :assume, :destroy
9
9
  ]
10
- before_action :prepare_form, only: [:new, :create_detect, :edit]
10
+ before_action :set_task_templates, :set_payment_strategies, only: [:new, :create_detect, :edit, :update]
11
+ before_action :set_maintain_sources, only: [:index, :public, :create_detect, :new, :create, :edit, :update]
12
+ before_action :set_maintain_tags, only: [:index, :public]
11
13
 
12
14
  def index
13
- q_params = {}
14
- q_params.merge! member_params
15
+ q_params = {
16
+ client_type: 'Profiled::Profile'
17
+ }
18
+ q_params.merge! default_params
15
19
  q_params.merge! search_params
16
20
  if (q_params.keys - [:member_id]).blank?
17
21
  q_params.merge! state: 'init'
18
22
  end
19
23
 
20
- @maintain_sources = MaintainSource.default_where(default_params)
21
- @maintain_tags = MaintainTag.default_where(default_params)
22
24
  @pipelines = Bench::TaskTemplate.default_where(default_params.merge(tasking_type: 'Crm::Maintain'))
23
- @maintains = Maintain.default_where(q_params).includes(:agency, :maintain_source, :member, :maintain_logs).order(id: :desc).page(params[:page]).per(params[:per])
25
+ @maintains = Maintain.default_where(q_params).includes(:client, :agency, :maintain_source, :member, :maintain_logs).order(id: :desc).page(params[:page]).per(params[:per])
24
26
  end
25
27
 
26
28
  def public
@@ -40,57 +42,41 @@ module Crm
40
42
  def create_detect
41
43
  q_params = {}
42
44
  q_params.merge! default_params
43
- @agent = Profile.default_where(q_params).find_by(identity: params[:identity])
44
- if @agent
45
- @agencies = @agent.proteges
46
- render 'create_detect'
45
+ @profile = Profiled::Profile.default_where(q_params).find_by(identity: params[:identity])
46
+
47
+ if @profile
48
+ @agencies = @profile.agencies
49
+ render 'create_detect'
47
50
  else
48
- @maintain = Maintain.new
49
- @maintain.member_id = current_member.id if current_member
50
- @maintain.agent = Profile.new(identity: params[:identity])
51
- @maintain.client = Profile.new
51
+ @maintain = current_member.maintains.build
52
+ @maintain.profile_agent = Profiled::Profile.new(identity: params[:identity])
53
+ @maintain.profile_client = Profiled::Profile.new(identity: params[:identity])
52
54
  @maintain.build_agency
53
- @agencies = Agency.none
54
55
  render 'new'
55
56
  end
56
57
  end
57
58
 
58
59
  def new
59
- @maintain = Maintain.new
60
- @maintain.member_id = current_member.id if current_member
60
+ @maintain = current_member.maintains.build
61
+
61
62
  if params[:agent_id]
62
- @maintain.agent = Profile.find params[:agent_id]
63
+ @maintain.agent = Profiled::Profile.find params[:agent_id]
63
64
  else
64
- @maintain.agent = Profile.new
65
+ @maintain.agent = Profiled::Profile.new
65
66
  end
66
67
  if params[:agency_id]
67
68
  agency = Agency.find params[:agency_id]
68
69
  @maintain.agency = agency
69
70
  @maintain.client = agency.client
70
71
  else
71
- @maintain.client = Profile.new
72
+ @maintain.client = Profiled::Profile.new
72
73
  end
73
74
  end
74
75
 
75
76
  def create
76
77
  @maintain = Maintain.new(maintain_params)
77
78
  @maintain.member_id ||= current_member.id
78
-
79
- if client_params[:id]
80
- @maintain.client = Profile.find client_params[:id]
81
- else
82
- @maintain.client = Profile.new client_params
83
- end
84
- if agent_params[:id]
85
- @maintain.agent = Profile.find agent_params[:id]
86
- else
87
- @maintain.agent = Profile.new agent_params
88
- end
89
- if agency_params[:id]
90
- @maintain.agency = Agency.find agency_params[:id]
91
- else
92
- @maintain.agency = Agency.new agency_params
93
- end
79
+ @maintain.profile_client.organ = @maintain.organ
94
80
 
95
81
  unless @maintain.save
96
82
  render :new, locals: { model: @maintain }, status: :unprocessable_entity
@@ -104,8 +90,6 @@ module Crm
104
90
  p.merge! default_form_params
105
91
  @maintain = Maintain.create(p)
106
92
  end
107
-
108
- head :ok
109
93
  end
110
94
 
111
95
  def new_batch_assign
@@ -116,9 +100,9 @@ module Crm
116
100
  }
117
101
  pipeline_params.merge! job_title_id: current_member.lower_job_title_ids if current_member
118
102
  pipeline_params.merge! default_params
119
- job_title_ids = PipelineMember.default_where(pipeline_params).pluck(:job_title_id)
103
+ #job_title_ids = PipelineMember.default_where(pipeline_params).pluck(:job_title_id)
120
104
 
121
- @members = Member.default_where('member_departments.job_title_id': job_title_ids)
105
+ @members = Org::Member.default_where('member_departments.job_title_id': job_title_ids)
122
106
  end
123
107
 
124
108
  def create_batch_assign
@@ -129,20 +113,6 @@ module Crm
129
113
  redirect_back fallback_location: admin_maintains_url, notice: '移交成功'
130
114
  end
131
115
 
132
- def show
133
- end
134
-
135
- def edit
136
- end
137
-
138
- def update
139
- @maintain.assign_attributes(update_params)
140
-
141
- unless @maintain.save
142
- render :edit, locals: { model: @maintain }, status: :unprocessable_entity
143
- end
144
- end
145
-
146
116
  def edit_transfer
147
117
  pipeline_params = {
148
118
  piping_type: 'Maintain',
@@ -151,11 +121,11 @@ module Crm
151
121
  }
152
122
  pipeline_params.merge! 'pipeline_members.job_title_id': current_member.job_title_ids if current_member
153
123
  pipeline_params.merge! default_params
154
- @pipelines = Pipeline.default_where(pipeline_params)
124
+ @pipelines = Bench::TaskTemplate.default_where(pipeline_params)
155
125
  if @maintain.pipeline_member
156
- @members = Member.default_where('member_departments.job_title_id': @maintain.pipeline_member.job_title_id)
126
+ @members = Org::Member.default_where('member_departments.job_title_id': @maintain.pipeline_member.job_title_id)
157
127
  else
158
- @members = Member.none
128
+ @members = Org::Member.none
159
129
  end
160
130
  end
161
131
 
@@ -174,11 +144,11 @@ module Crm
174
144
  }
175
145
  pipeline_params.merge! 'pipeline_members.job_title_id': current_member.lower_job_title_ids if current_member
176
146
  pipeline_params.merge! default_params
177
- @pipelines = Pipeline.default_where(pipeline_params)
147
+ @pipelines = Bench::TaskTemplate.default_where(pipeline_params)
178
148
  if @maintain.pipeline_member
179
- @members = Member.default_where('member_departments.job_title_id': @maintain.pipeline_member.job_title_id)
149
+ @members = Org::Member.default_where('member_departments.job_title_id': @maintain.pipeline_member.job_title_id)
180
150
  else
181
- @members = Member.none
151
+ @members = Org::Member.none
182
152
  end
183
153
  end
184
154
 
@@ -191,34 +161,10 @@ module Crm
191
161
 
192
162
  def detach
193
163
  @maintain.update member_id: nil
194
- redirect_to admin_maintains_url
195
164
  end
196
165
 
197
166
  def assume
198
167
  @maintain.update member_id: current_member.id
199
- redirect_to admin_maintains_url
200
- end
201
-
202
- def orders
203
- @orders = @maintain.orders.order(id: :desc).page(params[:page])
204
- end
205
-
206
- def edit_order
207
- @card_templates = CardTemplate.default_where(default_params)
208
- end
209
-
210
- def update_order
211
- q_params = default_params
212
- q_params.merge! params.permit(:advance_id)
213
- advance = Advance.find(q_params['advance_id'])
214
-
215
- order = advance.generate_order! buyer: @maintain.agent, maintain_id: @maintain.id
216
- flash[:notice] = "已下单,请等待财务核销, 订单号为:#{order.uuid}"
217
- redirect_to orders_admin_maintain_url(@maintain, order_id: order.id)
218
- end
219
-
220
- def destroy
221
- @maintain.destroy
222
168
  end
223
169
 
224
170
  private
@@ -226,28 +172,43 @@ module Crm
226
172
  @maintain = Maintain.find(params[:id])
227
173
  end
228
174
 
229
- def prepare_form
175
+ def set_task_templates
230
176
  pipeline_params = {
231
- piping_type: 'Maintain',
232
- piping_id: nil,
177
+ tasking_type: 'Crm::Maintain',
178
+ tasking_id: nil,
233
179
  'pipeline_members.position': 1
234
180
  }
235
181
  pipeline_params.merge! 'pipeline_members.job_title_id': current_member.lower_job_title_ids if current_member
236
182
  pipeline_params.merge! default_params
237
- @pipelines = Pipeline.default_where(pipeline_params)
183
+ @task_templates = Bench::TaskTemplate.default_where(pipeline_params)
184
+ end
185
+
186
+ def set_payment_strategies
187
+ @payment_strategies = Trade::PaymentStrategy.default_where(default_params)
188
+ end
189
+
190
+ def set_maintain_sources
238
191
  @maintain_sources = MaintainSource.default_where(default_params)
239
192
  end
240
193
 
194
+ def set_maintain_tags
195
+ @maintain_tags = MaintainTag.default_where(default_params)
196
+ end
197
+
241
198
  def maintain_params
242
199
  p = params.fetch(:maintain, {}).permit(
243
200
  :note,
244
- :pipeline_id,
245
201
  :pipeline_member_id,
246
- :member_id,
247
- :maintain_source_id
202
+ :maintain_source_id,
203
+ :deposit_ratio,
204
+ :payment_strategy_id,
205
+ :client_type,
206
+ :agent_type,
207
+ profile_client_attributes: {},
208
+ agent_attributes: {},
209
+ agency_attributes: {}
248
210
  )
249
211
  p.merge! default_form_params
250
- p
251
212
  end
252
213
 
253
214
  def update_params
@@ -272,8 +233,6 @@ module Crm
272
233
  params.permit(
273
234
  :state,
274
235
  :maintain_source_id,
275
- :pipeline_id,
276
- :member_id,
277
236
  'client.real_name',
278
237
  'client.real_name-like',
279
238
  'client.birthday-gte',
@@ -0,0 +1,70 @@
1
+ module Crm
2
+ class Admin::OrdersController < Trade::Admin::OrdersController
3
+ before_action :set_maintain
4
+ before_action :set_addresses, :set_new_order, only: [:new, :create]
5
+ before_action :set_payment_strategies, only: [:new, :create, :edit, :update]
6
+ before_action :set_order, only: [:show, :payment_types, :print_data, :package, :edit, :update, :destroy, :actions]
7
+ before_action :set_new_order, only: [:new, :add, :create]
8
+
9
+ def index
10
+ @orders = @maintain.orders.includes(:payment_strategy).order(id: :desc).page(params[:page])
11
+ end
12
+
13
+ def new
14
+ @order.items.build
15
+ end
16
+
17
+ def add
18
+ @order.valid?
19
+ @order.sum_amount
20
+ end
21
+
22
+ def create
23
+ @order.compute_promote
24
+ @order.valid?
25
+
26
+ if params[:commit].present? && @order.save
27
+ render 'create'
28
+ else
29
+ @order.items.build
30
+ render 'new'
31
+ end
32
+ end
33
+
34
+ private
35
+ def set_maintain
36
+ @maintain = Maintain.find params[:maintain_id]
37
+ end
38
+
39
+ def set_new_order
40
+ @order = @maintain.orders.build(order_params)
41
+ end
42
+
43
+ def set_order
44
+ @order = @maintain.orders.find params[:id]
45
+ end
46
+
47
+ def set_addresses
48
+ @addresses = @maintain.addresses.page(params[:page])
49
+ end
50
+
51
+ def set_payment_strategies
52
+ @payment_strategies = Trade::PaymentStrategy.default_where(default_params)
53
+ end
54
+
55
+ def _prefixes
56
+ super do |pres|
57
+ if ['add'].include?(params[:action])
58
+ pres + ['trade/my/orders/_add', 'trade/my/orders']
59
+ elsif ['payment_types'].include?(params[:action])
60
+ pres + ['trade/my/orders/_payment_types']
61
+ elsif ['show'].include?(params[:action])
62
+ pres + ['trade/my/orders/_show', 'trade/my/orders/_base']
63
+ else
64
+ pres
65
+ end
66
+ end
67
+ end
68
+
69
+ end
70
+ end