wang jun 2 年之前
父節點
當前提交
6e38349365
共有 5 個文件被更改,包括 277 次插入248 次删除
  1. 37 33
      prjcenter/prjKLY/base/AboutActivity.php
  2. 9 7
      prjcenter/prjKLY/base/common.php
  3. 231 208
      prjcenter/prjKLY/service/task_common.php
  4. 二進制
      说明/bug记录.xls
  5. 二進制
      说明/日志.xls

+ 37 - 33
prjcenter/prjKLY/base/AboutActivity.php

@@ -4255,45 +4255,49 @@ function bizbase_todoWorkEnrollVerify($handleMode, $bizWorker, $recruitInfo, $pl
         ":workDateStart" => $workDateStart,
         ":workDateFinish" => $workDateFinish,
     ));
-    if (!empty($oldList)) {
-        eeglobal_log_handler("bizbase_todoWorkEnrollVerify", "debug", "您已成功报名此日期(段)的招聘,同一天不能报名多个招聘 {$logcommon} ");
-        if ($handleMode == "teamEnroll") {
-            return false;
-        }
-
-        throw new GeneralException("hasDateEnrolled", "您已成功报名此日期(段)的招聘,同一天不能报名多个招聘,请核查!");
-    }
-    if (intval($recruitInfo["enroll_audit"]) > 0 || $handleMode == "openTeam" || $handleMode == "joinTeam") { //需要报名审核/开参团模式
-        $oldList = pdo_fetchall("select tdwk.* from biz_todowork tdwk
-        left join biz_trader_recruit btr   on btr.id=tdwk.biz_recruitid
-        left join biz_todoworkteam   tdwkt on tdwkt.id=tdwk.workteamid
-        where tdwk.id<>:nowWorkId and tdwk.biz_workerid=:biz_workerid and ( (tdwk.`workteam_mode`<=0 and tdwk.`status`=1) or (tdwk.`workteam_mode`>0 and tdwk.`teamstatus`>=2 and tdwkt.`status`=3) )
-        and(
-            (tdwk.todo_begindate>=:plandoDateStart and tdwk.todo_begindate<=:plandoDateFinish)
-            or(:nowSettleCatalog=0 and tdwk.todo_begindate>=:workDateStart and tdwk.todo_begindate<=:workDateFinish)
-            or( btr.settle_catalog<=0 and btr.finish_datetime>btr.begin_datetime and (
-                (btr.begin_datetime>=:workDateStart and btr.begin_datetime<=:workDateFinish)
-                or(btr.begin_datetime<=:workDateStart and btr.finish_datetime>=:workDateFinish)
-                or(btr.finish_datetime>=:workDateStart and btr.finish_datetime<=:workDateFinish)
-            ))
-        )", array(
-            ":nowWorkId" => intval($nowWorkId),
-            ":biz_workerid" => $bizWorker["id"],
-            ":nowSettleCatalog" => intval($recruitInfo["settle_catalog"]),
-            ":plandoDateStart" => strtotime(date("Y-m-d", $planDotime)),
-            ":plandoDateFinish" => strtotime(date("Y-m-d 23:59:59", $planDotime)),
-            ":workDateStart" => $workDateStart,
-            ":workDateFinish" => $workDateFinish,
-        ));
-        if (count($oldList) >= 3) {
-            eeglobal_log_handler("bizbase_todoWorkEnrollVerify", "debug", "您报名此日期(段)的待录用招聘数量已达最大3个的限制 {$logcommon} ");
+    //urgent_level 为1 则为今日零工 今日零工取消限制
+    if (1 != $recruitInfo['urgent_level']) {
+        if (!empty($oldList)) {
+            eeglobal_log_handler("bizbase_todoWorkEnrollVerify", "debug", "您已成功报名此日期(段)的招聘,同一天不能报名多个招聘 {$logcommon} ");
             if ($handleMode == "teamEnroll") {
                 return false;
             }
 
-            throw new GeneralException("hasDateQueue", "您报名此日期(段)的待录用招聘数量已达最大3个的限制,请核查!");
+            throw new GeneralException("hasDateEnrolled", "您已成功报名此日期(段)的招聘,同一天不能报名多个招聘,请核查!");
+        }
+        if (intval($recruitInfo["enroll_audit"]) > 0 || $handleMode == "openTeam" || $handleMode == "joinTeam") { //需要报名审核/开参团模式
+            $oldList = pdo_fetchall("select tdwk.* from biz_todowork tdwk
+            left join biz_trader_recruit btr   on btr.id=tdwk.biz_recruitid
+            left join biz_todoworkteam   tdwkt on tdwkt.id=tdwk.workteamid
+            where tdwk.id<>:nowWorkId and tdwk.biz_workerid=:biz_workerid and ( (tdwk.`workteam_mode`<=0 and tdwk.`status`=1) or (tdwk.`workteam_mode`>0 and tdwk.`teamstatus`>=2 and tdwkt.`status`=3) )
+            and(
+                (tdwk.todo_begindate>=:plandoDateStart and tdwk.todo_begindate<=:plandoDateFinish)
+                or(:nowSettleCatalog=0 and tdwk.todo_begindate>=:workDateStart and tdwk.todo_begindate<=:workDateFinish)
+                or( btr.settle_catalog<=0 and btr.finish_datetime>btr.begin_datetime and (
+                    (btr.begin_datetime>=:workDateStart and btr.begin_datetime<=:workDateFinish)
+                    or(btr.begin_datetime<=:workDateStart and btr.finish_datetime>=:workDateFinish)
+                    or(btr.finish_datetime>=:workDateStart and btr.finish_datetime<=:workDateFinish)
+                ))
+            )", array(
+                ":nowWorkId" => intval($nowWorkId),
+                ":biz_workerid" => $bizWorker["id"],
+                ":nowSettleCatalog" => intval($recruitInfo["settle_catalog"]),
+                ":plandoDateStart" => strtotime(date("Y-m-d", $planDotime)),
+                ":plandoDateFinish" => strtotime(date("Y-m-d 23:59:59", $planDotime)),
+                ":workDateStart" => $workDateStart,
+                ":workDateFinish" => $workDateFinish,
+            ));
+            if (count($oldList) >= 3) {
+                eeglobal_log_handler("bizbase_todoWorkEnrollVerify", "debug", "您报名此日期(段)的待录用招聘数量已达最大3个的限制 {$logcommon} ");
+                if ($handleMode == "teamEnroll") {
+                    return false;
+                }
+
+                throw new GeneralException("hasDateQueue", "您报名此日期(段)的待录用招聘数量已达最大3个的限制,请核查!");
+            }
         }
     }
