作者 赵彬吉

Merge branch 'develop' of http://47.244.231.31:8099/zhl/globalso-v6 into develop

... ... @@ -43,8 +43,8 @@ class AiCommandController extends BaseController
],[
'id.required' => 'ID不能为空'
]);
$aiCommandLogic->ai_info();
$this->response('success');
$info = $aiCommandLogic->ai_info();
$this->response('success',Code::SUCCESS,$info);
}
/**
... ... @@ -88,9 +88,10 @@ class AiCommandController extends BaseController
*/
public function del(AiCommandLogic $aiCommandLogic){
$this->request->validate([
'id'=>'required'
'id'=>['required','array'],
],[
'id.required' => 'ID不能为空'
'id.required' => 'ID不能为空',
'id.array' => 'ID为数组',
]);
$aiCommandLogic->ai_del();
$this->response('success');
... ...
... ... @@ -5,6 +5,7 @@ namespace App\Http\Controllers\Aside\Ai;
use App\Enums\Common\Code;
use App\Http\Controllers\Aside\BaseController;
use App\Models\Ai\AiLog as AiLogModel;
use App\Models\User\User;
/**
* @remark :ai发送记录
... ... @@ -23,6 +24,12 @@ class AiLogController extends BaseController
*/
public function lists(AiLogModel $aiLogModel){
$lists = $aiLogModel->lists($this->map,$this->page,$this->row,$this->order);
if(!empty($lists['list'])){
foreach ($lists['list'] as $k => $v){
$v['operator_name'] = (new User())->read(['id'=>$v['operator_id']])['name'];
$lists['list'][$k] = $v;
}
}
$this->response('success',Code::SUCCESS,$lists);
}
}
... ...
... ... @@ -5,12 +5,10 @@ namespace App\Http\Controllers\Aside;
use App\Enums\Common\Code;
use App\Enums\Common\Common;
use App\Http\Controllers\Controller;
use App\Models\User\User as UserModel;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
use Illuminate\Http\Exceptions\HttpResponseException;
use Illuminate\Support\Facades\Cache;
use Illuminate\Support\Facades\Session;
class BaseController extends Controller
{
... ... @@ -160,12 +158,6 @@ class BaseController extends Controller
case 'image':
$v['image_link'] = url('/a/image/' . $v);
break;
case 'operator_id':
if(!empty($v)){
$name = (new UserModel())->read(['id'=>$v],['id','name']);
$data['operator_name'] = (isset($name['name']) && !empty($name['name'])) ? $name['name'] : '无名称';
}
break;
}
}
}
... ...
... ... @@ -25,9 +25,7 @@ class LoginController extends BaseController
'mobile.required' => '请输入手机号',
'password.required' => '请输入密码',
]);
$data = $logic->login();
return $this->success($data);
}
... ...
<?php
namespace App\Http\Controllers\Aside;
namespace App\Http\Controllers\Aside\Service;
use App\Enums\Common\Code;
use App\Http\Controllers\Aside\BaseController;
use App\Http\Logic\Aside\Service\ServiceLogic;
/**
... ... @@ -34,6 +35,12 @@ class ServiceController extends BaseController
* @time :2023/6/25 11:51
*/
public function save(ServiceLogic $serviceLogic){
$this->request->validate([
'data'=>['required','array'],
], [
'data.required' => 'data不能为空',
'data.array' => 'data必须为数组',
]);
$serviceLogic->serviceSave();
$this->response('success');
}
... ...
... ... @@ -56,9 +56,11 @@ class TemplateController extends BaseController
*/
public function save(TemplateRequest $request){
TemplateLogic::instance()->save($request->validated());
$res = TemplateLogic::instance()->save($request->validated());
$data = TemplateLogic::instance()->getInfo($res['id']);
return $this->success($data);
}
... ...
... ... @@ -5,6 +5,7 @@ namespace App\Http\Controllers\Aside\User;
use App\Enums\Common\Code;
use App\Http\Controllers\Aside\BaseController;
use App\Http\Logic\Aside\User\DeptLogic;
use Illuminate\Support\Facades\DB;
/**
* @remark :b端用户组织架构
... ... @@ -47,4 +48,67 @@ class ProjectDeptController extends BaseController
$this->response('success',Code::SUCCESS,$info);
}
/**
* @remark :根据组织架构获取用户
* @name :getDeptUser
* @author :lyh
* @method :post
* @time :2023/6/26 10:21
*/
public function getDeptUser(){
$query = DB::table('gl_project_user')
->leftJoin('gl_project_dept_user', 'gl_project_user.id', '=', 'gl_project_dept_user.user_id')
->leftJoin('gl_project_dept', 'gl_project_dept_user.dept_id', '=', 'gl_project_dept.id')
->join('gl_project_role', 'gl_project_user.role_id', '=', 'gl_project_role.id')
->orderBy('gl_project_dept_user.id','desc');
$query = $this->searchParam($query);
$lists = $query->paginate($this->row, $this->selectParam(), 'page', $this->page);
return $this->success($lists);
}
/**
* @name :(查询参数设置)selectParam
* @author :lyh
* @method :post
* @time :2023/6/14 15:00
*/
public function selectParam(){
$select = [
'gl_project_dept_user.dept_id AS dept_id',
'gl_project_user.name AS name',
'gl_project_user.project_id AS project_id',
'gl_project_user.mobile AS mobile',
'gl_project_user.email AS email',
'gl_project_user.status AS status',
'gl_project_user.role_id AS role_id',
'gl_project_user.operator_id AS operator_id',
'gl_project_dept_user.is_admin AS is_admin',
'gl_project_dept.title AS title',
'gl_project_dept.pid AS pid',
'gl_project_dept.remark AS remark',
'gl_project_user.id AS user_id',
'gl_project_dept_user.id AS id',
'gl_project_role.name AS role_name'
];
return $select;
}
/**
* @name :(搜索参数处理)searchParam
* @author :lyh
* @method :post
* @time :2023/6/14 14:58
*/
public function searchParam(&$query){
//搜索条件处理
if(isset($this->map['name'])){
$query = $query->where('gl_project_user.name',$this->map['name'][0],'%'.$this->map['name'][1].'%');
}
if(isset($this->map['dept_id'])){
$query = $query->where('gl_project_dept_user.dept_id',$this->map['dept_id']);
}
if(isset($this->map['project_id'])){
$query = $query->where('gl_project_user.project_id',$this->map['project_id']);
}
return $query;
}
}
... ...
... ... @@ -5,6 +5,7 @@ namespace App\Http\Controllers\Aside\User;
use App\Enums\Common\Code;
use App\Http\Controllers\Aside\BaseController;
use App\Http\Logic\Aside\User\ProjectMenuLogic;
use App\Http\Requests\Aside\User\ProjectMenuRequest;
use App\Http\Requests\Aside\User\ProjectRoleRequest;
use App\Models\User\ProjectMenu;
use App\Models\User\ProjectMenu as ProjectMenuModel;
... ... @@ -70,7 +71,7 @@ class ProjectMenuController extends BaseController
}
/**
* @param ProjectRoleRequest $request
* @param ProjectMenuRequest $request
* @param ProjectMenuLogic $projectMenuLogic
* @remark :添加菜单
* @name :add
... ... @@ -78,14 +79,14 @@ class ProjectMenuController extends BaseController
* @method :post
* @time :2023/6/21 17:23
*/
public function add(ProjectRoleRequest $request,ProjectMenuLogic $projectMenuLogic){
public function add(ProjectMenuRequest $request,ProjectMenuLogic $projectMenuLogic){
$request->validated();
$projectMenuLogic->menu_add();
$this->response('success');
}
/**
* @param ProjectRoleRequest $request
* @param ProjectMenuRequest $request
* @param ProjectMenuLogic $projectMenuLogic
* @remark :编辑菜单
* @name :edit
... ... @@ -93,7 +94,7 @@ class ProjectMenuController extends BaseController
* @method :post
* @time :2023/6/21 17:22
*/
public function edit(ProjectRoleRequest $request,ProjectMenuLogic $projectMenuLogic){
public function edit(ProjectMenuRequest $request,ProjectMenuLogic $projectMenuLogic){
$request->validate([
'id'=>'required'
],[
... ...
... ... @@ -267,4 +267,30 @@ class FileController
}
return $data;
}
/**
* @remark :文件下载
* @name :downLoad
* @author :lyh
* @method :post
* @time :2023/6/26 16:28
*/
public function downLoad($hash){
$file_model = new File();
$info = $file_model->read(['hash' => $hash]);
if ($info === false) {
$this->response('指定文件不存在!', Code::USER_ERROR);
}
$path = $info['path'];
if (!is_file($path)) {
$this->response('指定文件已被系统删除!', Code::USER_ERROR);
}
$fileUrl = url('public/upload/files/'.basename($path)); // 文件的 URL
$fileName = 'downloaded_file'.'.'.$info['type']; // 要保存的文件名
// 设置响应头
header('Content-Type: application/octet-stream');
header('Content-Disposition: attachment; filename="' . $fileName . '"');
// 下载文件
readfile($fileUrl);
}
}
... ...
... ... @@ -242,7 +242,6 @@ class ImageController
* @method
*/
protected function _extents($data) {
if (empty($data) || !is_array($data)) {
return empty($data) ? is_array($data) ? [] : '' : $data;
}
... ... @@ -264,4 +263,5 @@ class ImageController
}
return $data;
}
}
... ...
... ... @@ -23,10 +23,10 @@ class AiCommandLogic extends BaseLogic
*/
public function ai_info(){
$info = $this->model->read($this->param);
if($info !== false){
if($info === false){
$this->fail('当前数据不存在');
}
return $this->success();
return $this->success($info);
}
/**
... ... @@ -43,6 +43,8 @@ class AiCommandLogic extends BaseLogic
if($info !== false){
$this->fail('当前指令已存在');
}
$this->param['operator_id'] = $this->manager['id'];
$this->param['create_id'] = $this->manager['id'];
$rs = $this->model->add($this->param);
if($rs === false){
$this->fail('error');
... ... @@ -86,4 +88,6 @@ class AiCommandLogic extends BaseLogic
}
return $this->success();
}
}
... ...
... ... @@ -16,11 +16,17 @@ class BaseLogic extends Logic
{
protected $requestAll;
protected $manager;
protected $request;
protected $side = Common::A;
public function __construct()
{
$this->requestAll = request()->all();
$this->request = request();
$this->requestAll = $this->request->all();
$this->manager = Cache::get(Common::MANAGE_TOKEN . $this->request->header('token'));
}
... ...
... ... @@ -35,6 +35,9 @@ class ServiceLogic extends BaseLogic
case 'android':
$v['android_link'] = url('a/image/'.$v['values']);
break;
case 'official_account':
$v['android_link'] = url('a/image/'.$v['values']);
break;
case 'ios':
$v['ios_link'] = url('a/image/'.$v['values']);
break;
... ...
... ... @@ -15,7 +15,7 @@ class DeptLogic extends BaseLogic
}
/**
* @remark :Dept组织价格列表
* @remark :Dept组织架构列表
* @name :DeptLists
* @author :lyh
* @method :post
... ... @@ -41,4 +41,5 @@ class DeptLogic extends BaseLogic
return $this->success($info);
}
}
... ...
... ... @@ -170,7 +170,27 @@ class CountLogic extends BaseLogic
*/
public function enterprise_service(){
$serviceModel = new Service();
$info = $serviceModel->list(['type'=>1],'created_at');
return $this->success($info);
$lists = $serviceModel->list(['type'=>1],'created_at');
foreach ($lists as $k => $v){
switch ($v['key']){
case 'images':
$arr = explode(',',$v['values']);
foreach ($arr as $k1 => $v1){
$v['images_link'][$k1] = url('a/image/'.$v1);
}
break;
case 'android':
$v['android_link'] = url('a/image/'.$v['values']);
break;
case 'official_account':
$v['official_account_link'] = url('a/image/'.$v['values']);
break;
case 'ios':
$v['ios_link'] = url('a/image/'.$v['values']);
break;
}
$lists[$k] = $v;
}
return $this->success($lists);
}
}
... ...
... ... @@ -42,7 +42,7 @@ class TemplateRequest extends FormRequest
];
// 更新场景
if(!$this->is('a/template/insert')){
if($this->is('a/template/insert')){
unset($rule['id']);
}
... ...
... ... @@ -24,7 +24,7 @@ class ProjectMenuRequest extends FormRequest
public function rules()
{
return [
'name'=>'required|string|max:11||unique:gl_project_menu',
'name'=>'required|string|max:11',
];
}
... ...
... ... @@ -2,9 +2,9 @@
/**
* A端用户路由文件
*/
use \Illuminate\Support\Facades\Route;
use \App\Http\Controllers\Aside;
use App\Http\Controllers\Aside;
use Illuminate\Support\Facades\Route;
Route::middleware(['aloginauth'])->group(function () {
... ... @@ -44,6 +44,7 @@ Route::middleware(['aloginauth'])->group(function () {
Route::prefix('dept')->group(function () {
Route::any('/', [Aside\User\ProjectDeptController::class, 'lists'])->name('admin.group_lists');
Route::any('/read', [Aside\User\ProjectDeptController::class, 'read'])->name('admin.group_info');
Route::any('/getDeptUser', [Aside\User\ProjectDeptController::class, 'getDeptUser'])->name('admin.getDeptUser');
});
... ... @@ -56,6 +57,8 @@ Route::middleware(['aloginauth'])->group(function () {
Route::any('/add', [Aside\Ai\AiCommandController::class, 'add'])->name('admin.ai_add');
Route::any('/edit', [Aside\Ai\AiCommandController::class, 'edit'])->name('admin.ai_edit');
Route::any('/del', [Aside\Ai\AiCommandController::class, 'del'])->name('admin.ai_del');
//发送记录
Route::any('/log', [Aside\Ai\AiLogController::class, 'lists'])->name('admin.lists');
});
//站内信
... ... @@ -116,8 +119,8 @@ Route::middleware(['aloginauth'])->group(function () {
//企业服务配置信息
Route::prefix('service')->group(function () {
Route::any('/', [Aside\ServiceController::class, 'lists'])->name('admin.service_lists');
Route::any('/save', [Aside\ServiceController::class, 'save'])->name('admin.service_save');
Route::any('/', [Aside\Service\ServiceController::class, 'lists'])->name('admin.service_lists');
Route::any('/save', [Aside\Service\ServiceController::class, 'save'])->name('admin.service_save');
});
//项目管理
... ...