no message
This commit is contained in:
parent
4cdf812b55
commit
889ccad6ad
@ -31,7 +31,7 @@ final class HookController
|
|||||||
$aData['fromId'] = (string) $aUpdate["message"]["from"]["id"];
|
$aData['fromId'] = (string) $aUpdate["message"]["from"]["id"];
|
||||||
|
|
||||||
if (!isset($aUpdate["message"]["text"])) {
|
if (!isset($aUpdate["message"]["text"])) {
|
||||||
throw new \Exception("?");
|
throw new \Exception(json_encode($aUpdate));
|
||||||
}
|
}
|
||||||
|
|
||||||
$sText = &$aUpdate["message"]["text"];
|
$sText = &$aUpdate["message"]["text"];
|
||||||
|
|||||||
@ -4,19 +4,21 @@ namespace App\Models;
|
|||||||
|
|
||||||
use Illuminate\Database\Eloquent\Model;
|
use Illuminate\Database\Eloquent\Model;
|
||||||
|
|
||||||
class Blade extends Model
|
class Article extends Model
|
||||||
{
|
{
|
||||||
protected $table = 'blade';
|
protected $table = 'article';
|
||||||
public $timestamps = false;
|
// public $timestamps = false;
|
||||||
|
|
||||||
public static function _listKey()
|
// public static function _listKey()
|
||||||
{
|
// {
|
||||||
$aSelf = self::all()->toArray();
|
// $aSelf = self::all()->toArray();
|
||||||
|
//
|
||||||
|
// foreach ($aSelf as &$aSelfRow) {
|
||||||
|
// unset($aSelfRow["content"]);
|
||||||
|
// }
|
||||||
|
//
|
||||||
|
// return $aSelf;
|
||||||
|
// }
|
||||||
|
|
||||||
foreach ($aSelf as &$aSelfRow) {
|
|
||||||
unset($aSelfRow["content"]);
|
|
||||||
}
|
|
||||||
|
|
||||||
return $aSelf;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -4,9 +4,9 @@ namespace App\Models;
|
|||||||
|
|
||||||
use Illuminate\Database\Eloquent\Model;
|
use Illuminate\Database\Eloquent\Model;
|
||||||
|
|
||||||
class Article extends Model
|
class ArticleOption extends Model
|
||||||
{
|
{
|
||||||
protected $table = 'article';
|
protected $table = 'article_option';
|
||||||
// public $timestamps = false;
|
// public $timestamps = false;
|
||||||
|
|
||||||
// public static function _listKey()
|
// public static function _listKey()
|
||||||
|
|||||||
@ -12,7 +12,7 @@ class DogOption extends Model
|
|||||||
public static function _hit($sDogName, $k)
|
public static function _hit($sDogName, $k)
|
||||||
{
|
{
|
||||||
$v = self::where("dog_name", $sDogName)->where("k", $k)->first()?->v;
|
$v = self::where("dog_name", $sDogName)->where("k", $k)->first()?->v;
|
||||||
|
// tomd($sDogName);
|
||||||
return $v;
|
return $v;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -24,6 +24,8 @@ class Dog extends Mod\Base {
|
|||||||
public $aOutFormat = [];
|
public $aOutFormat = [];
|
||||||
public $sDogName;
|
public $sDogName;
|
||||||
private $aMsg = [];
|
private $aMsg = [];
|
||||||
|
public $aSelectField = [];
|
||||||
|
public $aHideField = [];
|
||||||
|
|
||||||
public function __construct($oModelSelf = false)
|
public function __construct($oModelSelf = false)
|
||||||
{
|
{
|
||||||
@ -31,13 +33,42 @@ class Dog extends Mod\Base {
|
|||||||
}
|
}
|
||||||
|
|
||||||
//// 定义系列
|
//// 定义系列
|
||||||
|
|
||||||
|
// 必须,关联option和me那些
|
||||||
|
public function _setDogName($sDogName)
|
||||||
|
{
|
||||||
|
$this->sDogName = $sDogName;
|
||||||
|
// tomd($this->sDogName);
|
||||||
|
}
|
||||||
|
|
||||||
|
// 必须,使用的model
|
||||||
|
public function _setModel($oModelSelf)
|
||||||
|
{
|
||||||
|
$this->oModelSelf = $oModelSelf;
|
||||||
|
}
|
||||||
|
|
||||||
|
// str字段的最大长度
|
||||||
public function _setStrMaxLen($iStrMaxLen)
|
public function _setStrMaxLen($iStrMaxLen)
|
||||||
{
|
{
|
||||||
$this->iStrMaxLen = $iStrMaxLen;
|
$this->iStrMaxLen = $iStrMaxLen;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 隐藏某些字段[id,name]
|
||||||
|
public function _setHideField($aHideField = [])
|
||||||
|
{
|
||||||
|
$this->aHideField = $aHideField;
|
||||||
|
}
|
||||||
|
|
||||||
|
// 选择性取某些字段[id,name]
|
||||||
|
public function _setSelectField($aSelectField = [])
|
||||||
|
{
|
||||||
|
$this->aSelectField = $aSelectField;
|
||||||
|
}
|
||||||
|
|
||||||
|
// 设置长字符串字段
|
||||||
public function _setStrField($aStrField)
|
public function _setStrField($aStrField)
|
||||||
{
|
{
|
||||||
|
// tomd($this->sDogName);
|
||||||
$this->iStrMaxLen = ModelDogOption::_hit($this->sDogName, "str_len_max");
|
$this->iStrMaxLen = ModelDogOption::_hit($this->sDogName, "str_len_max");
|
||||||
|
|
||||||
if (!$this->iStrMaxLen) {
|
if (!$this->iStrMaxLen) {
|
||||||
@ -49,35 +80,24 @@ class Dog extends Mod\Base {
|
|||||||
$this->aStrField = $aStrField;
|
$this->aStrField = $aStrField;
|
||||||
}
|
}
|
||||||
|
|
||||||
public function _setDogName($sDogName)
|
// 设置主键
|
||||||
{
|
|
||||||
$this->sDogName = $sDogName;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
public function _setModel($oModelSelf)
|
|
||||||
{
|
|
||||||
$this->oModelSelf = $oModelSelf;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function _setPrimaryKey($key)
|
public function _setPrimaryKey($key)
|
||||||
{
|
{
|
||||||
$this->sPrimaryKey = $key;
|
$this->sPrimaryKey = $key;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 写入数据时格式化某些字段 [transfer_enable => gb]
|
||||||
public function _setInFormat($aInFormat)
|
public function _setInFormat($aInFormat)
|
||||||
{
|
{
|
||||||
$this->aInFormat = $aInFormat;
|
$this->aInFormat = $aInFormat;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 输出数据时格式化某些字段 [transfer_enable => gb]
|
||||||
public function _setOutFormat($aOutFormat)
|
public function _setOutFormat($aOutFormat)
|
||||||
{
|
{
|
||||||
$this->aOutFormat = $aOutFormat;
|
$this->aOutFormat = $aOutFormat;
|
||||||
}
|
}
|
||||||
// public function _setFormatField($aFormatField)
|
|
||||||
// {
|
|
||||||
// $this->aFormatField = $aFormatField;
|
|
||||||
// }
|
|
||||||
//// 定义系列 end
|
//// 定义系列 end
|
||||||
|
|
||||||
//// option 系列
|
//// option 系列
|
||||||
@ -91,8 +111,8 @@ class Dog extends Mod\Base {
|
|||||||
|
|
||||||
public function optionAdd($aParam)
|
public function optionAdd($aParam)
|
||||||
{
|
{
|
||||||
$k = $aParam["aArg"][1] ?? false;
|
$k = $aParam["aOption"][1] ?? false;
|
||||||
$v = $aParam["aArg"][2] ?? false;
|
$v = $aParam["aArg"][1] ?? false;
|
||||||
|
|
||||||
if ($k == "?") {
|
if ($k == "?") {
|
||||||
return "#optionAdd {k} {v}";
|
return "#optionAdd {k} {v}";
|
||||||
@ -360,33 +380,39 @@ class Dog extends Mod\Base {
|
|||||||
|
|
||||||
public function clone($aParam)
|
public function clone($aParam)
|
||||||
{
|
{
|
||||||
$sValue = $aParam['aArg'][1] ?? false;
|
$sWhereValue = $aParam['aArg'][1] ?? false;
|
||||||
// $sWhereField = $aParam["aOption"][1] ?? $this->sPrimaryKey;
|
$sWhereField = $aParam["aOption"][1] ?? $this->sPrimaryKey;
|
||||||
$sKeyType = $aParam["aOption"][1] ?? "int";
|
$sWhereFieldType = $aParam["aOption"][2] ?? "int";
|
||||||
|
|
||||||
if ($sValue == "?") {
|
if ($sWhereValue == "?") {
|
||||||
return "#clone__{keyType?int:int,str,int自增str随机} {whereValue}";
|
return "#clone__[whereField]__[whereFieldType(:int,str)] [whereValue]";
|
||||||
|
// return "#clone__{keyType?int:int,str,int自增str随机} {whereValue}";
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!$sValue) {
|
if (!$sWhereField) {
|
||||||
|
return "需要field";
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!$sWhereValue) {
|
||||||
return "需要value";
|
return "需要value";
|
||||||
}
|
}
|
||||||
|
|
||||||
// 查找文章
|
// 查找文章
|
||||||
$oModelSelf = $this->oModelSelf->where($this->sPrimaryKey, $sValue)->first();
|
$oModelSelf = $this->oModelSelf->where($sWhereField, $sWhereValue)->first();
|
||||||
|
|
||||||
if (!$oModelSelf) {
|
if (!$oModelSelf) {
|
||||||
return "没找到这个";
|
return "没找到这个";
|
||||||
}
|
}
|
||||||
|
|
||||||
$oModelSelfNew = $oModelSelf->replicate();
|
$oModelSelfNew = $oModelSelf->replicate();
|
||||||
if ($sKeyType == "str") {
|
if ($sWhereFieldType == "str") {
|
||||||
$oModelSelfNew->code = $oModelSelfNew->{$this->sPrimaryKey}."-clone".rand(0, 9999);
|
$oModelSelfNew->$sWhereField = $oModelSelfNew->{$sWhereField}."-clone".rand(0, 9999);
|
||||||
}
|
}
|
||||||
$oModelSelfNew->save();
|
$oModelSelfNew->save();
|
||||||
|
|
||||||
$aParam = [];
|
$aParam = [];
|
||||||
$aParam["aArg"][1] = $oModelSelfNew->{$this->sPrimaryKey};
|
$aParam["aOption"][1] = $sWhereField;
|
||||||
|
$aParam["aArg"][1] = $oModelSelfNew->$sWhereField;
|
||||||
|
|
||||||
return $this->find($aParam);
|
return $this->find($aParam);
|
||||||
}
|
}
|
||||||
@ -417,12 +443,12 @@ class Dog extends Mod\Base {
|
|||||||
$sHitField = $aParam["sHitField"] ?? false;
|
$sHitField = $aParam["sHitField"] ?? false;
|
||||||
|
|
||||||
if ($sValue == "?") {
|
if ($sValue == "?") {
|
||||||
return "#find__{field?primaryKey}__{page?1} {value?all}";
|
return "#find__{field?primaryKey}__{page?1} {value?_all}";
|
||||||
}
|
}
|
||||||
|
|
||||||
$iLimit = $this->_getLimit();
|
$iLimit = $this->_getLimit();
|
||||||
|
|
||||||
if ($sValue === false ) {
|
if ($sValue === "_all" ) {
|
||||||
|
|
||||||
$oSelf = $this->oModelSelf;
|
$oSelf = $this->oModelSelf;
|
||||||
|
|
||||||
@ -555,6 +581,20 @@ class Dog extends Mod\Base {
|
|||||||
|
|
||||||
private function filterData($aData)
|
private function filterData($aData)
|
||||||
{
|
{
|
||||||
|
if ($this->aSelectField) {
|
||||||
|
$aDataNew = [];
|
||||||
|
foreach ($this->aSelectField as $sSelectField) {
|
||||||
|
$aDataNew[$sSelectField] = $aData[$sSelectField];
|
||||||
|
}
|
||||||
|
$aData = $aDataNew;
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($this->aHideField) {
|
||||||
|
foreach ($this->aHideField as $sHideField) {
|
||||||
|
unset($aData[$sHideField]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
foreach ($this->aStrField as $sStrField) {
|
foreach ($this->aStrField as $sStrField) {
|
||||||
$aData[$sStrField] = $this->subStr($aData[$sStrField]);
|
$aData[$sStrField] = $this->subStr($aData[$sStrField]);
|
||||||
}
|
}
|
||||||
@ -564,6 +604,8 @@ class Dog extends Mod\Base {
|
|||||||
$aData[$sFormatField] = date("Y-m-d", (int) $aData[$sFormatField]);
|
$aData[$sFormatField] = date("Y-m-d", (int) $aData[$sFormatField]);
|
||||||
} else if ($sFormatType == "dateFull") {
|
} else if ($sFormatType == "dateFull") {
|
||||||
$aData[$sFormatField] = date("Y-m-d", (int) $aData[$sFormatField]);
|
$aData[$sFormatField] = date("Y-m-d", (int) $aData[$sFormatField]);
|
||||||
|
} else if ($sFormatType == "gb") {
|
||||||
|
$aData[$sFormatField] = round($aData[$sFormatField] / 1073741824, 2)."gb";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -603,7 +645,7 @@ class Dog extends Mod\Base {
|
|||||||
$aJson = json_decode($sJson, true);
|
$aJson = json_decode($sJson, true);
|
||||||
|
|
||||||
foreach ($aJson as $k => $v) {
|
foreach ($aJson as $k => $v) {
|
||||||
$this->oModelSelf->$k = $v;
|
$this->oModelSelf->$k = $this->inFormat($k, $v);
|
||||||
}
|
}
|
||||||
|
|
||||||
$this->oModelSelf->save();
|
$this->oModelSelf->save();
|
||||||
@ -808,6 +850,12 @@ class Dog extends Mod\Base {
|
|||||||
|
|
||||||
$sValueQian = date("Y-m-d H:i:s", strtotime("+{$sValueQian} days"));
|
$sValueQian = date("Y-m-d H:i:s", strtotime("+{$sValueQian} days"));
|
||||||
|
|
||||||
|
} else if ($sValueHou == "dateNow") {
|
||||||
|
$sValueQian = date("Y-m-d");
|
||||||
|
} else if ($sValueHou == "dateTimeNow") {
|
||||||
|
$sValueQian = date("Y-m-d H:i:s");
|
||||||
|
} else if ($sValueHou == "gb") {
|
||||||
|
$sValueQian = $sValueQian * 1073741824;
|
||||||
}
|
}
|
||||||
|
|
||||||
return $sValueQian;
|
return $sValueQian;
|
||||||
|
|||||||
@ -2,21 +2,20 @@
|
|||||||
|
|
||||||
namespace App\Services\TG\Hook\Mod;
|
namespace App\Services\TG\Hook\Mod;
|
||||||
|
|
||||||
use App\Models\BladeJctj as ModelBladeJctj;
|
use App\Models\Article as ModelArticle;
|
||||||
use App\Services\TG\Hook\Dog;
|
use App\Services\TG\Hook\Dog;
|
||||||
|
|
||||||
|
class Article extends Base {
|
||||||
class Jctj extends Base {
|
|
||||||
|
|
||||||
private $oDog;
|
private $oDog;
|
||||||
|
|
||||||
public function __construct($aUpdate)
|
public function __construct($aUpdate)
|
||||||
{
|
{
|
||||||
|
|
||||||
$this->oDog = new Dog(new ModelBladeJctj());
|
$this->oDog = new Dog(new ModelArticle());
|
||||||
$this->oDog->_setPrimaryKey("id"); // 可选,默认id
|
// $this->oDog->_setPrimaryKey("id"); // 可选,默认id
|
||||||
|
$this->oDog->_setDogName("article"); // 必须,me用,正常就是类名,只不过后期没准改名,所以就这里写死,要在最前面
|
||||||
$this->oDog->_setStrField(["content"]); // 可选,指定长文本字段
|
$this->oDog->_setStrField(["content"]); // 可选,指定长文本字段
|
||||||
$this->oDog->_setThisName("jctj"); // 必须,me用,正常就是类名,只不过后期没准改名,所以就这里写死
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user