ADD:添加后台文章、通知等管理端接口;

FIX:修正若干已知错误;
This commit is contained in:
2025-07-13 19:40:10 +08:00
parent 270b881437
commit 7244023619
15 changed files with 1616 additions and 503 deletions
+81 -5
View File
@@ -16,6 +16,7 @@
class Common extends Controller
{
protected int $pid = 0;
protected object $plat;
protected int $user_id = 0;
protected int $site_id = 0;
protected int $store_id = 0;
@@ -151,17 +152,91 @@
/*
* SN格式化处理(ID转SN)
* 除平台SN(强制4位)外,其他一律32位
* 基础格式:平台前缀PSN-应用场景标识-时间戳-随机码后缀
* */
public function idToSn($id,$type){
$plat = AcPlat::findOne($this->pid);
$psn = $plat->sn; //"AYCL",强制4位
$_sn = $psn.'-'; //4+1=5
$_id = intval($id);
if($_id != $id) return false;
$res = false;
switch ($type) {
//常规运单
case 'order':
$pre = 'YD';
$sn = '00000000000'; //11位
$sn = substr($sn, 0, 11 - strlen($id));
$sn .= $id;
$pre = 'YD'; //2位
if($id>=0){
$str = date('YmdHis'); //20250701120102,14位
$_sn .= $pre.$str; //5+2+14 = 21;
$sn = '00000000000'; //11位
$sn = substr($sn, 0, 11 - strlen($id));
$sn .= $id;
$_sn .= $sn; //21+11 = 32
}else{
$str = date('YmdHis'); //20250701120102,14位
$str2 = date('ymdH'); //25070112, 8位
$sn = md5($str,true); //转换为二进制16个字符串的md5
$_sn .= $pre.$str2.'-'.$sn; //5+2+8+1+16 = 32;
}
$res = true;
break;
//预制运单
case 'orderPre':
$pre = 'PREYD'; //5位
if($id>=0){
$str = date('ymdHi'); //2507011201,10位
$_sn .= $pre.$str.'-'; //5+5+10+1 = 21;
$sn = '00000000000'; //11位
$sn = substr($sn, 0, 11 - strlen($id));
$sn .= $id;
$_sn .= $sn; //21+11 = 32
}else{
$str = date('YmdHis'); //20250701120102,14位
$str2 = date('ymd'); //250701, 6位
$sn = md5($str,true); //转换为二进制16个字符串的md5
$_sn .= $pre.$str2.$sn; //5+5+6+16 = 32;
}
$res = true;
break;
//新闻内容
case 'news':
$pre = 'NEWS'; //4位
if($id>=0){
$str = date('YmdHis'); //20250701120102,14位
$_sn .= $pre.$str; //5+4+14 = 23;
$sn = '000000000'; //9位
$sn = substr($sn, 0, 9 - strlen($id));
$sn .= $id;
$_sn .= $sn; //23+9 = 32
}else{
$str = date('YmdHis'); //20250701120102,14位
$str2 = date('ymd'); //250701, 6位
$sn = md5($str,true); //转换为二进制16个字符串的md5
$_sn .= $pre.$str2.'-'.$sn; //5+4+6+1+16 = 32;
}
$res = true;
break;
default:
//默认方式,无须前缀、后缀
$_str = date('YmdHis'); //20250701120102
$md5_hash = md5($_str.$type,true); //转换为二进制16个字符串的md5
$_sn .= $md5_hash; //5+16 = 21;
if($id>=0){
$sn = '00000000000'; //11位
$sn = substr($sn, 0, 11 - strlen($id));
$sn .= $id;
$_sn .= $sn; //21+11 = 32
}else{
$_str = date('ymdHi'); //2507011201, 10位
$_sn .= $_str.mt_rand(0,9); //21+10+1=32;
}
$res = true;
break;
}
return $pre.$sn;
if(!$res) return false;
return $_sn;
}
//校验财务验证码
@@ -187,4 +262,5 @@
}
return ['res'=>true,'err'=>'','code'=>0];
}
}