MessageSettings.php 2.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. <?php
  2. namespace app\shop\model\settings;
  3. use app\common\model\settings\MessageSettings as MessageSettingsModel;
  4. /**
  5. * 退货地址模型
  6. */
  7. class MessageSettings extends MessageSettingsModel
  8. {
  9. /**
  10. * 获取全部收货地址
  11. */
  12. public function saveSettings($data)
  13. {
  14. $this->startTrans();
  15. try {
  16. $var_data = [];
  17. foreach ($data['fieldList'] as $field){
  18. $var_data[$field['field_ename']] = [
  19. 'field_name' => $field['field_new_ename'],
  20. 'filed_value' => $field['filed_new_value']
  21. ];
  22. }
  23. if($data['message_type'] == 'mp'){
  24. $mp_data['template_id'] = $data['template_id'];
  25. $mp_data['var_data'] = $var_data;
  26. $this->save([
  27. 'mp_status' => 1,
  28. 'mp_template' => json_encode($mp_data),
  29. 'app_id' => self::$app_id,
  30. 'message_id' => $data['message_id']
  31. ]);
  32. }else if($data['message_type'] == 'wx'){
  33. $wx_data['template_id'] = $data['template_id'];
  34. $wx_data['var_data'] = $var_data;
  35. $this->save([
  36. 'wx_status' => 1,
  37. 'wx_template' => json_encode($wx_data),
  38. 'app_id' => self::$app_id,
  39. 'message_id' => $data['message_id']
  40. ]);
  41. }else if($data['message_type'] == 'sms'){
  42. $sms_data['template_id'] = $data['template_id'];
  43. $sms_data['var_data'] = $var_data;
  44. $this->save([
  45. 'sms_status' => 1,
  46. 'sms_template' => json_encode($sms_data),
  47. 'app_id' => self::$app_id,
  48. 'message_id' => $data['message_id']
  49. ]);
  50. }
  51. $this->commit();
  52. return true;
  53. } catch (\Exception $e) {
  54. $this->error = $e->getMessage();
  55. $this->rollback();
  56. return false;
  57. }
  58. }
  59. public function updateSettingsStatus($message_type){
  60. if($message_type == 'mp'){
  61. return $this->save([
  62. 'mp_status' => !$this['mp_status'],
  63. ]);
  64. }else if($message_type == 'wx'){
  65. return $this->save([
  66. 'wx_status' => !$this['wx_status'],
  67. ]);
  68. }else if($message_type == 'sms'){
  69. return $this->save([
  70. 'sms_status' => !$this['sms_status'],
  71. ]);
  72. }
  73. return false;
  74. }
  75. }