SettingModel.php 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. <?php
  2. namespace app\common\model;
  3. use think\Model;
  4. class SettingModel extends Model
  5. {
  6. protected $table = "t_setting";
  7. public function insertData($data)
  8. {
  9. $data = $this->formatData($data);
  10. if (empty($data)) {
  11. return false;
  12. }
  13. $id = $this->insertGetId($data);
  14. return $id ? $id : false;
  15. }
  16. /**
  17. * 校验入库数据
  18. * 20220119
  19. */
  20. private function formatData($data)
  21. {
  22. $useData = [];
  23. $fields = $this->getTableFields();
  24. foreach ($data as $key => $value) {
  25. if (in_array($key, $fields)) {
  26. $useData[$key] = $value;
  27. }
  28. }
  29. return $useData;
  30. }
  31. public function getInfo($where, $field = "*", $row = true)
  32. {
  33. $info = $this->field($field)->where($where);
  34. if ($row) {
  35. $info = $info->find();
  36. } else {
  37. $info = $info->select();
  38. }
  39. return empty($info) ? false : $info;
  40. }
  41. public function updateinfo($where, $updateData)
  42. {
  43. $row = $this->where($where)->update($updateData);
  44. return empty($row) ? false : $row;
  45. }
  46. public function deleteinfo($where)
  47. {
  48. $row = $this->where($where)->delete();
  49. return empty($row) ? false : $row;
  50. }
  51. public function getList($where = [], $field = "*", $page = 1, $size = 10, $order = "id desc", $group = "", $row = false)
  52. {
  53. $sqlObj = $this->where($where);
  54. if ("count" != $field) {
  55. if (empty($size)) {
  56. $sqlObj = $sqlObj->field($field)->order($order)->group($group);
  57. } else {
  58. $sqlObj = $sqlObj->field($field)->order($order)->group($group)->page($page, $size);
  59. }
  60. if ($row) {
  61. $data = $sqlObj->find();
  62. } else {
  63. $data = $sqlObj->select();
  64. }
  65. } else {
  66. $data = $sqlObj->count();
  67. }
  68. return $data;
  69. }
  70. }