作者 张关杰

hr manage

@@ -21,12 +21,18 @@ class HrController extends BaseController @@ -21,12 +21,18 @@ class HrController extends BaseController
21 'id.required' => 'ID不能为空' 21 'id.required' => 'ID不能为空'
22 ]); 22 ]);
23 $data = $logic->getInfo($this->param['id']); 23 $data = $logic->getInfo($this->param['id']);
  24 + //print_r($data);exit;
24 return $this->success($data); 25 return $this->success($data);
25 } 26 }
26 27
27 public function save(Request $request, HrLogic $logic){ 28 public function save(Request $request, HrLogic $logic){
28 - //print_r($this->param);exit;  
29 $data = $logic->save($this->param); 29 $data = $logic->save($this->param);
30 return $this->success($data); 30 return $this->success($data);
31 } 31 }
  32 +
  33 + public function parm_desciption(HrLogic $logic){
  34 + $data = $logic->parms();
  35 + return $this->success($data);
  36 + }
  37 +
32 } 38 }
@@ -4,10 +4,7 @@ namespace App\Http\Logic\Aside\Manage; @@ -4,10 +4,7 @@ namespace App\Http\Logic\Aside\Manage;
4 4
5 5
6 use App\Http\Logic\Aside\BaseLogic; 6 use App\Http\Logic\Aside\BaseLogic;
7 -use App\Models\Aside\ManageHrModel;  
8 -use App\Models\Aside\ManageHrLogModel;  
9 -use Illuminate\Support\Facades\DB;  
10 -use Illuminate\Support\Facades\Hash; 7 +use App\Models\Manage\ManageHr;
11 8
12 9
13 /** 10 /**
@@ -21,21 +18,42 @@ class HrLogic extends BaseLogic @@ -21,21 +18,42 @@ class HrLogic extends BaseLogic
21 public function __construct() 18 public function __construct()
22 { 19 {
23 parent::__construct(); 20 parent::__construct();
24 - $this->model = new ManageHrModel(); 21 + $this->model = new ManageHr();
25 } 22 }
26 23
27 24
28 public function save($param){ 25 public function save($param){
29 - if(isset($param['id'])){  
30 - $id = $param['id'];  
31 - $data = $this->model->read($id);  
32 - if(empty($data)){  
33 - $this->fail('没有该数据');  
34 - }  
35 - $param['update_at'] = date("Y-m-d H:i:s");  
36 - return parent::save($param);  
37 - }else{ 26 + foreach ($this->model::specielField() as $v){
  27 + $param = $this->setJson($v,$param);
  28 + }
  29 + return parent::save($param);
  30 + }
38 31
  32 + public function getInfo($id){
  33 + $data = parent::getInfo($id);
  34 + foreach ($this->model::specielField() as $v){
  35 + $data[$v] = json_decode($data[$v],true);
39 } 36 }
  37 + return $data;
  38 + }
  39 +
  40 + //数组转json存储
  41 + public function setJson($str,$param){
  42 + if(isset($param[$str]) && is_array($param[$str])){
  43 + $param[$str] = json_encode($param[$str]);
  44 + }else{
  45 + $param[$str] = '';
  46 + }
  47 + return $param;
  48 + }
  49 +
  50 + public function parms(){
  51 + $data['belong_group'] = $this->model::belongGroup();
  52 + $data['education'] = $this->model::education();
  53 + $data['entry_position'] = $this->model::entryPosition();
  54 + $data['p_level'] = $this->model::pLevel();
  55 + $data['dangyuan'] = $this->model::dangyuan();
  56 + $data['dangzhibu'] = $this->model::dangzhibu();
  57 + return $data;
40 } 58 }
41 } 59 }
@@ -148,9 +148,7 @@ class Logic @@ -148,9 +148,7 @@ class Logic
148 $this->model[$name] = $value; 148 $this->model[$name] = $value;
149 } 149 }
150 } 150 }
151 -  
152 $res = $this->model->save(); 151 $res = $this->model->save();
153 -  
154 if($res){ 152 if($res){
155 //清缓存 153 //清缓存
156 if($this->is_cache && !empty($param['id'])){ 154 if($this->is_cache && !empty($param['id'])){
@@ -4,12 +4,13 @@ namespace App\Models\Aside; @@ -4,12 +4,13 @@ namespace App\Models\Aside;
4 4
5 use Illuminate\Database\Eloquent\Factories\HasFactory; 5 use Illuminate\Database\Eloquent\Factories\HasFactory;
6 use Illuminate\Database\Eloquent\Model; 6 use Illuminate\Database\Eloquent\Model;
  7 +use App\Models\Base;
7 8
8 -class ManageHrModel extends Model 9 +class ManageHrModel extends Base
9 { 10 {
10 - protected $table = 'gl_manage_hr'; 11 + protected $table = 'gl_manage_hrs';
11 //use HasFactory; 12 //use HasFactory;
12 - 13 + protected $guarded = ['updated_at'];
13 /** 14 /**
14 * 归属小组 15 * 归属小组
15 * @return string[] 16 * @return string[]
  1 +<?php
  2 +
  3 +namespace App\Models\Manage;
  4 +use App\Models\Base;
  5 +
  6 +class ManageHr extends Base
  7 +{
  8 + protected $table = 'gl_manage_hr';
  9 +
  10 + /**
  11 + * 特殊字段
  12 + * @return string[]
  13 + * @author zgj
  14 + * @date 2023/5/31
  15 + */
  16 + public static function specielField(){
  17 + return ['photo_gallery','id_card_gallery','certificate_gallery','career_history','learning_history'];
  18 + }
  19 +
  20 + /**
  21 + * 归属小组
  22 + * @return string[]
  23 + * @author zgj
  24 + * @date 2023/5/31
  25 + */
  26 + public static function belongGroup()
  27 + {
  28 + return [
  29 + 1 => 'KA组',
  30 + 2 => 'A组',
  31 + 3 => 'B组',
  32 + 4 => 'C组',
  33 + 5 => 'D组',
  34 + 6 => 'E组',
  35 + 7 => 'F组',
  36 + 8 => 'G组',
  37 + 9 => 'H组',
  38 + 10 => 'GA组',
  39 + 11=> 'GB组',
  40 + 12 => 'GC组',
  41 + 13 => '前端组',
  42 + 14 => '后端组',
  43 + 15 => '黑格组',
  44 + 16 => '售后组',
  45 + 0 => '其他',
  46 + ];
  47 + }
  48 +
  49 + /**
  50 + * 学历
  51 + * @return string[]
  52 + * @author zgj
  53 + * @date 2023/5/31
  54 + */
  55 + public static function education()
  56 + {
  57 + return [
  58 + 1 => '专科',
  59 + 2 => '本科',
  60 + 3 => '研究生及以上',
  61 + 0 => '其他',
  62 + ];
  63 + }
  64 + /**
  65 + * 入职岗位
  66 + * @return string[]
  67 + * @author zgj
  68 + * @date 2023/5/31
  69 + */
  70 + public static function entryPosition()
  71 + {
  72 + return [
  73 + 1 => '优化师',
  74 + 2 => '优化师助理',
  75 + 3 => '优化顾问',
  76 + 4 => '项目经理',
  77 + 5 => '平面设计',
  78 + 6 => '技术经理',
  79 + 7 => '技术主管',
  80 + 8 => '技术总监',
  81 + 9 => '渠道经理',
  82 + 10 => '前端研发',
  83 + 11=> '后端研发',
  84 + 12 => '行政财务',
  85 + 13 => '品牌营销',
  86 + 14 => '销售经理',
  87 + 15 => '销售主管',
  88 + 16 => '售后技术',
  89 + 17 => '售后服务',
  90 + 18 => '外贸销售',
  91 + 19 => '渠道助理',
  92 + 20 => '黑格运营',
  93 + 21 => '运营',
  94 + 22 => '短视频剪辑师',
  95 + 23 => '人事',
  96 + 24 => '采购',
  97 + 0 => '其他',
  98 + ];
  99 + }
  100 +
  101 + /**
  102 + * 级别序列
  103 + * @return string[]
  104 + * @author zgj
  105 + * @date 2023/5/31
  106 + */
  107 + public static function pLevel()
  108 + {
  109 + return [
  110 + 0 => '实习期/试用期(P0)',
  111 + 1 => '初级(P1)',
  112 + 2 => '初级(P2)',
  113 + 3 => '初级(P3)',
  114 + 4 => '中级(P4)',
  115 + 5 => '中级(P5)',
  116 + 6 => '中级(P6)',
  117 + 7 => '高级(P7)',
  118 + 8 => '高级(P8)',
  119 + 9 => '高级(P9)',
  120 + 10 => '高级(P10)',
  121 + 11=> '职务初级(M1)',
  122 + 12 => '职务初级(M2)',
  123 + 13 => '职务初级(M3)',
  124 + 14 => '职务中级(M4)',
  125 + 15 => '职务中级(M5)',
  126 + 16 => '职务中级(M6)',
  127 + 17 => '职务高级(M7)',
  128 + 18 => '职务高级(M8)',
  129 + 19 => '职务高级(M9)',
  130 + 20 => '职务高级(M10)',
  131 + ];
  132 + }
  133 + /**
  134 + * 是否党员
  135 + * @return string[]
  136 + * @author zgj
  137 + * @date 2023/5/31
  138 + */
  139 + public static function dangyuan()
  140 + {
  141 + return [
  142 + 0 => '群众',
  143 + 1 => '预备党员',
  144 + 2 => '正式党员',
  145 + ];
  146 + }
  147 +
  148 + /**
  149 + * 是否有党支部
  150 + * @return string[]
  151 + * @author zgj
  152 + * @date 2023/5/31
  153 + */
  154 + public static function dangzhibu()
  155 + {
  156 + return [
  157 + 0 => '无',
  158 + 1 => '是',
  159 + 2 => '否',
  160 + ];
  161 + }
  162 +}
