|
@@ -0,0 +1,172 @@
|
|
|
+<?php
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+namespace app\system\controller;
|
|
|
+
|
|
|
+
|
|
|
+use app\model\api\User as UserModel;
|
|
|
+use app\model\api\ServiceType as ServiceTypeModel;
|
|
|
+use app\model\api\InfoAudit;
|
|
|
+use app\model\api\TypeAudit;
|
|
|
+use app\model\api\UserAudit;
|
|
|
+use app\model\api\ServiceType;
|
|
|
+use app\model\api\ServiceTimeType;
|
|
|
+use app\model\api\City as CityModel;
|
|
|
+use app\model\api\Sys as SysModel;
|
|
|
+
|
|
|
+
|
|
|
+use think\db\exception\DbException;
|
|
|
+use think\facade\Db;
|
|
|
+use app\Request;
|
|
|
+use library\services\UtilService;
|
|
|
+use library\utils\UserUtilsTool;
|
|
|
+
|
|
|
+class Audit extends BaseController
|
|
|
+{
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ * 第一步审核初始化
|
|
|
+ * @return type
|
|
|
+ */
|
|
|
+ public function infoAuditInit()
|
|
|
+ {
|
|
|
+ return app('json')->success([
|
|
|
+ 'all' => (new InfoAudit)->count(),
|
|
|
+ 'wait' => (new InfoAudit)->where('status', 0)->count(),
|
|
|
+ 'ok' => (new InfoAudit)->where('status', 1)->count(),
|
|
|
+ 'no' => (new InfoAudit)->where('status', -1)->count(),
|
|
|
+ ]);
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ * 获取第一步审核列表
|
|
|
+ * @param Request $request
|
|
|
+ */
|
|
|
+ public function infoAuditList(Request $request)
|
|
|
+ {
|
|
|
+ $pageSize = 50;
|
|
|
+ $post = UtilService::getMore(
|
|
|
+ [
|
|
|
+ ['page', 1],
|
|
|
+ ['keyword',''],
|
|
|
+ ['status', ''],
|
|
|
+ ['uid', ''],
|
|
|
+ ['time',[]],
|
|
|
+ ], $request
|
|
|
+ );
|
|
|
+ $where = [];
|
|
|
+ if(is_numeric($post['status'])) {
|
|
|
+ $where[]=["t.status","=",(int)$post['status']];
|
|
|
+ }
|
|
|
+ if(is_numeric($post['uid']) && $post['uid']>0) {
|
|
|
+ $where[]=["t.uid","=",(int)$post['uid']];
|
|
|
+ }
|
|
|
+ $startTime = "";
|
|
|
+ $endTime = "";
|
|
|
+ if(!empty($post['time'][0]) && !empty($post['time'][1])) {
|
|
|
+ $startTime = strtotime($post['time'][0]);
|
|
|
+ $endTime = strtotime($post['time'][1]);
|
|
|
+ $where[]=["t.time","between","{$startTime},{$endTime}"];
|
|
|
+ }
|
|
|
+ if(!empty($post['keyword'])){
|
|
|
+ $where[]=["t.name","=",$post['keyword']];
|
|
|
+ }
|
|
|
+ $pageCount = (new InfoAudit)->alias("t")->where($where)->count();
|
|
|
+ $data = null;
|
|
|
+ if($pageCount>0){
|
|
|
+ $data = (new InfoAudit)
|
|
|
+ ->alias("t")
|
|
|
+ ->field("t.*,u.nickname,a.username as admin_name,s.title as service_time_type_title")
|
|
|
+ ->leftJoin("user u", "u.uid = t.uid")
|
|
|
+ ->leftJoin("admin a", "a.id = t.admin_id")
|
|
|
+ ->leftJoin("service_time_type s", "s.code = t.service_type")
|
|
|
+ ->where($where)
|
|
|
+ ->page((int)$post["page"], $pageSize)
|
|
|
+ ->order("t.id","desc")
|
|
|
+ ->select()
|
|
|
+ ->toArray();
|
|
|
+ }
|
|
|
+ $data = empty($data) ? [] : $data;
|
|
|
+ $serviceTypeModel = new ServiceTypeModel();
|
|
|
+ foreach($data as $k=>$v){
|
|
|
+ $data[$k]["birthday"] = empty($v["birthday"]) ?"":date("Y-m-d",$v["birthday"]);
|
|
|
+ $data[$k]["admin_time"] = empty($v["admin_time"])?"":date("Y-m-d H:i:s",$v["admin_time"]);
|
|
|
+ $data[$k]["birthday"] = date("Y-m-d H:i:s",$v["time"]);
|
|
|
+
|
|
|
+ $data[$k]["service_audit_imgs"] = getImageAr($v["service_audit_imgs"]);
|
|
|
+ $data[$k]["service_intro_imgs"] = getImageAr($v["service_intro_imgs"]);
|
|
|
+
|
|
|
+
|
|
|
+ $data[$k]["service_area"] = getImageAr($v["service_area"]);
|
|
|
+ $data[$k]["service_area_all"] = [];
|
|
|
+ foreach($data[$k]["service_area"] as $k2=>$v2){
|
|
|
+ $data[$k]["service_area_all"][]=getAreaItemAr($v2);
|
|
|
+ }
|
|
|
+
|
|
|
+ $data[$k]["service_project"] = getImageAr($v["service_project"]);
|
|
|
+ $data[$k]["service_project_ar"] = [];
|
|
|
+ if(!empty($data[$k]["service_project"])){
|
|
|
+ $data[$k]["service_project_ar"] = $serviceTypeModel->where("id","in",$data[$k]["service_project"])->select();
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return app('json')->success([
|
|
|
+ 'list' => $data,
|
|
|
+ 'pageCount' => $pageCount,
|
|
|
+ 'pageSize' => $pageSize,
|
|
|
+ 'page' => $post['page'],
|
|
|
+ ]);
|
|
|
+ }
|
|
|
+
|
|
|
+ * 第一步审核处理
|
|
|
+ * @param Request $request
|
|
|
+ */
|
|
|
+ public function infoAuditSub(Request $request)
|
|
|
+ {
|
|
|
+ $post = UtilService::getMore(
|
|
|
+ [
|
|
|
+ ['id', '', 'empty', '参数错误'],
|
|
|
+ ['mono'],
|
|
|
+ ['type', 0],
|
|
|
+ ], $request);
|
|
|
+ $certData = (new InfoAudit)->where('id', $post['id'])->find();
|
|
|
+ if (empty($certData)) {
|
|
|
+ return app('json')->fail('数据不存在');
|
|
|
+ }
|
|
|
+ if ($certData['status']!=0) {
|
|
|
+ return app('json')->fail( '当前审核已处理');
|
|
|
+ }
|
|
|
+
|
|
|
+ if ($post['type'] == 1) {
|
|
|
+ (new InfoAudit)
|
|
|
+ ->where('id', $post['id'])
|
|
|
+ ->save([
|
|
|
+ 'status' => 1,
|
|
|
+ 'admin_mono' => $post['mono'],
|
|
|
+ 'audit_time' => time(),
|
|
|
+ 'admin_id' => $request->adminInfo['id'],
|
|
|
+ ]);
|
|
|
+ return app('json')->success('操作成功');
|
|
|
+ }
|
|
|
+
|
|
|
+ if ($post['type'] == -1) {
|
|
|
+ (new InfoAudit)
|
|
|
+ ->where('id', $post['id'])
|
|
|
+ ->save([
|
|
|
+ 'status' => -1,
|
|
|
+ 'admin_mono' => $post['mono'],
|
|
|
+ 'audit_time' => time(),
|
|
|
+ 'admin_id' => $request->adminInfo['id'],
|
|
|
+ ]);
|
|
|
+ return app('json')->success('已驳回');
|
|
|
+ }
|
|
|
+ }
|
|
|
+}
|