ImportManager.php
4.3 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
<?php
/**
* @remark :
* @name :ImportManager.php
* @author :lyh
* @method :post
* @time :2023/8/7 17:47
*/
namespace App\Console\Commands;
use App\Models\Manage\EntryPosition;
use App\Models\Manage\JobLevel;
use App\Models\Manage\ManageHr;
use App\Models\Service\Service;
use Illuminate\Console\Command;
use Illuminate\Support\Facades\DB;
class ImportManager extends Command
{
/**
* @remark :导入5.0管理员数据
* @name :handle
* @author :lyh
* @method :post
* @time :2023/8/7 17:49
*/
public function handle(){
$model = new Service();
$info = $model->read(['type'=>5]);
$values = json_decode($info['values']);
foreach ($values as $k => $v){
$v = (array)$v;
$data = [
'name'=>$v['name'],
'mobile'=>$v['mobile'],
'password'=>'$2y$10$ZNHxlIddWiQzQbIIzFgYJOsPlQ4n0cwWl8Sea53qvQvDXtu3WeYMC',
'created_at'=>date('Y-m-d H:i:s'),
'updated_at'=>date('Y-m-d H:i:s'),
];
$manager_id = DB::table('gl_manage')->insertGetId($data);
if($v['sex'] == '女'){
$v['sex'] = 2;
}else{
$v['sex'] = 1;
}
$education = [
'专科' => 1,
'大专' => 1,
'中专' => 0,
'本科' => 2,
'自考本科'=>0,
'全日制本科'=>2,
'本科在读'=>2,
'大学本科'=>2,
'硕士研究生' => 3,
'硕士'=>3,
'其他' => 0,
];
//获取入职岗位
$entryPositionModel = new EntryPosition();
$entry_position = $entryPositionModel->read(['name'=>$v['entry_position']]);
if($entry_position !== false){
$entry_position = $entry_position['id'];
}else{
$entry_position = '';
}
//获取级别
$jobLevelModel = new JobLevel();
$p_level = $jobLevelModel->read(['name'=>$v['p_level']]);
if($entry_position !== false){
$p_level = $p_level['id'];
}else{
$p_level = '';
}
$manager_data = [
'manage_id'=>$manager_id ?? '',
'name'=>$v['name'],
'id_card'=>$v['id_card'],
'mobile'=>$v['mobile'],
'birthday'=>$v['birthday'],
'address'=>$v['address'],
'sex'=>$v['sex'],
'nationality'=>$v['nationality'],
'education'=>isset($education[$v['education']]) ?? 0,
'major'=>$v['major'],
'graduate_school'=>$v['graduate_school'],
'english_level'=>$v['english_level'],
'entry_position'=>$entry_position,
'p_level'=>$p_level,
'residential_address'=>$v['residential_address'],
'emergency_contact'=>$v['emergency_contact'],
'career_history'=>json_encode((array)$v['career_history']),
'learning_history'=>json_encode((array)$v['learning_history']),
'bank_card'=>$v['bank_card'],
'photo_gallery'=>json_encode((array)$v['photo_gallery']),
'id_card_gallery'=>json_encode((array)$v['id_card_gallery']),
'certificate_gallery'=>json_encode((array)$v['certificate_gallery']),
'dangyuan'=>$v['dangyuan'],
'dangzhibu'=>$v['dangzhibu'],
'dang_address'=>$v['dang_address'],
'join_date'=>$v['join_date'],
'status'=>($v['status'] == '在职') ? 1 : 2,
'computer_account'=>$v['computer_account'],
'qq_account'=>$v['qq_account']
];
$hrModel = new ManageHr();
$hrModel->add($manager_data);
}
return 1;
}
}