此 diff 太大无法显示。
@@ -7,7 +7,7 @@ use \App\Http\Controllers\Aside; @@ -7,7 +7,7 @@ use \App\Http\Controllers\Aside;
7 7
8 //必须登录验证的路由组 8 //必须登录验证的路由组
9 9
10 -Route::middleware(['web','accesstoken'])->group(function (){ //admin用渲染默认要加上web的中间件 10 +Route::middleware(['web'])->group(function (){ //admin用渲染默认要加上web的中间件
11 Route::middleware(['aloginauth'])->group(function () { 11 Route::middleware(['aloginauth'])->group(function () {
12 Route::get('/', [Aside\IndexController::class, 'index'])->name('admin.home.white'); 12 Route::get('/', [Aside\IndexController::class, 'index'])->name('admin.home.white');
13 Route::get('/logout', [Aside\LoginController::class, 'logout'])->name('admin.logout.white'); 13 Route::get('/logout', [Aside\LoginController::class, 'logout'])->name('admin.logout.white');
@@ -105,6 +105,7 @@ Route::middleware(['web','accesstoken'])->group(function (){ //admin皜脫 @@ -105,6 +105,7 @@ Route::middleware(['web','accesstoken'])->group(function (){ //admin皜脫
105 Route::get('/', [Aside\Manage\HrController::class, 'list'])->name('admin.hr'); 105 Route::get('/', [Aside\Manage\HrController::class, 'list'])->name('admin.hr');
106 Route::get('/info', [Aside\Manage\HrController::class, 'info'])->name('admin.hr_info'); 106 Route::get('/info', [Aside\Manage\HrController::class, 'info'])->name('admin.hr_info');
107 Route::post('/save', [Aside\Manage\HrController::class, 'save'])->name('admin.hr_save'); 107 Route::post('/save', [Aside\Manage\HrController::class, 'save'])->name('admin.hr_save');
  108 + Route::get('/parm_desciption', [Aside\Manage\HrController::class, 'parm_desciption'])->name('admin.hr_parm_desciption');//选择字段数组
108 }); 109 });
109 }); 110 });
110 111