|
|
@@ -16,6 +16,8 @@ namespace app\adminapi\lists\master_worker_register;
|
|
|
|
|
|
|
|
|
use app\adminapi\lists\BaseAdminDataLists;
|
|
|
+use app\adminapi\logic\auth\AdminLogic;
|
|
|
+use app\adminapi\logic\ConfigLogic;
|
|
|
use app\common\model\master_worker_register\MasterWorkerRegister;
|
|
|
use app\common\lists\ListsSearchInterface;
|
|
|
|
|
|
@@ -50,7 +52,11 @@ class MasterWorkerRegisterLists extends BaseAdminDataLists implements ListsSearc
|
|
|
*/
|
|
|
public function queryDataWhere(){
|
|
|
$where = [];
|
|
|
- $data_rules = $this->adminInfo['data_rules'];
|
|
|
+ if(isset($this->params['admin_id']) && $this->params['admin_id']){
|
|
|
+ $data_rules = AdminLogic::getDataPermissions($this->params['admin_id']);
|
|
|
+ }else{
|
|
|
+ $data_rules = $this->adminInfo['data_rules'];
|
|
|
+ }
|
|
|
if (isset($data_rules['province']) && !empty($data_rules['province'])) {
|
|
|
$where[] = ['province','in' ,$data_rules['province']];
|
|
|
}
|
|
|
@@ -99,4 +105,54 @@ class MasterWorkerRegisterLists extends BaseAdminDataLists implements ListsSearc
|
|
|
return MasterWorkerRegister::where($this->searchWhere)->where($this->queryWhere())->where($this->queryDataWhere())->count();
|
|
|
}
|
|
|
|
|
|
+ public function setExcelComplexFields(): array
|
|
|
+ {
|
|
|
+ $zh_cn_fields = [
|
|
|
+ '工作经验','是否有证件', '特种证名称','证件照片','地区',
|
|
|
+ '销售名称','销售手机号'
|
|
|
+ ];
|
|
|
+ $data_fields = [
|
|
|
+ function($row){
|
|
|
+ $dictType = array_column(\app\adminapi\logic\ConfigLogic::getDictByType('worker_exp_type')['worker_exp_type'],'name','value');
|
|
|
+ return $dictType[$row['maintain_exp_type']]??'';
|
|
|
+ },function($row){ return $row['is_credential']? '有特种证' : '无特种证'; },function($row){ return $row['credential_name']? implode('、',$row['credential_name']) : ''; }
|
|
|
+ ,function($row){
|
|
|
+ if(empty($row['credential_images'])) return '';
|
|
|
+ $images = '';
|
|
|
+ if(is_array($row['credential_images'])){
|
|
|
+ $images = implode("\r\n",$row['credential_images']);
|
|
|
+ }
|
|
|
+ return $images;
|
|
|
+ },'area_name',
|
|
|
+ function($row){ return empty($row['sale'])? '' :$row['sale']['sale_name']??''; },
|
|
|
+ function($row){ return empty($row['sale'])? '' :$row['sale']['mobile']??''; }
|
|
|
+ ];
|
|
|
+ /*$data_fields = [
|
|
|
+ function($row){
|
|
|
+ $dictType = array_column(\app\adminapi\logic\ConfigLogic::getDictByType('worker_exp_type')['worker_exp_type'],'name','value');
|
|
|
+ return $dictType[$row['maintain_exp_type']]??'';
|
|
|
+ },function($row){ return $row['is_credential']? '有特种证' : '无特种证'; },'credential_name'
|
|
|
+ ,function($row){
|
|
|
+ if(empty($row['credential_images'])) return '';
|
|
|
+ $images = '';
|
|
|
+ if(is_array($row['credential_images'])){
|
|
|
+ $images = implode(',',$row['credential_images']);
|
|
|
+ }
|
|
|
+ return $images;
|
|
|
+ },'area_name',function($row){
|
|
|
+ $dictType = array_column(\app\adminapi\logic\ConfigLogic::getDictByType('worker_vehicle_type')['worker_vehicle_type'],'name','value');
|
|
|
+ return $dictType[$row['vehicle_type']]??'';
|
|
|
+ },
|
|
|
+ function($row){ return $row['sale']['sale_name']??''; },
|
|
|
+ function($row){ return $row['sale']['mobile']??''; },
|
|
|
+ 'name','age','mobile','address','create_time',function($row){
|
|
|
+ $dictType = array_column(\app\adminapi\logic\ConfigLogic::getDictByType('audit_state')['audit_state'],'name','value');
|
|
|
+ return $dictType[$row['status']]??'';
|
|
|
+ },'update_time'
|
|
|
+ ];*/
|
|
|
+ return [
|
|
|
+ 'zh_cn_fields' => $zh_cn_fields,
|
|
|
+ 'data_fields' => $data_fields
|
|
|
+ ];
|
|
|
+ }
|
|
|
}
|