Browse Source

人才库

xieruidong 2 years ago
parent
commit
47159f38a4

+ 49 - 0
app/admin/controller/PoolTalent.php

@@ -16,9 +16,12 @@
 
 namespace app\admin\controller;
 
+use app\data\model\DataPoolTalent;
 use app\data\model\DataZhicheng;
+use Carbon\Carbon;
 use think\admin\Controller;
 use think\admin\model\SystemUser;
+use think\db\Query;
 
 /**
  * 人才库管理
@@ -67,4 +70,50 @@ class PoolTalent extends Controller
         ]);
         $this->success('删除成功');
     }
+    /**
+     * 人才申请管理
+     * @auth true
+     * @menu true
+     */
+    public function index(){
+        $this->title='人才申请管理';
+        $name=input('name');
+        DataPoolTalent::mQuery()
+            ->when($name,function (Query $query) use ($name) {
+                $query->hasWhere('user',function (Query $query) use ($name) {
+                    $query->whereLike('nickname',"%{$name}%");
+                });
+            })
+            ->with(['user'])
+            ->order('id','desc')
+            ->layTable();
+    }
+    /**
+     * 人才申请审核
+     * @auth true
+     * @menu true
+     */
+    public function audit($id){
+        $this->title='人才申请审核';
+        $row=DataPoolTalent::mk()->findOrFail($id);
+        if($this->request->isGet()){
+            $this->assign('row',$row);
+            $this->fetch();
+        }else{
+            if($row['audit']>1){
+                $this->error('该记录已审核');
+            }
+            $data=$this->_vali([
+                'audit.require'=>'结果必须',
+                'audit.in:2,3'=>'结果有误',
+                'why.requireIf:audit,3'=>'原因必须',
+                'why.max:200'=>'原因有误',
+            ]);
+            $row['audit']=$data['audit'];
+            $row['why']=$data['why']??'';
+            $row['audit_at']=Carbon::now();
+            $row->save();
+            $this->success('审核成功');
+        }
+    }
 }

+ 147 - 0
app/admin/view/pool_talent/audit.html

@@ -0,0 +1,147 @@
+<form action="{:sysuri()}" method="post" data-auto="true" class="layui-form layui-card" data-table-id="MenuTable">
+
+    <div class="layui-card-body">
+        <input type="hidden" name="id" value="{$row.id}">
+        <div class="layui-form-item">
+            <label class="layui-form-label">申请用户</label>
+            <div class="layui-input-block">
+                <input value='{$row.user.nickname|default=""}' class="layui-input" disabled>
+            </div>
+        </div>
+        <div class="layui-form-item">
+            <label class="layui-form-label">姓名</label>
+            <div class="layui-input-block">
+                <input value='{$row.name|default=""}' class="layui-input" disabled>
+            </div>
+        </div>
+        <div class="layui-form-item">
+            <label class="layui-form-label">性别</label>
+            <div class="layui-input-block">
+                <input value='{$row.sex|default=""}' class="layui-input" disabled>
+            </div>
+        </div>
+        <div class="layui-form-item">
+            <label class="layui-form-label">年龄</label>
+            <div class="layui-input-block">
+                <input value='{$row.age|default=""}' class="layui-input" disabled>
+            </div>
+        </div>
+        <div class="layui-form-item">
+            <label class="layui-form-label">籍贯</label>
+            <div class="layui-input-block">
+                <input value='{$row.jg|default=""}' class="layui-input" disabled>
+            </div>
+        </div>
+        <div class="layui-form-item">
+            <label class="layui-form-label">手机号</label>
+            <div class="layui-input-block">
+                <input value='{$row.phone|default=""}' class="layui-input" disabled>
+            </div>
+        </div>
+        <div class="layui-form-item">
+            <label class="layui-form-label">邮箱</label>
+            <div class="layui-input-block">
+                <input value='{$row.email|default=""}' class="layui-input" disabled>
+            </div>
+        </div>
+        <div class="layui-form-item">
+            <label class="layui-form-label">地区</label>
+            <div class="layui-input-block">
+                <input value='{$row.merge_area|default=""}' class="layui-input" disabled>
+            </div>
+        </div>
+        <div class="layui-form-item">
+            <label class="layui-form-label">详细地址</label>
+            <div class="layui-input-block">
+                <input value='{$row.address|default=""}' class="layui-input" disabled>
+            </div>
+        </div>
+        <div class="layui-form-item">
+            <label class="layui-form-label">学历</label>
+            <div class="layui-input-block">
+                <input value='{$row.xl|default=""}' class="layui-input" disabled>
+            </div>
+        </div>
+        <div class="layui-form-item">
+            <label class="layui-form-label">特长</label>
+            <div class="layui-input-block">
+                <input value='{$row.tc|default=""}' class="layui-input" disabled>
+            </div>
+        </div>
+        <div class="layui-form-item">
+            <label class="layui-form-label">技能</label>
+            <div class="layui-input-block">
+                <input value='{$row.jn|default=""}' class="layui-input" disabled>
+            </div>
+        </div>
+        <div class="layui-form-item">
+            <label class="layui-form-label">职称</label>
+            <div class="layui-input-block">
+                <input value='{$row.zc.name|default=""}' class="layui-input" disabled>
+            </div>
+        </div>
+        <div class="layui-form-item">
+            <label class="layui-form-label">工作履历</label>
+            <div class="layui-input-block">
+                <input value='{$row.gzll|default=""}' class="layui-input" disabled>
+            </div>
+        </div>
+        <div class="layui-form-item">
+            <label class="layui-form-label">资质证书</label>
+            <div class="layui-input-block">
+                {foreach name='row.zz_images_arr' item='a'}
+                <div class="headimg" data-tips-image="{$a}">
+                    <img src="{$a}" alt="">
+                </div>
+                {/foreach}
+            </div>
+        </div>
+        <div class="layui-form-item">
+            <label class="layui-form-label">培训经历</label>
+            <div class="layui-input-block">
+                <input value='{$row.pxjl|default=""}' class="layui-input" disabled>
+            </div>
+        </div>
+        <div class="layui-form-item">
+            <label class="layui-form-label">职称</label>
+            <div class="layui-input-block">
+                <input value='{$row.zc.name|default=""}' class="layui-input" disabled>
+            </div>
+        </div>
+        <div class="layui-form-item">
+            <label class="layui-form-label">审核结果</label>
+            <div class="layui-input-block">
+                {if $row['audit']==1}
+                <input type="radio" name="audit" value="2" title="通过" checked>
+                <input type="radio" name="audit" value="3" title="不通过">
+                {else/}
+                {:[2=>'通过',3=>'不通过'][$row.audit]}
+                {/if}
+            </div>
+        </div>
+        <div class="layui-form-item">
+            <label class="layui-form-label">备注</label>
+            <div class="layui-input-block">
+                <input name="why" value='{$row.why|default=""}' class="layui-input" {:$row['audit']>1?'disabled':''}>
+            </div>
+        </div>
+        {if $row['audit_at']}
+        <div class="layui-form-item">
+            <label class="layui-form-label">审核时间</label>
+            <div class="layui-input-block">
+                <input value='{$row.audit_at|default=""}' class="layui-input" disabled>
+            </div>
+        </div>
+        {/if}
+    </div>
+
+    <div class="hr-line-dashed"></div>
+    {if $row['audit']==1}
+    <div class="layui-form-item text-center">
+        <button class="layui-btn" type='submit'>保存数据</button>
+        <button class="layui-btn layui-btn-danger" type='button' data-confirm="确定要取消编辑吗?" data-close>取消编辑</button>
+    </div>
+    {/if}
+</form>
+<script>
+</script>

