You've already forked qlg.tsgz.moe
Init Repo
This commit is contained in:
139
hyhproject/admin/model/SpecCats.php
Executable file
139
hyhproject/admin/model/SpecCats.php
Executable file
@ -0,0 +1,139 @@
|
||||
<?php
|
||||
namespace wstmart\admin\model;
|
||||
/**
|
||||
* ============================================================================
|
||||
* 规格分类业务处理
|
||||
*/
|
||||
class SpecCats extends Base{
|
||||
|
||||
/**
|
||||
* 新增
|
||||
*/
|
||||
public function add(){
|
||||
$isExistAllowImg = false;
|
||||
$msg = '';
|
||||
$data = input('post.');
|
||||
if($data['isAllowImg']==1){
|
||||
if($this->checkExistAllowImg((int)$data['goodsCatId'],0)){
|
||||
return WSTReturn("同一分类下已存在允许上传图片规格类型,请先修改之后再新增");
|
||||
}
|
||||
}
|
||||
$data['createTime'] = date('Y-m-d H:i:s');
|
||||
$data["dataFlag"] = 1;
|
||||
$goodsCats = model('GoodsCats')->getParentIs($data['goodsCatId']);
|
||||
if(!empty($goodsCats))$data['goodsCatPath'] = implode('_',$goodsCats)."_";
|
||||
$result = $this->validate('SpecCats.add')->allowField(['catName','isShow','isAllowImg','goodsCatPath','goodsCatId','dataFlag','createTime'])->save($data);
|
||||
if(false !== $result){
|
||||
return WSTReturn("新增成功", 1);
|
||||
}else{
|
||||
return WSTReturn($this->getError(),-1);
|
||||
}
|
||||
}
|
||||
/**
|
||||
* 检测是否存在统一分类下的上传图片分类
|
||||
*/
|
||||
public function checkExistAllowImg($goodsCatId,$catId){
|
||||
$dbo = $this->where(['goodsCatId'=>$goodsCatId,'dataFlag'=>1,'isAllowImg'=>1]);
|
||||
if($catId>0)$dbo->where('catId','<>',$catId);
|
||||
$rs = $dbo->count();
|
||||
if($rs>0)return true;
|
||||
return false;
|
||||
}
|
||||
/**
|
||||
* 编辑
|
||||
*/
|
||||
public function edit(){
|
||||
$catId = input('post.catId/d');
|
||||
$data = input('post.');
|
||||
if($data['isAllowImg']==1){
|
||||
if($this->checkExistAllowImg((int)$data['goodsCatId'],$catId)){
|
||||
return WSTReturn("同一分类下已存在允许上传图片规格类型,请先修改之后再保存");
|
||||
}
|
||||
}
|
||||
$goodsCats = model('GoodsCats')->getParentIs($data['goodsCatId']);
|
||||
if(!empty($goodsCats))$data['goodsCatPath'] = implode('_',$goodsCats)."_";
|
||||
$result = $this->validate('SpecCats.edit')->allowField(['catName','goodsCatPath','goodsCatId','isShow','isAllowImg'])->save($data,['catId'=>$catId,"dataFlag"=>1]);
|
||||
if(false !== $result){
|
||||
return WSTReturn("编辑成功", 1);
|
||||
}else{
|
||||
return WSTReturn($this->getError(),-1);
|
||||
}
|
||||
}
|
||||
/**
|
||||
* 删除
|
||||
*/
|
||||
public function del(){
|
||||
$catId = input('post.catId/d');
|
||||
$data["dataFlag"] = -1;
|
||||
$result = $this->save($data,['catId'=>$catId]);
|
||||
if(false !== $result){
|
||||
return WSTReturn("删除成功", 1);
|
||||
}else{
|
||||
return WSTReturn($this->getError(),-1);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 显示隐藏
|
||||
*/
|
||||
public function setToggle(){
|
||||
$catId = input('post.catId/d');
|
||||
$isShow = input('post.isShow/d');
|
||||
$result = $this->where(['catId'=>$catId,"dataFlag"=>1])->setField("isShow", $isShow);
|
||||
if(false !== $result){
|
||||
return WSTReturn("设置成功", 1);
|
||||
}else{
|
||||
return WSTReturn($this->getError(),-1);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* 根据ID获取
|
||||
*/
|
||||
public function getById($catId){
|
||||
$obj = null;
|
||||
if($catId>0){
|
||||
$obj = $this->get(['catId'=>$catId,"dataFlag"=>1]);
|
||||
}else{
|
||||
$obj = self::getEModel("spec_cats");
|
||||
}
|
||||
return $obj;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 分页
|
||||
*/
|
||||
public function pageQuery(){
|
||||
$keyName = input('keyName');
|
||||
$goodsCatPath = input('goodsCatPath');
|
||||
$dbo = $this->field(true);
|
||||
$map = array();
|
||||
$map['dataFlag'] = 1;
|
||||
if($keyName!="")$map['catName'] = ["like","%".$keyName."%"];
|
||||
if($goodsCatPath!='')$map['goodsCatPath'] = ["like",$goodsCatPath."_%"];
|
||||
$dbo = $dbo->field("catName name, catId id, isShow ,isAllowImg")->where($map);
|
||||
$page = $dbo->order('catSort asc,catId asc')->paginate(input('limit/d'))->toArray();
|
||||
if(count($page['Rows'])>0){
|
||||
$keyCats = model('GoodsCats')->listKeyAll();
|
||||
foreach ($page['Rows'] as $key => $v){
|
||||
$goodsCatPath = $page['Rows'][$key]['goodsCatPath'];
|
||||
$page['Rows'][$key]['goodsCatNames'] = self::getGoodsCatNames($goodsCatPath,$keyCats);
|
||||
$page['Rows'][$key]['children'] = [];
|
||||
$page['Rows'][$key]['isextend'] = false;
|
||||
}
|
||||
}
|
||||
return $page;
|
||||
}
|
||||
|
||||
public function getGoodsCatNames($goodsCatPath, $keyCats){
|
||||
$catIds = explode("_",$goodsCatPath);
|
||||
$catNames = array();
|
||||
for($i=0,$k=count($catIds);$i<$k;$i++){
|
||||
if($catIds[$i]=='')continue;
|
||||
if(isset($keyCats[$catIds[$i]]))$catNames[] = $keyCats[$catIds[$i]];
|
||||
}
|
||||
return implode("→",$catNames);
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user