+
     if ($handleMode == "openTeam" || $handleMode == "joinTeam") {
         $oldList = pdo_fetch("select * from biz_todoworkteam where biz_recruitid=:biz_recruitid and leader_workerid=:leader_workerid and !find_in_set(ifnull(`status`,0),:status) ", array(
             ":biz_recruitid" => $recruitInfo["id"],

+ 9 - 7
prjcenter/prjKLY/base/common.php

@@ -396,13 +396,15 @@ function bizbase_paySuccess($payBizCatalog, $payBizId, $needQuery = false, $hand
                         $sqlParam[":accremark"] = "[" . date("Y-m-d H:i:s", time()) . "] 工单费用支付成功后但已未能录用:{$denyMsg} \n";
                         $sqlParam[":bizremark"] = "[" . date("Y-m-d H:i:s", time()) . "] 未能录用,返还押金:{$denyMsg} \n";
                         $sqlTemp = "";
-                        $sqlTemp .= " update biz_trader_account set updatetime=:nowtime ";
-                        $sqlTemp .= "       ,remark=concat(:accremark,ifnull(remark,'')) where id=:accid;";
-                        $sqlTemp .= " update biz_todowork set updatetime=:nowtime,`status`=-4 "; //被动取消
-                        $sqlTemp .= "       ,remark=concat(:bizremark,ifnull(remark,'')) where id=:bizid;"; //退还押金
-                        $sqlTemp .= " insert into biz_worker_account ( `biz_workerid`, `createtime`,`type`,          `money`, `status`, `biz_catalog`,`biz_id`,     remark )";
-                        $sqlTemp .= "    select                         biz_workerid ,    :nowtime ,    0 ,  enroll_premoney,        1,            7 ,      id, :bizremark ";
-                        $sqlTemp .= "    from biz_todowork where id=:bizid;";
+                        if (1 != $workInfo['urgent_level']) {
+                            $sqlTemp .= " update biz_trader_account set updatetime=:nowtime ";
+                            $sqlTemp .= "       ,remark=concat(:accremark,ifnull(remark,'')) where id=:accid;";
+                            $sqlTemp .= " update biz_todowork set updatetime=:nowtime,`status`=-4 "; //被动取消
+                            $sqlTemp .= "       ,remark=concat(:bizremark,ifnull(remark,'')) where id=:bizid;"; //退还押金
+                            $sqlTemp .= " insert into biz_worker_account ( `biz_workerid`, `createtime`,`type`,          `money`, `status`, `biz_catalog`,`biz_id`,     remark )";
+                            $sqlTemp .= "    select                         biz_workerid ,    :nowtime ,    0 ,  enroll_premoney,        1,            7 ,      id, :bizremark ";
+                            $sqlTemp .= "    from biz_todowork where id=:bizid;";
+                        }
                         $dataset = pdo_query3($sqlTemp, $sqlParam);
                     }
                 });

+ 231 - 208
prjcenter/prjKLY/service/task_common.php

@@ -1,16 +1,16 @@
 <?php
-  define('ONLY_ONLY_ONLY','WWWSSS');
-  require_once "../../../base/service_init.php";
-  service_init("KLY","快来优通用任务  kly-autotask",30,function(){
+define('ONLY_ONLY_ONLY', 'WWWSSS');
+require_once "../../../base/service_init.php";
+service_init("KLY", "快来优通用任务  kly-autotask", 30, function () {
     /************************start********************************/
-    define('LOG_CATALOG',"KLY_AUTOTASK");
-      try{
-        try{
-            include_once WEB_PHY_ROOT."/base/smslib.php";
-            $pageIndex=1;
-            $pageSize=30;
-            $start=($pageIndex-1)*$pageSize;
-            $pageData=pdo_fetchall("select bmq.*
+    define('LOG_CATALOG', "KLY_AUTOTASK");
+    try {
+        try {
+            include_once WEB_PHY_ROOT . "/base/smslib.php";
+            $pageIndex = 1;
+            $pageSize = 30;
+            $start = ($pageIndex - 1) * $pageSize;
+            $pageData = pdo_fetchall("select bmq.*
                 ,wkbu.mobile as wkbu_mobile,wker.true_name as wker_truename,wker.nickname as wker_nickname
                 ,btbu.mobile as btbu_mobile,bter.company_name as bter_companyname
                 ,btr.title as btr_title
@@ -24,31 +24,31 @@
                 where bmq.`status`=0 and biz_catalog<=2
                 limit {$start},{$pageSize}");
             foreach ($pageData as $data) {
-                try{
-                    $smsSign=AliSMS_CODE_TMPSIGN;
-                    switch(intval($data["biz_catalog"])){
+                try {
+                    $smsSign = AliSMS_CODE_TMPSIGN;
+                    switch (intval($data["biz_catalog"])) {
                         case 0:
-                            $smsTempCode=AliSMS_TMPCODE_111;
-                            $smsParams=array(
-                                "name"=>empty($data["wker_truename"])?$data["wker_nickname"]:$data["wker_truename"]
-                                ,"company"=>$data["btr_title"],
+                            $smsTempCode = AliSMS_TMPCODE_111;
+                            $smsParams = array(
+                                "name" => empty($data["wker_truename"]) ? $data["wker_nickname"] : $data["wker_truename"]
+                                , "company" => $data["btr_title"],
                             );
-                            $phoneNumber=$data["wkbu_mobile"];
+                            $phoneNumber = $data["wkbu_mobile"];
                             break;
                         case 1:
-                            $smsTempCode=AliSMS_TMPCODE_222;
-                            $smsParams=array(
-                                "name"=>$data["bter_companyname"],
+                            $smsTempCode = AliSMS_TMPCODE_222;
+                            $smsParams = array(
+                                "name" => $data["bter_companyname"],
                             );
-                            $phoneNumber=$data["btbu_mobile"];
+                            $phoneNumber = $data["btbu_mobile"];
                             break;
                         case 2:
-                            $smsTempCode=AliSMS_TMPCODE_333;
-                            $smsParams=array(
-                                "name"=>empty($data["wker_truename"])?$data["wker_nickname"]:$data["wker_truename"]
-                                ,"job"=>$data["btr_title"],
+                            $smsTempCode = AliSMS_TMPCODE_333;
+                            $smsParams = array(
+                                "name" => empty($data["wker_truename"]) ? $data["wker_nickname"] : $data["wker_truename"]
+                                , "job" => $data["btr_title"],
                             );
-                            $phoneNumber=$data["wkbu_mobile"];
+                            $phoneNumber = $data["wkbu_mobile"];
                             break;
                         default:throw new Exception("不支持的bizcatalog");
                     }
@@ -56,19 +56,19 @@
                     pdo_query("update biz_message_queue set updatetime=:nowtime,`status`=1,remark=concat(:remark,ifnull(remark,'')) where id=:id", array(
                         ":nowtime" => time(), ":id" => intval($data["id"]), ":remark" => "[" . date("Y-m-d H:i:s", time()) . "] 发送成功 \n",
                     ));
-                }catch(Throwable $e){
-                    myecho("短信发送发生异常110000:".$e->getMessage());
+                } catch (Throwable $e) {
+                    myecho("短信发送发生异常110000:" . $e->getMessage());
                 }
             }
-        }catch(Throwable $e){
-            myecho("短信发送发生异常2211111:".$e->getMessage());
+        } catch (Throwable $e) {
+            myecho("短信发送发生异常2211111:" . $e->getMessage());
         }
         //------------------------------------------------
-        try{
-            $pageIndex=1;
-            $pageSize=30;
-            $start=($pageIndex-1)*$pageSize;
-            $pageData=pdo_fetchall("select tdwk.*
+        try {
+            $pageIndex = 1;
+            $pageSize = 30;
+            $start = ($pageIndex - 1) * $pageSize;
+            $pageData = pdo_fetchall("select tdwk.*
                 ,wkbu.mobile as wkbu_mobile,wker.true_name as wker_truename
                 ,btbu.mobile as btbu_mobile,bter.company_name as bter_companyname
                 ,btr.title as btr_title,btr.settle_catalog,btr.begin_datetime as btr_begin_datetime,btr.finish_datetime as btr_finish_datetime
@@ -90,23 +90,23 @@
                       (btr.settle_catalog>0 and ifnull(tdwk.todo_begindate,0)<=:nowtime222)
                     )
                 )
-                limit {$start},{$pageSize}",array(
-                    ":nowtime111"=>time(),//time()-3600*25,
-                    ":nowtime222"=>time(),//time()-3600*25,
-                ));
+                limit {$start},{$pageSize}", array(
+                ":nowtime111" => time(), //time()-3600*25,
+                ":nowtime222" => time(), //time()-3600*25,
+            ));
 
             foreach ($pageData as $data) {
-                try{
-                    switch(intval($data["status"])){
+                try {
+                    switch (intval($data["status"])) {
                         case 2:
-                            if(($data['btr_begin_datetime']+$data['btr_begin_hour2']) <= time()){
+                            if (($data['btr_begin_datetime'] + $data['btr_begin_hour2']) <= time()) {
                                 pdo_query("update biz_todowork set updatetime=:nowtime,worked_begintime=:nowtime,`status`=3,remark=concat(:remark,ifnull(remark,'')) where id=:id", array(
                                     ":nowtime" => time(), ":id" => intval($data["id"]), ":remark" => "[" . date("Y-m-d H:i:s", time()) . "] 系统自动处理为开始工作 \n",
                                 ));
                             }
                             break;
                         case 3:
-                            if(($data['btr_finish_datetime']+$data['btr_finish_hour2']) <= time()){
+                            if (($data['btr_finish_datetime'] + $data['btr_finish_hour2']) <= time()) {
                                 pdo_query("update biz_todowork set updatetime=:nowtime,worked_finishtime=:nowtime,`status`=4,remark=concat(:remark,ifnull(remark,'')) where id=:id", array(
                                     ":nowtime" => time(), ":id" => intval($data["id"]), ":remark" => "[" . date("Y-m-d H:i:s", time()) . "] 系统自动处理为结束工作 \n",
                                 ));
@@ -114,229 +114,252 @@
                             break;
                         default:throw new Exception("不支持的status");
                     }
-                }catch(Throwable $e){
-                    myecho("工单超时处理发生异常11:".$e->getMessage());
+                } catch (Throwable $e) {
+                    myecho("工单超时处理发生异常11:" . $e->getMessage());
                 }
             }
-        }catch(Throwable $e){
-            myecho("工单超时处理发生异常22:".$e->getMessage());
+        } catch (Throwable $e) {
+            myecho("工单超时处理发生异常22:" . $e->getMessage());
         }
         //------------------------------------------------
-        try{
-            $pageIndex=1;
-            $pageSize=30;
-            $start=($pageIndex-1)*$pageSize;
-            $pageData=pdo_fetchall("select tdwk.*
+        try {
+            $pageIndex = 1;
+            $pageSize = 30;
+            $start = ($pageIndex - 1) * $pageSize;
+            $pageData = pdo_fetchall("select tdwk.*
                 from biz_todowork tdwk
-                left join biz_trader_recruit as btr on btr.id=tdwk.biz_recruitid             
+                left join biz_trader_recruit as btr on btr.id=tdwk.biz_recruitid
                 where tdwk.`status`=1
                 and ((tdwk.todo_begindate+btr.begin_hour2)<=:query_nowdate)
-                limit {$start},{$pageSize}",array(
+                limit {$start},{$pageSize}", array(
 //                    ":query_nowdate"=>time()+3600*2,
-                    ":query_nowdate"=>time(),
-                ));
+                ":query_nowdate" => time(),
+            ));
             foreach ($pageData as $data) {
-                try{
-                    $sqlParam=array();
-                    $sqlParam[":nowtime"]=time();
-                    $sqlParam[":status"]=-4;
-                    $sqlParam[":teamstatus"]=8;
-                    $sqlParam[":workid"]=intval($data["id"]);
-                    $sqlParam[":workteamid"]=intval($data["workteamid"]);
-                    $sqlParam[":remark"]="[".date("Y-m-d H:i:s",time())."] 超时自动取消并返还押金 \n";
-                    $sqlTemp="";
-                    $sqlTemp.=" update biz_todowork set updatetime=:nowtime  ";
-                    $sqlTemp.="     ,`status`=:status, remark=concat(:remark,ifnull(remark,''))";
-                    $sqlTemp.=" where id=:workid;";  //押金自动退还对冲
-                    $sqlTemp.=" insert into biz_worker_account ( `biz_workerid`, `createtime`,`type`,          `money`, `status`, `biz_catalog`,`biz_id`, remark )";
-                    $sqlTemp.="    select                         biz_workerid ,    :nowtime ,    0 ,  enroll_premoney,        1,            5 ,      id, :remark ";
-                    $sqlTemp.="    from biz_todowork where id=:workid;";
-                    $sqlTemp.=" update biz_todoworkteam set updatetime=:nowtime ";
-                    $sqlTemp.="     ,`status`=:teamstatus, remark=concat(:remark,ifnull(remark,''))";
-                    $sqlTemp.=" where id=:workteamid;";
-                    $backdata=pdo_query3($sqlTemp,$sqlParam);
-                }catch(Throwable $e){
-                    myecho("超时到时自动取消报名处理发生异常11:".$e->getMessage());
+                try {
+                    $sqlParam = array();
+                    $sqlParam[":nowtime"] = time();
+                    $sqlParam[":status"] = -4;
+                    $sqlParam[":teamstatus"] = 8;
+                    $sqlParam[":workid"] = intval($data["id"]);
+                    $sqlParam[":workteamid"] = intval($data["workteamid"]);
+                    $sqlParam[":remark"] = "[" . date("Y-m-d H:i:s", time()) . "] 超时自动取消并返还押金 \n";
+                    $sqlTemp = "";
+                    $sqlTemp .= " update biz_todowork set updatetime=:nowtime  ";
+                    $sqlTemp .= "     ,`status`=:status, remark=concat(:remark,ifnull(remark,''))";
+                    $sqlTemp .= " where id=:workid;"; //押金自动退还对冲
+                    $sqlTemp .= " insert into biz_worker_account ( `biz_workerid`, `createtime`,`type`,          `money`, `status`, `biz_catalog`,`biz_id`, remark )";
+                    $sqlTemp .= "    select                         biz_workerid ,    :nowtime ,    0 ,  enroll_premoney,        1,            5 ,      id, :remark ";
+                    $sqlTemp .= "    from biz_todowork where id=:workid;";
+                    $sqlTemp .= " update biz_todoworkteam set updatetime=:nowtime ";
+                    $sqlTemp .= "     ,`status`=:teamstatus, remark=concat(:remark,ifnull(remark,''))";
+                    $sqlTemp .= " where id=:workteamid;";
+                    $backdata = pdo_query3($sqlTemp, $sqlParam);
+                } catch (Throwable $e) {
+                    myecho("超时到时自动取消报名处理发生异常11:" . $e->getMessage());
                 }
             }
-        }catch(Throwable $e){
-            myecho("超时到时自动取消报名处理发生异常22:".$e->getMessage());
+        } catch (Throwable $e) {
+            myecho("超时到时自动取消报名处理发生异常22:" . $e->getMessage());
         }
         //------------------------------------------------
-        try{
-            $pageIndex=1;
-            $pageSize=30;
-            $start=($pageIndex-1)*$pageSize;
+        try {
+            $pageIndex = 1;
+            $pageSize = 30;
+            $start = ($pageIndex - 1) * $pageSize;
 //            $pageData=pdo_fetchall("select tdwk.*
-//                from biz_todowork tdwk
-//                left join biz_trader_recruit as btr on btr.id=tdwk.biz_recruitid
-//                where tdwk.`status`=4 and tdwk.worked_finishtime<=:query_nowdate
-//                limit {$start},{$pageSize}",array(
-//                    ":query_nowdate"=>time()-3600*48,
-//                ));
-//            foreach ($pageData as $data) {
-//                $result = biz_flkForWork($data["id"], $data, function ($data) {
-//                    try{
-//                        $sqlParam=array();
-//                        $sqlParam[":nowtime"]=time();
-//                        $sqlParam[":workid"]=$data["id"];
-//                        $sqlParam[":status"]=-8;
-//                        $sqlParam[":remark"]="[".date("Y-m-d H:i:s",time())."] 自动处理为【超48时未结算】状态 \n";
-//                        $sqlTemp=" update biz_todowork set updatetime=:nowtime  ";
-//                        $sqlTemp.="     ,`status`=:status, remark=concat(:remark,ifnull(remark,''))";
-//                        $sqlTemp.=" where id=:workid and `status`=4;";
-//                        $backdata=pdo_query3($sqlTemp,$sqlParam);
-//                    }catch(Throwable $e){
-//                        myecho("超时48小时未结算处理发生异常11:".$e->getMessage());
-//                    }
-//                });
-//            }
-            $pageData=pdo_fetchall("select tdwk.* 
+            //                from biz_todowork tdwk
+            //                left join biz_trader_recruit as btr on btr.id=tdwk.biz_recruitid
+            //                where tdwk.`status`=4 and tdwk.worked_finishtime<=:query_nowdate
+            //                limit {$start},{$pageSize}",array(
+            //                    ":query_nowdate"=>time()-3600*48,
+            //                ));
+            //            foreach ($pageData as $data) {
+            //                $result = biz_flkForWork($data["id"], $data, function ($data) {
+            //                    try{
+            //                        $sqlParam=array();
+            //                        $sqlParam[":nowtime"]=time();
+            //                        $sqlParam[":workid"]=$data["id"];
+            //                        $sqlParam[":status"]=-8;
+            //                        $sqlParam[":remark"]="[".date("Y-m-d H:i:s",time())."] 自动处理为【超48时未结算】状态 \n";
+            //                        $sqlTemp=" update biz_todowork set updatetime=:nowtime  ";
+            //                        $sqlTemp.="     ,`status`=:status, remark=concat(:remark,ifnull(remark,''))";
+            //                        $sqlTemp.=" where id=:workid and `status`=4;";
+            //                        $backdata=pdo_query3($sqlTemp,$sqlParam);
+            //                    }catch(Throwable $e){
+            //                        myecho("超时48小时未结算处理发生异常11:".$e->getMessage());
+            //                    }
+            //                });
+            //            }
+            $pageData = pdo_fetchall("select tdwk.*
                 ,btr.biz_traderid, btr.feetotal as pay_feetotal
                 ,btr.plat_fetchmoney,btr.sharer_fetchmoney,btr.salary as wker_salary
                 from biz_todowork tdwk
-                left join biz_trader_recruit as btr on btr.id=tdwk.biz_recruitid             
+                left join biz_trader_recruit as btr on btr.id=tdwk.biz_recruitid
                 where tdwk.`status`=4 and tdwk.worked_finishtime<=:query_nowdate
                 order by tdwk.id desc
-                limit {$start},{$pageSize}",array(
-                ":query_nowdate"=>time()-3600*48,
+                limit {$start},{$pageSize}", array(
+                ":query_nowdate" => time() - 3600 * 48,
 //                ":query_nowdate"=>time()-3600*12,
-//                ":query_nowdate"=>time(),
+                //                ":query_nowdate"=>time(),
             ));
             foreach ($pageData as $data) {
                 $result = biz_flkForWork($data["id"], $data, function ($data) {
-                    try{
+                    try {
                         $platerMoney = round(floatval($data["plat_fetchmoney"]), 2);
                         $sharerMoney = round(floatval($data["sharer_fetchmoney"]), 2);
                         $workerMoney = round(floatval($data["wker_salary"]), 2);
-                        $bizUser=$data["bizUser"];
+                        $bizUser = $data["bizUser"];
                         $sqlParam = array();
-                        $sqlParam[":nowtime"]=time();
-                        $sqlParam[":nowtime2"]="[".date("Y-m-d H:i:s", time())."] 超时48小时自动结算";
-                        $sqlParam[":wkid"]=$data["id"];
-                        $sqlParam[":biz_roletype"]=0;
-                        $sqlParam[":biz_userid"]=intval($bizUser["id"]);
-                        $sqlTemp="";
+                        $sqlParam[":nowtime"] = time();
+                        $sqlParam[":nowtime2"] = "[" . date("Y-m-d H:i:s", time()) . "] 超时48小时自动结算";
+                        $sqlParam[":wkid"] = $data["id"];
+                        $sqlParam[":biz_roletype"] = 0;
+                        $sqlParam[":biz_userid"] = intval($bizUser["id"]);
+                        $sqlTemp = "";
 
                         //商家冻结费用解冻
-                        $sqlTemp.=" insert into biz_trader_account ( `biz_traderid`, `createtime`,`type`,      `money`, `status`, `biz_catalog`,`biz_id`, remark )";
-                        $sqlTemp.="    select                      btr.biz_traderid,    :nowtime ,    0 , btr.feetotal,        1,            6 , tdwk.id, concat(:nowtime2,'工单结算时解冻工单费用\n')  ";
-                        $sqlTemp.="    from biz_todowork tdwk";
-                        $sqlTemp.="    left join biz_trader_recruit btr on btr.id=tdwk.biz_recruitid ";
-                        $sqlTemp.="    where tdwk.id=:wkid;";
+                        $sqlTemp .= " insert into biz_trader_account ( `biz_traderid`, `createtime`,`type`,      `money`, `status`, `biz_catalog`,`biz_id`, remark )";
+                        $sqlTemp .= "    select                      btr.biz_traderid,    :nowtime ,    0 , btr.feetotal,        1,            6 , tdwk.id, concat(:nowtime2,'工单结算时解冻工单费用\n')  ";
+                        $sqlTemp .= "    from biz_todowork tdwk";
+                        $sqlTemp .= "    left join biz_trader_recruit btr on btr.id=tdwk.biz_recruitid ";
+                        $sqlTemp .= "    where tdwk.id=:wkid;";
 
                         //工单结算支出
-                        $sqlParam[":biz_catalog1"] = 6;//6-工单整体支出;
-                        $sqlTemp.=" insert into biz_trader_account ( `biz_traderid`, `createtime`,`type`,       `money`, `status`, `biz_catalog`, `biz_id`, remark )";
-                        $sqlTemp.="    select                      btr.biz_traderid,    :nowtime ,    1 , btr.feetotal,        1,  :biz_catalog1 , tdwk.id, concat(:nowtime2,'工单结算时支出工单费用\n')  ";
-                        $sqlTemp.="    from biz_todowork tdwk";
-                        $sqlTemp.="    left join biz_trader_recruit btr on btr.id=tdwk.biz_recruitid ";
-                        $sqlTemp.="    where tdwk.id=:wkid;";
+                        $sqlParam[":biz_catalog1"] = 6; //6-工单整体支出;
+                        $sqlTemp .= " insert into biz_trader_account ( `biz_traderid`, `createtime`,`type`,       `money`, `status`, `biz_catalog`, `biz_id`, remark )";
+                        $sqlTemp .= "    select                      btr.biz_traderid,    :nowtime ,    1 , btr.feetotal,        1,  :biz_catalog1 , tdwk.id, concat(:nowtime2,'工单结算时支出工单费用\n')  ";
+                        $sqlTemp .= "    from biz_todowork tdwk";
+                        $sqlTemp .= "    left join biz_trader_recruit btr on btr.id=tdwk.biz_recruitid ";
+                        $sqlTemp .= "    where tdwk.id=:wkid;";
 
                         //------------------------------------
                         $share_workerid = intval($data["share_workerid"]);
-                        if ($share_workerid > 0) $platerMoney = $platerMoney - $sharerMoney;
-                        $sqlParam[":platerMoney"] = $platerMoney;//平台分成
-                        $sqlTemp.=" insert into biz_trader_account ( deleted,    `biz_traderid`, `createtime`,`type`,       `money`, `status`, `biz_catalog`, `biz_id`, remark )";
-                        $sqlTemp.="    select                              9, btr.biz_traderid ,    :nowtime ,    1 ,  :platerMoney,        1,            1 ,  tdwk.id, concat(:nowtime2,'工单结算时平台分成\n') ";
-                        $sqlTemp.="    from biz_todowork tdwk";
-                        $sqlTemp.="    left join biz_trader_recruit btr on btr.id=tdwk.biz_recruitid ";
-                        $sqlTemp.="    where tdwk.id=:wkid;";
+                        if ($share_workerid > 0) {
+                            $platerMoney = $platerMoney - $sharerMoney;
+                        }
+
+                        $sqlParam[":platerMoney"] = $platerMoney; //平台分成
+                        $sqlTemp .= " insert into biz_trader_account ( deleted,    `biz_traderid`, `createtime`,`type`,       `money`, `status`, `biz_catalog`, `biz_id`, remark )";
+                        $sqlTemp .= "    select                              9, btr.biz_traderid ,    :nowtime ,    1 ,  :platerMoney,        1,            1 ,  tdwk.id, concat(:nowtime2,'工单结算时平台分成\n') ";
+                        $sqlTemp .= "    from biz_todowork tdwk";
+                        $sqlTemp .= "    left join biz_trader_recruit btr on btr.id=tdwk.biz_recruitid ";
+                        $sqlTemp .= "    where tdwk.id=:wkid;";
 
-                        if ($share_workerid > 0){//分享佣金
+                        if ($share_workerid > 0) { //分享佣金
                             $sqlParam[":sharerMoney"] = $sharerMoney;
                             $sqlParam[":share_workerid"] = $share_workerid;
-                            $sqlTemp.=" insert into biz_trader_account ( deleted,    `biz_traderid`, `createtime`,`type`,       `money`, `status`, `biz_catalog`, `biz_id`, remark )";
-                            $sqlTemp.="    select                              9, btr.biz_traderid ,    :nowtime ,    1 ,  :sharerMoney,        1,            2 ,    :wkid, concat(:nowtime2,'工单结算时佣金分成支出\n') ";
-                            $sqlTemp.="    from biz_todowork tdwk";
-                            $sqlTemp.="    left join biz_trader_recruit btr on btr.id=tdwk.biz_recruitid ";
-                            $sqlTemp.="    where tdwk.id=:wkid;";
-                            $sqlTemp.=" insert into biz_worker_account ( `biz_workerid`, `createtime`,`type`,       `money`, `status`, `biz_catalog`,`biz_id`, remark )";
-                            $sqlTemp.="    select                      :share_workerid ,    :nowtime ,    0 ,  :sharerMoney,        1,            1 ,   :wkid, concat(:nowtime2,'工单结算时佣金分成收入\n')  from dual where 1=1;";
+                            $sqlTemp .= " insert into biz_trader_account ( deleted,    `biz_traderid`, `createtime`,`type`,       `money`, `status`, `biz_catalog`, `biz_id`, remark )";
+                            $sqlTemp .= "    select                              9, btr.biz_traderid ,    :nowtime ,    1 ,  :sharerMoney,        1,            2 ,    :wkid, concat(:nowtime2,'工单结算时佣金分成支出\n') ";
+                            $sqlTemp .= "    from biz_todowork tdwk";
+                            $sqlTemp .= "    left join biz_trader_recruit btr on btr.id=tdwk.biz_recruitid ";
+                            $sqlTemp .= "    where tdwk.id=:wkid;";
+                            $sqlTemp .= " insert into biz_worker_account ( `biz_workerid`, `createtime`,`type`,       `money`, `status`, `biz_catalog`,`biz_id`, remark )";
+                            $sqlTemp .= "    select                      :share_workerid ,    :nowtime ,    0 ,  :sharerMoney,        1,            1 ,   :wkid, concat(:nowtime2,'工单结算时佣金分成收入\n')  from dual where 1=1;";
                         }
-                        $sqlParam[":workerMoney"] = $workerMoney;//工人工资
+                        $sqlParam[":workerMoney"] = $workerMoney; //工人工资
                         $sqlParam[":doed_workerid"] = intval($data["biz_workerid"]);
-                        $sqlTemp.=" insert into biz_trader_account ( deleted,    `biz_traderid`, `createtime`,`type`,       `money`, `status`, `biz_catalog`, `biz_id`, remark )";
-                        $sqlTemp.="    select                              9, btr.biz_traderid ,    :nowtime ,    1 ,  :workerMoney,        1,            3 ,    :wkid, concat(:nowtime2,'工单结算时工资支出\n') ";
-                        $sqlTemp.="    from biz_todowork tdwk";
-                        $sqlTemp.="    left join biz_trader_recruit btr on btr.id=tdwk.biz_recruitid ";
-                        $sqlTemp.="    where tdwk.id=:wkid;";
-                        $sqlTemp.=" insert into biz_worker_account ( `biz_workerid`, `createtime`,`type`,       `money`, `status`, `biz_catalog`,`biz_id`, remark )";
-                        $sqlTemp.="    select                       :doed_workerid ,    :nowtime ,    0 ,  :workerMoney,        1,            0 ,  :wkid, concat(:nowtime2,'工单结算时工资收入\n')  from dual where 1=1;";
+                        $sqlTemp .= " insert into biz_trader_account ( deleted,    `biz_traderid`, `createtime`,`type`,       `money`, `status`, `biz_catalog`, `biz_id`, remark )";
+                        $sqlTemp .= "    select                              9, btr.biz_traderid ,    :nowtime ,    1 ,  :workerMoney,        1,            3 ,    :wkid, concat(:nowtime2,'工单结算时工资支出\n') ";
+                        $sqlTemp .= "    from biz_todowork tdwk";
+                        $sqlTemp .= "    left join biz_trader_recruit btr on btr.id=tdwk.biz_recruitid ";
+                        $sqlTemp .= "    where tdwk.id=:wkid;";
+                        $sqlTemp .= " insert into biz_worker_account ( `biz_workerid`, `createtime`,`type`,       `money`, `status`, `biz_catalog`,`biz_id`, remark )";
+                        $sqlTemp .= "    select                       :doed_workerid ,    :nowtime ,    0 ,  :workerMoney,        1,            0 ,  :wkid, concat(:nowtime2,'工单结算时工资收入\n')  from dual where 1=1;";
                         //报名押金退还
-                        $sqlTemp.=" insert into biz_worker_account ( `biz_workerid`, `createtime`,`type`,          `money`, `status`, `biz_catalog`,`biz_id`, remark )";
-                        $sqlTemp.="    select                         biz_workerid ,    :nowtime ,    0 ,  enroll_premoney,        1,            7 ,      id, concat(:nowtime2,'工单结算时押金退还\n') ";
-                        $sqlTemp.="    from biz_todowork where id=:wkid;";
+                        $sqlTemp .= " insert into biz_worker_account ( `biz_workerid`, `createtime`,`type`,          `money`, `status`, `biz_catalog`,`biz_id`, remark )";
+                        $sqlTemp .= "    select                         biz_workerid ,    :nowtime ,    0 ,  enroll_premoney,        1,            7 ,      id, concat(:nowtime2,'工单结算时押金退还\n') ";
+                        $sqlTemp .= "    from biz_todowork where id=:wkid;";
                         //修正工单状态
-                        $sqlTemp.=" update biz_todowork set updatetime=:nowtime,`status`=5 ,`final_status` = 1";//已结算
-                        $sqlTemp.="       ,settled_time=:nowtime,settled_mode=:biz_roletype,settled_userid=:biz_userid";
-                        $sqlTemp.="       ,remark=concat(:nowtime2,'工单自动结算\n',ifnull(remark,'')) where id=:wkid;";
-                        $dataset=pdo_query3($sqlTemp,$sqlParam);
+                        $sqlTemp .= " update biz_todowork set updatetime=:nowtime,`status`=5 ,`final_status` = 1"; //已结算
+                        $sqlTemp .= "       ,settled_time=:nowtime,settled_mode=:biz_roletype,settled_userid=:biz_userid";
+                        $sqlTemp .= "       ,remark=concat(:nowtime2,'工单自动结算\n',ifnull(remark,'')) where id=:wkid;";
+                        $dataset = pdo_query3($sqlTemp, $sqlParam);
                         return true;
-                    }catch(Throwable $e){
-                        myecho("超时48小时自动结算处理发生异常:".$e->getMessage());
+                    } catch (Throwable $e) {
+                        myecho("超时48小时自动结算处理发生异常:" . $e->getMessage());
                     }
                 });
             }
-        }catch(Throwable $e){
-            myecho("超时48小时未结算处理发生异常22:".$e->getMessage());
+        } catch (Throwable $e) {
+            myecho("超时48小时未结算处理发生异常22:" . $e->getMessage());
         }
         //------------------------------------------------
-        try{
-            $pageIndex=1;
-            $pageSize=30;
-            $start=($pageIndex-1)*$pageSize;/** 占用次数统计录满条件 */
-            $pageData=pdo_fetchall("select btr.*
+        try {
+            $pageIndex = 1;
+            $pageSize = 30;
+            $start = ($pageIndex - 1) * $pageSize; /** 占用次数统计录满条件 */
+            $pageData = pdo_fetchall("select btr.*
                 from biz_trader_recruit as btr
                 where btr.`deleted`=0 and btr.`status`=2
                 and ((btr.settle_catalog=0 and (btr.begin_datetime+btr.begin_hour2)<=:query_nowdate)
                     or (btr.need_total<=(select count(*) from biz_todowork btdw where btdw.biz_recruitid=btr.id and ( btdw.`status`>=2 or btdw.`status`=-1 or btdw.`status`=-3 ) ))
-                ) limit {$start},{$pageSize}",array(
+                ) limit {$start},{$pageSize}", array(
 //                    ":query_nowdate"=>time()+3600*2,
-                    ":query_nowdate"=>time(),
-                ));
+                ":query_nowdate" => time(),
+            ));
             foreach ($pageData as $data) {
-                try{
-                    $params=array("recruit"=>$data,);
+                try {
+                    $params = array("recruit" => $data);
                     $result = biz_flkForRecruit($data["id"], $params, function ($params) {
-                        $recruit=$params["recruit"];
-                        $useTotal=pdo_fetchcolumn("select count(*) from biz_todowork btdw where btdw.biz_recruitid=".intval($recruit["id"])." and ( btdw.`status`>=2 or btdw.`status`=-1 or btdw.`status`=-3 )");
-                        $mainRemain=intval($recruit["need_total"])-intval($useTotal);
-                        $sqlParam=array();
-                        $sqlParam[":nowtime"]=time();
-                        $sqlParam[":recruitId"]=intval($recruit["id"]);
-                        $sqlParam[":biz_traderid"]=intval($recruit["biz_traderid"]);
-                        $sqlParam[":status"]=5;
-                        $sqlParam[":remain_numtotal"]=intval($mainRemain);
-                        $sqlParam[":remark"]="[".date("Y-m-d H:i:s",time())."] 录满后自动下架  \n";
-                        $sqlTemp ="";
-                        if(intval($mainRemain)>0){
-                            $sqlParam[":status"]=6;
-                            $sqlParam[":remark"]="[".date("Y-m-d H:i:s",time())."] 招聘过期后自动下架 \n";
-                            $sqlTemp.=" insert into biz_trader_numaccount set createtime=:nowtime";
-                            $sqlTemp.="  ,biz_traderid=:biz_traderid ";//直接返还到非免费次数即可;账目可平!
-                            $sqlTemp.="  ,type=0,biz_catalog=1,biz_id=:recruitId,`status`=1,`count`=:remain_numtotal";
-                            $sqlTemp.="  ,remark='[". date("Y-m-d H:i:s", time()) ."] 因招聘过期后自动下架,返回剩余次数';";
+                        $recruit = $params["recruit"];
+                        $useTotal = pdo_fetchcolumn("select count(*) from biz_todowork btdw where btdw.biz_recruitid=" . intval($recruit["id"]) . " and ( btdw.`status`>=2 or btdw.`status`=-1 or btdw.`status`=-3 )");
+                        $mainRemain = intval($recruit["need_total"]) - intval($useTotal);
+                        $sqlParam = array();
+                        $sqlParam[":nowtime"] = time();
+                        $sqlParam[":recruitId"] = intval($recruit["id"]);
+                        $sqlParam[":biz_traderid"] = intval($recruit["biz_traderid"]);
+                        $sqlParam[":status"] = 5;
+                        $sqlParam[":remain_numtotal"] = intval($mainRemain);
+                        $sqlParam[":remark"] = "[" . date("Y-m-d H:i:s", time()) . "] 录满后自动下架  \n";
+                        $sqlTemp = "";
+                        if (intval($mainRemain) > 0) {
+                            $sqlParam[":status"] = 6;
+                            $sqlParam[":remark"] = "[" . date("Y-m-d H:i:s", time()) . "] 招聘过期后自动下架 \n";
+                            $sqlTemp .= " insert into biz_trader_numaccount set createtime=:nowtime";
+                            $sqlTemp .= "  ,biz_traderid=:biz_traderid "; //直接返还到非免费次数即可;账目可平!
+                            $sqlTemp .= "  ,type=0,biz_catalog=1,biz_id=:recruitId,`status`=1,`count`=:remain_numtotal";
+                            $sqlTemp .= "  ,remark='[" . date("Y-m-d H:i:s", time()) . "] 因招聘过期后自动下架,返回剩余次数';";
+                        }
+                        $sqlTemp .= " update biz_trader_recruit set updatetime=:nowtime,istop=0  ";
+                        $sqlTemp .= "     ,`status`=:status, remark=concat(:remark,ifnull(remark,''))";
+                        $sqlTemp .= " where id=:recruitId;";
+                        $sqlTemp .= " set @placeholder111=:biz_traderid;";
+                        $sqlTemp .= " set @placeholder222=:remain_numtotal;";
+                        $backdata = pdo_query3($sqlTemp, $sqlParam);
+                        /**
+                         * update wj 20220916
+                         */
+                        //其他未录用自动驳回 返还对押金
+                        $brtid = $recruit["id"];
+                        $todolistsql = "select id,biz_workerid,biz_recruitid,status from biz_todowork where status=1 and biz_recruitid=:brtid";
+                        $todolist = pdo_fetchall($todolistsql, [':brtid' => $brtid]);
+                        $reason = "招满自动返还";
+                        $sqlParams[":wkstatus"] = -1; //0-待提交;1-已报名待审核;2-已审核;-1-报名被驳回;3-工资/佣金已全部结算;-2-取消报名;-3-被违约 -4-被动取消'
+                        $sqlParams[":wkremark"] = "[" . date("Y-m-d H:i:s", time()) . "] 报名被拒绝(退还押金):$reason \n";
+                        //返还押金对冲
+                        foreach ($todolist as $key => $value) {
+                            $workid = $value['biz_workerid'];
+                            $sqlTemp .= " insert into biz_worker_account ( `biz_workerid`, `createtime`,`type`,          `money`, `status`, `biz_catalog`,`biz_id`, remark )";
+                            $sqlTemp .= "    select                         biz_workerid ,    :nowtime ,    0 ,  enroll_premoney,        1,            7 ,      id, :wkremark ";
+                            $sqlTemp .= "    from biz_todowork where id=" . intval($workid) . ";";
+                            $sqlTemp .= " update biz_todowork set updatetime=:nowtime,`status`=:wkstatus, remark=concat(:wkremark,ifnull(remark,'')) ";
+                            $sqlTemp .= "    where id=" . intval($workid) . ";";
+                            $dataset = pdo_query3($sqlTemp, $sqlParams);
                         }
-                        $sqlTemp.=" update biz_trader_recruit set updatetime=:nowtime,istop=0  ";
-                        $sqlTemp.="     ,`status`=:status, remark=concat(:remark,ifnull(remark,''))";
-                        $sqlTemp.=" where id=:recruitId;";
-                        $sqlTemp.=" set @placeholder111=:biz_traderid;";
-                        $sqlTemp.=" set @placeholder222=:remain_numtotal;";
-                        $backdata=pdo_query3($sqlTemp,$sqlParam);
                         return $backdata;
                     });
                     myecho("222222222222");
-                }catch(Throwable $e){
-                    myecho("招聘超时下架/录满下架处理发生异常11:".$e->getMessage());
+                } catch (Throwable $e) {
+                    myecho("招聘超时下架/录满下架处理发生异常11:" . $e->getMessage());
                 }
             }
-        }catch(Throwable $e){
-            myecho("招聘超时下架/录满下架处理发生异常22:".$e->getMessage());
+        } catch (Throwable $e) {
+            myecho("招聘超时下架/录满下架处理发生异常22:" . $e->getMessage());
         }
-    }catch(Throwable $e){
-        $friendMsg=get_class($e)=='GeneralException'?$e->friendmsg:"非常抱歉,处理业务时发生错误";
-        throw new GeneralException("处理业务发生错误",$friendMsg,LOG_CATALOG,0,$e);
+    } catch (Throwable $e) {
+        $friendMsg = get_class($e) == 'GeneralException' ? $e->friendmsg : "非常抱歉,处理业务时发生错误";
+        throw new GeneralException("处理业务发生错误", $friendMsg, LOG_CATALOG, 0, $e);
     }
     /***********************finish*********************************/
-  });
+});

二進制
说明/bug记录.xls


二進制
说明/日志.xls