+ 67 - 0
app/admin/view/pool_talent/index.html

@@ -0,0 +1,67 @@
+{extend name='table'}
+{block name="button"}
+
+{/block}
+{block name="content"}
+<div class="layui-tab layui-tab-card">
+    <div class="layui-tab-content">
+        <form class="layui-form layui-form-pane form-search" action="{:sysuri()}" onsubmit="return false" method="get" autocomplete="off">
+            <div class="layui-form-item layui-inline">
+                <label class="layui-form-label">申请用户</label>
+                <label class="layui-input-inline">
+                    <input name="name" value="{$get.name|default=''}" placeholder="申请用户" class="layui-input">
+                </label>
+            </div>
+            <div class="layui-form-item layui-inline">
+                <input type="hidden" name="type" value="{$type|default='index'}">
+                <button class="layui-btn layui-btn-primary"><i class="layui-icon">&#xe615;</i> 搜 索</button>
+            </div>
+        </form>
+        <table id="Table" data-url="{:sysuri()}" data-target-search="form.form-search"></table>
+    </div>
+</div>
+<script>
+    $(function () {
+        $('#Table').layTable({
+            even: true, height: 'full',
+            sort: {field: 'id', type: 'desc'},
+            where: {},
+            cols: [[
+                {field: 'id', title: 'ID', align: 'center'},
+                {field: 'user', title: '申请用户', align: 'center',templet(d){
+                        return d.user?d.user.nickname:''
+                    }},
+                {field: 'name', title: '姓名', align: 'center'},
+                {field: 'sex', title: '性别', align: 'center'},
+                {field: 'age', title: '年龄', align: 'center'},
+                {field: 'phone', title: '手机号', align: 'center'},
+                {field: 'email', title: '邮箱', align: 'center'},
+                {toolbar: '#tAddr', title: '所在地', align: 'center'},
+                {field: 'is_del', title: '状态', align: 'center',templet(d){
+                    if(d.audit===1){
+                        return `<span class="layui-badge layui-bg-green">待审核</span>`
+                    }else if (d.audit===2){
+                        return `<span class="layui-badge layui-bg-blue">审核通过</span>`
+                    }else{
+                        return `<span class="layui-badge layui-bg-red">审核不通过</span>`
+                    }
+                }},
+                {field: 'create_at', title: '创建时间', align: 'center'},
+                {toolbar: '#toolbar', title: '操作', align: 'center', fixed: 'right'}
+            ]]
+        });
+    });
+</script>
+
+<script type="text/html" id="tAddr">
+    <div title="{{d.province}}{{d.city}}{{d.area}}">{{d.province}}{{d.city}}{{d.area}}</div>
+    <div title="{{d.address}}">{{d.address}}</div>
+</script>
+
+<!-- 列表排序权重模板 -->
+<script type="text/html" id="toolbar">
+    {if auth('zc_edit')}
+    <button class="layui-btn layui-btn-sm" data-title="审核" data-modal='{:url("audit")}?id={{d.id}}'>查看</button>
+    {/if}
+</script>
+{/block}

+ 9 - 1
app/data/model/DataPoolTalent.php

@@ -22,5 +22,13 @@ class DataPoolTalent extends Model
     {
         return format_datetime($value);
     }
-
+    public function getMergeAreaAttr($_,$model){
+        return $model['province'].$model['city'].$model['area'];
+    }
+    public function zc(){
+        return $this->belongsTo(DataZhicheng::class,'zc_id');
+    }
+    public function getZzImagesArrAttr($_,$model){
+        return array_filter(explode(',',$model['zz_imgs']));
+    }
 }