作者 刘锟

Merge remote-tracking branch 'origin/master' into akun

... ... @@ -460,7 +460,6 @@ if (!function_exists('getImageUrl')) {
foreach ($path as $v){
$url[] = getImageUrl($v);
}
$url = array_filter($url);
}else{
if(empty($path)){
return '';
... ...
... ... @@ -90,13 +90,13 @@ class CustomModuleExtentController extends BaseController
* @method :post
* @time :2023/12/21 9:25
*/
public function extendContent(CustomModuleExtentContent $content){
public function extendContent(CustomModuleExtend $extend){
$this->request->validate([
'module_id'=>['required'],
],[
'module_id.required' => 'module_id不能为空',
]);
$lists = $content->list($this->map);
$lists = $extend->list($this->map,'created_at');
$this->response('success',Code::SUCCESS,$lists);
}
... ...
... ... @@ -215,9 +215,11 @@ class NavController extends BaseController
*/
public function setSortList(NavLogic $navLogic){
$this->request->validate([
'id'=>'required'
'id'=>'required',
'sort_list'=>'required',
],[
'id.required' => 'ID不能为空',
'sort_list.required' => '排序不能为空',
]);
$navLogic->setSortList();
$this->response('success');
... ...
... ... @@ -62,7 +62,6 @@ class CategoryController extends BaseController
if(!empty($this->map['title'])){
$this->map['title'] = ['like','%'.$this->map['title'].'%'];
}
$this->map['project_id'] = $this->user['project_id'];
return $this->map;
}
... ...
... ... @@ -174,8 +174,6 @@ class ProjectLogic extends BaseLogic
}
}
$param['notice_file'] = Arr::a2s($param['notice_file']);
}else{
unset($param['notice_file']);
}
if(isset($param['confirm_file']) && !empty($param['confirm_file'])){
foreach ($param['confirm_file'] as &$v2) {
... ... @@ -184,11 +182,8 @@ class ProjectLogic extends BaseLogic
}
}
$param['confirm_file'] = Arr::a2s($param['confirm_file']);
}else{
unset($param['confirm_file']);
}
unset($param['payment'],$param['deploy_build'],$param['deploy_optimize'],$param['online_check'],$param['project_after']);
//文件上传默认值
if($param['is_upload_manage']){
$param['upload_config'] = [
... ... @@ -382,8 +377,8 @@ class ProjectLogic extends BaseLogic
*/
public function createUser($mobile,$project_id,$lead_name){
$userModel = new UserModel();
//查看当前用户是否存在
$info = $userModel->read(['mobile'=>$mobile,'project_id'=>$project_id]);
//查看当前项目是否存在超级管理员
$info = $userModel->read(['role_id'=>0,'project_id'=>$project_id]);
if($info === false){
$data = [
'mobile'=>$mobile,
... ... @@ -395,6 +390,8 @@ class ProjectLogic extends BaseLogic
'create_id'=>$this->manager['id'] ?? 0,
];
$userModel->add($data);
}else{
$userModel->edit(['mobile'=>$mobile,'name'=>$lead_name],['id'=>$info['id']]);
}
return $this->success();
}
... ...
... ... @@ -104,7 +104,6 @@ class UserLogic extends BaseLogic
if($param['role_id'] == $this->model::ROLE_MANAGER){
if(isset($param['id']) && !empty($param['id'])){
$condition = [
'mobile' => $param['mobile'],
'project_id'=>$param['project_id'],
'id' => ['!=', $param['id']],
'role_id'=>$this->model::ROLE_MANAGER
... ... @@ -157,7 +156,11 @@ class UserLogic extends BaseLogic
}
Common::del_user_cache($this->model, $id, 'A');
}else{
$this->fail('超级管理员不允许删除');
//查看当前项目是否有其他的超级管理员
$roleInfo = $this->model->read(['id'=>['!=',$info['id']],'role_id'=>0]);
if($roleInfo === false){
$this->fail('超级管理员不允许删除');
}
}
}
return $this->success();
... ...
... ... @@ -94,6 +94,9 @@ class CustomTemplateLogic extends BaseLogic
public function saveHtml(){
$html = $this->param['html'];
$info = $this->model->read(['id'=>$this->param['id']],['id','is_visualization','url']);
if($info === false){
$this->fail('当前数据不存在或已被删除');
}
if($info['is_visualization'] == 0 || $info['is_visualization'] == 1){//非定制项目+可视化页面
//获取设置的默认模版
$bSettingModel = new Setting();
... ...
... ... @@ -281,6 +281,7 @@ class CustomModuleContentLogic extends BaseLogic
}
$v['project_id'] = $this->user['project_id'];
$v['content_id'] = $content_id;
$v['module_id'] = $content_id;
return $this->success($v);
}
... ...
... ... @@ -265,8 +265,4 @@ class NavLogic extends BaseLogic
$navGroupModel->edit(['sort_list'=>$this->param['sort_list']],['id'=>$this->param['id']]);
return $this->success();
}
}
... ...
... ... @@ -99,6 +99,7 @@ class CategoryLogic extends BaseLogic
$info = $this->model->read(['id'=>$id]);
$info['url'] = $info['route'];
$info['image_link'] = getImageUrl($info['image']);
$info['describe_image'] = !empty($info['describe_image']) ? getImageUrl(json_decode($info['describe_image'])) : [];
return $this->success($info);
}
... ... @@ -112,6 +113,7 @@ class CategoryLogic extends BaseLogic
public function categorySave(){
DB::beginTransaction();
try {
$this->param = $this->saveHandleParam($this->param);
if(isset($this->param['id']) && !empty($this->param['id'])){
$this->param['route'] = RouteMap::setRoute($this->param['route'], RouteMap::SOURCE_PRODUCT_CATE, $this->param['id'], $this->user['project_id']);
$route = $this->param['route'];
... ... @@ -135,6 +137,24 @@ class CategoryLogic extends BaseLogic
}
/**
* @remark :保存时处理数据
* @name :saveHandleParam
* @author :lyh
* @method :post
* @time :2023/12/22 17:28
*/
public function saveHandleParam($param){
if(isset($this->param['describe_image']) && !empty($this->param['describe_image'])){
foreach ($this->param['describe_image'] as $k => $v){
$v = str_replace_url($v);
$this->param['describe_image'][$k] = $v;
}
$this->param['describe_image'] = json_encode($this->param['describe_image']);
}
return $this->success($param);
}
/**
* @remark :删除
* @name :delete
* @author :lyh
... ...
... ... @@ -69,6 +69,21 @@ class ProductLogic extends BaseLogic
}
/**
* @remark :设置最新产品的sort排序
* @name :setNewsSort
* @author :lyh
* @method :post
* @time :2023/12/25 9:27
*/
public function setNewsSort(){
$info = $this->model->orderBy('sort','desc')->first();
if($info === false){
return 1;
}
return $info['sort']++;
}
/**
* @remark :处理扩展字段
* @name :handleExtent
* @author :lyh
... ...
... ... @@ -25,6 +25,7 @@ class BlogRequest extends FormRequest
{
return [
'name'=>'required|max:100',
'remark'=>'max:255',
'url'=>'required',
];
}
... ... @@ -33,7 +34,9 @@ class BlogRequest extends FormRequest
{
return [
'name.required'=>'请填写名称',
'url.required'=>'链接不能为空'
'name.max'=>'名称超过最长长度',
'url.required'=>'链接不能为空',
'remark.max'=>'描述超过最长长度'
];
}
}
... ...
... ... @@ -24,7 +24,8 @@ class NewsRequest extends FormRequest
public function rules()
{
return [
'name'=>'required|max:200',
'name'=>'required|max:100',
'remark'=>'max:255',
'url'=>'required',
];
}
... ... @@ -33,8 +34,9 @@ class NewsRequest extends FormRequest
{
return [
'name.required'=>'请填写名称',
'name.max'=>'名称最大200字',
'url.required'=>'新闻链接不能为空'
'name.max'=>'名称超过最长长度',
'url.required'=>'链接不能为空',
'remark.max'=>'描述超过最长长度'
];
}
}
... ...
... ... @@ -355,7 +355,7 @@ Route::middleware(['bloginauth'])->group(function () {
Route::any('/read', [\App\Http\Controllers\Bside\Template\CustomTemplateController::class, 'read'])->name('custom_read');
Route::any('/save', [\App\Http\Controllers\Bside\Template\CustomTemplateController::class, 'save'])->name('custom_save');
Route::any('/saveHtml', [\App\Http\Controllers\Bside\Template\CustomTemplateController::class, 'saveHtml'])->name('custom_saveHtml');
Route::any('/statusNum', [\App\Http\Controllers\Bside\Template\CustomTemplateController::class, 'statusNumber'])->name('product_statusNum');
Route::any('/statusNum', [\App\Http\Controllers\Bside\Template\CustomTemplateController::class, 'statusNumber'])->name('custom_statusNum');
Route::any('/del', [\App\Http\Controllers\Bside\Template\CustomTemplateController::class, 'del'])->name('custom_del');
});
// 菜单组
... ...