CRMEB/crmeb/app/models/routine/RoutineFormId.php
2019-11-19 17:57:27 +08:00

82 lines
2.0 KiB
PHP

<?php
namespace app\models\routine;
use crmeb\basic\BaseModel;
use crmeb\traits\ModelTrait;
/**
* TODO 表单ID表
* Class RoutineFormId
* @package app\models\routine
*/
class RoutineFormId extends BaseModel
{
/**
* 数据表主键
* @var string
*/
protected $pk = 'id';
/**
* 模型名称
* @var string
*/
protected $name = 'routine_form_id';
use ModelTrait;
/**
* TODO 删除已失效的formID
* @return bool
* @throws \Exception
*/
public static function delStatusInvalid()
{
return self::where('status', 2)->where('stop_time', '<', time())->delete();
}
/**
* TODO
* @param int $uid
* @param bool $isArray
* @return array|bool|mixed|null|\think\Model
* @throws \think\db\exception\DataNotFoundException
* @throws \think\db\exception\ModelNotFoundException
* @throws \think\exception\DbException
*/
public static function getFormIdOne($uid = 0, $isArray = false)
{
$formId = self::where('status', 1)->where('stop_time', '>', time())->where('uid', $uid)->order('id asc')->find();
if ($isArray) return $formId;
if ($formId) return $formId['form_id'];
else return false;
}
/**
* 修改一个FormID为已使用
* @param string $formId
* @return $this|bool
*/
public static function delFormIdOne($formId = '')
{
if ($formId == '') return true;
return self::where('form_id', $formId)->update(['status' => 2]);
}
/**
* TODO 创建formid
* @param $formId
* @param $uid
* @return RoutineFormId|bool|\think\Model
*/
public static function SetFormId($formId, $uid)
{
if (!strlen(trim($formId)) || $formId == 'the formId is a mock one') return false;
$data['form_id'] = $formId;
$data['uid'] = $uid;
$data['status'] = 1;
$data['stop_time'] = bcadd(time(), bcmul(6, 86400, 0), 0);
return self::create($data);
}
}