wang jun преди 2 години
родител
ревизия
c9c33e92bc
променени са 2 файла, в които са добавени 61 реда и са изтрити 39 реда
  1. 24 17
      prjcenter/prjKLY/base/AboutActivity.php
  2. 37 22
      prjcenter/prjKLY/service/task_common.php

+ 24 - 17
prjcenter/prjKLY/base/AboutActivity.php

@@ -145,8 +145,8 @@ function bizbase_recruitEntityHandle($fromSubSystem, $baseUser, $bizUser, $handl
 
             $backdata["btr_canBreakoff"] = false;
             if (
-                intval($backdata["status"]) >= 2 //提前违约
-                && ((intval($backdata["settle_catalog"]) == 0
+                intval($backdata["status"]) >= 2//提前违约
+                 && ((intval($backdata["settle_catalog"]) == 0
                 ) || (intval($backdata["settle_catalog"]) > 0
                 ))
             ) {
@@ -1683,7 +1683,8 @@ function bizbase_recruitAboutQuery($fromSubSystem, $baseUser, $bizUser, $handleM
                                 continue;
                             }
 
-                            $queryNew .= " and ( 1=0 ";
+                            $queryNew .= " and ( 1=1 ";
+                            //$queryNew .= " and (";
                             foreach ($fdValue as $index => $subquery) {
                                 $paramName = ":qy_workArea_" . intval($index);
                                 $queryNew .= " or btr.work_addr like concat('%',{$paramName},'%')  ";
@@ -1850,7 +1851,8 @@ function bizbase_recruitAboutQuery($fromSubSystem, $baseUser, $bizUser, $handleM
                 }
                 $query = $queryNew;
             }
-            $sqlWorkerTotal = " (select count(*) from biz_todowork btdw where btdw.biz_recruitid=btr.id and ( btdw.`status`>=2 or btdw.`status`=-1 or btdw.`status`=-3 ) ) ";
+            //$sqlWorkerTotal = " (select count(*) from biz_todowork btdw where btdw.biz_recruitid=btr.id and ( btdw.`status`>=2 or btdw.`status`=-1 or btdw.`status`=-3 ) ) ";
+            $sqlWorkerTotal = " (select count(*) from biz_todowork btdw where btdw.biz_recruitid=btr.id and ( btdw.`status`>=2 or btdw.`status`=-3 ) ) ";
             $sqlParam[":select_nowdate"] = strtotime(date("Y-m-d", time()));
             switch ($handleMode) {
                 case "fetchallByWorker":
@@ -1858,8 +1860,10 @@ function bizbase_recruitAboutQuery($fromSubSystem, $baseUser, $bizUser, $handleM
                     // 这是是修改  会员端
                     //$query .= " and ((btr.settle_catalog=0 and btr.begin_time_new >= :query_nowdate_new_ma) or (btr.settle_catalog=1)) ";
                     $query .= " and (";
-                    $query .= "(btr.settle_catalog=0 and btr.begin_time_new >= :query_nowdate_new_ma) or";
-                    $query .= "(btr.settle_catalog=1 and btr.end_time_new>=:query_nowdate_new_ma)";
+                    $query .= "(btr.settle_catalog=0 and btr.begin_time_new >= :query_nowdate_new_ma) or ";
+                    $query .= "(btr.settle_catalog=1 ) or ";
+                    //完工 20221112 wj
+                    $query .= "(btr.urgent_level=0 and btr.end_time_new>=:query_nowdate_new_ma  and btr.status=2)";
                     $query .= ")";
                     $query .= " and {$sqlWorkerTotal}<btr.need_total "; //肯定筛选掉已录满(含次数扣减)的招聘记录
                     if (!empty($bizWorker)) { //非商户用户,则屏蔽当前用户已报名的招聘记录
@@ -1919,7 +1923,7 @@ function bizbase_recruitAboutQuery($fromSubSystem, $baseUser, $bizUser, $handleM
             //$sqlBody .= " FROM (SELECT *, CONCAT(FROM_UNIXTIME(begin_datetime,\"%Y%m%d\"), REPLACE(begin_hour,':','')) AS begin_time_new, FROM biz_trader_recruit ) btr ";
             $sqlBody .= " FROM (SELECT *,";
             $sqlBody .= " CONCAT(FROM_UNIXTIME(begin_datetime,\"%Y%m%d\"), REPLACE(begin_hour,':','')) AS begin_time_new,";
-            $sqlBody .= " CONCAT(FROM_UNIXTIME(finish_datetime,\"%Y%m%d\"), REPLACE(begin_hour2,':','')) AS end_time_new";
+            $sqlBody .= " CONCAT(FROM_UNIXTIME(finish_datetime,\"%Y%m%d\"), REPLACE(finish_hour,':','')) AS end_time_new";
             $sqlBody .= " FROM biz_trader_recruit ) btr ";
             $sqlBody .= "  left join biz_trader           bt    on bt.id=btr.biz_traderid ";
             $sqlBody .= "  left join base_user            bu    on bu.id=bt.base_userid ";
@@ -1939,10 +1943,12 @@ function bizbase_recruitAboutQuery($fromSubSystem, $baseUser, $bizUser, $handleM
             $sqlFetch .= " ,(select count(*) from biz_todowork btdw where btdw.biz_recruitid=btr.id and ( btdw.`status`>=1 ) ) as now_worker_total000"; //已报及有效报名人数/无效报名次数扣减总数
             $sqlFetch .= " ,(select count(*) from biz_todowork btdw where btdw.biz_recruitid=btr.id and ( btdw.`status`=-1 or btdw.`status`=-3 ) ) as num_abnormal_total ";
             $sqlFetch .= " {$sqlSelectExt} {$sqlBody} {$orderby} ";
+            //var_dump($sqlFetch);exit;
             $exportExcel = isset($ajaxdata["exportExcel"]) ? $ajaxdata["exportExcel"] : $GPC["exportExcel"];
             if (trim($exportExcel) != "true") { //正常输出
                 $start = (intval($pageIndex) - 1) * $pageSize;
                 $sqlFetch .= " limit {$start},{$pageSize} ";
+                //var_dump($sqlFetch, $sqlParam);exit;
                 $pageData = pdo_fetchall($sqlFetch, $sqlParam);
                 foreach ($pageData as &$item) { //后端到前端数据转换
                     $delegateInfo = bizbase_recruitDelegateInfo($item);
@@ -2632,8 +2638,8 @@ function bizbase_todoWorkEntityHandle($fromSubSystem, $baseUser, $bizUser, $hand
                     $sqlParam[":workDateStart"] = intval($recruitInfo["begin_datetime"]);
                     $sqlParam[":workDateFinish"] = $sqlParam[":workDateStart"];
                     if (
-                        intval($recruitInfo["settle_catalog"]) <= 0 //普通招聘的多日招聘
-                        && intval($recruitInfo["begin_datetime"]) < intval($recruitInfo["finish_datetime"])
+                        intval($recruitInfo["settle_catalog"]) <= 0//普通招聘的多日招聘
+                         && intval($recruitInfo["begin_datetime"]) < intval($recruitInfo["finish_datetime"])
                     ) {
                         $sqlParam[":workDateFinish"] = intval($recruitInfo["finish_datetime"]);
                     }
@@ -2833,8 +2839,8 @@ function bizbase_todoWorkEntityHandle($fromSubSystem, $baseUser, $bizUser, $hand
                     $sqlParam[":workDateStart"] = intval($recruitInfo["begin_datetime"]);
                     $sqlParam[":workDateFinish"] = $sqlParam[":workDateStart"];
                     if (
-                        intval($recruitInfo["settle_catalog"]) <= 0 //普通招聘的多日招聘
-                        && intval($recruitInfo["begin_datetime"]) < intval($recruitInfo["finish_datetime"])
+                        intval($recruitInfo["settle_catalog"]) <= 0//普通招聘的多日招聘
+                         && intval($recruitInfo["begin_datetime"]) < intval($recruitInfo["finish_datetime"])
                     ) {
                         $sqlParam[":workDateFinish"] = intval($recruitInfo["finish_datetime"]);
                     }
@@ -3166,8 +3172,8 @@ function bizbase_todoWorkEntityHandle($fromSubSystem, $baseUser, $bizUser, $hand
                 $sqlParams[":workDateStart"] = intval($recruitInfo["begin_datetime"]);
                 $sqlParams[":workDateFinish"] = $sqlParams[":workDateStart"];
                 if (
-                    intval($recruitInfo["settle_catalog"]) <= 0 //普通招聘的多日招聘
-                    && intval($recruitInfo["begin_datetime"]) < intval($recruitInfo["finish_datetime"])
+                    intval($recruitInfo["settle_catalog"]) <= 0//普通招聘的多日招聘
+                     && intval($recruitInfo["begin_datetime"]) < intval($recruitInfo["finish_datetime"])
                 ) {
                     $sqlParams[":workDateFinish"] = intval($recruitInfo["finish_datetime"]);
                 }
@@ -4269,8 +4275,8 @@ function bizbase_todoWorkEnrollVerify($handleMode, $bizWorker, $recruitInfo, $pl
     $workDateStart = intval($recruitInfo["begin_datetime"]);
     $workDateFinish = $workDateStart;
     if (
-        intval($recruitInfo["settle_catalog"]) <= 0 //普通招聘的多日招聘
-        && intval($recruitInfo["begin_datetime"]) < intval($recruitInfo["finish_datetime"])
+        intval($recruitInfo["settle_catalog"]) <= 0//普通招聘的多日招聘
+         && intval($recruitInfo["begin_datetime"]) < intval($recruitInfo["finish_datetime"])
     ) {
         $workDateFinish = intval($recruitInfo["finish_datetime"]);
     }
@@ -5231,6 +5237,7 @@ left join biz_trader_account tdwkat2 on tdwk.`status`=5 and tdwkat2.`status`=1 a
             $sqlFetch .= "  ,tdapa.id as tdapa_id,tdapa.deleted as tdapa_deleted,tdapa.result_level as td_appraiseLevel,tdapa.result_desc as td_appraiseRemark";
             $sqlFetch .= "  ,tdwkat2.`biz_catalog` as tdwk_settlecatalog";
             $sqlFetch .= " {$sqlSelectExt} {$sqlBody} {$orderby} ";
+            var_dump($sqlFetch);exit;
 
             $exportExcel = isset($ajaxdata["exportExcel"]) ? $ajaxdata["exportExcel"] : $GPC["exportExcel"];
             if (trim($exportExcel) != "true") { //正常输出
@@ -5335,8 +5342,8 @@ left join biz_trader_account tdwkat2 on tdwk.`status`=5 and tdwkat2.`status`=1 a
 
                     $data["btr_canBreakoff"] = false;
                     if (
-                        intval($data["recruit_status"]) == 2 //提前违约
-                        && ((intval($data["btr_settle_catalog"]) == 0
+                        intval($data["recruit_status"]) == 2//提前违约
+                         && ((intval($data["btr_settle_catalog"]) == 0
                         ) || (intval($data["btr_settle_catalog"]) > 0
                         ))
                     ) {

+ 37 - 22
prjcenter/prjKLY/service/task_common.php

@@ -234,31 +234,44 @@ service_init("KLY", "快来优通用任务  kly-autotask", 30, function () {
             //                    }
             //                });
             //            }
-            $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
-        where tdwk.`status`=4 and tdwk.worked_finishtime<=:query_nowdate
-        order by tdwk.id desc
-        limit {$start},{$pageSize}", array(
-                ":query_nowdate" => time() - 3600 * 48,
-                //                ":query_nowdate"=>time()-3600*12,
-                //                ":query_nowdate"=>time(),
-            ));
+            // where tdwk.`status`4 and tdwk.worked_finishtime<=:query_nowdate
+            $sql = "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";
+            $sql .= " left join biz_trader_recruit as btr on btr.id=tdwk.biz_recruitid";
+            $sql .= " where tdwk.`status` in (2,3,4) and (btr.finish_datetime+btr.finish_hour2)<=:query_nowdate";
+            $sql .= "order by tdwk.id desc limit {$start},{$pageSize}";
+            $param = [
+                ":query_nowdate" => time() - 3600 * 12,
+            ];
+            //
+            /*$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
+            where tdwk.`status` in (2,3,4) and tdwk.worked_finishtime<=:query_nowdate
+            order by tdwk.id desc
+            limit {$start},{$pageSize}", array(
+            ":query_nowdate" => time() - 3600 * 48,
+            //                ":query_nowdate"=>time()-3600*12,
+            //                ":query_nowdate"=>time(),
+            ));*/
+            $pageData = pdo_fetchall($sql, $param);
             foreach ($pageData as $data) {
                 $result = biz_flkForWork($data["id"], $data, function ($data) {
                     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"]);
+                        $sqlParam[":biz_userid"] = intval($data["biz_traderid"]); //付款人id 商户id
                         $sqlTemp = "";
 
                         //商家冻结费用解冻
@@ -318,7 +331,7 @@ service_init("KLY", "快来优通用任务  kly-autotask", 30, function () {
                         $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);
-                        myecho($sqlTemp);
+                        //myecho($sqlTemp);
                         return true;
                     } catch (Throwable $e) {
                         myecho("超时48小时自动结算处理发生异常:" . $e->getMessage());
@@ -330,6 +343,7 @@ service_init("KLY", "快来优通用任务  kly-autotask", 30, function () {
         }
         //------------------------------------------------
         //录用满员处理
+        //and ( btdw.`status`>=2 or btdw.`status`=-1 or btdw.`status`=-3 )
         myecho("处理内容:录用满员处理");
         try {
             $pageIndex = 1;
@@ -339,21 +353,21 @@ service_init("KLY", "快来优通用任务  kly-autotask", 30, function () {
             $pageData = pdo_fetchall("select btr.*
                 from biz_trader_recruit as btr
                 where btr.`deleted`=0 and btr.`status`=2
-                and 
+                and
                 (
                     (
-                        btr.settle_catalog=0 
+                        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 ) 
+                            select count(*) from biz_todowork btdw
+                            where btdw.biz_recruitid=btr.id
+                            and ( btdw.`status`>=2 or  btdw.`status`=-3 )
                         )
                     )
                     or(
-                        btr.settle_catalog=1 
+                        btr.settle_catalog=1
                         and (btr.finish_datetime+btr.begin_hour2)<=:query_nowdate
                     )
                 ) limit {$start},{$pageSize}", array(
@@ -365,7 +379,8 @@ service_init("KLY", "快来优通用任务  kly-autotask", 30, function () {
                     $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 )");
+                        #$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 )");
+                        $useTotal = pdo_fetchcolumn("select count(*) from biz_todowork btdw where btdw.biz_recruitid=" . intval($recruit["id"]) . " and ( btdw.`status`>=2 or btdw.`status`=-3 )");
                         $mainRemain = intval($recruit["need_total"]) - intval($useTotal);
                         $sqlParam = array();
                         $sqlParam[":nowtime"] = time();