作者 赵彬吉

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

@@ -13,9 +13,11 @@ use App\Models\Mail\Mail as MailModel; @@ -13,9 +13,11 @@ use App\Models\Mail\Mail as MailModel;
13 */ 13 */
14 class MailController extends BaseController 14 class MailController extends BaseController
15 { 15 {
16 - public function lists(){  
17 - $mailModel = new MailModel();  
18 - $lists = $mailModel->lists($this->map,$this->page,$this->row,$this->order); 16 + public function lists(MailLogic $mailLogic){
  17 + if(isset($this->map['title']) && !empty($this->map['title'])){
  18 + $this->map['title'] = ['like','%'.$this->map['title'].'%'];
  19 + }
  20 + $lists = $mailLogic->mail_lists($this->map,$this->page,$this->row,$this->order);
19 $this->response('列表',Code::SUCCESS,$lists); 21 $this->response('列表',Code::SUCCESS,$lists);
20 } 22 }
21 23
@@ -78,9 +80,10 @@ class MailController extends BaseController @@ -78,9 +80,10 @@ class MailController extends BaseController
78 */ 80 */
79 public function del(MailLogic $mailLogic){ 81 public function del(MailLogic $mailLogic){
80 $this->request->validate([ 82 $this->request->validate([
81 - 'id'=>'required' 83 + 'id'=>['required','array'],
82 ],[ 84 ],[
83 - 'id.required' => 'ID不能为空' 85 + 'id.required' => 'ID不能为空',
  86 + 'id.array' => 'ID为数组',
84 ]); 87 ]);
85 $mailLogic->mail_del(); 88 $mailLogic->mail_del();
86 $this->response('success'); 89 $this->response('success');
@@ -21,6 +21,9 @@ class ProjectDeptController extends BaseController @@ -21,6 +21,9 @@ class ProjectDeptController extends BaseController
21 * @time :2023/6/17 16:13 21 * @time :2023/6/17 16:13
22 */ 22 */
23 public function lists(DeptLogic $deptLogic){ 23 public function lists(DeptLogic $deptLogic){
  24 + if(isset($this->map['title']) && !empty($this->map['title'])){
  25 + $this->map['title'] = ['like','%'.$this->map['title'].'%'];
  26 + }
24 $lists = $deptLogic->DeptLists($this->map,$this->page,$this->row,$this->order); 27 $lists = $deptLogic->DeptLists($this->map,$this->page,$this->row,$this->order);
25 $this->response('success',Code::SUCCESS,$lists); 28 $this->response('success',Code::SUCCESS,$lists);
26 } 29 }
@@ -18,11 +18,13 @@ use Illuminate\Http\Request; @@ -18,11 +18,13 @@ use Illuminate\Http\Request;
18 */ 18 */
19 class ProjectMenuController extends BaseController 19 class ProjectMenuController extends BaseController
20 { 20 {
  21 +
21 /** 22 /**
22 - * @name :用户菜单列表  
23 - * @return json  
24 - * @author :liyuhang  
25 - * @method 23 + * @remark :用户菜单列表
  24 + * @name :lists
  25 + * @author :lyh
  26 + * @method :post
  27 + * @time :2023/6/21 17:24
26 */ 28 */
27 public function lists(){ 29 public function lists(){
28 $menuModel = new ProjectMenuModel(); 30 $menuModel = new ProjectMenuModel();
@@ -31,10 +33,24 @@ class ProjectMenuController extends BaseController @@ -31,10 +33,24 @@ class ProjectMenuController extends BaseController
31 } 33 }
32 34
33 /** 35 /**
34 - * @name :详情  
35 - * @return void  
36 - * @author :liyuhang  
37 - * @method 36 + * @remark :添加菜单时获取菜单列表
  37 + * @name :list
  38 + * @author :lyh
  39 + * @method :post
  40 + * @time :2023/6/21 17:24
  41 + */
  42 + public function list(ProjectMenuLogic $projectMenuLogic){
  43 + $lists = $projectMenuLogic->MenuList();
  44 + $this->response('success',Code::SUCCESS,$lists);
  45 + }
  46 +
  47 + /**
  48 + * @param ProjectMenuLogic $projectMenuLogic
  49 + * @remark :详情
  50 + * @name :info
  51 + * @author :lyh
  52 + * @method :post
  53 + * @time :2023/6/21 17:23
38 */ 54 */
39 public function info(ProjectMenuLogic $projectMenuLogic){ 55 public function info(ProjectMenuLogic $projectMenuLogic){
40 $this->request->validate([ 56 $this->request->validate([
@@ -47,10 +63,13 @@ class ProjectMenuController extends BaseController @@ -47,10 +63,13 @@ class ProjectMenuController extends BaseController
47 } 63 }
48 64
49 /** 65 /**
50 - * @name :添加菜单  
51 - * @return void  
52 - * @author :liyuhang  
53 - * @method 66 + * @param ProjectRoleRequest $request
  67 + * @param ProjectMenuLogic $projectMenuLogic
  68 + * @remark :添加菜单
  69 + * @name :add
  70 + * @author :lyh
  71 + * @method :post
  72 + * @time :2023/6/21 17:23
54 */ 73 */
55 public function add(ProjectRoleRequest $request,ProjectMenuLogic $projectMenuLogic){ 74 public function add(ProjectRoleRequest $request,ProjectMenuLogic $projectMenuLogic){
56 $request->validated(); 75 $request->validated();
@@ -59,10 +78,13 @@ class ProjectMenuController extends BaseController @@ -59,10 +78,13 @@ class ProjectMenuController extends BaseController
59 } 78 }
60 79
61 /** 80 /**
62 - * @name :编辑菜单  
63 - * @return void  
64 - * @author :liyuhang  
65 - * @method 81 + * @param ProjectRoleRequest $request
  82 + * @param ProjectMenuLogic $projectMenuLogic
  83 + * @remark :编辑菜单
  84 + * @name :edit
  85 + * @author :lyh
  86 + * @method :post
  87 + * @time :2023/6/21 17:22
66 */ 88 */
67 public function edit(ProjectRoleRequest $request,ProjectMenuLogic $projectMenuLogic){ 89 public function edit(ProjectRoleRequest $request,ProjectMenuLogic $projectMenuLogic){
68 $request->validate([ 90 $request->validate([
@@ -75,10 +97,12 @@ class ProjectMenuController extends BaseController @@ -75,10 +97,12 @@ class ProjectMenuController extends BaseController
75 } 97 }
76 98
77 /** 99 /**
78 - * @name :删除菜单  
79 - * @return void  
80 - * @author :liyuhang  
81 - * @method 100 + * @param ProjectMenuLogic $projectMenuLogic
  101 + * @remark :删除菜单
  102 + * @name :del
  103 + * @author :lyh
  104 + * @method :post
  105 + * @time :2023/6/21 17:22
82 */ 106 */
83 public function del(ProjectMenuLogic $projectMenuLogic){ 107 public function del(ProjectMenuLogic $projectMenuLogic){
84 $this->request->validate([ 108 $this->request->validate([
@@ -164,9 +164,6 @@ class BaseController extends Controller @@ -164,9 +164,6 @@ class BaseController extends Controller
164 $data['images_link'][$k1] = url('/b/image/' . $v1); 164 $data['images_link'][$k1] = url('/b/image/' . $v1);
165 } 165 }
166 break; 166 break;
167 - case 'country_img'://国家图标  
168 - $data['image_link'] = url('upload/country/' . $v);  
169 - break;  
170 case 'file': 167 case 'file':
171 $data['file_link'] = url('/b/file_hash/' . $v); 168 $data['file_link'] = url('/b/file_hash/' . $v);
172 break; 169 break;
@@ -4,6 +4,9 @@ namespace App\Http\Logic\Aside\Mail; @@ -4,6 +4,9 @@ namespace App\Http\Logic\Aside\Mail;
4 4
5 use App\Http\Logic\Aside\BaseLogic; 5 use App\Http\Logic\Aside\BaseLogic;
6 use App\Models\Mail\Mail as MailModel; 6 use App\Models\Mail\Mail as MailModel;
  7 +use App\Models\Mail\MailUser;
  8 +use Illuminate\Support\Facades\DB;
  9 +use mysql_xdevapi\Exception;
7 10
8 class MailLogic extends BaseLogic 11 class MailLogic extends BaseLogic
9 { 12 {
@@ -15,6 +18,23 @@ class MailLogic extends BaseLogic @@ -15,6 +18,23 @@ class MailLogic extends BaseLogic
15 } 18 }
16 19
17 /** 20 /**
  21 + * @remark :列表
  22 + * @name :mail_lists
  23 + * @author :lyh
  24 + * @method :post
  25 + * @time :2023/6/21 16:38
  26 + */
  27 + public function mail_lists($map,$page,$row,$order = 'created_at',$filed = ['*']){
  28 + $lists = $this->model->lists($map,$page,$row,$order,$filed);
  29 + if(!empty($lists)){
  30 + foreach ($lists['list'] as $k => $v){
  31 + $lists['list'][$k]['user_list_name'] = $this->model->getUserListName($v['user_list']);
  32 + }
  33 + }
  34 + return $this->success($lists);
  35 + }
  36 +
  37 + /**
18 * @name :获取详情 38 * @name :获取详情
19 * @return void 39 * @return void
20 * @author :liyuhang 40 * @author :liyuhang
@@ -22,7 +42,9 @@ class MailLogic extends BaseLogic @@ -22,7 +42,9 @@ class MailLogic extends BaseLogic
22 */ 42 */
23 public function mail_info(){ 43 public function mail_info(){
24 $info = $this->model->read($this->param); 44 $info = $this->model->read($this->param);
25 - if($info === false){ 45 + //参数处理
  46 + $info['user_list_name'] = $this->model->getUserListName($info['user_list']);
  47 + if($info === false) {
26 $this->fail('当前数据不存在'); 48 $this->fail('当前数据不存在');
27 } 49 }
28 return $this->success($info); 50 return $this->success($info);
@@ -34,6 +56,8 @@ class MailLogic extends BaseLogic @@ -34,6 +56,8 @@ class MailLogic extends BaseLogic
34 * @method 56 * @method
35 */ 57 */
36 public function mail_add(){ 58 public function mail_add(){
  59 + //参数处理
  60 + $this->param['user_list'] = $this->model->setUserList($this->param['user_list']);
37 $rs = $this->model->add($this->param); 61 $rs = $this->model->add($this->param);
38 if($rs === false){ 62 if($rs === false){
39 $this->fail('添加失败'); 63 $this->fail('添加失败');
@@ -48,6 +72,7 @@ class MailLogic extends BaseLogic @@ -48,6 +72,7 @@ class MailLogic extends BaseLogic
48 * @method 72 * @method
49 */ 73 */
50 public function mail_edit(){ 74 public function mail_edit(){
  75 + $this->param['user_list'] = $this->model->setUserList($this->param['user_list']);
51 $rs = $this->model->edit($this->param); 76 $rs = $this->model->edit($this->param);
52 if($rs === false){ 77 if($rs === false){
53 $this->fail('编辑失败'); 78 $this->fail('编辑失败');
@@ -62,11 +87,19 @@ class MailLogic extends BaseLogic @@ -62,11 +87,19 @@ class MailLogic extends BaseLogic
62 * @method 87 * @method
63 */ 88 */
64 public function mail_del(){ 89 public function mail_del(){
65 - $this->param['id'] = ['in',$this->param['id']];  
66 - $rs = $this->model->del($this->param);  
67 - if($rs === false){  
68 - $this->fail('删除失败'); 90 +
  91 + DB::beginTransaction();
  92 + try {
  93 + $this->model->del(['id'=>['in',$this->param['id']]]);
  94 + $mailUserModel = new MailUser();
  95 + $mailUserModel->del(['mail_id'=>['in',$this->param['id']]]);
  96 + DB::commit();
  97 + }catch (Exception $e){
  98 + DB::rollBack();
  99 + $this->fail('error');
69 } 100 }
70 return $this->success(); 101 return $this->success();
71 } 102 }
  103 +
  104 +
72 } 105 }
@@ -83,4 +83,16 @@ class ProjectMenuLogic extends BaseLogic @@ -83,4 +83,16 @@ class ProjectMenuLogic extends BaseLogic
83 } 83 }
84 return $this->success(); 84 return $this->success();
85 } 85 }
  86 +
  87 + /**
  88 + * @remark :添加时获取菜单列表
  89 + * @name :MenuList
  90 + * @author :lyh
  91 + * @method :post
  92 + * @time :2023/6/21 17:26
  93 + */
  94 + public function MenuList(){
  95 + $list = $this->model->list(['status'=>$this->model::ZERO,'is_role'=>$this->model::ZERO]);
  96 + return $this->success($list);
  97 + }
86 } 98 }
@@ -25,14 +25,12 @@ class WebSettingCountryLogic extends BaseLogic @@ -25,14 +25,12 @@ class WebSettingCountryLogic extends BaseLogic
25 */ 25 */
26 public function country_list(){ 26 public function country_list(){
27 $lists = $this->model->list($this->param,'id',['id','name','country_img']); 27 $lists = $this->model->list($this->param,'id',['id','name','country_img']);
28 - if (empty($lists)){  
29 - $this->fail('当前数据不存在'); 28 + if (!empty($lists)){
  29 + foreach ($lists as $k => $v){
  30 + $lists[$k]['image_link'] = url('upload/country/' . $v['country_img']);
  31 + }
30 } 32 }
31 return $this->success($lists); 33 return $this->success($lists);
32 } 34 }
33 35
34 - public function edit_country(){  
35 -  
36 - return $this->success();  
37 - }  
38 } 36 }
@@ -94,6 +94,7 @@ class Base extends Model @@ -94,6 +94,7 @@ class Base extends Model
94 $lists = $lists->toArray(); 94 $lists = $lists->toArray();
95 return $lists; 95 return $lists;
96 } 96 }
  97 +
97 /** 98 /**
98 * @name :获取单条数据详情 99 * @name :获取单条数据详情
99 * @param array 100 * @param array
@@ -3,6 +3,7 @@ @@ -3,6 +3,7 @@
3 namespace App\Models\Mail; 3 namespace App\Models\Mail;
4 4
5 use App\Models\Base; 5 use App\Models\Base;
  6 +use App\Models\User\User;
6 7
7 class Mail extends Base 8 class Mail extends Base
8 { 9 {
@@ -11,4 +12,40 @@ class Mail extends Base @@ -11,4 +12,40 @@ class Mail extends Base
11 public $timestamps = true; 12 public $timestamps = true;
12 //连接数据库 13 //连接数据库
13 // protected $connection = 'custom_mysql'; 14 // protected $connection = 'custom_mysql';
  15 +
  16 +
  17 + /**
  18 + * @param $value
  19 + * @remark :获取器userList参数处理
  20 + * @name :getUserListAttribute
  21 + * @author :lyh
  22 + * @method :post
  23 + * @time :2023/6/21 15:58
  24 + */
  25 + public function getUserListName($values)
  26 + {
  27 + $str = '';
  28 + if(!empty($values)){
  29 + $arr = explode(',',$values);
  30 + $userModel = new User();
  31 + $list = $userModel->list(['id'=>['in',$arr]]);
  32 + foreach ($list as $v){
  33 + $str .= $v['name'].',';
  34 + }
  35 + }
  36 + return trim($str,',');
  37 + }
  38 +
  39 + /**
  40 + * @param $value
  41 + * @remark :userList参数处理
  42 + * @name :getUserListAttribute
  43 + * @author :lyh
  44 + * @method :post
  45 + * @time :2023/6/21 15:58
  46 + */
  47 + public function setUserList($values)
  48 + {
  49 + return ','.trim($values,',').',';
  50 + }
14 } 51 }
@@ -10,4 +10,6 @@ class ProjectMenu extends Base @@ -10,4 +10,6 @@ class ProjectMenu extends Base
10 protected $table = 'gl_project_menu'; 10 protected $table = 'gl_project_menu';
11 //自动维护create_at创建时间 updated_at修改时间 11 //自动维护create_at创建时间 updated_at修改时间
12 public $timestamps = true; 12 public $timestamps = true;
  13 +
  14 + const ZERO = 0;
13 } 15 }