VisitModel.php 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113
  1. <?php
  2. namespace app\common\model;
  3. use think\Model;
  4. /**
  5. * 到访记录
  6. *
  7. * @author wj
  8. * @date 2023-01-18
  9. */
  10. class VisitModel extends Model
  11. {
  12. protected $table = 't_visit';
  13. public function insertData($data)
  14. {
  15. $field = $this->getTableFields();
  16. $insertData = [];
  17. foreach ($field as $key => $value) {
  18. if (in_array($value, array_keys($data))) {
  19. $insertData[$value] = $data[$value];
  20. }
  21. }
  22. unset($insertData['id']);
  23. if (!isset($insertData['createtime'])) {
  24. $insertData['createtime'] = date("Y-m-d H:i:s");
  25. }
  26. $data = $insertData;
  27. $id = $this->insertGetId($data);
  28. return empty($id) ? false : $id;
  29. }
  30. public function getInfo($where, $field = "*", $row = true)
  31. {
  32. $info = $this->field($field)->where($where);
  33. if ($row) {
  34. $info = $info->find();
  35. } else {
  36. $info = $info->select();
  37. }
  38. return empty($info) ? false : $info;
  39. }
  40. public function updateinfo($where, $updateData)
  41. {
  42. $row = $this->where($where)->update($updateData);
  43. return empty($row) ? false : $row;
  44. }
  45. public function deleteinfo($where)
  46. {
  47. $row = $this->where($where)->delete();
  48. return empty($row) ? false : $row;
  49. }
  50. public function getList($where = [], $field = "*", $page = 1, $size = 10, $order = "id desc", $group = "", $row = false)
  51. {
  52. $sqlObj = $this->where($where);
  53. if ("count" != $field) {
  54. $sqlObj = $sqlObj->field($field)->order($order)->group($group)->page($page, $size);
  55. if ($row) {
  56. $data = $sqlObj->find();
  57. } else {
  58. $data = $sqlObj->select();
  59. }
  60. } else {
  61. $data = $sqlObj = $sqlObj->count();
  62. }
  63. return $data;
  64. }
  65. public function getListjoinmealcenter($where = [], $field = "*", $page = 1, $size = 10, $order = "id desc", $group = "", $row = false)
  66. {
  67. $usewhere = [];
  68. if (isset($where['createtime'])) {
  69. $usewhere[] = ['v.createtime', 'between', $where['createtime']];
  70. }
  71. if (isset($where['name']) && !empty($where['name'])) {
  72. $usewhere['v.name'] = ['like', "%" . $where['name'] . "%"];
  73. }
  74. if (isset($where['name_center']) && !empty($where['name_center'])) {
  75. $usewhere['mc.name_center'] = ['like', "%" . $where['name_center'] . "%"];
  76. }
  77. if (isset($where['telno']) && !empty($where['telno'])) {
  78. $usewhere['v.telno'] = ['like', "%" . $where['telno'] . "%"];
  79. }
  80. if (isset($where['is_member'])) {
  81. $usewhere['v.is_member'] = $where['is_member'];
  82. }
  83. if (isset($where['business_type'])) {
  84. $usewhere['v.business_type'] = $where['business_type'];
  85. }
  86. if (isset($where['status_delivery'])) {
  87. $usewhere['mo.status_delivery'] = $where['status_delivery'];
  88. }
  89. $sqlObj = $this->alias('v')->join("t_mealcenter mc", "mc.id=v.center_id")->where($usewhere);
  90. if ("count" != $field) {
  91. if ("*" == $field) {
  92. $field = ['v.*', 'mc.name_center'];
  93. }
  94. $sqlObj = $sqlObj->field($field)->order($order)->group($group)->page($page, $size);
  95. if ($row) {
  96. $data = $sqlObj->find();
  97. } else {
  98. $data = $sqlObj->select();
  99. }
  100. } else {
  101. $data = $sqlObj = $sqlObj->count();
  102. }
  103. return $data;
  104. }
  105. }