123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179 |
- <?php
- namespace app\common\model;
- use think\facade\Db;
- /**
-
- *
-
- *
- * ----------------------------------------------------------------------------
- *
-
- * 数据层模型
- */
- class Groupbuyclass extends BaseModel
- {
- public $page_info;
- /**
- * 读取抢购分类列表
- * @access public
- * @author csdeshang
- * @param array $condition 条件
- * @param int $pagesize 分页
- * @param str $order 排序
- * @return array
- */
- public function getGroupbuyclassList($condition = '', $pagesize = '', $order = 'gclass_id desc')
- {
- return Db::name('groupbuyclass')->where($condition)->order($order)->select()->toArray();
- }
- /**
- * 读取列表
- * @access public
- * @author csdeshang
- * @param array $condition 条件
- * @param int $pagesize 分页
- * @param int $max_deep 最大深度
- * @return array
- */
- public function getTreeList($condition = '', $pagesize = '', $max_deep = 1)
- {
- $gclass_list = $this->getGroupbuyclassList($condition, $pagesize);
- $tree_list = array();
- if (is_array($gclass_list)) {
- $tree_list = $this->_getTreeList($gclass_list, 0, 0, $max_deep);
- }
- return $tree_list;
- }
- /**
- * 按照顺序显示树形结构
- * @access public
- * @author csdeshang
- * @param array $list 列表
- * @param int $parent_id 父ID
- * @param int $deep 深度
- * @param int $max_deep 最大深度
- * @return array
- */
- private function _getTreeList($list, $parent_id, $deep = 0, $max_deep)
- {
- $result = array();
- foreach ($list as $node) {
- if ($node['gclass_parent_id'] == $parent_id) {
- if ($deep <= $max_deep) {
- $temp = $this->_getTreeList($list, $node['gclass_id'], $deep + 1, $max_deep);
- if (!empty($temp)) {
- $node['have_child'] = 1;
- } else {
- $node['have_child'] = 0;
- }
- //标记是否为叶子节点
- if ($deep == $max_deep) {
- $node['node'] = 1;
- } else {
- $node['node'] = 0;
- }
- $node['deep'] = $deep;
- $result[] = $node;
- if (!empty($temp)) {
- $result = array_merge($result, $temp);
- }
- unset($temp);
- }
- }
- }
- return $result;
- }
- /**
- * 根据编号获取所有下级编号的数组
- * @access public
- * @author csdeshang
- * @param array $gclass_id_array 分类id数组
- * @return array 数组类型的返回结果
- */
- public function getAllClassId($gclass_id_array)
- {
- $all_gclass_id_array = array();
- $gclass_list = $this->getGroupbuyclassList();
- foreach ($gclass_id_array as $gclass_id) {
- $all_gclass_id_array[] = $gclass_id;
- foreach ($gclass_list as $class) {
- if ($class['gclass_parent_id'] == $gclass_id) {
- $all_gclass_id_array[] = $class['gclass_id'];
- }
- }
- }
- return $all_gclass_id_array;
- }
- /**
- * 判断是否存在
- * @access public
- * @author csdeshang
- * @param type $condition 条件
- * @return boolean
- */
- public function isGroupbuyclassExist($condition)
- {
- $list = Db::name('groupbuyclass')->where($condition)->select()->toArray();
- if (empty($list)) {
- return false;
- } else {
- return true;
- }
- }
- /**
- * 增加
- * @access public
- * @author csdeshang
- * @param array $data 参数内容
- * @return bool
- */
- public function addGroupbuyclass($data)
- {
- return Db::name('groupbuyclass')->insertGetId($data);
- }
- /**
- * 更新
- * @access public
- * @author csdeshang
- * @param array $update_array 更新数据数组
- * @param array $where_array 更新条件数组
- * @return bool
- */
- public function editGroupbuyclass($update_array, $where_array)
- {
- return Db::name('groupbuyclass')->where($where_array)->update($update_array);
- }
- /**
- * 删除
- * @access public
- * @author csdeshang
- * @param array $condition 条件
- * @return bool
- */
- public function delGroupbuyclass($condition)
- {
- return Db::name('groupbuyclass')->where($condition)->delete();
- }
- }
|