MemberCardBatch.php 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136
  1. <?php
  2. // +----------------------------------------------------------------------
  3. // | CRMEB [ CRMEB赋能开发者,助力企业发展 ]
  4. // +----------------------------------------------------------------------
  5. // | Copyright (c) 2016~2026 https://www.crmeb.com All rights reserved.
  6. // +----------------------------------------------------------------------
  7. // | Licensed CRMEB并不是自由软件,未经许可不能去掉CRMEB相关版权
  8. // +----------------------------------------------------------------------
  9. // | Author: CRMEB Team <admin@crmeb.com>
  10. // +----------------------------------------------------------------------
  11. namespace app\adminapi\controller\v1\user\member;
  12. use app\adminapi\controller\AuthController;
  13. use app\services\other\AgreementServices;
  14. use app\services\other\QrcodeServices;
  15. use app\services\user\member\MemberCardBatchServices;
  16. use think\facade\App;
  17. /**
  18. * Class MemberCardBatch
  19. * @package app\adminapi\controller\v1\user\member
  20. */
  21. class MemberCardBatch extends AuthController
  22. {
  23. /**
  24. * @var MemberCardBatchServices
  25. */
  26. protected $services;
  27. /**
  28. * MemberCardBatch constructor.
  29. * @param App $app
  30. * @param MemberCardBatchServices $memberCardBatchServices
  31. */
  32. public function __construct(App $app, MemberCardBatchServices $memberCardBatchServices)
  33. {
  34. parent::__construct($app);
  35. $this->services = $memberCardBatchServices;
  36. }
  37. /**
  38. * 会员卡批次资源列表
  39. * @return mixed
  40. */
  41. public function index()
  42. {
  43. $where = $this->request->getMore([
  44. ['title', ''],
  45. ]);
  46. $data = $this->services->getList($where);
  47. return app('json')->success($data);
  48. }
  49. /**
  50. * 保存卡片资源
  51. * @param $id
  52. * @return mixed
  53. */
  54. public function save($id)
  55. {
  56. $data = $this->request->postMore([
  57. ['title', ''],
  58. ['use_day', 1],
  59. ['total_num', 1],
  60. ['status', 0],
  61. ['remark', '']
  62. ]);
  63. $this->services->save((int)$id, $data);
  64. return app('json')->success('卡片生成成功');
  65. }
  66. /**
  67. * 列表操作
  68. * @param $id
  69. * @return mixed
  70. */
  71. public function set_value($id)
  72. {
  73. $data = $this->request->getMore([
  74. ['value', ''],
  75. ['field', ''],
  76. ]);
  77. $this->services->setValue($id, $data);
  78. return app('json')->success('修改成功');
  79. }
  80. /**会员二维码,兑换卡
  81. * @return mixed
  82. */
  83. public function member_scan()
  84. {
  85. //生成h5地址
  86. $weixinPage = "/pages/annex/vip_active/index";
  87. $weixinFileName = "wechat_member_card.png";
  88. /** @var QrcodeServices $QrcodeService */
  89. $QrcodeService = app()->make(QrcodeServices::class);
  90. $wechatQrcode = $QrcodeService->getWechatQrcodePath($weixinFileName,$weixinPage, false, false);
  91. //生成小程序地址
  92. $routineQrcode = $QrcodeService->getRoutineQrcodePath(4,6,4, [], false);
  93. return app('json')->success(['wechat_img' => $wechatQrcode, 'routine' => $routineQrcode ?: ""]);
  94. }
  95. /** 添加会员协议
  96. * @param int $id
  97. * @param AgreementServices $agreementServices
  98. * @return mixed
  99. */
  100. public function save_member_agreement($id = 0, AgreementServices $agreementServices)
  101. {
  102. $data = $this->request->postMore([
  103. ['type', 1],
  104. ['title', ""],
  105. ['content', ''],
  106. ['status', ''],
  107. ]);
  108. return app('json')->success($agreementServices->saveAgreement($data, $id));
  109. }
  110. /**获取会员协议
  111. * @param AgreementServices $agreementServices
  112. * @return mixed
  113. * @throws \think\db\exception\DataNotFoundException
  114. * @throws \think\db\exception\DbException
  115. * @throws \think\db\exception\ModelNotFoundException
  116. */
  117. public function getAgreement(AgreementServices $agreementServices)
  118. {
  119. $list = $agreementServices->getAgreementBytype(1);
  120. return app('json')->success($list);
  121. }
  122. }