| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208 | 
							- <?php
 
- namespace app\common\api;
 
- use app\common\model\LivingAllowance as LaModel;
 
- use app\common\state\LivingAllowanceState as LaState;
 
- use think\facade\Db;
 
- /**
 
-  * Description of LivingAllowanceApi
 
-  *
 
-  * @author sgq
 
-  */
 
- class LivingAllowanceApi {
 
-     public static function getList($params) {
 
-         $order = trim($params["order"]) ?: "desc";
 
-         $offset = trim($params["offset"]) ?: 0;
 
-         $limit = trim($params["limit"]) ?: 10;
 
-         $where = [];
 
-         if ($_where = self::setLivingAllowanceCheckStateCondition($params)) {
 
-             $where = array_merge($where, $_where);
 
-         }
 
-         if ($_where = self::getWhereByParams($params)) {
 
-             $where = array_merge($where, $_where);
 
-         }
 
-         $type = session("user")["type"];
 
-         $where[] = ["type", "=", $type];
 
-         $count = laModel::where($where)->count();
 
-         $list = laModel::where($where)->limit($offset, $limit)->order("createTime " . $order)->select()->toArray();
 
-         $masterTypes = DictApi::selectByParentCode("un_master_education"); //申报对象类型
 
-         $degrees = DictApi::selectByParentCode("highest_degree"); //最高学历
 
-         foreach ($list as $key => $item) {
 
-             $list[$key]["declareTypeName"] = $masterTypes[$item["declareType"]];
 
-             $list[$key]["highEducation"] = $degrees[$item["highEducation"]];
 
-         }
 
-         return ["total" => $count, "rows" => $list];
 
-     }
 
-     public static function setLivingAllowanceCheckStateCondition($params) {
 
-         $where = [];
 
-         $checkState = $params["checkState"];
 
-         $process = $params["process"];
 
-         if ($checkState) {
 
-             switch ($process) {
 
-                 case -1:
 
-                     if ($checkState == 7) {
 
-                         $where[] = ["checkState", ">=", $checkState];
 
-                     } else {
 
-                         $where[] = ["checkState", "=", $checkState];
 
-                     }
 
-                     break;
 
-                 case 1:
 
-                     if ($checkState == LaState::LA_NEED_DEP_CHECK) {
 
-                         $where[] = ["checkState", "in", [15, 25, 30, 35]];
 
-                     } else if ($checkState == 5) {
 
-                         $where[] = ["checkState", "=", LaState::LA_NEED_FIRST_CHECK];
 
-                         $where[] = ["highProcess", ">=", 1];
 
-                     } else if ($checkState == LaState::LA_NEED_FIRST_CHECK) {
 
-                         $where[] = ["checkState", "=", LaState::LA_NEED_FIRST_CHECK];
 
-                         $where[] = ["highProcess", "<", 1];
 
-                     } else {
 
-                         $where[] = ["checkState", "=", $checkState];
 
-                     }
 
-                     break;
 
-                 case 2:
 
-                     if ($checkState == LaState::LA_BEFORE_REJECT) {
 
-                         $where[] = ["checkState", "=", 15];
 
-                         $where[] = ["highProcess", ">=", 2];
 
-                     } else if ($checkState == LaState::LA_NEED_FIRST_CHECK) {
 
-                         $where[] = ["checkState", "=", 15];
 
-                         $where[] = ["highProcess", "<", 2];
 
-                     } else if ($checkState == LaState::LA_FIRST_REJECT) {               //待复核                        
 
-                         $where[] = ["checkState", "in", [1, 3, 5, 7, 10, 20]];
 
-                     } else if ($checkState == LaState::LA_NEED_DEP_CHECK) {
 
-                         $where[] = ["checkState", ">=", 25];
 
-                     } else {
 
-                         $where[] = ["checkState", "=", $checkState];
 
-                     }
 
-                     break;
 
-                 case 3:
 
-                     if ($checkState == LaState::LA_THIRD_REJECT) {
 
-                         $where [] = ["checkState", "in", [7, 10, 15, 20, 30]];
 
-                     } else if ($checkState == LaState::LA_BEFORE_REJECT) {            //重新提交
 
-                         $where[] = ["checkState", "=", LaState::LA_NEED_THIRD];
 
-                         $where[] = ["highProcess", ">=", 3];
 
-                     } else if ($checkState == LaState::LA_NEED_THIRD) {               //待复核
 
-                         $where[] = ["checkState", "=", $checkState];
 
-                         $where[] = ["highProcess", "<", 3];
 
-                     } else {
 
-                         $where[] = ["checkState", "=", $checkState];
 
-                     }
 
-                     break;
 
-                 case 4:
 
-                     $where[] = ["checkState", "=", $checkState];
 
-                     break;
 
-                 case 5:
 
-                     break;
 
-             }
 
-         }
 
-         return $where;
 
-     }
 
-     public static function getWhereByParams($params) {
 
-         foreach ($params as &$param) {
 
-             $param = trim($param);
 
-         }unset($param);
 
-         $where = [];
 
-         if ($params["name"]) {
 
-             $where[] = ["name", "like", "%" . $params["name"] . "%"];
 
-         }
 
-         if ($params["idCard"]) {
 
-             $where[] = ["idCard", "like", "%" . $params["idCard"] . "%"];
 
-         }
 
-         if ($params["introductionMethod"]) {
 
-             $where[] = ["introductionMethod", "=", $params["introductionMethod"]];
 
-         }
 
-         if ($params["sex"]) {
 
-             $where[] = ["sex", "=", $params["sex"]];
 
-         }
 
-         if ($params["declareType"]) {
 
-             $where[] = ["declareType", "=", $params["declareType"]];
 
-         }
 
-         if ($params["nation"]) {
 
-             $where[] = ["nation", "=", $params["nation"]];
 
-         }
 
-         if ($params["nationality"]) {
 
-             $where[] = ["nationality", "=", $params["nationality"]];
 
-         }
 
-         if ($params["provinceCode"]) {
 
-             $where[] = ["provinceCode", "=", $params["provinceCode"]];
 
-         }
 
-         if ($params["politics"]) {
 
-             $where[] = ["politics", "=", $params["politics"]];
 
-         }
 
-         if (session("user")["usertype"] == 2) {
 
-             $where[] = ["enterpriseId", "=", session("user")["uid"]];
 
-         } else {
 
-             if ($params["enterpriseId"]) {
 
-                 $where[] = ["enterpriseId", "=", $params["enterpriseId"]];
 
-             }
 
-         }
 
-         if ($params["industryFieldNew"]) {
 
-             $where[] = ["industryFieldNew", "=", $params["industryFieldNew"]];
 
-         }
 
-         if ($params["industryField"]) {
 
-             $where[] = ["industryField", "=", $params["industryField"]];
 
-         }
 
-         if ($params["introductionMode"]) {
 
-             $where[] = ["introductionMode", "=", $params["introductionMode"]];
 
-         }
 
-         if ($params["highEducation"]) {
 
-             $where[] = ["highEducation", "=", $params["highEducation"]];
 
-         }
 
-         if ($params["major"]) {
 
-             $where[] = ["major", "like", "%" . $params["major"] . "%"];
 
-         }
 
-         if ($params["title"]) {
 
-             $where[] = ["title", "like", "%" . $params["title"] . "%"];
 
-         }
 
-         if ($params["studyAbroad"]) {
 
-             $where[] = ["studyAbroad", "=", $params["studyAbroad"]];
 
-         }
 
-         if ($params["phone"]) {
 
-             $where[] = ["phone", "like", "%" . $params["phone"] . "%"];
 
-         }
 
-         if ($params["email"]) {
 
-             $where[] = ["email", "like", "%" . $params["email"] . "%"];
 
-         }
 
-         if ($params["address"]) {
 
-             $where[] = ["address", "=", $params["address"]];
 
-         }
 
-         if ($params["isPublic"]) {
 
-             $where[] = ["isPublic", "=", $params["isPublic"]];
 
-         }
 
-         if ($params["year"]) {
 
-             $where[] = ["year", "=", $params["year"]];
 
-         }
 
-         switch ($params["process"]) {
 
-             case 1:
 
-                 $where[] = ["checkState", "not in", [3, 5]];
 
-                 break;
 
-             case 2:
 
-                 $where[] = ["firstPassTime", "EXP", Db::raw("is not null")];
 
-                 break;
 
-             case 3:
 
-                 $where[] = ["firstDepPassTime", "EXP", Db::raw("is not null")];
 
-                 break;
 
-             case 4:
 
-                 $where[] = ["checkState", "in", [-1, 35]];
 
-                 break;
 
-         }
 
-         return $where;
 
-     }
 
-     public static function getInfoById($id) {
 
-         return LaModel::findOrEmpty($id)->toArray();
 
-     }
 
-     public static function getApplyCountByIdCard($idCard) {
 
-         $where = [];
 
-         $where[] = ["idCard", "=", $idCard];
 
-         $where[] = ["checkState", "<>", LaState::LA_NOTPASS];
 
-         $list = LaModel::where($where)->distinct(true)->field("substr(year,1,4)")->select();
 
-         return count($list);
 
-     }
 
- }
 
 
  |