<?php
|
namespace app\operations\controller\plus\business;
|
|
use app\operations\controller\Controller;
|
use app\operations\model\plus\business\Industry as IndustryModel;
|
use think\facade\Cache;
|
|
class Industry extends Controller
|
{
|
/**
|
* 行业列表
|
*/
|
public function index()
|
{
|
$model = new IndustryModel;
|
$list = $model->getALL();
|
return $this->renderSuccess('',compact('list'));
|
}
|
|
/**
|
* 行业详情
|
*/
|
public function detail($industry_id)
|
{
|
$industry = IndustryModel::detail($industry_id);
|
if (!$industry) {
|
return $this->renderError('行业不存在');
|
}
|
return $this->renderSuccess(compact('industry'));
|
}
|
|
/**
|
* 添加行业
|
*/
|
public function add()
|
{
|
$model = new IndustryModel;
|
// 获取post数据
|
$data = $this->request->post();
|
// 添加行业
|
if ($model->add($data)) {
|
// 清理缓存
|
Cache::tag('cache')->clear();
|
return $this->renderSuccess('添加成功');
|
}
|
return $this->renderError($model->getError() ?: '添加失败');
|
}
|
|
/**
|
* 编辑行业
|
*/
|
public function edit($industry_id)
|
{
|
// 行业详情
|
$industry = IndustryModel::detail($industry_id);
|
if (!$industry) {
|
return $this->renderError('行业不存在');
|
}
|
// 验证表单
|
if (!$this->request->isPost()) {
|
return $this->renderError('请求方式错误');
|
}
|
// 获取post数据
|
$data = $this->request->post();
|
// 编辑行业
|
if ($industry->edit($data)) {
|
// 清理缓存
|
Cache::tag('cache')->clear();
|
return $this->renderSuccess('编辑成功');
|
}
|
return $this->renderError($industry->getError() ?: '编辑失败');
|
}
|
|
/**
|
* 删除行业
|
*/
|
public function delete($industry_id)
|
{
|
// 行业详情
|
$industry = IndustryModel::detail($industry_id);
|
if (!$industry) {
|
return $this->renderError('行业不存在');
|
}
|
// 检查是否有子行业
|
if (IndustryModel::hasSubIndustry($industry_id)) {
|
return $this->renderError('该行业下存在子行业,无法删除');
|
}
|
// 删除行业
|
if ($industry->delete()) {
|
// 清理缓存
|
Cache::tag('cache')->clear();
|
return $this->renderSuccess('删除成功');
|
}
|
return $this->renderError('删除失败');
|
}
|
|
/**
|
* 获取一级行业列表
|
*/
|
public function getFirstIndustry()
|
{
|
$list = IndustryModel::getFirstIndustry();
|
return $this->renderSuccess(compact('list'));
|
}
|
|
/**
|
* 根据上级ID获取子行业
|
*/
|
public function getSubIndustry($parent_id = 0)
|
{
|
$model = new IndustryModel;
|
$list = $model->where('parent_id', '=', $parent_id)->order(['sort' => 'asc', 'create_time' => 'asc'])->select();
|
return $this->renderSuccess(compact('list'));
|
}
|
}
|