Appadv.php 5.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152
  1. <?php
  2. namespace app\common\model;
  3. use think\facade\Db;
  4. /**
  5. * ============================================================================
  6. * DSMall多用户商城
  7. * ============================================================================
  8. * 版权所有 2014-2028 长沙德尚网络科技有限公司,并保留所有权利。
  9. * 网站地址: http://www.csdeshang.com
  10. * ----------------------------------------------------------------------------
  11. * 这不是一个自由软件!您只能在不用于商业目的的前提下对程序代码进行修改和使用 .
  12. * 不允许对程序代码以任何形式任何目的的再发布。
  13. * ============================================================================
  14. * 数据层模型
  15. */
  16. class Appadv extends BaseModel
  17. {
  18. /**
  19. * 获取APP广告位列表
  20. * @author csdeshang
  21. * @param array $condition 查询条件
  22. * @param int $pagesize 分页页数
  23. * @param str $orderby 排序
  24. * @return array 二维数组
  25. */
  26. public function getAppadvpositionList($condition = array(), $pagesize = '', $orderby = 'ap_id desc') {
  27. if ($pagesize) {
  28. $result = Db::name('appadvposition')->where($condition)->order($orderby)->paginate(['list_rows'=>$pagesize,'query' => request()->param()],false);
  29. $this->page_info = $result;
  30. return $result->items();
  31. } else {
  32. return Db::name('appadvposition')->where($condition)->order($orderby)->select()->toArray();
  33. }
  34. }
  35. /**
  36. * 根据条件查询多条记录
  37. * @author csdeshang
  38. * @param array $condition 查询条件
  39. * @param int $pagesize 分页页数
  40. * @param int $limit 数量限制
  41. * @param str $orderby 排序
  42. * @return array 二维数组
  43. */
  44. public function getAppadvList($condition = array(), $pagesize = '', $limit = 0, $orderby = 'adv_sort asc') {
  45. if ($pagesize) {
  46. $result = Db::name('appadv')->where($condition)->order($orderby)->paginate(['list_rows'=>$pagesize,'query' => request()->param()],false);
  47. $this->page_info = $result;
  48. return $result->items();
  49. } else {
  50. return Db::name('appadv')->where($condition)->order($orderby)->select()->toArray();
  51. }
  52. }
  53. /**
  54. * 新增广告位
  55. * @author csdeshang
  56. * @param array $data 参数内容
  57. * @return bool 布尔类型的返回结果
  58. */
  59. public function addAppadvposition($data) {
  60. return Db::name('appadvposition')->insertGetId($data);
  61. }
  62. /**
  63. * 新增广告
  64. * @author csdeshang
  65. * @param array $data 参数内容
  66. * @return bool 布尔类型的返回结果
  67. */
  68. public function addAppadv($data) {
  69. $result = Db::name('appadv')->insertGetId($data);
  70. $apId = (int) $data['ap_id'];
  71. dkcache("appadv/{$apId}");
  72. return $result;
  73. }
  74. /**
  75. * 更新广告位记录
  76. * @author csdeshang
  77. * @param array $data 更新内容
  78. * @return bool
  79. */
  80. public function editAppadvposition($ap_id,$data) {
  81. dkcache("appadv/{$ap_id}");
  82. return Db::name('appadvposition')->where('ap_id', $ap_id)->update($data);
  83. }
  84. /**
  85. * 获取一个app广告位
  86. * @author csdeshang
  87. * @param array $condition 查询条件
  88. * @return array
  89. */
  90. public function getOneAppadvposition($condition = array()) {
  91. return Db::name('appadvposition')->where($condition)->find();
  92. }
  93. /**
  94. * 删除一个广告位
  95. * @author csdeshang
  96. * @param array $ap_id 参数内容
  97. * @return bool 布尔类型的返回结果
  98. */
  99. public function delAppadvposition($ap_id) {
  100. $apId = (int) $ap_id;
  101. dkcache("appadv/{$apId}");
  102. return Db::name('appadvposition')->where('ap_id', $apId)->delete();
  103. }
  104. /**
  105. * 获取一个广告位
  106. * @author csdeshang
  107. * @param array $condition 条件
  108. * @return type
  109. */
  110. public function getOneAppadv($condition = array()) {
  111. return Db::name('appadv')->where($condition)->find();
  112. }
  113. /**
  114. * 更新记录
  115. * @author csdeshang
  116. * @param array $data 更新内容
  117. * @return bool
  118. */
  119. public function editAppadv($adv_id,$data) {
  120. $adv_array = Db::name('appadv')->where('adv_id', $adv_id)->find();
  121. if ($adv_array) {
  122. // drop cache
  123. $apId = (int) $adv_array['ap_id'];
  124. dkcache("appadv/{$apId}");
  125. }
  126. return Db::name('appadv')->where('adv_id', $adv_id)->update($data);
  127. }
  128. /**
  129. * 删除一条广告
  130. * @author csdeshang
  131. * @param array $adv_id 广告位id
  132. * @return bool 布尔类型的返回结果
  133. */
  134. public function delAppadv($adv_id) {
  135. $adv = Db::name('appadv')->where('adv_id',$adv_id)->find();
  136. if ($adv) {
  137. // drop cache
  138. $apId = (int) $adv['ap_id'];
  139. dkcache("appadv/{$apId}");
  140. }
  141. @unlink(BASE_UPLOAD_PATH . DIRECTORY_SEPARATOR . ATTACH_APPADV. DIRECTORY_SEPARATOR .$adv['adv_code']);
  142. return Db::name('appadv')->where('adv_id',$adv_id)->delete();
  143. }
  144. }