smscoderecordmodel.php 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117
  1. <?php
  2. namespace app\common\model;
  3. use think\Model;
  4. /**
  5. * 短信表
  6. *
  7. * @author wj
  8. * @date 2022-07-25
  9. */
  10. class smscoderecordmodel extends Model
  11. {
  12. protected $table = "t_smscoderecord";
  13. public function insertData($data)
  14. {
  15. if (!isset($data['create_date']) || empty($data['create_date']) || !is_string($data['create_date'])) {
  16. $data['create_date'] = date("Y-m-d H:i:s");
  17. }
  18. if (isset($data['id'])) {
  19. unset($data['id']);
  20. }
  21. $data = $this->formatData($data);
  22. if (empty($data)) {
  23. return false;
  24. }
  25. $id = $this->insertGetId($data);
  26. return $id ? $id : false;
  27. }
  28. /**
  29. * 校验入库数据
  30. * 20220119
  31. */
  32. private function formatData($data)
  33. {
  34. $useData = [];
  35. $fields = $this->getTableFields();
  36. foreach ($data as $key => $value) {
  37. if (in_array($key, $fields)) {
  38. $useData[$key] = $value;
  39. }
  40. }
  41. return $useData;
  42. }
  43. public function getInfo($where, $field = "*", $row = true)
  44. {
  45. $info = $this->field($field)->where($where);
  46. if ($row) {
  47. $info = $info->find();
  48. } else {
  49. $info = $info->select();
  50. }
  51. return empty($info) ? false : $info;
  52. }
  53. public function updateinfo($where, $updateData)
  54. {
  55. $row = $this->where($where)->update($updateData);
  56. return empty($row) ? false : $row;
  57. }
  58. public function deleteinfo($where)
  59. {
  60. $row = $this->where($where)->delete();
  61. return empty($row) ? false : $row;
  62. }
  63. public function getList($where = [], $field = "*", $page = 1, $size = 10, $order = "id desc", $group = "", $row = false)
  64. {
  65. $sqlObj = $this->where($where);
  66. if ("count" != $field) {
  67. $sqlObj = $sqlObj->field($field)->order($order)->group($group)->page($page, $size);
  68. if ($row) {
  69. $data = $sqlObj->find();
  70. } else {
  71. $data = $sqlObj->select();
  72. }
  73. } else {
  74. $data = $sqlObj = $sqlObj->count();
  75. }
  76. return $data;
  77. }
  78. /**
  79. * 校验验证码
  80. *
  81. * @param [type] $telno
  82. * @param [type] $code
  83. * @return void
  84. * @author wj
  85. * @date 2022-07-25
  86. */
  87. public function checkcode($telno, $code)
  88. {
  89. $where = ['telno' => $telno];
  90. $field = ['smscode', 'id'];
  91. $id = 0;
  92. $list = $this->where($where)->field($field)->select()->toArray();
  93. if (empty($list)) {
  94. return backarr(0, "无对应验证码");
  95. }
  96. foreach ($list as $key => $value) {
  97. if ($code == $value['smscode']) {
  98. $id = $value['id'];
  99. break;
  100. }
  101. }
  102. if (empty($id)) {
  103. return backarr(0, "验证码错误");
  104. }
  105. $row = $this->where($where)->delete();
  106. if (empty($row)) {
  107. return backarr(0, "验证码删除失败");
  108. }
  109. return backarr(1, "校验成功");
  110. }
  111. }