fix 同步niucloud

This commit is contained in:
CQ 2026-03-19 14:23:15 +08:00
parent 9f9ed9a0e3
commit ddf0fa3384
851 changed files with 1540 additions and 725 deletions

View File

@ -0,0 +1,90 @@
<?php
// +----------------------------------------------------------------------
// | Niucloud-admin 企业快速开发的saas管理平台
// +----------------------------------------------------------------------
// | 官方网址https://www.niucloud.com
// +----------------------------------------------------------------------
// | niucloud团队 版权所有 开源版本可自由商用
// +----------------------------------------------------------------------
// | Author: Niucloud Team
// +----------------------------------------------------------------------
namespace app\adminapi\controller\notice;
use app\service\admin\notice\BindMerchantService;
use core\base\BaseAdminController;
use think\Response;
class BindMerchant extends BaseAdminController
{
/**
* 获取商家绑定通知账户信息
* @description 获取商家绑定通知账户信息
* @return Response
*/
public function merchantBindInfo()
{
$res = (new BindMerchantService())->merchantBindInfo();
return success($res);
}
/**
* 接触商家绑定通知账户
* @description 接触商家绑定通知账户
* @return Response
*/
public function unBindMerchant()
{
$data = $this->request->params([
['unbind_type',[]]
]);
(new BindMerchantService())->unBindMerchant($data);
return success('SUCCESS');
}
/**
* 获取小程序二维码
* @return \think\Response
*/
public function getWeappQrcodeUrl()
{
$res = (new BindMerchantService())->getWeappQrcode();
return success($res);
}
/**
* 获取微信二维码地址
* @return \think\Response
*/
public function getWechatQrcodeUrl()
{
$res = (new BindMerchantService())->getWechatUrl();
return success($res);
}
/**
* 发送短信验证码
* @return Response
*/
public function sendBindSms()
{
$mobile = $this->request->param('mobile');
$res = (new BindMerchantService())->sendBindSms($mobile);
return success($res);
}
/**
* 检测短信验证码
* @return Response
*/
public function checkSmsCodeAndBind()
{
$params = $this->request->params([
['mobile_key',''],
['mobile_code',''],
['mobile','']
]);
$res = (new BindMerchantService())->checkMobileCode($params);
return success('SUCCESS');
}
}

View File

@ -264,6 +264,15 @@ class NiuSms extends BaseAdminController
['signType', ""],
['imgUrl', ""],
['defaultSign', 0],
//新增字段
['bizLicenseUrl', ''],
['qccUrl', ''],
['tmnetUrl', ''],
['mobileIcpUrl', ''],
['telecomAppstoreUrl', ''],
['idcardFrontUrl', ''],
['idcardBackUrl', ''],
]);
(new NiuSmsService())->signCreate($username, $params);
return success("SUCCESS");

View File

@ -88,6 +88,15 @@ Route::group('notice', function () {
});
});
//商家消息通知
Route::get('bind/weapp', 'notice.BindMerchant/getWeappQrcodeUrl');
Route::get('bind/wechat', 'notice.BindMerchant/getWechatQrcodeUrl');
Route::post('bind/sms/send', 'notice.BindMerchant/sendBindSms');
Route::post('bind/sms/bind', 'notice.BindMerchant/checkSmsCodeAndBind');
Route::get('bind/info', 'notice.BindMerchant/merchantBindInfo');
Route::post('bind/cancel', 'notice.BindMerchant/unBindMerchant');
})->middleware([
AdminCheckToken::class,
AdminCheckRole::class,

View File

@ -78,8 +78,6 @@ Route::group('sys', function() {
//地图设置
Route::put('config/map', 'sys.Config/setMap');
//地图设置
Route::get('config/map', 'sys.Config/getMap');
//登录注册设置
Route::get('config/login', 'login.Config/getConfig');
@ -339,6 +337,14 @@ Route::group('sys', function() {
AdminLog::class
]);
//检验登录但是不检验权限
Route::group('sys', function() {
//地图设置
Route::get('config/map', 'sys.Config/getMap');
})->middleware([
AdminCheckToken::class,
AdminLog::class
]);
//系统环境(不效验登录状态)
Route::group('sys', function() {
Route::get('web/website', 'sys.Config/getWebsite');

View File

@ -21,6 +21,7 @@ use think\facade\Route;
Route::group('weapp', function() {
/***************************************************** 微信配置 ****************************************************/
Route::get('auth_url', 'weapp.Auth/getWeappQrcodeUrl');
Route::get('config', 'weapp.Config/get');
//设置微信配置
Route::put('config', 'weapp.Config/set');

View File

@ -19,6 +19,7 @@ use think\facade\Route;
* 路由
*/
Route::group('wechat', function () {
Route::get('auth_url', 'wechat.Auth/getWechatQrcodeUrl');
/***************************************************** 微信配置 ****************************************************/
Route::get('config', 'wechat.Config/get');
@ -76,4 +77,4 @@ Route::group('wechat', function () {
AdminCheckToken::class,
AdminCheckRole::class,
AdminLog::class
]);
]);

View File

@ -68,4 +68,38 @@ class Upload extends BaseApiController
$base64_service = new Base64Service();
return success($base64_service->image($data['content']));
}
public function config()
{
return success([
'upload_max_filesize' => [
'unit' => 'KB',
'num'=>$this->convertPhpSizeToBytes(ini_get('upload_max_filesize'))/1024
],
]);
}
private function convertPhpSizeToBytes($size_str) {
// 去除字符串两端的空格,统一转为大写(方便判断单位)
$size_str = trim(strtoupper($size_str));
// 如果是空值或纯数字(无单位),默认单位为字节
if (!preg_match('/^(\d+(\.\d+)?)([BKMGTP]B?)?$/', $size_str, $matches)) {
return (int)$size_str;
}
// 提取数值和单位
$size = (float)$matches[1];
$unit = isset($matches[3]) ? $matches[3] : 'B'; // 默认单位为B
// 根据单位转换为字节
switch ($unit) {
case 'TB': case 'T': $size *= 1024;
case 'GB': case 'G': $size *= 1024;
case 'MB': case 'M': $size *= 1024;
case 'KB': case 'K': $size *= 1024;
case 'B': default: break; // 字节无需转换
}
return (int)$size;
}
}

View File

@ -103,4 +103,19 @@ class Weapp extends BaseApiController
return success($weapp_auth_service->updateOpenid($data[ 'code' ]));
}
/**
* 绑定商家接受信息小程序账号
* @return Response
*/
public function bindAdminMerchant()
{
$data = $this->request->params([
[ 'user_info', '' ],
[ 'openid', '' ],
[ 'type',''],
]);
$weapp_auth_service = new WeappAuthService();
return success($weapp_auth_service->bindAdminMerchant($data));
}
}

View File

@ -17,7 +17,7 @@ use EasyWeChat\Kernel\Exceptions\BadRequestException;
use EasyWeChat\Kernel\Exceptions\InvalidArgumentException;
use EasyWeChat\Kernel\Exceptions\RuntimeException;
use ReflectionException;
use Symfony\Component\HttpFoundation\Response;
use think\facade\Log;
use Throwable;
/**
@ -37,6 +37,7 @@ class Serve extends BaseController
* @throws Throwable
*/
public function serve($site_id){
Log::write('请求参数'.json_encode($this->request->all()));
ob_clean();
$result = (new WechatServeService())->serve();
return response($result->getBody())->header([

View File

@ -32,6 +32,7 @@ Route::group('file', function() {
*/
Route::group('file', function() {
//上传图片
Route::get('config', 'upload.Upload/config');
Route::post('image', 'upload.Upload/image');
//上传视频
Route::post('video', 'upload.Upload/video');

View File

@ -56,6 +56,7 @@ Route::group(function () {
//公众号扫码登录
Route::post('wechat/scanlogin', 'wechat.Wechat/scanLogin');
//小程序通过code登录
Route::post('weapp/bind/merchant', 'weapp.Weapp/bindAdminMerchant');
Route::post('weapp/login', 'weapp.Weapp/login');
//小程序通过code注册
Route::post('weapp/register', 'weapp.Weapp/register');

View File

@ -1,7 +1,7 @@
<?php
declare (strict_types=1);
namespace app\command\Addon;
namespace app\command\addon;
use app\service\core\addon\CoreAddonInstallService;
use Exception;

View File

@ -1,7 +1,7 @@
<?php
declare (strict_types=1);
namespace app\command\Addon;
namespace app\command\addon;
use think\console\Command;
use think\console\Input;

View File

@ -9,7 +9,7 @@ use think\console\Command;
use think\console\Input;
use think\console\Output;
class refreshAreaCommand extends Command
class RefreshAreaCommand extends Command
{
protected function configure()
{

View File

@ -37,52 +37,67 @@ class CommonActiveDict
self::IMPULSE_BUY => [
'name' => get_lang('common_active_short.impulse_buy_short'),
'active_name' => get_lang('common_active_short.impulse_buy_name'),
'bg_color' => "#FF7700"
'bg_color' => "#FF7700",
'jump_url'=>'/site/shop_impulse_buy/list',/////
'is_need_params'=>1
],
self::GIFTCARD => [
'name' => get_lang('common_active_short.gift_card_short'),
'active_name' => get_lang('common_active_short.gift_card_name'),
'bg_color' => '#F00000'
'bg_color' => '#F00000',
'jump_url'=>'/site/shop_giftcard/giftcard/list',/////
'is_need_params'=>1
],
self::DISCOUNT => [
'name' => get_lang('common_active_short.discount_short'),
'active_name' => get_lang('common_active_short.discount_name'),
'bg_color' => '#FFA322'
'bg_color' => '#FFA322',
'jump_url'=>'/site/shop/marketing/discount/list',/////
'is_need_params'=>1
],
self::EXCHANGE => [
'name' => get_lang('common_active_short.exchange_short'),
'active_name' => get_lang('common_active_short.exchange_name'),
'bg_color' => '#00C441'
'bg_color' => '#00C441',
'jump_url'=>'/site/shop/marketing/exchange/goods_list',/////
'is_need_params'=>1
],
self::MANJIANSONG => [
'name' => get_lang('common_active_short.manjiansong_short'),
'active_name' => get_lang('common_active_short.manjiansong_name'),
'bg_color' => '#249DE9'
'bg_color' => '#249DE9',
'jump_url'=>'/site/shop/marketing/manjian/list',/////
'is_need_params'=>1
],
self::NEWCOMER_DISCOUNT => [
'name' => get_lang('common_active_short.newcomer_discount_short'),
'active_name' => get_lang('common_active_short.newcomer_discount_name'),
'bg_color' => '#BB27FF'
'bg_color' => '#BB27FF',
'jump_url'=>'/site/shop/marketing/newcomer/config'
],
self::SECKILL => [
'name' => get_lang('common_active_short.seckill_short'),
'active_name' => get_lang('common_active_short.seckill_name'),
'bg_color' => '#F606CA'
'bg_color' => '#F606CA',
'jump_url'=>'/site/seckill/active/list'
],
self::PINTUAN => [
'name' => get_lang('common_active_short.pintuan_short'),
'active_name' => get_lang('common_active_short.pintuan_name'),
'bg_color' => '#FF1C77'
'bg_color' => '#FF1C77',
'jump_url'=>'/site/pintuan/active/list'
],
self::RELAY => [
'name' => get_lang('common_active_short.relay_short'),
'active_name' => get_lang('common_active_short.relay_name'),
'bg_color' => '#0EB108'
'bg_color' => '#0EB108',
'jump_url'=>'/site/relay/active/list'
],
self::FRIEND_HELP => [
'name' => get_lang('common_active_short.friend_help_short'),
'active_name' => get_lang('common_active_short.friend_help_name'),
'bg_color' => '#F20C8A'
'bg_color' => '#F20C8A',
'jump_url'=>'/site/friend_help/active/list'
],
];
return !empty($active) ? $data[$active] ?? [] : $data;

View File

@ -189,5 +189,17 @@ return [
//是否累增
'is_change_get' => 0,
],
],
MemberAccountTypeDict::GROWTH => [
//调整
'member_register' => [
//名称
'name' => get_lang('dict_member.account_point_member_register'),
//是否增加
'inc' => 1,
//是否减少
'dec' => 0,
],
]
];

View File

@ -0,0 +1,21 @@
<?php
// +----------------------------------------------------------------------
// | Niucloud-admin 企业快速开发的saas管理平台
// +----------------------------------------------------------------------
// | 官方网址https://www.niucloud.com
// +----------------------------------------------------------------------
// | niucloud团队 版权所有 开源版本可自由商用
// +----------------------------------------------------------------------
// | Author: Niucloud Team
// +----------------------------------------------------------------------
namespace app\dict\notice;
class BindMerchantDict
{
//上传方式 图片
public const WECHAT = 'wechat';
//上传方式 视频
public const WEAPP = 'weapp';
public const SMS = 'sms';
}

View File

@ -141,12 +141,12 @@ class NoticeTypeDict
}
const PARAMS_TYPE_VALID_CODE = 'valid_code';
const PARAMS_TYPE_MOBILE_NUMBER = 'mobile_number';
const PARAMS_TYPE_OTHER_NUMBER = 'other_number';
const PARAMS_TYPE_AMOUNT = 'amount';
const PARAMS_TYPE_DATE = 'date';
const PARAMS_TYPE_CHINESE = 'chinese';
const PARAMS_TYPE_OTHERS = 'others';
const PARAMS_TYPE_INT_NUMBER = 'int_number';
public static function getApiParamsType()
{
return [
@ -159,20 +159,12 @@ class NoticeTypeDict
'max'=>6
],
[
'name' => '手机号',
'type' => self::PARAMS_TYPE_MOBILE_NUMBER,
'desc' => '1-15位纯数字',
'rule' => '/^\d$/',
'min'=>1,
'max'=>15
],
[
'name' => '其他号码',
'name' => '其他号码(手机号)',
'type' => self::PARAMS_TYPE_OTHER_NUMBER,
'desc' => '1-32位字母+数字组合',
'desc' => '1-20位字母+数字组合',
'rule'=>'/^[a-zA-Z0-9]$/',
'min'=>1,
'max'=>32
'max'=>20
],
[
'name' => '金额',
@ -189,18 +181,26 @@ class NoticeTypeDict
[
'name' => '中文',
'type' => self::PARAMS_TYPE_CHINESE,
'desc' => '1-32中文支持中文园括号()',
'rule' => '/^[\p{Han}()]$/u',
'desc' => '1-15中文支持中文圆括号()',
'rule' => '/^[\p{Han}]+$/u',
'min'=>1,
'max'=>32
'max'=>15
],
[
'name' => '纯数字',
'type' => self::PARAMS_TYPE_INT_NUMBER,
'desc' => ' 1-10个数字',
'rule' => '/^\d$/',
'min'=>1,
'max'=>10
],
[
'name' => '其他',
'type' => self::PARAMS_TYPE_OTHERS,
'desc' => ' 1-35个中文数字字母组合支持中文符号和空格',
'desc' => ' 1-30个中文数字字母组合,支持中文符号。',
'rule' => '/^[\p{Han}\p{N}\p{L}\p{P}\p{S}\s]$/u',
'min'=>1,
'max'=>35
'max'=>30
],
];
}

View File

@ -39,11 +39,16 @@ class PayChannelDict
'key' => $k,
'pay_type' => $pay_type
];
if (in_array($k,[ChannelDict::WEAPP,ChannelDict::WECHAT])){
unset($temp_pay_type[ PayDict::ALIPAY ]);
$list[ $k ][ 'pay_type' ] = $temp_pay_type;
}
// PC端暂不支持 帮付
if ($k == ChannelDict::PC) {
unset($temp_pay_type[ PayDict::FRIENDSPAY ]);
$list[ $k ][ 'pay_type' ] = $temp_pay_type;
}
}
return $list;
}

View File

@ -22,6 +22,7 @@ class ScanDict
const WECHAT_LOGIN = 'wechat_login';//微信登录
const ADMIN_MERCHANT_BIND_WECHAT = 'admin_merchant_bind_wechat';//微信登录
}

View File

@ -11,6 +11,7 @@ CREATE TABLE `activity_exchange_code`
`activity_id` INT(11) NOT NULL DEFAULT 0 COMMENT '活动ID',
`type` VARCHAR(20) NOT NULL DEFAULT '' COMMENT '类型 例seckill_goods-秒杀商品',
`type_id` INT(11) NOT NULL DEFAULT 0 COMMENT '类型对应id 秒杀商品id',
`type_item_id` int NOT NULL DEFAULT 0 COMMENT '规格id',
`expire_time` INT(11) NOT NULL DEFAULT 0 COMMENT '过期时间 0-不过期',
`member_id` INT(11) NOT NULL DEFAULT 0 COMMENT '领取会员',
`received_time` INT(11) NOT NULL DEFAULT 0 COMMENT '领取时间',
@ -388,6 +389,7 @@ CREATE TABLE `member`
`member_label` varchar(255) NOT NULL DEFAULT '' COMMENT '会员标签',
`wx_openid` varchar(255) NOT NULL DEFAULT '' COMMENT '微信用户openid',
`weapp_openid` varchar(255) NOT NULL DEFAULT '' COMMENT '微信小程序openid',
`wxapp_openid` varchar(255) NOT NULL DEFAULT '' COMMENT '微信移动应用openid',
`wx_unionid` varchar(255) NOT NULL DEFAULT '' COMMENT '微信unionid',
`ali_openid` varchar(255) NOT NULL DEFAULT '' COMMENT '支付宝账户id',
`douyin_openid` varchar(255) NOT NULL DEFAULT '' COMMENT '抖音小程序openid',
@ -1218,7 +1220,7 @@ CREATE TABLE `sys_user`
(
`uid` smallint(5) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '系统用户ID',
`username` varchar(255) NOT NULL DEFAULT '' COMMENT '用户账号',
`mobile` varchar(20) NOT NULL DEFAULT '' COMMENT '手机号',
`mobile` varchar(20) NOT NULL DEFAULT '' COMMENT '手机号',
`head_img` varchar(255) NOT NULL DEFAULT '',
`password` varchar(100) NOT NULL DEFAULT '' COMMENT '用户密码',
`real_name` varchar(16) NOT NULL DEFAULT '' COMMENT '实际姓名',
@ -5075,14 +5077,18 @@ VALUES (110000, 0, '北京市', '北京', '116.405285', '39.904989', 1, 0, 1),
(460400500, 460400, '华南热作学院', '华南热作学院', '109.494073', '19.505382', 3, 0, 1);
ALTER TABLE activity_exchange_code
CHANGE COLUMN activity_type activity_type VARCHAR(20) NOT NULL DEFAULT '' COMMENT '例seckill-秒杀活动';
ALTER TABLE activity_exchange_code
ADD COLUMN type_item_id INT(11) NOT NULL DEFAULT 0 COMMENT '规格id';
ALTER TABLE member
ADD COLUMN wxapp_openid VARCHAR(255) NOT NULL DEFAULT '' COMMENT '微信移动应用openid';
ALTER TABLE member
MODIFY wxapp_openid VARCHAR(255) NOT NULL DEFAULT '' COMMENT '微信移动应用openid' AFTER weapp_openid;
CREATE TABLE `site_merchant_bind`
(
id int NOT NULL AUTO_INCREMENT,
site_id int NOT NULL DEFAULT 0 COMMENT '站点id',
wechat_openid VARCHAR(255) NOT NULL DEFAULT '' COMMENT '微信openid',
weapp_openid VARCHAR(255) NOT NULL DEFAULT '' COMMENT '小程序openid',
mobile VARCHAR(20) NOT NULL DEFAULT '' COMMENT '手机号',
extends TEXT DEFAULT NULL COMMENT '扩展数据 微信用户信息/小程序用户信息',
create_time int NOT NULL DEFAULT 0 COMMENT '创建时间',
update_time int NOT NULL DEFAULT 0 COMMENT '更新时间',
PRIMARY KEY (id)
) ENGINE = INNODB,
CHARACTER SET utf8mb4,
COLLATE utf8mb4_general_ci,
COMMENT = '商户信息接收账号绑定表';

View File

@ -75,7 +75,7 @@ return [
'ATTACHMENT_GROUP_HAS_IMAGE' => '附件组中存在图片不允许删除',
'OSS_TYPE_NOT_EXIST' => '云存储类型不存在',
'URL_FILE_NOT_EXIST' => '获取不到网址指向的文件',
'PLEACE_SELECT_IMAGE' => '请选择要删除的图片',
'PLEASE_SELECT_IMAGE' => '请选择要删除的图片',
'UPLOAD_TYPE_ERROR' => '不是有效的上传类型',

View File

@ -122,7 +122,7 @@ return [
'ATTACHMENT_GROUP_HAS_IMAGE' => '附件组中存在图片不允许删除',
'OSS_TYPE_NOT_EXIST' => '云存储类型不存在',
'URL_FILE_NOT_EXIST' => '获取不到网址指向的文件',
'PLEACE_SELECT_IMAGE' => '请选择要删除的图片',
'PLEASE_SELECT_IMAGE' => '请选择要删除的图片',
'UPLOAD_TYPE_ERROR' => '不是有效的上传类型',
'OSS_FILE_URL_NOT_EXIST' => '远程资源文件地址不能为空',
'BASE_IMAGE_FILE_NOT_EXIST' => 'base图片资源不能为空',
@ -134,6 +134,7 @@ return [
//消息管理
'NEED_BIND_MERCHANT' => '未绑定【商家信息】接收者账号',
'NOTICE_TYPE_NOT_EXIST' => '消息类型不存在',
'SMS_TYPE_NOT_EXIST' => '短信类型不存在',
'SMS_DRIVER_NOT_EXIST' => '短信驱动不存在',

View File

@ -4,6 +4,7 @@ namespace app\listener\notice;
use app\dict\notice\NoticeTypeDict;
use app\service\core\member\CoreMemberService;
use app\service\core\notice\CoreNoticeBindMerchantService;
use app\service\core\notice\CoreNoticeLogService;
use app\service\core\notice\CoreSmsService;
use core\exception\NoticeException;
@ -27,11 +28,21 @@ class Sms
$member_id = $to[ 'member_id' ] ?? 0;
$uid = $to[ 'uid' ] ?? 0;
if (!$mobile) {
//会员的
if ($member_id > 0) {//查询openid
$info = ( new CoreMemberService() )->getInfoByMemberId($site_id, $member_id);
$mobile = $info[ 'mobile' ] ?? '';
$nickname = $info[ 'nickname' ] ?? '';
if ($template['receiver_type'] ==1){
$member_id = $to[ 'member_id' ] ?? 0;
//会员的
if ($member_id > 0) {//查询openid
$info = ( new CoreMemberService() )->getInfoByMemberId($site_id, $member_id);
$mobile = $info[ 'mobile' ] ?? '';
$nickname = $info[ 'nickname' ] ?? '';
}
}else{
$merchant_id = $to[ 'merchant_id' ] ?? 0;
if ($merchant_id > 0) {
$info = (new CoreNoticeBindMerchantService())->getInfo($merchant_id);
$mobile = $info[ 'mobile' ] ?? '';
$nickname = '商户通知';
}
}
}

View File

@ -4,6 +4,7 @@ namespace app\listener\notice;
use app\dict\notice\NoticeTypeDict;
use app\service\core\member\CoreMemberService;
use app\service\core\notice\CoreNoticeBindMerchantService;
use app\service\core\notice\CoreNoticeLogService;
use core\exception\NoticeException;
use core\template\TemplateLoader;
@ -17,19 +18,35 @@ class Weapp
$site_id = $data['site_id'];
$template = $data['template'];//模板
$vars = $data['vars'];//模板变量
$url = $vars['__weapp_page'] ?? '';
$key = $data['key'];
$to = $data['to'];//发送对象主题
Log::write("小程序消息发送" . json_encode($data));
//完全信任消息的设置, 不再依赖support_type
if ($template['is_weapp']) {
$member_id = $to['member_id'] ?? 0;
if ($member_id > 0) {//查询openid
$info = (new CoreMemberService())->getInfoByMemberId($site_id, $member_id);
$openid = $info['weapp_openid'] ?? '';
$nickname = $info['nickname'] ?? '';
if ($template['receiver_type'] ==1){
$member_id = $to[ 'member_id' ] ?? 0;
//会员的
if ($member_id > 0) {//查询openid
$info = ( new CoreMemberService() )->getInfoByMemberId($site_id, $member_id);
$openid = $info[ 'weapp_openid' ] ?? '';
$nickname = $info[ 'nickname' ] ?? '';
}
Log::write("小程序消息发送 member_id:{$member_id} openid:{$openid}");
}else{ //商户通知不跳转
$merchant_id = $to[ 'merchant_id' ] ?? 0;
if ($merchant_id > 0) {
$info = (new CoreNoticeBindMerchantService())->getInfo($merchant_id);
$openid = $info[ 'weapp_openid' ] ?? '';
$nickname = '商户通知';
}
$url = "";
}
Log::write("小程序消息发送 member_id:{$member_id} openid:{$openid}");
if (!empty($openid)) {
$weapp_template_id = $template['weapp_template_id'];
$weapp = $template['weapp'];
@ -42,12 +59,12 @@ class Weapp
}
$weapp_data[$v[2]]['value'] = $search_content;
}
$url = $vars['__weapp_page'] ?? '';
$log_data = array(
'key' => $key,
'notice_type' => NoticeTypeDict::WEAPP,
'uid' => $data['uid'] ?? 0,
'member_id' => $member_id,
'member_id' => $member_id ?? 0,
'nickname' => $nickname ?? '',
'receiver' => $openid,
'params' => $data,

View File

@ -4,10 +4,12 @@ namespace app\listener\notice;
use app\dict\notice\NoticeTypeDict;
use app\service\core\member\CoreMemberService;
use app\service\core\notice\CoreNoticeBindMerchantService;
use app\service\core\notice\CoreNoticeLogService;
use app\service\core\weapp\CoreWeappConfigService;
use core\exception\NoticeException;
use core\template\TemplateLoader;
use think\facade\Log;
class Wechat
{
@ -17,18 +19,35 @@ class Wechat
$site_id = $data[ 'site_id' ];
$template = $data[ 'template' ];//模板
$vars = $data[ 'vars' ];//模板变量
$weapp_page = $vars[ '__weapp_page' ] ?? '';
$key = $data[ 'key' ];
$to = $data[ 'to' ];//发送对象主题
//完全信任消息的设置, 不再依赖support_type
if ($template[ 'is_wechat' ]) {
$member_id = $to[ 'member_id' ] ?? 0;
//会员的
if ($member_id > 0) {//查询openid
$info = ( new CoreMemberService() )->getInfoByMemberId($site_id, $member_id);
$openid = $info[ 'wx_openid' ] ?? '';
$nickname = $info[ 'nickname' ] ?? '';
Log::write('template_info');
Log::write(json_encode($template,256));
if ($template['receiver_type'] ==1){
$member_id = $to[ 'member_id' ] ?? 0;
//会员的
if ($member_id > 0) {//查询openid
$info = ( new CoreMemberService() )->getInfoByMemberId($site_id, $member_id);
$openid = $info[ 'wx_openid' ] ?? '';
$nickname = $info[ 'nickname' ] ?? '';
}
}else{
$merchant_id = $to[ 'merchant_id' ] ?? 0;
$weapp_page = '';//通知商户的消息不进行跳转
$vars[ '__wechat_page' ] = '';
if ($merchant_id > 0) {
$info = (new CoreNoticeBindMerchantService())->getInfo($merchant_id);
$openid = $info[ 'wechat_openid' ] ?? '';
$nickname = '商户通知';
}
}
//或者还有用户的
if (!empty($openid)) {
$wechat_template_id = $template[ 'wechat_template_id' ];
@ -53,14 +72,13 @@ class Wechat
'key' => $key,
'notice_type' => NoticeTypeDict::WECHAT,
'uid' => $data[ 'uid' ] ?? 0,
'member_id' => $member_id,
'member_id' => $member_id ?? 0,
'nickname' => $nickname ?? '',
'receiver' => $openid,
'params' => $vars,
'content' => $wechat
);
$weapp_page = $vars[ '__weapp_page' ] ?? '';
if (!empty($weapp_page)) {
$appid = ( new CoreWeappConfigService() )->getWeappConfig($site_id)[ 'app_id' ] ?? '';
if (!empty($appid)) {
@ -82,7 +100,8 @@ class Wechat
if (!empty($miniprogram)) {
$send_data[ 'miniprogram' ] = $miniprogram;
}
( new TemplateLoader(NoticeTypeDict::WECHAT, [ 'site_id' => $site_id ]) )->send($send_data);
$send_res = ( new TemplateLoader(NoticeTypeDict::WECHAT, [ 'site_id' => $site_id ]) )->send($send_data);
Log::write('发送结果'.$send_res);
( new CoreNoticeLogService() )->add($site_id, $log_data);
} catch (NoticeException $e) {
$log_data[ 'result' ] = $e->getMessage();

View File

@ -11,8 +11,12 @@
namespace app\listener\scan;
use app\dict\notice\BindMerchantDict;
use app\dict\scan\ScanDict;
use app\model\site\SiteMerchantBind;
use app\service\api\wechat\WechatAuthService;
use app\service\core\notice\CoreNoticeBindMerchantService;
use think\facade\Log;
use Throwable;
/**
@ -37,6 +41,17 @@ class ScanListener
}
unset($data['openid']);
break;
case ScanDict::ADMIN_MERCHANT_BIND_WECHAT://后台绑定商家通知接收者openid
try {
$data['status'] = ScanDict::SUCCESS;
(new CoreNoticeBindMerchantService())->bindAccount($data['site_id'],$data['openid'],BindMerchantDict::WECHAT);
//绑定信息
} catch ( Throwable $e ) {
$data['status'] = ScanDict::FAIL;
$data['fail_reason'] = get_lang($e->getMessage());
}
unset($data['openid']);
break;
}
return $data;

View File

@ -0,0 +1,45 @@
<?php
// +----------------------------------------------------------------------
// | Niucloud-admin 企业快速开发的saas管理平台
// +----------------------------------------------------------------------
// | 官方网址https://www.niucloud.com
// +----------------------------------------------------------------------
// | niucloud团队 版权所有 开源版本可自由商用
// +----------------------------------------------------------------------
// | Author: Niucloud Team
// +----------------------------------------------------------------------
namespace app\model\site;
use core\base\BaseModel;
/**
* 站点模型
* Class Site
* @package app\model\site
*/
class SiteMerchantBind extends BaseModel
{
protected $type = [
];
/**
* 数据表主键
* @var string
*/
protected $pk = 'id';
/**
* 模型名称
* @var string
*/
protected $name = 'site_merchant_bind';
protected $json = ['extends'];
protected $jsonAssoc = true;
}

View File

@ -0,0 +1,165 @@
<?php
// +----------------------------------------------------------------------
// | Niucloud-admin 企业快速开发的saas管理平台
// +----------------------------------------------------------------------
// | 官方网址https://www.niucloud.com
// +----------------------------------------------------------------------
// | niucloud团队 版权所有 开源版本可自由商用
// +----------------------------------------------------------------------
// | Author: Niucloud Team
// +----------------------------------------------------------------------
namespace app\service\admin\notice;
use app\dict\notice\BindMerchantDict;
use app\dict\scan\ScanDict;
use app\model\site\SiteMerchantBind;
use app\service\core\notice\CoreNoticeBindMerchantService;
use app\service\core\scan\CoreScanService;
use app\service\core\wechat\CoreWechatServeService;
use core\base\BaseAdminService;
use core\exception\AdminException;
use core\exception\AuthException;
use think\facade\Cache;
use think\facade\Log;
/**
* 消息管理服务层
*/
class BindMerchantService extends BaseAdminService
{
public function __construct()
{
parent::__construct();
}
/**
* 获取小程序二维码
* @param string $url
* @param string $scopes
* @return array
*/
public function getWeappQrcode()
{
$dir = 'upload/' . $this->site_id . '/merchant';
try {
$qrcode_data = [
[
'key' => 'tp',
'value' => 'b_m'//bind_merchant
],
[
'key' => 's',
'value' => $this->site_id
]
];
$weapp_path = qrcode('', 'app/pages/setting/authorization', $qrcode_data, $this->site_id, $dir, 'weapp');
return [
'url' => $weapp_path
];
} catch (AdminException $e) {
Log::write('获取推广微信小程序二维码error' . $e->getMessage() . $e->getFile() . $e->getLine() . 'params:');
throw new AdminException($e->getMessage() . $e->getFile() . $e->getLine() . 'params:');
}
}
/**
* 网页授权
* @param string $url
* @param string $scopes
* @return array
*/
public function getWechatUrl()
{
$key = (new CoreScanService())->scan($this->site_id, ScanDict::ADMIN_MERCHANT_BIND_WECHAT, [], 300);
$url = (new CoreWechatServeService())->scan($this->site_id, $key, 300)['url'] ?? '';
return [
'url' => $url,
];
}
public function sendBindSms($mobile)
{
$type = 'bind_merchant';
$code = str_pad(random_int(1, 9999), 4, 0, STR_PAD_LEFT);// 生成4位随机数左侧补0
(new \app\service\core\notice\NoticeService())->send($this->site_id, 'verify_code', ['code' => $code, 'mobile' => $mobile]);
//将验证码存入缓存
$key = md5(uniqid('', true));
$cache_tag_name = "admin_mobile_key" . $mobile . $type;
$this->clearMobileCode($mobile, $type);
Cache::tag($cache_tag_name)->set($key, ['mobile' => $mobile, 'code' => $code, 'type' => $type], 600);
Log::write('bind_merchant--mobile:' . $mobile . ':send_bind_sms_code:' . $code);
return [
'key' => $key,
'mobile' => $mobile,
];
}
public function clearMobileCode($mobile, $type)
{
$cache_tag_name = "admin_mobile_key" . $mobile . $type;
Cache::tag($cache_tag_name)->clear();
}
/**
* 校验手机验证码
* @param string $mobile
* @return true
*/
public function checkMobileCode($params)
{
$mobile = $params['mobile'] ?? '';
if (empty($mobile)) throw new AuthException('MOBILE_NEEDED');
$mobile_key = $params['mobile_key'];
$mobile_code = $params['mobile_code'];
if (empty($mobile_key) || empty($mobile_code)) throw new AuthException('MOBILE_CAPTCHA_ERROR');
$cache = Cache::get($mobile_key);
if (empty($cache)) throw new AuthException('MOBILE_CAPTCHA_ERROR');
$temp_mobile = $cache['mobile'];
$temp_code = $cache['code'];
$temp_type = $cache['type'];
if ($temp_mobile != $mobile || $temp_code != $mobile_code) throw new AuthException('MOBILE_CAPTCHA_ERROR');
(new CoreNoticeBindMerchantService())->bindAccount($this->site_id, $mobile, BindMerchantDict::SMS);
$this->clearMobileCode($temp_mobile, $temp_type);
return true;
}
/**
* 绑定商户通知账户
* @return int[]
*/
public function merchantBindInfo()
{
$return = [
'wechat_openid' => '',
'weapp_openid' => '',
'mobile' => '',
];
$bind_info = (new SiteMerchantBind())->where('site_id', $this->site_id)->findOrEmpty();
$bind_info = $bind_info->toArray();
if (!empty($bind_info['wechat_openid'])) {
$return['wechat_openid'] = $bind_info['wechat_openid'];
}
if (!empty($bind_info['weapp_openid'])) {
$return['weapp_openid'] = $bind_info['weapp_openid'];
}
if (!empty($bind_info['mobile'])) {
$return['mobile'] = $bind_info['mobile'];
}
return $return;
}
/**
* 解绑商户通知账户
* @param $data
* @return bool
*/
public function unBindMerchant($data)
{
return (new CoreNoticeBindMerchantService())->unBindAccount($this->site_id, $data);
}
}

View File

@ -233,10 +233,34 @@ class NiuSmsService extends BaseAdminService
*/
public function signCreate($username, $params)
{
if (!empty($params['imgUrl']) && strstr($params['imgUrl'], 'http') === false) {
$params['imgUrl'] = request()->domain() . '/' . $params['imgUrl'];
} else {
$params['imgUrl'] = $params['imgUrl'] ?? '';
$params['imgUrl'] = $this->formatImageUrl($params['imgUrl']);
$params['bizLicenseUrl'] = $this->formatImageUrl($params['bizLicenseUrl']);
$params['qccUrl'] = $this->formatImageUrl($params['qccUrl']);
$params['tmnetUrl'] = $this->formatImageUrl($params['tmnetUrl']);
$params['mobileIcpUrl'] = $this->formatImageUrl($params['mobileIcpUrl']);
$params['telecomAppstoreUrl'] = $this->formatImageUrl($params['telecomAppstoreUrl']);
$params['idcardFrontUrl'] = $this->formatImageUrl($params['idcardFrontUrl']);
$params['idcardBackUrl'] = $this->formatImageUrl($params['idcardBackUrl']);
if (empty($params['idcardFrontUrl'])) {
throw new ApiException('身份证正面不能为空');
}
if (empty($params['idcardBackUrl'])) {
throw new ApiException('身份证反面不能为空');
}
if (empty($params['bizLicenseUrl'])) {
throw new ApiException('营业执照');
}
if (in_array($params['signSource'], [4, 5]) && empty($params['telecomAppstoreUrl'])) {
throw new ApiException('应用商店/小程序页面开发者截图不能为空');
}
if (in_array($params['signSource'], [4, 5]) && empty($params['mobileIcpUrl'])) {
throw new ApiException('移动ICP截图不能为空');
}
if (in_array($params['signSource'], [3]) && empty($params['tmnetUrl'])) {
throw new ApiException('中国商标网截图不能为空');
}
if (in_array($params['signSource'], [1, 2]) && $params['signType'] == 1 && empty($params['qccUrl'])) {
throw new ApiException('企查查唯一性截图不能为空');
}
$res = $this->niu_service->signCreate($username, $params);
if (!empty($res['failList'])) {
@ -244,6 +268,21 @@ class NiuSmsService extends BaseAdminService
}
}
/**
* 格式化图片地址
* @param $url
* @return string
*/
private function formatImageUrl($url)
{
if (!empty($url) && strstr($url, 'http') === false) {
$url = request()->domain() . '/' . $url;
} else {
$url = $url ?? '';
}
return $url;
}
/**
* 签名创建
* @param $username

View File

@ -13,7 +13,9 @@ namespace app\service\admin\notice;
use app\dict\notice\NoticeDict;
use app\dict\notice\NoticeTypeDict;
use app\model\site\SiteMerchantBind;
use app\model\sys\SysNotice;
use app\service\core\notice\CoreNoticeBindMerchantService;
use app\service\core\notice\CoreNoticeService;
use core\base\BaseAdminService;
use core\exception\AdminException;
@ -72,7 +74,29 @@ class NoticeService extends BaseAdminService
public function editMessageStatus(string $key, string $type, int $status)
{
if (!array_key_exists($type, NoticeTypeDict::getType())) throw new AdminException('NOTICE_TYPE_NOT_EXIST');
if (!array_key_exists($key, NoticeDict::getNotice())) return fail('NOTICE_TYPE_NOT_EXIST');
$notice_list = NoticeDict::getNotice();
if (!array_key_exists($key, $notice_list)) return fail('NOTICE_TYPE_NOT_EXIST');
if (isset($notice_list[$key]['is_need_bind_merchant']) && $notice_list[$key]['is_need_bind_merchant'] == 1) {
$bind_info = (new BindMerchantService())->merchantBindInfo();
switch ($type) {
case NoticeTypeDict::SMS:
if ($status == 1 && empty($bind_info['mobile'])) {
throw new AdminException('NEED_BIND_MERCHANT');
}
break;
case NoticeTypeDict::WECHAT:
if ($status == 1 && empty($bind_info['wechat_openid'])) {
throw new AdminException('NEED_BIND_MERCHANT');
}
break;
case NoticeTypeDict::WEAPP:
if ($status == 1 && empty($bind_info['weapp_openid'])) {
throw new AdminException('NEED_BIND_MERCHANT');
}
break;
}
}
return (new CoreNoticeService())->edit($this->site_id, $key, ['is_' . $type => $status]);
}
@ -85,17 +109,32 @@ class NoticeService extends BaseAdminService
public function edit(string $key, string $type, array $data)
{
if (!array_key_exists($type, NoticeTypeDict::getType())) throw new AdminException('NOTICE_TYPE_NOT_EXIST');
if (!array_key_exists($key, NoticeDict::getNotice())) return fail('NOTICE_TYPE_NOT_EXIST');
$notice_list = NoticeDict::getNotice();
if (!array_key_exists($key, $notice_list)) return fail('NOTICE_TYPE_NOT_EXIST');
$save_data = ['is_' . $type => $data['status']];
$is_need_bind = 0;
if (isset($notice_list[$key]['is_need_bind_merchant']) && $notice_list[$key]['is_need_bind_merchant'] == 1) {
$is_need_bind = 1;
$bind_info = (new BindMerchantService())->merchantBindInfo();
}
switch ($type) {
case NoticeTypeDict::SMS:
if ($is_need_bind && $data['status'] == 1 && empty($bind_info['mobile'])) {
throw new AdminException('NEED_BIND_MERCHANT');
}
$save_data['sms_id'] = $data['sms_id'] ?? '';
break;
case NoticeTypeDict::WECHAT:
if ($is_need_bind && $data['status'] == 1 && empty($bind_info['wechat_openid'])) {
throw new AdminException('NEED_BIND_MERCHANT');
}
$save_data['wechat_first'] = $data['wechat_first'] ?? '';
$save_data['wechat_remark'] = $data['wechat_remark'] ?? '';
break;
case NoticeTypeDict::WEAPP:
if ($is_need_bind && $data['status'] == 1 && empty($bind_info['weapp_openid'])) {
throw new AdminException('NEED_BIND_MERCHANT');
}
break;
}
if ($type == NoticeTypeDict::SMS && $data['status'] == 1) {
@ -103,5 +142,4 @@ class NoticeService extends BaseAdminService
}
return (new CoreNoticeService())->edit($this->site_id, $key, $save_data);
}
}

View File

@ -93,6 +93,12 @@ class SiteService extends BaseAdminService
$info['site_addons'] = (new Addon())->where([['key', 'in', $site_addons]])->field('key,title,desc,icon,type')->select()->toArray();
$info['uid'] = (new SysUserRole())->where([['site_id', '=', $site_id], ['is_admin', '=', 1]])->value('uid');
}
if (empty($info['logo'])) {
$info['logo'] = 'static/resource/images/site/logo.png';
}
if (empty($info['icon'])) {
$info['icon'] = 'static/resource/images/site/icon.png';
}
return $info;
}
@ -425,7 +431,7 @@ class SiteService extends BaseAdminService
/**
* @return array[]
*/
public function showCustomer($is_sort=true)
public function showCustomer($is_sort = true)
{
$show_list = event('ShowCustomer', ['site_id' => $this->site_id]);
$addon_type_list = SiteDict::getAddonChildMenu();
@ -453,7 +459,13 @@ class SiteService extends BaseAdminService
$site_addon = $this->getSiteAddons([]);
$menu_model = (new SysMenu());
$addon_urls = $menu_model
->where([['addon', 'in', array_column($site_addon, 'key')], ['addon', 'not in', $keys], ['is_show', '=', 1], ['menu_type', '=', 1]])
->where([
['addon', 'in', array_column($site_addon, 'key')],
['addon', 'not in', $keys],
['is_show', '=', 1],
['menu_type', '=', 1],
['app_type', '=', 'site'],
])
->order('id asc')
->group('addon')
->column('router_path', 'addon');
@ -472,7 +484,7 @@ class SiteService extends BaseAdminService
];
}
}
if($is_sort){
if ($is_sort) {
usort($return, function (array $a, array $b) {
$sortA = isset($a['sort']) ? (int)$a['sort'] : 0;
$sortB = isset($b['sort']) ? (int)$b['sort'] : 0;
@ -534,7 +546,7 @@ class SiteService extends BaseAdminService
foreach ($addon_menu_list as $item) {
$menu_key_list = array_column($list[$item['key']]['list'] ?? [], 'key');
$temp_menu = [
'app_type'=>'site',
'app_type' => 'site',
'menu_name' => $item['name'],
'menu_key' => $item['key'],
'menu_short_name' => $item['short_name'],
@ -550,7 +562,7 @@ class SiteService extends BaseAdminService
'is_show' => '1',
];
$children = [];
if(!empty($auth_menu_list)){
if (!empty($auth_menu_list)) {
foreach ($auth_menu_list['children'] as $datum_item) {
if (in_array($datum_item['menu_key'], $menu_key_list)) {
$children[] = $datum_item;

View File

@ -142,10 +142,12 @@ class UpgradeService extends BaseAdminService
// 忽略指定目录niucloud
$exclude_niucloud_dir = [
'public' . DIRECTORY_SEPARATOR . 'admin',
'public' . DIRECTORY_SEPARATOR . 'admin' . DIRECTORY_SEPARATOR .'niucloud.ico',
'public' . DIRECTORY_SEPARATOR . 'wap',
'public' . DIRECTORY_SEPARATOR . 'web',
'public' . DIRECTORY_SEPARATOR . 'upload',
'public' . DIRECTORY_SEPARATOR . 'file',
'public' . DIRECTORY_SEPARATOR . 'favicon.ico',
'runtime',
'vendor',
'.user.ini',

View File

@ -66,7 +66,7 @@ class WechatTemplateService extends BaseAdminService
//删除原来的消息模板
// (new CoreWechatTemplateService())->deletePrivateTemplate($this->site_id, $wechat_template_id);
$template_loader = new TemplateLoader('wechat', [ 'site_id' => $this->site_id ]);
$template_loader->delete([ 'templateId' => $wechat_template_id ]);
$del_res = $template_loader->delete([ 'templateId' => $wechat_template_id ]);
//新的消息模板
// $res = (new CoreWechatTemplateService())->addTemplate($this->site_id, $temp_key, $keyword_name_list);
$res = $template_loader->addTemplate([ 'shortId' => $temp_key, 'keyword_name_list' => $keyword_name_list ]);
@ -75,6 +75,9 @@ class WechatTemplateService extends BaseAdminService
//修改
$notice_service->modify($key, 'wechat_template_id', $res[ 'template_id' ]);
} else {
if (isset($res[ 'errcode' ]) && $res[ 'errcode' ] == 45026) {
throw new NoticeException('模板数量超出限制');
}
throw new NoticeException($res[ 'errmsg' ]);
}
return true;

View File

@ -13,10 +13,12 @@ namespace app\service\api\weapp;
use app\dict\member\MemberLoginTypeDict;
use app\dict\member\MemberRegisterTypeDict;
use app\dict\notice\BindMerchantDict;
use app\service\api\login\LoginService;
use app\service\api\login\RegisterService;
use app\service\api\member\MemberConfigService;
use app\service\api\member\MemberService;
use app\service\core\notice\CoreNoticeBindMerchantService;
use app\service\core\weapp\CoreWeappAuthService;
use core\base\BaseApiService;
use core\exception\ApiException;
@ -56,8 +58,8 @@ class WeappAuthService extends BaseApiService
$result = $this->core_weapp_serve_service->session($this->site_id, $code);
// if(empty($result)) throw new ApiException('WECHAT_EMPOWER_NOT_EXIST');
// $userinfo = $this->core_weapp_serve_service->decryptData($result['session_key'], $iv, $encrypted_data);
$openid = $result[ 'openid' ] ?? '';//对应微信的 openid
$unionid = $result[ 'unionid' ] ?? '';//对应微信的 unionid
$openid = $result['openid'] ?? '';//对应微信的 openid
$unionid = $result['unionid'] ?? '';//对应微信的 unionid
if (empty($openid)) throw new ApiException('WECHAT_EMPOWER_NOT_EXIST');
//todo 这儿还可能会获取用户昵称 头像 性别 ....用以更新会员信息
// $nickname = $userinfo['nickName'] ?? '';//对应微信的 nickname
@ -92,22 +94,22 @@ class WeappAuthService extends BaseApiService
// $avatar,
// $nickname,
// $sex
] = $this->getUserInfoByCode($data[ 'code' ]);
] = $this->getUserInfoByCode($data['code']);
$member_service = new MemberService();
$member_info = $member_service->findMemberInfo([ 'weapp_openid' => $openid, 'site_id' => $this->site_id ]);
$member_info = $member_service->findMemberInfo(['weapp_openid' => $openid, 'site_id' => $this->site_id]);
if ($member_info->isEmpty() && !empty($unionid)) {
$member_info = $member_service->findMemberInfo([ 'wx_unionid' => $unionid, 'site_id' => $this->site_id ]);
$member_info = $member_service->findMemberInfo(['wx_unionid' => $unionid, 'site_id' => $this->site_id]);
if (!$member_info->isEmpty()) {
$member_info->weapp_openid = $openid;
}
}
$config = ( new MemberConfigService() )->getLoginConfig();
$is_auth_register = $config[ 'is_auth_register' ];
$is_force_access_user_info = $config[ 'is_force_access_user_info' ];
$is_bind_mobile = $config[ 'is_bind_mobile' ];
$is_mobile = $config[ 'is_mobile' ];
$config = (new MemberConfigService())->getLoginConfig();
$is_auth_register = $config['is_auth_register'];
$is_force_access_user_info = $config['is_force_access_user_info'];
$is_bind_mobile = $config['is_bind_mobile'];
$is_mobile = $config['is_mobile'];
if ($member_info->isEmpty()) {
@ -116,24 +118,24 @@ class WeappAuthService extends BaseApiService
// 开启强制获取会员信息并且开启强制绑定手机号,必须获取全部信息才能进行注册
if ($is_force_access_user_info && $is_bind_mobile) {
if (!empty($data[ 'nickname' ]) && !empty($data[ 'headimg' ]) && !empty($data[ 'mobile' ])) {
return $this->register($openid, $data[ 'mobile' ], $data[ 'mobile_code' ], $unionid, $data[ 'nickname' ], $data[ 'headimg' ]);
if (!empty($data['nickname']) && !empty($data['headimg']) && !empty($data['mobile'])) {
return $this->register($openid, $data['mobile'], $data['mobile_code'], $unionid, $data['nickname'], $data['headimg']);
} else {
return [ 'openid' => $openid, 'unionid' => $unionid ]; // 将重要信息返回给前端保存
return ['openid' => $openid, 'unionid' => $unionid]; // 将重要信息返回给前端保存
}
} else if ($is_force_access_user_info) {
// 开启强制获取会员信息时,必须获取到昵称和头像才能进行注册
if (!empty($data[ 'nickname' ]) && !empty($data[ 'headimg' ])) {
return $this->register($openid, '', '', $unionid, $data[ 'nickname' ], $data[ 'headimg' ]);
if (!empty($data['nickname']) && !empty($data['headimg'])) {
return $this->register($openid, '', '', $unionid, $data['nickname'], $data['headimg']);
} else {
return [ 'openid' => $openid, 'unionid' => $unionid ]; // 将重要信息返回给前端保存
return ['openid' => $openid, 'unionid' => $unionid]; // 将重要信息返回给前端保存
}
} else if ($is_bind_mobile) {
// 开启强制绑定手机号,必须获取手机号才能进行注册
if (!empty($data[ 'mobile' ]) || !empty($data[ 'mobile_code' ])) {
return $this->register($openid, $data[ 'mobile' ], $data[ 'mobile_code' ], $unionid);
if (!empty($data['mobile']) || !empty($data['mobile_code'])) {
return $this->register($openid, $data['mobile'], $data['mobile_code'], $unionid);
} else {
return [ 'openid' => $openid, 'unionid' => $unionid ]; // 将重要信息返回给前端保存
return ['openid' => $openid, 'unionid' => $unionid]; // 将重要信息返回给前端保存
}
} else if (!$is_force_access_user_info && !$is_bind_mobile) {
// 关闭强制获取用户信息、并且关闭强制绑定手机号的情况下允许注册
@ -143,16 +145,16 @@ class WeappAuthService extends BaseApiService
} else {
// 关闭自动注册,但是开启了强制绑定手机号,必须获取手机号才能进行注册
if ($is_bind_mobile) {
if (!empty($data[ 'mobile' ]) || !empty($data[ 'mobile_code' ])) {
return $this->register($openid, $data[ 'mobile' ], $data[ 'mobile_code' ], $unionid);
if (!empty($data['mobile']) || !empty($data['mobile_code'])) {
return $this->register($openid, $data['mobile'], $data['mobile_code'], $unionid);
} else {
return [ 'openid' => $openid, 'unionid' => $unionid ]; // 将重要信息返回给前端保存
return ['openid' => $openid, 'unionid' => $unionid]; // 将重要信息返回给前端保存
}
} else if($is_mobile) {
if (!empty($data[ 'mobile' ]) || !empty($data[ 'mobile_code' ])) {
return $this->register($openid, $data[ 'mobile' ], $data[ 'mobile_code' ], $unionid);
} else if ($is_mobile) {
if (!empty($data['mobile']) || !empty($data['mobile_code'])) {
return $this->register($openid, $data['mobile'], $data['mobile_code'], $unionid);
} else {
return [ 'openid' => $openid, 'unionid' => $unionid ]; // 将重要信息返回给前端保存
return ['openid' => $openid, 'unionid' => $unionid]; // 将重要信息返回给前端保存
}
}
}
@ -162,11 +164,11 @@ class WeappAuthService extends BaseApiService
// 开启自动注册会员,获取到昵称和头像进行修改
if ($is_auth_register) {
if ($is_force_access_user_info) {
if (!empty($data[ 'nickname' ])) {
$member_info[ 'nickname' ] = $data[ 'nickname' ];
if (!empty($data['nickname'])) {
$member_info['nickname'] = $data['nickname'];
}
if (!empty($data[ 'headimg' ])) {
$member_info[ 'headimg' ] = $data[ 'headimg' ];
if (!empty($data['headimg'])) {
$member_info['headimg'] = $data['headimg'];
}
}
if ($is_bind_mobile) {
@ -203,8 +205,8 @@ class WeappAuthService extends BaseApiService
if (!empty($mobile_code)) {
$result = $this->core_weapp_serve_service->getUserPhoneNumber($this->site_id, $mobile_code);
if (empty($result)) throw new ApiException('WECHAT_EMPOWER_NOT_EXIST');
$phone_info = $result[ 'phone_info' ];
$mobile = $phone_info[ 'purePhoneNumber' ];
$phone_info = $result['phone_info'];
$mobile = $phone_info['purePhoneNumber'];
if (empty($mobile)) throw new ApiException('WECHAT_EMPOWER_NOT_EXIST');
}
$is_verify_mobile = false;
@ -212,11 +214,11 @@ class WeappAuthService extends BaseApiService
$is_verify_mobile = true;
}
$member_service = new MemberService();
$member_info = $member_service->findMemberInfo([ 'weapp_openid' => $openid, 'site_id' => $this->site_id ]);
$member_info = $member_service->findMemberInfo(['weapp_openid' => $openid, 'site_id' => $this->site_id]);
if (!$member_info->isEmpty()) throw new AuthException('MEMBER_IS_EXIST');//账号已存在, 不能在注册
if (!empty($wx_unionid)) {
$member_info = $member_service->findMemberInfo([ 'wx_unionid' => $wx_unionid, 'site_id' => $this->site_id ]);
$member_info = $member_service->findMemberInfo(['wx_unionid' => $wx_unionid, 'site_id' => $this->site_id]);
if (!$member_info->isEmpty()) throw new AuthException('MEMBER_IS_EXIST');//账号已存在, 不能在注册
}
@ -249,13 +251,18 @@ class WeappAuthService extends BaseApiService
// $sex
] = $this->getUserInfoByCode($code);
$member_service = new MemberService();
$member = $member_service->findMemberInfo([ 'weapp_openid' => $openid, 'site_id' => $this->site_id ]);
$member = $member_service->findMemberInfo(['weapp_openid' => $openid, 'site_id' => $this->site_id]);
if (!$member->isEmpty()) throw new AuthException('MEMBER_OPENID_EXIST');//openid已存在
$member_info = $member_service->findMemberInfo([ 'member_id' => $this->member_id, 'site_id' => $this->site_id ]);
$member_info = $member_service->findMemberInfo(['member_id' => $this->member_id, 'site_id' => $this->site_id]);
if ($member_info->isEmpty()) throw new AuthException('MEMBER_NOT_EXIST');//账号不存在
$member_service->editByFind($member_info, [ 'weapp_openid' => $openid ]);
$member_service->editByFind($member_info, ['weapp_openid' => $openid]);
return true;
}
public function bindAdminMerchant($data)
{
return (new CoreNoticeBindMerchantService())->bindAccount($this->site_id, $data['openid'],BindMerchantDict::WEAPP,$data['user_info']);
}
}

View File

@ -175,7 +175,7 @@ class CoreAddonInstallService extends CoreAddonBaseService
}
if (!isset($install_data['support_version']) || empty($install_data['support_version'])) {
$data['addon_check'][] = [
'msg' => $install_data['title'] . '插件的info.json文件中未检测到匹配框架当前版本['. $framework_version_arr[0].'.'.$framework_version_arr[1] .'.*]的信息无法安装,<a style="text-decoration: underline;" href="https://www.kancloud.cn/niucloud/niucloud-admin-develop/3244512" target="blank">点击查看相关手册</a>',
'msg' => $install_data['title'] . '插件的info.json文件中未检测到匹配框架当前版本['. $framework_version_arr[0].'.'.$framework_version_arr[1] .'.*]的信息无法安装,<a style="text-decoration: underline;" href="https://doc.press.niucloud.com/php/saas-framework/use/installFAQ/pluginNotCompatible.html" target="blank">点击查看相关手册</a>',
'status' => false
];
continue;
@ -184,7 +184,7 @@ class CoreAddonInstallService extends CoreAddonBaseService
if ($framework_version_arr[0].$framework_version_arr[1] != $support_framework_arr[0].$support_framework_arr[1]) {
if ((float) "$support_framework_arr[0].$support_framework_arr[1]" < (float) "$framework_version_arr[0].$framework_version_arr[1]") {
$data['addon_check'][] = [
'msg' => $install_data['title'] . '插件的info.json文件中检测到支持的框架版本['. $install_data['support_version'] .']低于当前框架版本['. $framework_version_arr[0].'.'.$framework_version_arr[1] .'.*]无法安装,<a style="text-decoration: underline;" href="https://www.kancloud.cn/niucloud/niucloud-admin-develop/3244512" target="blank">点击查看相关手册</a>',
'msg' => $install_data['title'] . '插件的info.json文件中检测到支持的框架版本['. $install_data['support_version'] .']低于当前框架版本['. $framework_version_arr[0].'.'.$framework_version_arr[1] .'.*]无法安装,<a style="text-decoration: underline;" href="https://doc.press.niucloud.com/php/saas-framework/use/installFAQ/pluginNotCompatible.html" target="blank">点击查看相关手册</a>',
'status' => false
];
}

View File

@ -45,17 +45,20 @@ class CoreAddonService extends CoreAddonBaseService
public function getLocalAddonList()
{
$list = [];
$online_app_list = [];
$online_app_list = $online_apps= [];
$install_addon_list = $this->model->append(['status_name'])->column('title, icon, key, desc, status, author, version, install_time, update_time, cover', 'key');
try {
$niucloud_module_list = (new CoreModuleService())->getModuleList()['data'] ?? [];
foreach ($niucloud_module_list as $v) {
$data = array(
'app_id' => $v['app']['app_id'],
'title' => $v['app']['app_name'],
'desc' => $v['app']['app_desc'],
'key' => $v['app']['app_key'] ?? '',
'version' => $v['version'] ?? '',
'author' => $v['site_name'],
'author_phone' => $v['site_phone'],
'expire_time' => $v['expire_time'],
'type' => $v['app']['app_type'],
'support_app' => $v['app']['support_channel'] ?? [],
'is_download' => false,
@ -66,7 +69,8 @@ class CoreAddonService extends CoreAddonBaseService
$data['install_info'] = $install_addon_list[$v['app']['app_key']] ?? [];
$list[$v['app']['app_key']] = $data;
}
$online_app_list = array_column($list, 'key');
$online_app_list = array_column($list ,'key');
$online_apps = array_column($list,'app_id' ,'key');
} catch (Throwable $e) {
$error = $e->getMessage();
}
@ -80,8 +84,11 @@ class CoreAddonService extends CoreAddonBaseService
$key = $data['key'];
$data['install_info'] = $install_addon_list[$key] ?? [];
$data['is_download'] = true;
$data['is_local'] = in_array($data['key'], $online_app_list) ? false : true;
$data['is_local'] = !in_array($data['key'], $online_app_list);
$data['version'] = isset($list[$data['key']]) ? $list[$data['key']]['version'] : $data['version'];
$data['app_id'] = in_array($data['key'], $online_app_list) ? $online_apps[$data['key']] : 0;
$data['author_phone'] = '';
$data['expire_time'] = '长期有效';
$list[$key] = $data;
}
}

View File

@ -126,12 +126,12 @@ trait WapTrait
$content .= " </view>\n";
$content .= " </view>\n";
$content .= " </template>\n";
$content .= " <template v-if=\"diyStore.mode == '' && data.global && diyGroup.showCopyright.value && data.global.copyright && data.global.copyright.isShow\">\n";
$content .= " <template v-if=\"data.global && diyGroup.showCopyright.value && data.global.copyright && data.global.copyright.isShow\">\n";
$content .= " <copy-right :textColor=\"data.global.copyright.textColor\" />\n";
$content .= " </template>\n\n";
$content .= " <template v-if=\"diyStore.mode == '' && data.global && data.global.bottomTabBar && data.global.bottomTabBar.isShow\">\n";
$content .= " <view class=\"pt-[20rpx]\"></view>\n";
$content .= " <tabbar :addon=\"data.global.bottomTabBar.designNav.key\" />\n";
$content .= " <tabbar :addon=\"data.global.bottomTabBar.designNav?.key\" />\n";
$content .= " </template>\n";
$content .= " </view>\n";
$content .= "</template>\n";

View File

@ -38,10 +38,14 @@ class CoreMemberAccountService extends BaseCoreService
[ 'member_id', '=', $member_id ],
[ 'site_id', '=', $site_id ]
])->field($account_type . ',' . $account_type . "_get" . ', username, mobile, nickname')->lock(true)->find();
if (empty($member_info)) throw new CommonException('MEMBER_NOT_EXIST');
if (empty($member_info)) {
Db::rollback();
throw new CommonException('MEMBER_NOT_EXIST');
}
$account_new_data = round((float) $member_info[ $account_type ] + (float) $account_data, 2);
if ($account_new_data < 0) {
Db::rollback();
throw new CommonException('ACCOUNT_INSUFFICIENT');
}

View File

@ -214,11 +214,13 @@ class CoreMemberService extends BaseCoreService
public static function sendGrowth(int $site_id, int $member_id, string $key, array $param = [])
{
$config = ( new CoreMemberConfigService() )->getGrowthRuleConfig($site_id);
if (!isset($config[ $key ]) || empty($config[ $key ]) || empty($config[ $key ][ 'is_use' ])) return true;
$config = $config[ $key ];
$dict = ( new DictLoader("GrowthRule") )->load();
$dict = ( new DictLoader("GrowthRule") )->load() ?? [];
if (!isset($dict[ $key ])) return true;
$dict = $dict[ $key ];
@ -234,7 +236,7 @@ class CoreMemberService extends BaseCoreService
if ($growth <= 0) return true;
( new CoreMemberAccountService() )->addLog($site_id, $member_id, MemberAccountTypeDict::GROWTH, $growth, $param[ 'from_type' ] ?? '', $param[ 'momo' ] ?? $dict[ 'desc' ], $param[ 'related_id' ] ?? 0);
( new CoreMemberAccountService() )->addLog($site_id, $member_id, MemberAccountTypeDict::GROWTH, $growth, $param[ 'from_type' ] ?? ($key ?? ''), $param[ 'momo' ] ?? $dict[ 'desc' ], $param[ 'related_id' ] ?? 0);
return true;
}

View File

@ -281,7 +281,7 @@ class CoreNiuSmsService extends BaseCoreService
public function templateList($username, $params)
{
$params = array_merge($params, $this->getPageParam());
$params['limit'] = $params['limit'] ?? 100;
$params['limit'] = $params['size'] ?? 100;
$url = $this->niushop_url_prefix . sprintf(self::TEMPLATE_LIST_URL, $username);
$res = (new HttpHelper())->get($url, $params);
return $res;

View File

@ -0,0 +1,81 @@
<?php
namespace app\service\core\notice;
use app\dict\notice\BindMerchantDict;
use app\model\site\SiteMerchantBind;
use core\base\BaseCoreService;
class CoreNoticeBindMerchantService extends BaseCoreService
{
public function __construct()
{
parent::__construct();
}
public function getInfo($id)
{
return (new SiteMerchantBind())->where('id', $id)->find()->toArray();
}
public function bindAccount($site_id, $value, $type = BindMerchantDict::WEAPP, $extends = [])
{
if ($type == BindMerchantDict::WECHAT) {
$openid_column = 'wechat_openid';
} else if ($type == BindMerchantDict::SMS) {
$openid_column = 'mobile';
} else {
$openid_column = 'weapp_openid';
}
$bind_info = (new SiteMerchantBind())->where('site_id', $site_id)->findOrEmpty();
if ($bind_info->isEmpty()) {
if (!empty($extends)) {
$extends[$type] = $extends;
}
$res = (new SiteMerchantBind())->insertGetId([
'extends' => $extends,
$openid_column => $value,
'site_id' => $site_id,
'create_time' => time(),
]);
} else {
$db_extends = $bind_info->toArray()['extends'];
if (!empty($extends)) {
$db_extends[$type] = $extends;
}
$res = (new SiteMerchantBind())->where('site_id', $site_id)->update([
'extends' => $db_extends,
$openid_column => $value,
'update_time' => time(),
]);
}
return $res;
}
public function unBindAccount($site_id, $data)
{
if (in_array(BindMerchantDict::WECHAT, $data['unbind_type']) && in_array(BindMerchantDict::WEAPP, $data['unbind_type']) && in_array(BindMerchantDict::SMS, $data['unbind_type'])) {
return (new SiteMerchantBind())->where('site_id', $site_id)->delete();
}
if (in_array(BindMerchantDict::WECHAT, $data['unbind_type'])) {
(new SiteMerchantBind())->where('site_id', $site_id)->update([
'wechat_openid' => '',
'update_time' => time()
]);
}
if (in_array(BindMerchantDict::WEAPP, $data['unbind_type'])) {
(new SiteMerchantBind())->where('site_id', $site_id)->update([
'weapp_openid' => '',
'update_time' => time()
]);
}
if (in_array(BindMerchantDict::SMS, $data['unbind_type'])) {
(new SiteMerchantBind())->where('site_id', $site_id)->update([
'mobile' => '',
'update_time' => time()
]);
}
return true;
}
}

View File

@ -58,6 +58,7 @@ class CoreScanService extends BaseCoreService
* @return true
*/
public function actionByScan(int $site_id, string $key, array $data){
$data['site_id'] = $site_id;
$cache_name = self::$cache_name.$key;
$cache = Cache::get($cache_name);
Log::write('scan_log_'.$key);

View File

@ -127,7 +127,7 @@ class CoreAttachmentService extends BaseCoreService
$core_attachment_service = new CoreAttachmentService();
$list = $core_attachment_service->getList($site_id, compact('att_ids'));
if(empty($list))
throw new UploadFileException('PLEACE_SELECT_IMAGE');
throw new UploadFileException('PLEASE_SELECT_IMAGE');
$del_success_ids = [];
foreach($list as $v){

View File

@ -14,8 +14,10 @@ namespace app\service\core\sys;
use app\dict\sys\ExportDict;
use app\model\sys\SysExport;
use core\base\BaseCoreService;
use PhpOffice\PhpSpreadsheet\Cell\DataType;
use PhpOffice\PhpSpreadsheet\Spreadsheet;
use PhpOffice\PhpSpreadsheet\Style\Alignment;
use PhpOffice\PhpSpreadsheet\Style\NumberFormat;
use PhpOffice\PhpSpreadsheet\Writer\Xlsx;
use think\facade\Log;
@ -199,9 +201,17 @@ class CoreExportService extends BaseCoreService
foreach ($data as $item) {
foreach ($data_column as $k => $v)
{
$sheet->setCellValue($v['excel_column_name'] . $row, $item[$k]);
// 将样式应用到单元格
$sheet->getStyle($v['excel_column_name'] . $row)->applyFromArray($style_array);
$cell_value = $item[$k] ?? '';
$cell_coordinate = $v['excel_column_name'] . $row;
// 步骤1获取单元格对象
$cell = $sheet->getCell($cell_coordinate);
// 步骤2强制单元格格式为纯文本核心
$cell->getStyle()->getNumberFormat()->setFormatCode(NumberFormat::FORMAT_TEXT);
// 步骤3显式赋值为字符串类型避免解析为公式核心
$cell->setValueExplicit($cell_value, DataType::TYPE_STRING);
// 将样式应用到单元格(原有逻辑保留)
$sheet->getStyle($cell_coordinate)->applyFromArray($style_array);
// todo 合并行
if (isset($v['merge_type']) && $v['merge_type'] == 'column') {

View File

@ -36,10 +36,13 @@ class CoreWechatServeService extends BaseCoreService
* @param string $scopes
* @return string
*/
public function authorization(int $site_id, string $url = '', string $scopes = 'snsapi_base')
public function authorization(int $site_id, string $url = '', string $scopes = 'snsapi_base',$state = '')
{
$oauth = CoreWechatService::app($site_id)->getOauth();
return $oauth->scopes([ $scopes ])->redirect($url);
$oauth = CoreWechatService::app($site_id)->getOauth()->scopes([ $scopes ]);
if (!empty($state)){
$oauth = $oauth->withState($state);
}
return $oauth->redirect($url);
}
/**
@ -84,7 +87,6 @@ class CoreWechatServeService extends BaseCoreService
*/
public function serve(int $site_id)
{
$app = CoreWechatService::app($site_id);
$server = $app->getServer();
$server->with(function($message, \Closure $next) use ($site_id) {

View File

@ -0,0 +1,48 @@
<?php
namespace app\upgrade\v121;
use app\model\diy\Diy;
use app\model\diy_form\DiyForm;
class Upgrade
{
public function handle()
{
$this->handleDiyData();
}
/**
* 处理自定义数据
* @return void
* @throws \think\db\exception\DataNotFoundException
* @throws \think\db\exception\DbException
* @throws \think\db\exception\ModelNotFoundException
*/
private function handleDiyData()
{
$diy_model = new Diy();
$where = [
['value', '<>', ''],
];
$field = 'id,value';
$list = $diy_model->where($where)->field($field)->select()->toArray();
$components_names = ['GoodsList','ManyGoodsList','ShopExchangeGoods','ShopGoodsRecommend','SingleRecommend','ShopNewcomer','ShopGoodsRanking','ShopGoodsHot'];
if (!empty($list)) {
foreach ($list as $k => $v) {
$diy_data = json_decode($v['value'], true);
foreach ($diy_data['value'] as $k1=>$v1) {
if (in_array($v1['componentName'],$components_names)){
$diy_data['value'][$k1]['mode'] = 'aspectFill';
}
}
$diy_data = json_encode($diy_data);
$diy_model->where([['id', '=', $v['id']]])->update(['value' => $diy_data]);
}
}
}
}

View File

@ -0,0 +1,15 @@
CREATE TABLE `site_merchant_bind`
(
id int NOT NULL AUTO_INCREMENT,
site_id int NOT NULL DEFAULT 0 COMMENT '站点id',
wechat_openid VARCHAR(255) NOT NULL DEFAULT '' COMMENT '微信openid',
weapp_openid VARCHAR(255) NOT NULL DEFAULT '' COMMENT '小程序openid',
mobile VARCHAR(20) NOT NULL DEFAULT '' COMMENT '手机号',
extends TEXT DEFAULT NULL COMMENT '扩展数据 微信用户信息/小程序用户信息',
create_time int NOT NULL DEFAULT 0 COMMENT '创建时间',
update_time int NOT NULL DEFAULT 0 COMMENT '更新时间',
PRIMARY KEY (id)
) ENGINE = INNODB,
CHARACTER SET utf8mb4,
COLLATE utf8mb4_general_ci,
COMMENT = '商户信息接收账号绑定表';

View File

@ -6,8 +6,8 @@ use core\dict\DictLoader;
$data = [
// 指令定义
'commands' => [
'addon:install' => 'app\command\Addon\Install',
'addon:uninstall' => 'app\command\Addon\Uninstall',
'addon:install' => 'app\command\addon\Install',
'addon:uninstall' => 'app\command\addon\Uninstall',
'menu:refresh' => 'app\command\Menu',
//消息队列 自定义命令
'queue:work' => 'app\command\queue\Queue',
@ -19,7 +19,7 @@ $data = [
'workerman' => 'app\command\workerman\Workerman',
//重置管理员密码
'reset:password' => 'app\command\Resetpassword',
'refresh:area' => 'app\command\refreshAreaCommand',
'refresh:area' => 'app\command\RefreshAreaCommand',
],
];
return (new DictLoader("Console"))->load($data);

View File

@ -1,6 +1,6 @@
<?php
return [
'version' => '1.2.0',
'code' => '202601300001'
'version' => '1.2.1',
'code' => '202603170001'
];

View File

@ -49,7 +49,7 @@ class Niuyun extends BaseSms
*/
public function send(string $mobile, string $template_id, array $data = [])
{
Log::write("SEND_NY_SMS pre " . json_encode($data, 256));
Log::write("SEND_NY_SMS pre mobile: ".$mobile.' tem_id:'.$template_id . json_encode($data, 256));
if (empty($this->signature)) {
throw new CommonException('签名未配置');
}

View File

@ -30,6 +30,9 @@ class CloudService
$local_cloud_compile_config = (new CoreConfigService())->getConfig(0, 'LOCAL_CLOUD_COMPILE_CONFIG')['value'] ?? [];
if (!empty($local_cloud_compile_config) && isset($local_cloud_compile_config['isOpen']) && $local_cloud_compile_config['isOpen'] == 1){
$baseUri = $local_cloud_compile_config['baseUri'] ?? '';
if (empty($baseUri)){
throw new CommonException("已开启`第三方云编译`,但未配置云编译服务器地址,详情查看:平台端》云编译》第三方云编译");
}
}
if (!empty($local_cloud_compile)){

View File

@ -164,7 +164,10 @@ trait HasHttpRequests
public function getHttpClient(): ClientInterface
{
if (!($this->httpClient instanceof ClientInterface)) {
$this->httpClient = new Client(['handler' => HandlerStack::create($this->getGuzzleHandler())]);
$this->httpClient = new Client([
'handler' => HandlerStack::create($this->getGuzzleHandler()),
// 'proxy'=>''//调试放开
]);
}
return $this->httpClient;

View File

@ -1 +1 @@
import{d as l,r as d,u as i,o as p,c as u,a as t,b as m,e as x,w as v,f,E as h,p as b,g,h as I,i as w,t as S}from"./index-38aa4eb6.js";/* empty css */import{_ as B}from"./_plugin-vue_export-helper-c27b6911.js";const k=""+new URL("error-ab7e4004.png",import.meta.url).href,o=e=>(b("data-v-4f4088b5"),e=e(),g(),e),y={class:"error"},C={class:"flex items-center"},E=o(()=>t("div",null,[t("img",{class:"w-[240px]",src:k})],-1)),N={class:"text-left ml-[100px]"},R=o(()=>t("div",{class:"error-text text-[28px] font-bold"},"404错误",-1)),U=o(()=>t("div",{class:"text-[#222] text-[20px] mt-[15px]"},"哎呀,出错了!您访问的页面不存在...",-1)),V=o(()=>t("div",{class:"text-[#c4c2c2] text-[12px] mt-[5px]"},"尝试检查URL的错误然后点击浏览器刷新按钮。",-1)),L={class:"mt-[40px]"},$=l({__name:"404",setup(e){let s=null;const a=d(5),n=i();return s=setInterval(()=>{a.value===0?(clearInterval(s),n.go(-1)):a.value--},1e3),p(()=>{s&&clearInterval(s)}),(r,c)=>{const _=h;return I(),u("div",y,[t("div",C,[m(r.$slots,"content",{},()=>[E],!0),t("div",N,[R,U,V,t("div",L,[x(_,{class:"bottom",onClick:c[0]||(c[0]=D=>f(n).go(-1))},{default:v(()=>[w(S(a.value)+" 秒后返回上一页",1)]),_:1})])])])])}}});const z=B($,[["__scopeId","data-v-4f4088b5"]]);export{z as default};
import{d as l,r as d,u as i,o as p,c as u,a as t,b as m,e as x,w as v,f,E as h,p as b,g,h as I,i as w,t as S}from"./index-69eae4f0.js";/* empty css */import{_ as B}from"./_plugin-vue_export-helper-c27b6911.js";const k=""+new URL("error-ab7e4004.png",import.meta.url).href,o=e=>(b("data-v-4f4088b5"),e=e(),g(),e),y={class:"error"},C={class:"flex items-center"},E=o(()=>t("div",null,[t("img",{class:"w-[240px]",src:k})],-1)),N={class:"text-left ml-[100px]"},R=o(()=>t("div",{class:"error-text text-[28px] font-bold"},"404错误",-1)),U=o(()=>t("div",{class:"text-[#222] text-[20px] mt-[15px]"},"哎呀,出错了!您访问的页面不存在...",-1)),V=o(()=>t("div",{class:"text-[#c4c2c2] text-[12px] mt-[5px]"},"尝试检查URL的错误然后点击浏览器刷新按钮。",-1)),L={class:"mt-[40px]"},$=l({__name:"404",setup(e){let s=null;const a=d(5),n=i();return s=setInterval(()=>{a.value===0?(clearInterval(s),n.go(-1)):a.value--},1e3),p(()=>{s&&clearInterval(s)}),(r,c)=>{const _=h;return I(),u("div",y,[t("div",C,[m(r.$slots,"content",{},()=>[E],!0),t("div",N,[R,U,V,t("div",L,[x(_,{class:"bottom",onClick:c[0]||(c[0]=D=>f(n).go(-1))},{default:v(()=>[w(S(a.value)+" 秒后返回上一页",1)]),_:1})])])])])}}});const z=B($,[["__scopeId","data-v-4f4088b5"]]);export{z as default};

View File

@ -0,0 +1 @@
import{dD as f}from"./index-69eae4f0.js";export{f as default};

View File

@ -1 +0,0 @@
import{dC as f}from"./index-38aa4eb6.js";export{f as default};

View File

@ -1 +1 @@
import z from"./VerifySlide-b7e2c0ea.js";import g from"./VerifyPoints-8dcc621d.js";import{Q as k,r as o,m as w,bb as T,Z as V,_ as B,h as p,c as u,a as c,i as N,C as y,y as d,v as C,bc as j,x as v}from"./index-38aa4eb6.js";import{_ as O}from"./_plugin-vue_export-helper-c27b6911.js";import"./index-0f1d8573.js";const P={name:"Vue2Verify",components:{VerifySlide:z,VerifyPoints:g},props:{captchaType:{type:String,required:!0},figure:{type:Number},arith:{type:Number},mode:{type:String,default:"pop"},vSpace:{type:Number},explain:{type:String},imgSize:{type:Object,default(){return{width:"310px",height:"155px"}}},blockSize:{type:Object},barSize:{type:Object}},setup(m){const{captchaType:i,figure:e,arith:t,mode:n,vSpace:h,explain:f,imgSize:Q,blockSize:R,barSize:W}=k(m),a=o(!1),r=o(void 0),s=o(void 0),l=o({}),S=w(()=>n.value=="pop"?a.value:!0),b=()=>{l.value.refresh&&l.value.refresh()},x=()=>{a.value=!1,b()},_=()=>{n.value=="pop"&&(a.value=!0)};return T(()=>{switch(i.value){case"blockPuzzle":r.value="2",s.value="VerifySlide";break;case"clickWord":r.value="",s.value="VerifyPoints";break}}),{clickShow:a,verifyType:r,componentType:s,instance:l,showBox:S,closeBox:x,show:_}}},D={key:0,class:"verifybox-top"},E=c("i",{class:"iconfont icon-close"},null,-1),q=[E];function I(m,i,e,t,n,h){return V((p(),u("div",{class:v(e.mode=="pop"?"mask":"")},[c("div",{class:v(e.mode=="pop"?"verifybox":""),style:d({"max-width":parseInt(e.imgSize.width)+30+"px"})},[e.mode=="pop"?(p(),u("div",D,[N(" 请完成安全验证 "),c("span",{class:"verifybox-close",onClick:i[0]||(i[0]=(...f)=>t.closeBox&&t.closeBox(...f))},q)])):y("",!0),c("div",{class:"verifybox-bottom",style:d({padding:e.mode=="pop"?"15px":"0"})},[t.componentType?(p(),C(j(t.componentType),{key:0,captchaType:e.captchaType,type:t.verifyType,figure:e.figure,arith:e.arith,mode:e.mode,vSpace:e.vSpace,explain:e.explain,imgSize:e.imgSize,blockSize:e.blockSize,barSize:e.barSize,ref:"instance"},null,8,["captchaType","type","figure","arith","mode","vSpace","explain","imgSize","blockSize","barSize"])):y("",!0)],4)],6)],2)),[[B,t.showBox]])}const J=O(P,[["render",I]]);export{J as default};
import z from"./VerifySlide-f94c7d34.js";import g from"./VerifyPoints-b9e4aa92.js";import{P as k,r as o,m as w,bb as T,Y as V,Z as B,h as p,c as u,a as c,i as N,C as y,y as d,v as C,bc as P,x as v}from"./index-69eae4f0.js";import{_ as j}from"./_plugin-vue_export-helper-c27b6911.js";import"./index-209b33df.js";const O={name:"Vue2Verify",components:{VerifySlide:z,VerifyPoints:g},props:{captchaType:{type:String,required:!0},figure:{type:Number},arith:{type:Number},mode:{type:String,default:"pop"},vSpace:{type:Number},explain:{type:String},imgSize:{type:Object,default(){return{width:"310px",height:"155px"}}},blockSize:{type:Object},barSize:{type:Object}},setup(m){const{captchaType:i,figure:e,arith:t,mode:n,vSpace:h,explain:f,imgSize:R,blockSize:W,barSize:Y}=k(m),a=o(!1),r=o(void 0),s=o(void 0),l=o({}),S=w(()=>n.value=="pop"?a.value:!0),b=()=>{l.value.refresh&&l.value.refresh()},x=()=>{a.value=!1,b()},_=()=>{n.value=="pop"&&(a.value=!0)};return T(()=>{switch(i.value){case"blockPuzzle":r.value="2",s.value="VerifySlide";break;case"clickWord":r.value="",s.value="VerifyPoints";break}}),{clickShow:a,verifyType:r,componentType:s,instance:l,showBox:S,closeBox:x,show:_}}},D={key:0,class:"verifybox-top"},E=c("i",{class:"iconfont icon-close"},null,-1),q=[E];function I(m,i,e,t,n,h){return V((p(),u("div",{class:v(e.mode=="pop"?"mask":"")},[c("div",{class:v(e.mode=="pop"?"verifybox":""),style:d({"max-width":parseInt(e.imgSize.width)+30+"px"})},[e.mode=="pop"?(p(),u("div",D,[N(" 请完成安全验证 "),c("span",{class:"verifybox-close",onClick:i[0]||(i[0]=(...f)=>t.closeBox&&t.closeBox(...f))},q)])):y("",!0),c("div",{class:"verifybox-bottom",style:d({padding:e.mode=="pop"?"15px":"0"})},[t.componentType?(p(),C(P(t.componentType),{key:0,captchaType:e.captchaType,type:t.verifyType,figure:e.figure,arith:e.arith,mode:e.mode,vSpace:e.vSpace,explain:e.explain,imgSize:e.imgSize,blockSize:e.blockSize,barSize:e.barSize,ref:"instance"},null,8,["captchaType","type","figure","arith","mode","vSpace","explain","imgSize","blockSize","barSize"])):y("",!0)],4)],6)],2)),[[B,t.showBox]])}const J=j(O,[["render",I]]);export{J as default};

View File

@ -1 +0,0 @@
import{r as F,a as V,b as K,c as G}from"./index-0f1d8573.js";import{Q,bd as X,r as s,q as m,a_ as Y,h as H,c as I,a as l,y as A,Z,_ as U,F as $,W as ee,t as q,ay as te}from"./index-38aa4eb6.js";import{_ as ae}from"./_plugin-vue_export-helper-c27b6911.js";const ie={name:"VerifyPoints",props:{mode:{type:String,default:"fixed"},captchaType:{type:String},vSpace:{type:Number,default:5},imgSize:{type:Object,default(){return{width:"310px",height:"155px"}}},barSize:{type:Object,default(){return{width:"310px",height:"40px"}}}},setup(N,f){const{mode:_,captchaType:e,vSpace:L,imgSize:R,barSize:c}=Q(N),{proxy:n}=X(),h=s(""),z=s(3),p=m([]),a=m([]),o=s(1),O=s(""),w=m([]),v=s(""),u=m({imgHeight:0,imgWidth:0,barHeight:0,barWidth:0}),y=m([]),d=s(""),b=s(void 0),x=s(void 0),j=s(!0),C=s(!0),J=()=>{p.splice(0,p.length),a.splice(0,a.length),o.value=1,B(),te(()=>{const{imgHeight:i,imgWidth:t,barHeight:g,barWidth:r}=F(n);u.imgHeight=i,u.imgWidth=t,u.barHeight=g,u.barWidth=r,n.$parent.$emit("ready",n)})};Y(()=>{J(),n.$el.onselectstart=function(){return!1}});const S=s(null),D=i=>{if(a.push(k(S,i)),o.value==z.value){o.value=T(k(S,i));const t=M(a,u);a.length=0,a.push(...t),setTimeout(()=>{const g=h.value?V(v.value+"---"+JSON.stringify(a),h.value):v.value+"---"+JSON.stringify(a),r={captchaType:e.value,captcha_code:h.value?V(JSON.stringify(a),h.value):JSON.stringify(a),captcha_key:v.value};K(r).then(P=>{P.code==1?(b.value="#4cae4c",x.value="#5cb85c",d.value="验证成功",C.value=!1,_.value=="pop"&&setTimeout(()=>{n.$parent.clickShow=!1,W()},1500),n.$parent.$emit("success",{captchaVerification:g})):(n.$parent.$emit("error",n),b.value="#d9534f",x.value="#d9534f",d.value="验证失败",setTimeout(()=>{W()},700))})},400)}o.value<z.value&&(o.value=T(k(S,i)))},k=function(i,t){const g=t.offsetX,r=t.offsetY;return{x:g,y:r}},T=function(i){return y.push(Object.assign({},i)),o.value+1},W=function(){y.splice(0,y.length),b.value="#000",x.value="#ddd",C.value=!0,p.splice(0,p.length),a.splice(0,a.length),o.value=1,B(),d.value="验证失败",j.value=!0};function B(){const i={captchaType:e.value};G(i).then(t=>{t.code==1?(O.value=t.data.originalImageBase64,v.value=t.data.token,h.value=t.data.secretKey,w.value=t.data.wordList,d.value="请依次点击【"+w.value.join(",")+"】"):d.value=t.msg})}const M=function(i,t){return i.map(r=>{const P=Math.round(310*r.x/parseInt(t.imgWidth)),E=Math.round(155*r.y/parseInt(t.imgHeight));return{x:P,y:E}})};return{secretKey:h,checkNum:z,fontPos:p,checkPosArr:a,num:o,pointBackImgBase:O,pointTextList:w,backToken:v,setSize:u,tempPoints:y,text:d,barAreaColor:b,barAreaBorderColor:x,showRefresh:j,bindingClick:C,init:J,canvas:S,canvasClick:D,getMousePos:k,createPoint:T,refresh:W,getPictrue:B,pointTransfrom:M}}},ne={style:{position:"relative"}},se={class:"verify-img-out"},oe=l("i",{class:"iconfont icon-refresh"},null,-1),re=[oe],ce=["src"],le={class:"verify-msg"};function he(N,f,_,e,L,R){return H(),I("div",ne,[l("div",se,[l("div",{class:"verify-img-panel",style:A({width:e.setSize.imgWidth,height:e.setSize.imgHeight,"background-size":e.setSize.imgWidth+" "+e.setSize.imgHeight,"margin-bottom":_.vSpace+"px"})},[Z(l("div",{class:"verify-refresh",style:{"z-index":"3"},onClick:f[0]||(f[0]=(...c)=>e.refresh&&e.refresh(...c))},re,512),[[U,e.showRefresh]]),l("img",{src:"data:image/png;base64,"+e.pointBackImgBase,ref:"canvas",alt:"",style:{width:"100%",height:"100%",display:"block"},onClick:f[1]||(f[1]=c=>e.bindingClick?e.canvasClick(c):void 0)},null,8,ce),(H(!0),I($,null,ee(e.tempPoints,(c,n)=>(H(),I("div",{key:n,class:"point-area",style:A({"background-color":"#1abd6c",color:"#fff","z-index":9999,width:"20px",height:"20px","text-align":"center","line-height":"20px","border-radius":"50%",position:"absolute",top:parseInt(c.y-10)+"px",left:parseInt(c.x-10)+"px"})},q(n+1),5))),128))],4)]),l("div",{class:"verify-bar-area",style:A({width:e.setSize.imgWidth,color:this.barAreaColor,"border-color":this.barAreaBorderColor,"line-height":this.barSize.height})},[l("span",le,q(e.text),1)],4)])}const fe=ae(ie,[["render",he]]);export{fe as default};

View File

@ -0,0 +1 @@
import{r as F,a as M,b as K,c as Y}from"./index-209b33df.js";import{P as Z,bd as G,r as s,q as m,aZ as X,h as H,c as I,a as l,y as A,Y as Q,Z as U,F as $,V as ee,t as q,ax as te}from"./index-69eae4f0.js";import{_ as ae}from"./_plugin-vue_export-helper-c27b6911.js";const ie={name:"VerifyPoints",props:{mode:{type:String,default:"fixed"},captchaType:{type:String},vSpace:{type:Number,default:5},imgSize:{type:Object,default(){return{width:"310px",height:"155px"}}},barSize:{type:Object,default(){return{width:"310px",height:"40px"}}}},setup(N,f){const{mode:_,captchaType:e,vSpace:L,imgSize:R,barSize:c}=Z(N),{proxy:n}=G(),h=s(""),z=s(3),p=m([]),a=m([]),o=s(1),O=s(""),w=m([]),v=s(""),u=m({imgHeight:0,imgWidth:0,barHeight:0,barWidth:0}),y=m([]),d=s(""),b=s(void 0),x=s(void 0),j=s(!0),C=s(!0),V=()=>{p.splice(0,p.length),a.splice(0,a.length),o.value=1,B(),te(()=>{const{imgHeight:i,imgWidth:t,barHeight:g,barWidth:r}=F(n);u.imgHeight=i,u.imgWidth=t,u.barHeight=g,u.barWidth=r,n.$parent.$emit("ready",n)})};X(()=>{V(),n.$el.onselectstart=function(){return!1}});const S=s(null),D=i=>{if(a.push(k(S,i)),o.value==z.value){o.value=P(k(S,i));const t=J(a,u);a.length=0,a.push(...t),setTimeout(()=>{const g=h.value?M(v.value+"---"+JSON.stringify(a),h.value):v.value+"---"+JSON.stringify(a),r={captchaType:e.value,captcha_code:h.value?M(JSON.stringify(a),h.value):JSON.stringify(a),captcha_key:v.value};K(r).then(W=>{W.code==1?(b.value="#4cae4c",x.value="#5cb85c",d.value="验证成功",C.value=!1,_.value=="pop"&&setTimeout(()=>{n.$parent.clickShow=!1,T()},1500),n.$parent.$emit("success",{captchaVerification:g})):(n.$parent.$emit("error",n),b.value="#d9534f",x.value="#d9534f",d.value="验证失败",setTimeout(()=>{T()},700))})},400)}o.value<z.value&&(o.value=P(k(S,i)))},k=function(i,t){const g=t.offsetX,r=t.offsetY;return{x:g,y:r}},P=function(i){return y.push(Object.assign({},i)),o.value+1},T=function(){y.splice(0,y.length),b.value="#000",x.value="#ddd",C.value=!0,p.splice(0,p.length),a.splice(0,a.length),o.value=1,B(),d.value="验证失败",j.value=!0};function B(){const i={captchaType:e.value};Y(i).then(t=>{t.code==1?(O.value=t.data.originalImageBase64,v.value=t.data.token,h.value=t.data.secretKey,w.value=t.data.wordList,d.value="请依次点击【"+w.value.join(",")+"】"):d.value=t.msg})}const J=function(i,t){return i.map(r=>{const W=Math.round(310*r.x/parseInt(t.imgWidth)),E=Math.round(155*r.y/parseInt(t.imgHeight));return{x:W,y:E}})};return{secretKey:h,checkNum:z,fontPos:p,checkPosArr:a,num:o,pointBackImgBase:O,pointTextList:w,backToken:v,setSize:u,tempPoints:y,text:d,barAreaColor:b,barAreaBorderColor:x,showRefresh:j,bindingClick:C,init:V,canvas:S,canvasClick:D,getMousePos:k,createPoint:P,refresh:T,getPictrue:B,pointTransfrom:J}}},ne={style:{position:"relative"}},se={class:"verify-img-out"},oe=l("i",{class:"iconfont icon-refresh"},null,-1),re=[oe],ce=["src"],le={class:"verify-msg"};function he(N,f,_,e,L,R){return H(),I("div",ne,[l("div",se,[l("div",{class:"verify-img-panel",style:A({width:e.setSize.imgWidth,height:e.setSize.imgHeight,"background-size":e.setSize.imgWidth+" "+e.setSize.imgHeight,"margin-bottom":_.vSpace+"px"})},[Q(l("div",{class:"verify-refresh",style:{"z-index":"3"},onClick:f[0]||(f[0]=(...c)=>e.refresh&&e.refresh(...c))},re,512),[[U,e.showRefresh]]),l("img",{src:"data:image/png;base64,"+e.pointBackImgBase,ref:"canvas",alt:"",style:{width:"100%",height:"100%",display:"block"},onClick:f[1]||(f[1]=c=>e.bindingClick?e.canvasClick(c):void 0)},null,8,ce),(H(!0),I($,null,ee(e.tempPoints,(c,n)=>(H(),I("div",{key:n,class:"point-area",style:A({"background-color":"#1abd6c",color:"#fff","z-index":9999,width:"20px",height:"20px","text-align":"center","line-height":"20px","border-radius":"50%",position:"absolute",top:parseInt(c.y-10)+"px",left:parseInt(c.x-10)+"px"})},q(n+1),5))),128))],4)]),l("div",{class:"verify-bar-area",style:A({width:e.setSize.imgWidth,color:this.barAreaColor,"border-color":this.barAreaBorderColor,"line-height":this.barSize.height})},[l("span",le,q(e.text),1)],4)])}const fe=ae(ie,[["render",he]]);export{fe as default};

View File

@ -1 +1 @@
import{d as V,k as B,u as N,r as x,a_ as S,h as T,c as j,e as o,w as s,a as t,t as n,f as e,s as a,i as h,B as I,aI as R,aJ as $,E as q,a$ as D,b0 as F,b1 as J,K,b2 as M,a9 as P}from"./index-38aa4eb6.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import{g as Q}from"./aliapp-f10afabf.js";const U={class:"main-container"},z={class:"flex justify-between items-center"},G={class:"text-page-title"},H={class:"p-[20px]"},L={class:"panel-title !text-sm"},O={class:"text-[14px] font-[700]"},W={class:"text-[#999]"},X={class:"mt-[20px] mb-[40px] h-[32px]"},Y={class:"text-[14px] font-[700]"},Z={class:"text-[#999]"},tt={class:"mt-[20px] mb-[40px] h-[32px]"},et={class:"text-[14px] font-[700]"},st={class:"text-[#999]"},at=t("div",{class:"mt-[20px] mb-[40px] h-[32px]"},null,-1),ot={class:"text-[14px] font-[700]"},nt={class:"text-[#999]"},lt={class:"flex justify-center"},ct={class:"w-[100%] h-[100%] flex items-center justify-center bg-[#f5f7fa]"},pt={class:"mt-[22px] text-center"},it={class:"text-[12px]"},wt=V({__name:"access",setup(_t){const f=B(),d=N(),v=f.meta.title,_=x("/channel/aliapp"),p=x("");S(async()=>{const c=await Q();p.value=c.data.qr_code});const b=c=>{window.open(c,"_blank")},w=c=>{d.push({path:_.value})};return(c,l)=>{const g=R,C=$,m=q,i=D,E=F,u=J,y=K,k=M,A=P;return T(),j("div",U,[o(A,{class:"card !border-none",shadow:"never"},{default:s(()=>[t("div",z,[t("span",G,n(e(v)),1)]),o(C,{modelValue:_.value,"onUpdate:modelValue":l[0]||(l[0]=r=>_.value=r),class:"my-[20px]",onTabChange:w},{default:s(()=>[o(g,{label:e(a)("weappAccessFlow"),name:"/channel/aliapp"},null,8,["label"])]),_:1},8,["modelValue"]),t("div",H,[t("h3",L,n(e(a)("weappInlet")),1),o(k,null,{default:s(()=>[o(u,{span:20},{default:s(()=>[o(E,{active:4,direction:"vertical"},{default:s(()=>[o(i,null,{title:s(()=>[t("p",O,n(e(a)("weappAttestation")),1)]),description:s(()=>[t("span",W,n(e(a)("weappAttest")),1),t("div",X,[o(m,{type:"primary",onClick:l[1]||(l[1]=r=>b("https://open.alipay.com/develop/manage"))},{default:s(()=>[h(n(e(a)("clickAccess")),1)]),_:1})])]),_:1}),o(i,null,{title:s(()=>[t("p",Y,n(e(a)("weappSetting")),1)]),description:s(()=>[t("span",Z,n(e(a)("emplace")),1),t("div",tt,[o(m,{type:"primary",plain:"",onClick:l[2]||(l[2]=r=>e(d).push("/channel/aliapp/config"))},{default:s(()=>[h(n(e(a)("weappSettingBtn")),1)]),_:1})])]),_:1}),o(i,null,{title:s(()=>[t("p",et,n(e(a)("uploadVersion")),1)]),description:s(()=>[t("span",st,n(e(a)("releaseCourse")),1),at]),_:1}),o(i,null,{title:s(()=>[t("p",ot,n(e(a)("completeAccess")),1)]),description:s(()=>[t("span",nt,n(e(a)("releaseCourse")),1)]),_:1})]),_:1})]),_:1}),o(u,{span:4},{default:s(()=>[t("div",lt,[o(y,{class:"w-[180px] h-[180px]",src:p.value?e(I)(p.value):""},{error:s(()=>[t("div",ct,[t("span",null,n(p.value?e(a)("fileErr"):e(a)("emptyQrCode")),1)])]),_:1},8,["src"])]),t("div",pt,[t("p",it,n(e(a)("clickAccess2")),1)])]),_:1})]),_:1})])]),_:1})])}}});export{wt as default};
import{d as V,k as B,u as N,r as x,aZ as S,h as T,c as j,e as o,w as s,a as t,t as n,f as e,s as a,i as h,B as I,aH as R,aI as $,E as q,a_ as D,a$ as F,b0 as H,K,b1 as M,a8 as P}from"./index-69eae4f0.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import{g as Q}from"./aliapp-02c8b274.js";const U={class:"main-container"},Z={class:"flex justify-between items-center"},z={class:"text-page-title"},G={class:"p-[20px]"},J={class:"panel-title !text-sm"},L={class:"text-[14px] font-[700]"},O={class:"text-[#999]"},W={class:"mt-[20px] mb-[40px] h-[32px]"},X={class:"text-[14px] font-[700]"},Y={class:"text-[#999]"},tt={class:"mt-[20px] mb-[40px] h-[32px]"},et={class:"text-[14px] font-[700]"},st={class:"text-[#999]"},at=t("div",{class:"mt-[20px] mb-[40px] h-[32px]"},null,-1),ot={class:"text-[14px] font-[700]"},nt={class:"text-[#999]"},lt={class:"flex justify-center"},ct={class:"w-[100%] h-[100%] flex items-center justify-center bg-[#f5f7fa]"},pt={class:"mt-[22px] text-center"},it={class:"text-[12px]"},bt=V({__name:"access",setup(_t){const f=B(),d=N(),v=f.meta.title,_=x("/channel/aliapp"),p=x("");S(async()=>{const c=await Q();p.value=c.data.qr_code});const w=c=>{window.open(c,"_blank")},b=c=>{d.push({path:_.value})};return(c,l)=>{const g=R,C=$,m=q,i=D,E=F,u=H,y=K,k=M,A=P;return T(),j("div",U,[o(A,{class:"card !border-none",shadow:"never"},{default:s(()=>[t("div",Z,[t("span",z,n(e(v)),1)]),o(C,{modelValue:_.value,"onUpdate:modelValue":l[0]||(l[0]=r=>_.value=r),class:"my-[20px]",onTabChange:b},{default:s(()=>[o(g,{label:e(a)("weappAccessFlow"),name:"/channel/aliapp"},null,8,["label"])]),_:1},8,["modelValue"]),t("div",G,[t("h3",J,n(e(a)("weappInlet")),1),o(k,null,{default:s(()=>[o(u,{span:20},{default:s(()=>[o(E,{active:4,direction:"vertical"},{default:s(()=>[o(i,null,{title:s(()=>[t("p",L,n(e(a)("weappAttestation")),1)]),description:s(()=>[t("span",O,n(e(a)("weappAttest")),1),t("div",W,[o(m,{type:"primary",onClick:l[1]||(l[1]=r=>w("https://open.alipay.com/develop/manage"))},{default:s(()=>[h(n(e(a)("clickAccess")),1)]),_:1})])]),_:1}),o(i,null,{title:s(()=>[t("p",X,n(e(a)("weappSetting")),1)]),description:s(()=>[t("span",Y,n(e(a)("emplace")),1),t("div",tt,[o(m,{type:"primary",plain:"",onClick:l[2]||(l[2]=r=>e(d).push("/channel/aliapp/config"))},{default:s(()=>[h(n(e(a)("weappSettingBtn")),1)]),_:1})])]),_:1}),o(i,null,{title:s(()=>[t("p",et,n(e(a)("uploadVersion")),1)]),description:s(()=>[t("span",st,n(e(a)("releaseCourse")),1),at]),_:1}),o(i,null,{title:s(()=>[t("p",ot,n(e(a)("completeAccess")),1)]),description:s(()=>[t("span",nt,n(e(a)("releaseCourse")),1)]),_:1})]),_:1})]),_:1}),o(u,{span:4},{default:s(()=>[t("div",lt,[o(y,{class:"w-[180px] h-[180px]",src:p.value?e(I)(p.value):""},{error:s(()=>[t("div",ct,[t("span",null,n(p.value?e(a)("fileErr"):e(a)("emptyQrCode")),1)])]),_:1},8,["src"])]),t("div",pt,[t("p",it,n(e(a)("clickAccess2")),1)])]),_:1})]),_:1})])]),_:1})])}}});export{bt as default};

File diff suppressed because one or more lines are too long

View File

@ -1 +1 @@
import{d as B,k as T,u as $,r as c,a_ as I,b6 as M,o as R,h as W,c as q,e,w as t,a as s,t as o,f as n,s as a,i as u,aI as A,aJ as L,E as U,a$ as j,b0 as D,b1 as F,b2 as G,a9 as J}from"./index-38aa4eb6.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import{g as P}from"./wechat-8613d57d.js";const z={class:"main-container"},H={class:"flex justify-between items-center"},K={class:"text-page-title"},O={class:"p-[20px]"},Q={class:"panel-title !text-sm"},X={class:"text-[14px] font-[700]"},Y={class:"text-[#999]"},Z={class:"mt-[20px] mb-[40px] h-[32px]"},tt={class:"text-[14px] font-[700]"},et={class:"mt-[20px] mb-[40px] h-[32px]"},nt={class:"text-[14px] font-[700]"},st={class:"mt-[20px] mb-[40px] h-[32px]"},dt=B({__name:"access",setup(at){const f=T(),_=$(),x=f.meta.title,r=c("/channel/app"),b=c(""),g=c({}),w=c({}),h=async()=>{await P().then(({data:l})=>{g.value=l,b.value=l.qr_code})};I(async()=>{await h(),await M().then(({data:l})=>{w.value=l}),document.addEventListener("visibilitychange",()=>{document.visibilityState==="visible"&&h()})}),R(()=>{document.removeEventListener("visibilitychange",()=>{})});const y=l=>{window.open(l,"_blank")},C=l=>{_.push({path:r.value})};return(l,i)=>{const v=A,E=L,d=U,m=j,k=D,V=F,S=G,N=J;return W(),q("div",z,[e(N,{class:"card !border-none",shadow:"never"},{default:t(()=>[s("div",H,[s("span",K,o(n(x)),1)]),e(E,{modelValue:r.value,"onUpdate:modelValue":i[0]||(i[0]=p=>r.value=p),class:"my-[20px]",onTabChange:C},{default:t(()=>[e(v,{label:n(a)("accessFlow"),name:"/channel/app"},null,8,["label"]),e(v,{label:n(a)("versionManage"),name:"/channel/app/version"},null,8,["label"])]),_:1},8,["modelValue"]),s("div",O,[s("h3",Q,o(n(a)("appInlet")),1),e(S,null,{default:t(()=>[e(V,{span:20},{default:t(()=>[e(k,{class:"!mt-[10px]",active:3,direction:"vertical"},{default:t(()=>[e(m,null,{title:t(()=>[s("p",X,o(n(a)("uniappApp")),1)]),description:t(()=>[s("span",Y,o(n(a)("appAttestation1")),1),s("div",Z,[e(d,{type:"primary",onClick:i[1]||(i[1]=p=>y("https://dcloud.io/"))},{default:t(()=>[u(o(n(a)("toCreate")),1)]),_:1})])]),_:1}),e(m,null,{title:t(()=>[s("p",tt,o(n(a)("appSetting")),1)]),description:t(()=>[s("div",et,[e(d,{type:"primary",onClick:i[2]||(i[2]=p=>n(_).push("/channel/app/config"))},{default:t(()=>[u(o(n(a)("settingInfo")),1)]),_:1})])]),_:1}),e(m,null,{title:t(()=>[s("p",nt,o(n(a)("versionManage")),1)]),description:t(()=>[s("div",st,[e(d,{type:"primary",plain:"",onClick:i[3]||(i[3]=p=>n(_).push("/channel/app/version"))},{default:t(()=>[u(o(n(a)("releaseVersion")),1)]),_:1})])]),_:1})]),_:1})]),_:1})]),_:1})])]),_:1})])}}});export{dt as default};
import{d as B,k as T,u as $,r as c,aZ as I,b6 as M,o as R,h as W,c as q,e,w as t,a as s,t as o,f as n,s as a,i as u,aH as A,aI as L,E as U,a_ as j,a$ as D,b0 as F,b1 as G,a8 as H}from"./index-69eae4f0.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import{g as P}from"./wechat-3cea9b68.js";const Z={class:"main-container"},z={class:"flex justify-between items-center"},J={class:"text-page-title"},K={class:"p-[20px]"},O={class:"panel-title !text-sm"},Q={class:"text-[14px] font-[700]"},X={class:"text-[#999]"},Y={class:"mt-[20px] mb-[40px] h-[32px]"},tt={class:"text-[14px] font-[700]"},et={class:"mt-[20px] mb-[40px] h-[32px]"},nt={class:"text-[14px] font-[700]"},st={class:"mt-[20px] mb-[40px] h-[32px]"},dt=B({__name:"access",setup(at){const f=T(),_=$(),x=f.meta.title,r=c("/channel/app"),b=c(""),g=c({}),w=c({}),h=async()=>{await P().then(({data:l})=>{g.value=l,b.value=l.qr_code})};I(async()=>{await h(),await M().then(({data:l})=>{w.value=l}),document.addEventListener("visibilitychange",()=>{document.visibilityState==="visible"&&h()})}),R(()=>{document.removeEventListener("visibilitychange",()=>{})});const y=l=>{window.open(l,"_blank")},C=l=>{_.push({path:r.value})};return(l,i)=>{const v=A,E=L,d=U,m=j,k=D,V=F,S=G,N=H;return W(),q("div",Z,[e(N,{class:"card !border-none",shadow:"never"},{default:t(()=>[s("div",z,[s("span",J,o(n(x)),1)]),e(E,{modelValue:r.value,"onUpdate:modelValue":i[0]||(i[0]=p=>r.value=p),class:"my-[20px]",onTabChange:C},{default:t(()=>[e(v,{label:n(a)("accessFlow"),name:"/channel/app"},null,8,["label"]),e(v,{label:n(a)("versionManage"),name:"/channel/app/version"},null,8,["label"])]),_:1},8,["modelValue"]),s("div",K,[s("h3",O,o(n(a)("appInlet")),1),e(S,null,{default:t(()=>[e(V,{span:20},{default:t(()=>[e(k,{class:"!mt-[10px]",active:3,direction:"vertical"},{default:t(()=>[e(m,null,{title:t(()=>[s("p",Q,o(n(a)("uniappApp")),1)]),description:t(()=>[s("span",X,o(n(a)("appAttestation1")),1),s("div",Y,[e(d,{type:"primary",onClick:i[1]||(i[1]=p=>y("https://dcloud.io/"))},{default:t(()=>[u(o(n(a)("toCreate")),1)]),_:1})])]),_:1}),e(m,null,{title:t(()=>[s("p",tt,o(n(a)("appSetting")),1)]),description:t(()=>[s("div",et,[e(d,{type:"primary",onClick:i[2]||(i[2]=p=>n(_).push("/channel/app/config"))},{default:t(()=>[u(o(n(a)("settingInfo")),1)]),_:1})])]),_:1}),e(m,null,{title:t(()=>[s("p",nt,o(n(a)("versionManage")),1)]),description:t(()=>[s("div",st,[e(d,{type:"primary",plain:"",onClick:i[3]||(i[3]=p=>n(_).push("/channel/app/version"))},{default:t(()=>[u(o(n(a)("releaseVersion")),1)]),_:1})])]),_:1})]),_:1})]),_:1})]),_:1})])]),_:1})])}}});export{dt as default};

File diff suppressed because one or more lines are too long

View File

@ -1 +1 @@
import{d as $,k as q,u as j,r as u,a_ as F,b6 as I,o as R,h as w,c as y,e as a,w as s,a as n,t as o,f as e,s as t,i as r,F as U,v as z,B as L,aI as M,aJ as D,E as G,a$ as J,b0 as K,b1 as P,K as Q,b2 as H,a9 as O}from"./index-38aa4eb6.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import{g as X}from"./wechat-8613d57d.js";import{a as Y}from"./wxoplatform-e80745b6.js";const Z={class:"main-container"},ee={class:"flex justify-between items-center"},te={class:"text-page-title"},ae={class:"p-[20px]"},se={class:"panel-title !text-sm"},ne={class:"text-[14px] font-[700]"},oe={class:"text-[#999]"},le={class:"mt-[20px] mb-[40px] h-[32px]"},ce={class:"text-[14px] font-[700]"},ie={class:"text-[#999]"},pe={class:"mt-[20px] mb-[40px] h-[32px]"},re={class:"text-[14px] font-[700]"},_e={class:"text-[#999]"},de={class:"mt-[20px] mb-[40px] h-[32px]"},me={class:"flex justify-center"},ue={class:"w-[100%] h-[100%] flex items-center justify-center bg-[#f5f7fa]"},he={class:"mt-[22px] text-center"},fe={class:"text-[12px]"},Be=$({__name:"access",setup(ve){const k=q(),_=j(),C=k.meta.title,h=u("/channel/wechat"),d=u(""),f=u({}),v=u({}),b=async()=>{await X().then(({data:l})=>{f.value=l,d.value=l.qr_code})};F(async()=>{await b(),await I().then(({data:l})=>{v.value=l}),document.addEventListener("visibilitychange",()=>{document.visibilityState==="visible"&&b()})}),R(()=>{document.removeEventListener("visibilitychange",()=>{})});const E=l=>{window.open(l,"_blank")},A=l=>{_.push({path:h.value})},S=()=>{Y().then(({data:l})=>{window.open(l)})};return(l,c)=>{const m=M,B=D,i=G,x=J,V=K,g=P,N=Q,T=H,W=O;return w(),y("div",Z,[a(W,{class:"card !border-none",shadow:"never"},{default:s(()=>[n("div",ee,[n("span",te,o(e(C)),1)]),a(B,{modelValue:h.value,"onUpdate:modelValue":c[0]||(c[0]=p=>h.value=p),class:"my-[20px]",onTabChange:A},{default:s(()=>[a(m,{label:e(t)("wechatAccessFlow"),name:"/channel/wechat"},null,8,["label"]),a(m,{label:e(t)("customMenu"),name:"/channel/wechat/menu"},null,8,["label"]),a(m,{label:e(t)("wechatTemplate"),name:"/channel/wechat/message"},null,8,["label"]),a(m,{label:e(t)("reply"),name:"/channel/wechat/reply"},null,8,["label"])]),_:1},8,["modelValue"]),n("div",ae,[n("h3",se,o(e(t)("wechatInlet")),1),a(T,null,{default:s(()=>[a(g,{span:20},{default:s(()=>[a(V,{class:"!mt-[10px]",active:3,direction:"vertical"},{default:s(()=>[a(x,null,{title:s(()=>[n("p",ne,o(e(t)("wechatAttestation")),1)]),description:s(()=>[n("span",oe,o(e(t)("wechatAttestation1")),1),n("div",le,[a(i,{type:"primary",onClick:c[1]||(c[1]=p=>E("https://mp.weixin.qq.com/"))},{default:s(()=>[r(o(e(t)("clickAccess")),1)]),_:1})])]),_:1}),a(x,null,{title:s(()=>[n("p",ce,o(e(t)("wechatSetting")),1)]),description:s(()=>[n("span",ie,o(e(t)("wechatSetting1")),1),n("div",pe,[v.value.app_id&&v.value.app_secret?(w(),y(U,{key:0},[a(i,{type:"primary",onClick:c[2]||(c[2]=p=>e(_).push("/channel/wechat/config"))},{default:s(()=>[r(o(f.value.app_id?e(t)("seeConfig"):e(t)("clickSetting")),1)]),_:1}),a(i,{type:"primary",plain:"",onClick:S},{default:s(()=>[r(o(f.value.is_authorization?e(t)("refreshAuth"):e(t)("authWechat")),1)]),_:1})],64)):(w(),z(i,{key:1,type:"primary",onClick:c[3]||(c[3]=p=>e(_).push("/channel/wechat/config"))},{default:s(()=>[r(o(e(t)("clickSetting")),1)]),_:1}))])]),_:1}),a(x,null,{title:s(()=>[n("p",re,o(e(t)("wechatAccess")),1)]),description:s(()=>[n("span",_e,o(e(t)("wechatAccess")),1),n("div",de,[a(i,{type:"primary",plain:"",onClick:c[4]||(c[4]=p=>e(_).push("/channel/wechat/course"))},{default:s(()=>[r(o(e(t)("releaseCourse")),1)]),_:1})])]),_:1})]),_:1})]),_:1}),a(g,{span:4},{default:s(()=>[n("div",me,[a(N,{class:"w-[180px] h-[180px]",src:d.value?e(L)(d.value):""},{error:s(()=>[n("div",ue,[n("span",null,o(d.value?e(t)("fileErr"):e(t)("emptyQrCode")),1)])]),_:1},8,["src"])]),n("div",he,[n("p",fe,o(e(t)("clickAccess2")),1)])]),_:1})]),_:1})])]),_:1})])}}});export{Be as default};
import{d as $,k as q,u as j,r as u,aZ as F,b6 as I,o as R,h as w,c as y,e as a,w as s,a as n,t as o,f as e,s as t,i as r,F as U,v as z,B as L,aH as M,aI as D,E as G,a_ as H,a$ as K,b0 as P,K as Q,b1 as Z,a8 as J}from"./index-69eae4f0.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import{g as O}from"./wechat-3cea9b68.js";import{a as X}from"./wxoplatform-871d008b.js";const Y={class:"main-container"},ee={class:"flex justify-between items-center"},te={class:"text-page-title"},ae={class:"p-[20px]"},se={class:"panel-title !text-sm"},ne={class:"text-[14px] font-[700]"},oe={class:"text-[#999]"},le={class:"mt-[20px] mb-[40px] h-[32px]"},ce={class:"text-[14px] font-[700]"},ie={class:"text-[#999]"},pe={class:"mt-[20px] mb-[40px] h-[32px]"},re={class:"text-[14px] font-[700]"},_e={class:"text-[#999]"},de={class:"mt-[20px] mb-[40px] h-[32px]"},me={class:"flex justify-center"},ue={class:"w-[100%] h-[100%] flex items-center justify-center bg-[#f5f7fa]"},he={class:"mt-[22px] text-center"},fe={class:"text-[12px]"},Be=$({__name:"access",setup(ve){const k=q(),_=j(),C=k.meta.title,h=u("/channel/wechat"),d=u(""),f=u({}),v=u({}),b=async()=>{await O().then(({data:l})=>{f.value=l,d.value=l.qr_code})};F(async()=>{await b(),await I().then(({data:l})=>{v.value=l}),document.addEventListener("visibilitychange",()=>{document.visibilityState==="visible"&&b()})}),R(()=>{document.removeEventListener("visibilitychange",()=>{})});const E=l=>{window.open(l,"_blank")},A=l=>{_.push({path:h.value})},S=()=>{X().then(({data:l})=>{window.open(l)})};return(l,c)=>{const m=M,B=D,i=G,x=H,V=K,g=P,N=Q,T=Z,W=J;return w(),y("div",Y,[a(W,{class:"card !border-none",shadow:"never"},{default:s(()=>[n("div",ee,[n("span",te,o(e(C)),1)]),a(B,{modelValue:h.value,"onUpdate:modelValue":c[0]||(c[0]=p=>h.value=p),class:"my-[20px]",onTabChange:A},{default:s(()=>[a(m,{label:e(t)("wechatAccessFlow"),name:"/channel/wechat"},null,8,["label"]),a(m,{label:e(t)("customMenu"),name:"/channel/wechat/menu"},null,8,["label"]),a(m,{label:e(t)("wechatTemplate"),name:"/channel/wechat/message"},null,8,["label"]),a(m,{label:e(t)("reply"),name:"/channel/wechat/reply"},null,8,["label"])]),_:1},8,["modelValue"]),n("div",ae,[n("h3",se,o(e(t)("wechatInlet")),1),a(T,null,{default:s(()=>[a(g,{span:20},{default:s(()=>[a(V,{class:"!mt-[10px]",active:3,direction:"vertical"},{default:s(()=>[a(x,null,{title:s(()=>[n("p",ne,o(e(t)("wechatAttestation")),1)]),description:s(()=>[n("span",oe,o(e(t)("wechatAttestation1")),1),n("div",le,[a(i,{type:"primary",onClick:c[1]||(c[1]=p=>E("https://mp.weixin.qq.com/"))},{default:s(()=>[r(o(e(t)("clickAccess")),1)]),_:1})])]),_:1}),a(x,null,{title:s(()=>[n("p",ce,o(e(t)("wechatSetting")),1)]),description:s(()=>[n("span",ie,o(e(t)("wechatSetting1")),1),n("div",pe,[v.value.app_id&&v.value.app_secret?(w(),y(U,{key:0},[a(i,{type:"primary",onClick:c[2]||(c[2]=p=>e(_).push("/channel/wechat/config"))},{default:s(()=>[r(o(f.value.app_id?e(t)("seeConfig"):e(t)("clickSetting")),1)]),_:1}),a(i,{type:"primary",plain:"",onClick:S},{default:s(()=>[r(o(f.value.is_authorization?e(t)("refreshAuth"):e(t)("authWechat")),1)]),_:1})],64)):(w(),z(i,{key:1,type:"primary",onClick:c[3]||(c[3]=p=>e(_).push("/channel/wechat/config"))},{default:s(()=>[r(o(e(t)("clickSetting")),1)]),_:1}))])]),_:1}),a(x,null,{title:s(()=>[n("p",re,o(e(t)("wechatAccess")),1)]),description:s(()=>[n("span",_e,o(e(t)("wechatAccess")),1),n("div",de,[a(i,{type:"primary",plain:"",onClick:c[4]||(c[4]=p=>e(_).push("/channel/wechat/course"))},{default:s(()=>[r(o(e(t)("releaseCourse")),1)]),_:1})])]),_:1})]),_:1})]),_:1}),a(g,{span:4},{default:s(()=>[n("div",me,[a(N,{class:"w-[180px] h-[180px]",src:d.value?e(L)(d.value):""},{error:s(()=>[n("div",ue,[n("span",null,o(d.value?e(t)("fileErr"):e(t)("emptyQrCode")),1)])]),_:1},8,["src"])]),n("div",he,[n("p",fe,o(e(t)("clickAccess2")),1)])]),_:1})]),_:1})])]),_:1})])}}});export{Be as default};

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1 +1 @@
import{_ as o}from"./add-member.vue_vue_type_script_setup_true_lang-0d836f83.js";import"./index-38aa4eb6.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-form-item-4ed993c7.js";/* empty css */import"./member-d83c7f22.js";export{o as default};
import{_ as o}from"./add-member.vue_vue_type_script_setup_true_lang-b0fb02e8.js";import"./index-69eae4f0.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-form-item-4ed993c7.js";/* empty css */import"./member-204d2223.js";export{o as default};

View File

@ -1 +1 @@
import{d as I,r as m,q as L,m as R,s as o,h as N,v as M,w as d,a as j,e as s,i as k,t as C,f as t,Z as z,bY as A,L as O,M as T,N as Z,E as K,V as S,a3 as Y}from"./index-38aa4eb6.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-form-item-4ed993c7.js";/* empty css */import{p as G,z as J,A as Q}from"./member-d83c7f22.js";const W={class:"dialog-footer"},me=I({__name:"add-member",emits:["complete"],setup(X,{expose:$,emit:x}){const p=m(!1),i=m(!1),f=m(!1);let b="",c="";const w=m(!0),v=m(!0),g=m(!0),_={member_id:"",nickname:"",member_no:"",init_member_no:"",mobile:"",password:"",password_copy:""},r=L({..._}),y=m(),P=R(()=>({member_no:[{required:!0,message:o("memberNoPlaceholder"),trigger:"blur"},{validator:B,trigger:"blur"}],mobile:[{required:!0,message:o("mobilePlaceholder"),trigger:"blur"},{validator:D,trigger:"blur"}],password:[{required:!0,message:o("passwordPlaceholder"),trigger:"blur"}],password_copy:[{required:!0,message:o("passwordPlaceholder"),trigger:"blur"},{validator:E,trigger:"blur"}]})),D=(n,e,a)=>{e&&!/^1[3-9]\d{9}$/.test(e)?a(new Error(o("mobileHint"))):a()},E=(n,e,a)=>{e!=r.password?a(o("doubleCipherHint")):a()},B=(n,e,a)=>{e&&!/^[0-9a-zA-Z]*$/g.test(e)?a(new Error(o("memberNoHint"))):a()},U=async()=>{await J().then(n=>{c=n.data}).catch(()=>{})},q=async n=>{if(i.value||!n)return;const e=Q;await n.validate(async a=>{if(a){if(i.value=!0,f.value)return;f.value=!0,e(r).then(V=>{i.value=!1,f.value=!1,p.value=!1,x("complete")}).catch(()=>{i.value=!1,f.value=!1})}})};return $({showDialog:p,setFormData:async(n=null)=>{if(i.value=!0,Object.assign(r,_),b=o("addMember"),n){b=o("updateMember");const e=await(await G(n.member_id)).data;e&&Object.keys(r).forEach(a=>{e[a]!=null&&(r[a]=e[a])})}else await U(),r.member_no=c,r.init_member_no=c;i.value=!1}}),(n,e)=>{const a=O,u=T,V=Z,h=K,F=S,H=Y;return N(),M(F,{modelValue:p.value,"onUpdate:modelValue":e[14]||(e[14]=l=>p.value=l),title:t(b),width:"500px","destroy-on-close":!0},{footer:d(()=>[j("span",W,[s(h,{onClick:e[12]||(e[12]=l=>p.value=!1)},{default:d(()=>[k(C(t(o)("cancel")),1)]),_:1}),s(h,{type:"primary",loading:i.value,onClick:e[13]||(e[13]=l=>q(y.value))},{default:d(()=>[k(C(t(o)("confirm")),1)]),_:1},8,["loading"])])]),default:d(()=>[z((N(),M(V,{model:r,"label-width":"90px",ref_key:"formRef",ref:y,rules:t(P),class:"page-form"},{default:d(()=>[s(u,{label:t(o)("memberNo"),prop:"member_no"},{default:d(()=>[s(a,{modelValue:r.member_no,"onUpdate:modelValue":e[0]||(e[0]=l=>r.member_no=l),modelModifiers:{trim:!0},clearable:"",maxlength:"20",placeholder:t(o)("memberNoPlaceholder"),class:"input-width"},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),s(u,{label:t(o)("mobile"),prop:"mobile"},{default:d(()=>[s(a,{modelValue:r.mobile,"onUpdate:modelValue":e[1]||(e[1]=l=>r.mobile=l),modelModifiers:{trim:!0},clearable:"",placeholder:t(o)("mobilePlaceholder"),maxlength:"11",onKeyup:e[2]||(e[2]=l=>t(A)(l)),class:"input-width"},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),s(u,{label:t(o)("nickname")},{default:d(()=>[s(a,{modelValue:r.nickname,"onUpdate:modelValue":e[3]||(e[3]=l=>r.nickname=l),modelModifiers:{trim:!0},clearable:"",placeholder:t(o)("nickNamePlaceholder"),class:"input-width",maxlength:"10","show-word-limit":"",readonly:w.value,onClick:e[4]||(e[4]=l=>w.value=!1),onBlur:e[5]||(e[5]=l=>w.value=!0)},null,8,["modelValue","placeholder","readonly"])]),_:1},8,["label"]),s(u,{label:t(o)("password"),prop:"password"},{default:d(()=>[s(a,{modelValue:r.password,"onUpdate:modelValue":e[6]||(e[6]=l=>r.password=l),modelModifiers:{trim:!0},type:"password",placeholder:t(o)("passwordPlaceholder"),clearable:"",class:"input-width","show-password":!0,readonly:v.value,onClick:e[7]||(e[7]=l=>v.value=!1),onBlur:e[8]||(e[8]=l=>v.value=!0)},null,8,["modelValue","placeholder","readonly"])]),_:1},8,["label"]),s(u,{label:t(o)("passwordCopy"),prop:"password_copy"},{default:d(()=>[s(a,{modelValue:r.password_copy,"onUpdate:modelValue":e[9]||(e[9]=l=>r.password_copy=l),modelModifiers:{trim:!0},type:"password",placeholder:t(o)("passwordPlaceholder"),clearable:"",class:"input-width","show-password":!0,readonly:g.value,onClick:e[10]||(e[10]=l=>g.value=!1),onBlur:e[11]||(e[11]=l=>g.value=!0)},null,8,["modelValue","placeholder","readonly"])]),_:1},8,["label"])]),_:1},8,["model","rules"])),[[H,i.value]])]),_:1},8,["modelValue","title"])}}});export{me as _};
import{d as I,r as m,q as L,m as R,s as o,h as N,v as M,w as d,a as j,e as s,i as k,t as C,f as t,Y as z,bY as A,L as O,M as T,N as Y,E as K,U as S,a2 as Z}from"./index-69eae4f0.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-form-item-4ed993c7.js";/* empty css */import{p as G,z as J,A as Q}from"./member-204d2223.js";const W={class:"dialog-footer"},me=I({__name:"add-member",emits:["complete"],setup(X,{expose:$,emit:x}){const p=m(!1),i=m(!1),f=m(!1);let b="",c="";const w=m(!0),v=m(!0),g=m(!0),_={member_id:"",nickname:"",member_no:"",init_member_no:"",mobile:"",password:"",password_copy:""},r=L({..._}),y=m(),P=R(()=>({member_no:[{required:!0,message:o("memberNoPlaceholder"),trigger:"blur"},{validator:B,trigger:"blur"}],mobile:[{required:!0,message:o("mobilePlaceholder"),trigger:"blur"},{validator:D,trigger:"blur"}],password:[{required:!0,message:o("passwordPlaceholder"),trigger:"blur"}],password_copy:[{required:!0,message:o("passwordPlaceholder"),trigger:"blur"},{validator:E,trigger:"blur"}]})),D=(n,e,a)=>{e&&!/^1[3-9]\d{9}$/.test(e)?a(new Error(o("mobileHint"))):a()},E=(n,e,a)=>{e!=r.password?a(o("doubleCipherHint")):a()},B=(n,e,a)=>{e&&!/^[0-9a-zA-Z]*$/g.test(e)?a(new Error(o("memberNoHint"))):a()},U=async()=>{await J().then(n=>{c=n.data}).catch(()=>{})},q=async n=>{if(i.value||!n)return;const e=Q;await n.validate(async a=>{if(a){if(i.value=!0,f.value)return;f.value=!0,e(r).then(V=>{i.value=!1,f.value=!1,p.value=!1,x("complete")}).catch(()=>{i.value=!1,f.value=!1})}})};return $({showDialog:p,setFormData:async(n=null)=>{if(i.value=!0,Object.assign(r,_),b=o("addMember"),n){b=o("updateMember");const e=await(await G(n.member_id)).data;e&&Object.keys(r).forEach(a=>{e[a]!=null&&(r[a]=e[a])})}else await U(),r.member_no=c,r.init_member_no=c;i.value=!1}}),(n,e)=>{const a=O,u=T,V=Y,h=K,F=S,H=Z;return N(),M(F,{modelValue:p.value,"onUpdate:modelValue":e[14]||(e[14]=l=>p.value=l),title:t(b),width:"500px","destroy-on-close":!0},{footer:d(()=>[j("span",W,[s(h,{onClick:e[12]||(e[12]=l=>p.value=!1)},{default:d(()=>[k(C(t(o)("cancel")),1)]),_:1}),s(h,{type:"primary",loading:i.value,onClick:e[13]||(e[13]=l=>q(y.value))},{default:d(()=>[k(C(t(o)("confirm")),1)]),_:1},8,["loading"])])]),default:d(()=>[z((N(),M(V,{model:r,"label-width":"90px",ref_key:"formRef",ref:y,rules:t(P),class:"page-form"},{default:d(()=>[s(u,{label:t(o)("memberNo"),prop:"member_no"},{default:d(()=>[s(a,{modelValue:r.member_no,"onUpdate:modelValue":e[0]||(e[0]=l=>r.member_no=l),modelModifiers:{trim:!0},clearable:"",maxlength:"20",placeholder:t(o)("memberNoPlaceholder"),class:"input-width"},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),s(u,{label:t(o)("mobile"),prop:"mobile"},{default:d(()=>[s(a,{modelValue:r.mobile,"onUpdate:modelValue":e[1]||(e[1]=l=>r.mobile=l),modelModifiers:{trim:!0},clearable:"",placeholder:t(o)("mobilePlaceholder"),maxlength:"11",onKeyup:e[2]||(e[2]=l=>t(A)(l)),class:"input-width"},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),s(u,{label:t(o)("nickname")},{default:d(()=>[s(a,{modelValue:r.nickname,"onUpdate:modelValue":e[3]||(e[3]=l=>r.nickname=l),modelModifiers:{trim:!0},clearable:"",placeholder:t(o)("nickNamePlaceholder"),class:"input-width",maxlength:"10","show-word-limit":"",readonly:w.value,onClick:e[4]||(e[4]=l=>w.value=!1),onBlur:e[5]||(e[5]=l=>w.value=!0)},null,8,["modelValue","placeholder","readonly"])]),_:1},8,["label"]),s(u,{label:t(o)("password"),prop:"password"},{default:d(()=>[s(a,{modelValue:r.password,"onUpdate:modelValue":e[6]||(e[6]=l=>r.password=l),modelModifiers:{trim:!0},type:"password",placeholder:t(o)("passwordPlaceholder"),clearable:"",class:"input-width","show-password":!0,readonly:v.value,onClick:e[7]||(e[7]=l=>v.value=!1),onBlur:e[8]||(e[8]=l=>v.value=!0)},null,8,["modelValue","placeholder","readonly"])]),_:1},8,["label"]),s(u,{label:t(o)("passwordCopy"),prop:"password_copy"},{default:d(()=>[s(a,{modelValue:r.password_copy,"onUpdate:modelValue":e[9]||(e[9]=l=>r.password_copy=l),modelModifiers:{trim:!0},type:"password",placeholder:t(o)("passwordPlaceholder"),clearable:"",class:"input-width","show-password":!0,readonly:g.value,onClick:e[10]||(e[10]=l=>g.value=!1),onBlur:e[11]||(e[11]=l=>g.value=!0)},null,8,["modelValue","placeholder","readonly"])]),_:1},8,["label"])]),_:1},8,["model","rules"])),[[H,i.value]])]),_:1},8,["modelValue","title"])}}});export{me as _};

View File

@ -1 +1 @@
import{_ as o}from"./add-table.vue_vue_type_script_setup_true_lang-d85bf56c.js";import"./index-38aa4eb6.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-tooltip-4ed993c7.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./tools-f2ea1153.js";export{o as default};
import{_ as o}from"./add-table.vue_vue_type_script_setup_true_lang-94822baa.js";import"./index-69eae4f0.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-tooltip-4ed993c7.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./tools-6a0f97ca.js";export{o as default};

View File

@ -1 +1 @@
import{d as L,u as N,r as c,q as k,m as E,h as p,v as _,w as o,a as b,Z as x,f as t,t as f,s as n,e as d,i as B,ak as z,L as q,E as F,al as P,V as U,a3 as G}from"./index-38aa4eb6.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-tooltip-4ed993c7.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import{k as I,l as M}from"./tools-f2ea1153.js";const le=L({__name:"add-table",setup(R,{expose:h}){const g=N(),m=c(!1),s=c(""),e=k({loading:!0,data:[],searchParam:{table_name:"",table_content:""}}),v=E(()=>e.data.filter(a=>!s.value||a.Name.toLowerCase().includes(s.value.toLowerCase())||a.Comment.toLowerCase().includes(s.value.toLowerCase()))),u=()=>{e.loading=!0,I().then(a=>{e.loading=!1,e.data=a.data}).catch(()=>{e.loading=!1})};u();const w=a=>{const l=a.Name;e.loading=!0,M({table_name:l}).then(i=>{e.loading=!1,m.value=!1,g.push({path:"/tools/code/edit",query:{id:i.data.id}})}).catch(()=>{e.loading=!1})};return h({showDialog:m,setFormData:async(a=null)=>{u()}}),(a,l)=>{const i=z,C=q,V=F,D=P,y=U,T=G;return p(),_(y,{modelValue:m.value,"onUpdate:modelValue":l[1]||(l[1]=r=>m.value=r),title:t(n)("addCode"),width:"800px","destroy-on-close":!0},{default:o(()=>[b("div",null,[x((p(),_(D,{data:t(v),size:"large",height:"400"},{empty:o(()=>[b("span",null,f(e.loading?"":t(n)("emptyData")),1)]),default:o(()=>[d(i,{prop:"Name",label:t(n)("tableName"),"min-width":"150"},null,8,["label"]),d(i,{prop:"Comment",label:t(n)("tableComment"),"min-width":"120"},null,8,["label"]),d(i,{align:"right","min-width":"150"},{header:o(()=>[d(C,{modelValue:s.value,"onUpdate:modelValue":l[0]||(l[0]=r=>s.value=r),modelModifiers:{trim:!0},size:"small",placeholder:t(n)("searchPlaceholder")},null,8,["modelValue","placeholder"])]),default:o(r=>[d(V,{size:"small",type:"primary",onClick:Z=>w(r.row)},{default:o(()=>[B(f(t(n)("addBtn")),1)]),_:2},1032,["onClick"])]),_:1})]),_:1},8,["data"])),[[T,e.loading]])])]),_:1},8,["modelValue","title"])}}});export{le as _};
import{d as L,u as N,r as c,q as k,m as E,h as p,v as _,w as o,a as b,Y as x,f as t,t as f,s as n,e as d,i as B,aj as z,L as U,E as q,ak as F,U as P,a2 as j}from"./index-69eae4f0.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-tooltip-4ed993c7.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import{k as G,l as I}from"./tools-6a0f97ca.js";const le=L({__name:"add-table",setup(M,{expose:h}){const g=N(),m=c(!1),s=c(""),e=k({loading:!0,data:[],searchParam:{table_name:"",table_content:""}}),v=E(()=>e.data.filter(a=>!s.value||a.Name.toLowerCase().includes(s.value.toLowerCase())||a.Comment.toLowerCase().includes(s.value.toLowerCase()))),u=()=>{e.loading=!0,G().then(a=>{e.loading=!1,e.data=a.data}).catch(()=>{e.loading=!1})};u();const w=a=>{const l=a.Name;e.loading=!0,I({table_name:l}).then(i=>{e.loading=!1,m.value=!1,g.push({path:"/tools/code/edit",query:{id:i.data.id}})}).catch(()=>{e.loading=!1})};return h({showDialog:m,setFormData:async(a=null)=>{u()}}),(a,l)=>{const i=z,C=U,D=q,V=F,y=P,T=j;return p(),_(y,{modelValue:m.value,"onUpdate:modelValue":l[1]||(l[1]=r=>m.value=r),title:t(n)("addCode"),width:"800px","destroy-on-close":!0},{default:o(()=>[b("div",null,[x((p(),_(V,{data:t(v),size:"large",height:"400"},{empty:o(()=>[b("span",null,f(e.loading?"":t(n)("emptyData")),1)]),default:o(()=>[d(i,{prop:"Name",label:t(n)("tableName"),"min-width":"150"},null,8,["label"]),d(i,{prop:"Comment",label:t(n)("tableComment"),"min-width":"120"},null,8,["label"]),d(i,{align:"right","min-width":"150"},{header:o(()=>[d(C,{modelValue:s.value,"onUpdate:modelValue":l[0]||(l[0]=r=>s.value=r),modelModifiers:{trim:!0},size:"small",placeholder:t(n)("searchPlaceholder")},null,8,["modelValue","placeholder"])]),default:o(r=>[d(D,{size:"small",type:"primary",onClick:S=>w(r.row)},{default:o(()=>[B(f(t(n)("addBtn")),1)]),_:2},1032,["onClick"])]),_:1})]),_:1},8,["data"])),[[T,e.loading]])])]),_:1},8,["modelValue","title"])}}});export{le as _};

View File

@ -1 +1 @@
import{_ as e}from"./add-theme.vue_vue_type_script_setup_true_lang-c432bd42.js";const o=Object.freeze(Object.defineProperty({__proto__:null,default:e},Symbol.toStringTag,{value:"Module"}));export{o as _};
import{_ as e}from"./add-theme.vue_vue_type_script_setup_true_lang-2000a85f.js";const o=Object.freeze(Object.defineProperty({__proto__:null,default:e},Symbol.toStringTag,{value:"Module"}));export{o as _};

View File

@ -1 +1 @@
import{d as U,r as d,q as h,m as q,h as B,v as N,w as n,a as R,e as o,i as v,f as _,a6 as F,L as O,M as $,bJ as j,N as A,E as I,V as S}from"./index-38aa4eb6.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-form-item-4ed993c7.js";import{u as T}from"./diy-605cb92e.js";const z={class:"dialog-footer"},X=U({__name:"add-theme",emits:["confirm"],setup(J,{expose:g,emit:V}){const y=T(),s=d(!1),i=d(!1),b={title:"",label:"",value:"",tip:""};let f=[];const m=d(""),l=h({...b}),k=r=>{f=r.key,m.value="";for(const e in l)l[e]="";r.data&&Object.keys(r.data).length&&(m.value="edit",Object.keys(l).forEach((e,t)=>{l[e]=r.data[e]?r.data[e]:""})),s.value=!0},p=d(),x=q(()=>({title:[{required:!0,message:"请输入颜色名称",trigger:"blur"}],value:[{required:!0,validator:(r,e,t)=>{e?t():t("请输入颜色value值")},trigger:["blur","change"]}],label:[{required:!0,message:"请输入颜色key值",trigger:"blur"},{validator:(r,e,t)=>{const u=/^[a-zA-Z0-9-]+$/;f.indexOf(e)!=-1&&t("新增颜色key值与已存在颜色key值命名重复请修改命名"),u.test(e)?t():t("颜色key值只能输入字母、数字和连字符")},trigger:"blur"}]})),w=async r=>{var e;i.value||await((e=p.value)==null?void 0:e.validate(async t=>{i.value||(i.value=!0,t&&(i.value=!1,V("confirm",F(l)),s.value=!1))}))};return g({dialogThemeVisible:s,open:k}),(r,e)=>{const t=O,u=$,E=j,C=A,c=I,D=S;return B(),N(D,{modelValue:s.value,"onUpdate:modelValue":e[6]||(e[6]=a=>s.value=a),title:"新增颜色",width:"550px","align-center":""},{footer:n(()=>[R("div",z,[o(c,{onClick:e[4]||(e[4]=a=>s.value=!1)},{default:n(()=>[v("取消")]),_:1}),o(c,{type:"primary",onClick:e[5]||(e[5]=a=>w(p.value))},{default:n(()=>[v("保存")]),_:1})])]),default:n(()=>[o(C,{model:l,"label-width":"120px",ref_key:"formRef",ref:p,rules:_(x)},{default:n(()=>[o(u,{label:"名字",prop:"title"},{default:n(()=>[o(t,{modelValue:l.title,"onUpdate:modelValue":e[0]||(e[0]=a=>l.title=a),class:"!w-[250px]",maxlength:"7",placeholder:"请输入颜色名称"},null,8,["modelValue"])]),_:1}),o(u,{label:"颜色key值",prop:"label"},{default:n(()=>[o(t,{modelValue:l.label,"onUpdate:modelValue":e[1]||(e[1]=a=>l.label=a),class:"!w-[250px]",maxlength:"20",disabled:m.value=="edit",placeholder:"请输入颜色key值"},null,8,["modelValue","disabled"])]),_:1}),o(u,{label:"颜色value值",prop:"value"},{default:n(()=>[o(E,{modelValue:l.value,"onUpdate:modelValue":e[2]||(e[2]=a=>l.value=a),"show-alpha":"",predefine:_(y).predefineColors},null,8,["modelValue","predefine"])]),_:1}),o(u,{label:"颜色提示"},{default:n(()=>[o(t,{modelValue:l.tip,"onUpdate:modelValue":e[3]||(e[3]=a=>l.tip=a),class:"!w-[250px]",placeholder:"请输入颜色提示"},null,8,["modelValue"])]),_:1})]),_:1},8,["model","rules"])]),_:1},8,["modelValue"])}}});export{X as _};
import{d as D,r as d,q as h,m as q,h as B,v as N,w as n,a as R,e as o,i as v,f as _,a5 as F,L as O,M as $,bJ as j,N as A,E as I,U as S}from"./index-69eae4f0.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-form-item-4ed993c7.js";import{u as T}from"./diy-36140a2a.js";const z={class:"dialog-footer"},X=D({__name:"add-theme",emits:["confirm"],setup(J,{expose:g,emit:y}){const V=T(),s=d(!1),i=d(!1),b={title:"",label:"",value:"",tip:""};let f=[];const m=d(""),l=h({...b}),k=r=>{f=r.key,m.value="";for(const e in l)l[e]="";r.data&&Object.keys(r.data).length&&(m.value="edit",Object.keys(l).forEach((e,t)=>{l[e]=r.data[e]?r.data[e]:""})),s.value=!0},p=d(),x=q(()=>({title:[{required:!0,message:"请输入颜色名称",trigger:"blur"}],value:[{required:!0,validator:(r,e,t)=>{e?t():t("请输入颜色value值")},trigger:["blur","change"]}],label:[{required:!0,message:"请输入颜色key值",trigger:"blur"},{validator:(r,e,t)=>{const u=/^[a-zA-Z0-9-]+$/;f.indexOf(e)!=-1&&t("新增颜色key值与已存在颜色key值命名重复请修改命名"),u.test(e)?t():t("颜色key值只能输入字母、数字和连字符")},trigger:"blur"}]})),w=async r=>{var e;i.value||await((e=p.value)==null?void 0:e.validate(async t=>{i.value||(i.value=!0,t&&(i.value=!1,y("confirm",F(l)),s.value=!1))}))};return g({dialogThemeVisible:s,open:k}),(r,e)=>{const t=O,u=$,E=j,C=A,c=I,U=S;return B(),N(U,{modelValue:s.value,"onUpdate:modelValue":e[6]||(e[6]=a=>s.value=a),title:"新增颜色",width:"550px","align-center":""},{footer:n(()=>[R("div",z,[o(c,{onClick:e[4]||(e[4]=a=>s.value=!1)},{default:n(()=>[v("取消")]),_:1}),o(c,{type:"primary",onClick:e[5]||(e[5]=a=>w(p.value))},{default:n(()=>[v("保存")]),_:1})])]),default:n(()=>[o(C,{model:l,"label-width":"120px",ref_key:"formRef",ref:p,rules:_(x)},{default:n(()=>[o(u,{label:"名字",prop:"title"},{default:n(()=>[o(t,{modelValue:l.title,"onUpdate:modelValue":e[0]||(e[0]=a=>l.title=a),class:"!w-[250px]",maxlength:"7",placeholder:"请输入颜色名称"},null,8,["modelValue"])]),_:1}),o(u,{label:"颜色key值",prop:"label"},{default:n(()=>[o(t,{modelValue:l.label,"onUpdate:modelValue":e[1]||(e[1]=a=>l.label=a),class:"!w-[250px]",maxlength:"20",disabled:m.value=="edit",placeholder:"请输入颜色key值"},null,8,["modelValue","disabled"])]),_:1}),o(u,{label:"颜色value值",prop:"value"},{default:n(()=>[o(E,{modelValue:l.value,"onUpdate:modelValue":e[2]||(e[2]=a=>l.value=a),"show-alpha":"",predefine:_(V).predefineColors},null,8,["modelValue","predefine"])]),_:1}),o(u,{label:"颜色提示"},{default:n(()=>[o(t,{modelValue:l.tip,"onUpdate:modelValue":e[3]||(e[3]=a=>l.tip=a),class:"!w-[250px]",placeholder:"请输入颜色提示"},null,8,["modelValue"])]),_:1})]),_:1},8,["model","rules"])]),_:1},8,["modelValue"])}}});export{X as _};

View File

@ -1 +0,0 @@
import{P as t}from"./index-38aa4eb6.js";function d(n){return t.get("addon/local",n)}function o(n){return t.post(`addon/install/${n.addon}`,n)}function a(n){return t.post(`addon/cloudinstall/${n.addon}`,n)}function s(n){return t.post(`addon/uninstall/${n.addon}`,n,{showSuccessMessage:!0})}function l(n){return t.get(`addon/install/check/${n}`)}function u(){return t.get("addon/installtask")}function i(n){return t.get(`addon/cloudinstall/${n}`)}function r(n){return t.get(`addon/uninstall/check/${n}`)}function c(n){return t.put(`addon/install/cancel/${n}`,{},{showErrorMessage:!1})}function g(){return t.get("addon/list/install")}function f(){return t.get("home/site/group/app_list")}function p(){return t.get("addon/init")}function A(){return t.get("app/index")}function h(){return t.get("index/adv_list")}export{g as a,A as b,h as c,p as d,d as e,u as f,f as g,a as h,o as i,i as j,r as k,c as l,l as p,s as u};

View File

@ -0,0 +1 @@
import{b5 as t}from"./index-69eae4f0.js";function d(n){return t.get("addon/local",n)}function o(n){return t.post(`addon/install/${n.addon}`,n)}function a(n){return t.post(`addon/cloudinstall/${n.addon}`,n)}function s(n){return t.post(`addon/uninstall/${n.addon}`,n,{showSuccessMessage:!0})}function l(n){return t.get(`addon/install/check/${n}`)}function u(){return t.get("addon/installtask")}function i(n){return t.get(`addon/cloudinstall/${n}`)}function r(n){return t.get(`addon/uninstall/check/${n}`)}function c(n){return t.put(`addon/install/cancel/${n}`,{},{showErrorMessage:!1})}function g(){return t.get("addon/list/install")}function f(){return t.get("home/site/group/app_list")}function p(){return t.get("addon/init")}function A(){return t.get("app/index")}function h(){return t.get("index/adv_list")}export{g as a,A as b,h as c,p as d,d as e,u as f,f as g,a as h,o as i,i as j,r as k,c as l,l as p,s as u};

View File

@ -1 +1 @@
import{d as F,k as w,r as g,q as B,h as b,c as L,Z as C,v as D,w as n,e as o,a as s,t as r,f as a,s as l,i as I,ch as k,a6 as y,ci as U,b8 as N,M as T,a9 as R,N as S,E as j,a3 as q}from"./index-38aa4eb6.js";/* empty css *//* empty css *//* empty css *//* empty css */import A from"./index-7f95eef7.js";import"./el-form-item-4ed993c7.js";/* empty css *//* empty css */import"./index.vue_vue_type_style_index_0_lang-c54b1028.js";/* empty css *//* empty css */import"./attachment-e9cc5d6c.js";import"./index.vue_vue_type_script_setup_true_lang-afbe6a00.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-tooltip-4ed993c7.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./index.vue_vue_type_script_setup_true_lang-7756177a.js";/* empty css */import"./index.vue_vue_type_script_setup_true_lang-a1d95079.js";import"./_plugin-vue_export-helper-c27b6911.js";import"./sortable.esm-be94e56d.js";const M={class:"main-container"},O={class:"text-[16px] text-[#1D1F3A] font-bold mb-4"},Z={class:"panel-title !text-[14px] bg-[#F4F5F7] p-3 border-[#E6E6E6] border-solid border-b-[1px]"},$={class:"form-tip"},z={class:"box-card mt-[20px] !border-none"},G={class:"panel-title !text-[14px] bg-[#F4F5F7] p-3 border-[#E6E6E6] border-solid border-b-[1px]"},H={class:"form-tip"},J={class:"text-[12px] text-[#a9a9a9]"},K={class:"text-[12px] text-[#a9a9a9]"},P={class:"fixed-footer-wrap"},Q={class:"fixed-footer"},Ne=F({__name:"adminlogin",setup(W){const f=w().meta.title,d=g(!0),u=g(),t=B({is_captcha:0,is_site_captcha:0,bg:"",site_bg:"",site_login_logo:"",site_login_bg_img:""});(async()=>{const p=await(await k()).data;Object.keys(t).forEach(e=>{t[e]=p[e]}),d.value=!1})();const v=async p=>{d.value||!p||await p.validate(e=>{if(e){const _=y(t);U(_).then(()=>{d.value=!1}).catch(()=>{d.value=!1})}})};return(p,e)=>{const _=N,m=T,c=A,x=R,V=S,h=j,E=q;return b(),L("div",M,[C((b(),D(V,{class:"page-form",model:t,"label-width":"150px",ref_key:"ruleFormRef",ref:u},{default:n(()=>[o(x,{class:"box-card !border-none",shadow:"never"},{default:n(()=>[s("h3",O,r(a(f)),1),s("h3",Z,r(a(l)("admin")),1),o(m,{label:a(l)("isCaptcha")},{default:n(()=>[o(_,{modelValue:t.is_captcha,"onUpdate:modelValue":e[0]||(e[0]=i=>t.is_captcha=i),"active-value":1,"inactive-value":0},null,8,["modelValue"])]),_:1},8,["label"]),o(m,{label:a(l)("bgImg")},{default:n(()=>[o(c,{modelValue:t.bg,"onUpdate:modelValue":e[1]||(e[1]=i=>t.bg=i)},null,8,["modelValue"]),s("div",$,r(a(l)("adminBgImgTip")),1)]),_:1},8,["label"]),s("div",z,[s("h3",G,r(a(l)("site")),1),o(m,{label:a(l)("isCaptcha")},{default:n(()=>[o(_,{modelValue:t.is_site_captcha,"onUpdate:modelValue":e[2]||(e[2]=i=>t.is_site_captcha=i),"active-value":1,"inactive-value":0},null,8,["modelValue"])]),_:1},8,["label"]),o(m,{label:a(l)("bgImg")},{default:n(()=>[o(c,{modelValue:t.site_bg,"onUpdate:modelValue":e[3]||(e[3]=i=>t.site_bg=i)},null,8,["modelValue"]),s("div",H,r(a(l)("siteBgImgTip")),1)]),_:1},8,["label"]),o(m,{label:a(l)("siteLoginLogo")},{default:n(()=>[s("div",null,[o(c,{modelValue:t.site_login_logo,"onUpdate:modelValue":e[4]||(e[4]=i=>t.site_login_logo=i)},null,8,["modelValue"]),s("p",J,r(a(l)("siteLoginLogoTips")),1)])]),_:1},8,["label"]),o(m,{label:a(l)("siteLoginBgImg")},{default:n(()=>[s("div",null,[o(c,{modelValue:t.site_login_bg_img,"onUpdate:modelValue":e[5]||(e[5]=i=>t.site_login_bg_img=i)},null,8,["modelValue"]),s("p",K,r(a(l)("siteLoginBgImgTips")),1)])]),_:1},8,["label"])])]),_:1})]),_:1},8,["model"])),[[E,d.value]]),s("div",P,[s("div",Q,[o(h,{type:"primary",onClick:e[6]||(e[6]=i=>v(u.value))},{default:n(()=>[I(r(a(l)("save")),1)]),_:1})])])])}}});export{Ne as default};
import{d as F,k as w,r as g,q as B,h as b,c as L,Y as C,v as D,w as n,e as o,a as s,t as r,f as a,s as l,i as I,ch as k,a5 as y,ci as U,b8 as N,M as T,a8 as R,N as S,E as j,a2 as q}from"./index-69eae4f0.js";/* empty css *//* empty css *//* empty css *//* empty css */import A from"./index-433a9310.js";import"./el-form-item-4ed993c7.js";/* empty css *//* empty css */import"./index.vue_vue_type_style_index_0_lang-b671f223.js";/* empty css *//* empty css */import"./attachment-edcd969d.js";import"./index.vue_vue_type_script_setup_true_lang-664a6e1b.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-tooltip-4ed993c7.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./index.vue_vue_type_script_setup_true_lang-50a3d7f7.js";/* empty css */import"./index.vue_vue_type_script_setup_true_lang-895d2fd8.js";import"./_plugin-vue_export-helper-c27b6911.js";import"./sortable.esm-be94e56d.js";const M={class:"main-container"},O={class:"text-[16px] text-[#1D1F3A] font-bold mb-4"},Y={class:"panel-title !text-[14px] bg-[#F4F5F7] p-3 border-[#E6E6E6] border-solid border-b-[1px]"},$={class:"form-tip"},z={class:"box-card mt-[20px] !border-none"},G={class:"panel-title !text-[14px] bg-[#F4F5F7] p-3 border-[#E6E6E6] border-solid border-b-[1px]"},H={class:"form-tip"},J={class:"text-[12px] text-[#a9a9a9]"},K={class:"text-[12px] text-[#a9a9a9]"},P={class:"fixed-footer-wrap"},Q={class:"fixed-footer"},Ne=F({__name:"adminlogin",setup(W){const f=w().meta.title,d=g(!0),u=g(),t=B({is_captcha:0,is_site_captcha:0,bg:"",site_bg:"",site_login_logo:"",site_login_bg_img:""});(async()=>{const p=await(await k()).data;Object.keys(t).forEach(e=>{t[e]=p[e]}),d.value=!1})();const v=async p=>{d.value||!p||await p.validate(e=>{if(e){const _=y(t);U(_).then(()=>{d.value=!1}).catch(()=>{d.value=!1})}})};return(p,e)=>{const _=N,m=T,c=A,x=R,V=S,h=j,E=q;return b(),L("div",M,[C((b(),D(V,{class:"page-form",model:t,"label-width":"150px",ref_key:"ruleFormRef",ref:u},{default:n(()=>[o(x,{class:"box-card !border-none",shadow:"never"},{default:n(()=>[s("h3",O,r(a(f)),1),s("h3",Y,r(a(l)("admin")),1),o(m,{label:a(l)("isCaptcha")},{default:n(()=>[o(_,{modelValue:t.is_captcha,"onUpdate:modelValue":e[0]||(e[0]=i=>t.is_captcha=i),"active-value":1,"inactive-value":0},null,8,["modelValue"])]),_:1},8,["label"]),o(m,{label:a(l)("bgImg")},{default:n(()=>[o(c,{modelValue:t.bg,"onUpdate:modelValue":e[1]||(e[1]=i=>t.bg=i)},null,8,["modelValue"]),s("div",$,r(a(l)("adminBgImgTip")),1)]),_:1},8,["label"]),s("div",z,[s("h3",G,r(a(l)("site")),1),o(m,{label:a(l)("isCaptcha")},{default:n(()=>[o(_,{modelValue:t.is_site_captcha,"onUpdate:modelValue":e[2]||(e[2]=i=>t.is_site_captcha=i),"active-value":1,"inactive-value":0},null,8,["modelValue"])]),_:1},8,["label"]),o(m,{label:a(l)("bgImg")},{default:n(()=>[o(c,{modelValue:t.site_bg,"onUpdate:modelValue":e[3]||(e[3]=i=>t.site_bg=i)},null,8,["modelValue"]),s("div",H,r(a(l)("siteBgImgTip")),1)]),_:1},8,["label"]),o(m,{label:a(l)("siteLoginLogo")},{default:n(()=>[s("div",null,[o(c,{modelValue:t.site_login_logo,"onUpdate:modelValue":e[4]||(e[4]=i=>t.site_login_logo=i)},null,8,["modelValue"]),s("p",J,r(a(l)("siteLoginLogoTips")),1)])]),_:1},8,["label"]),o(m,{label:a(l)("siteLoginBgImg")},{default:n(()=>[s("div",null,[o(c,{modelValue:t.site_login_bg_img,"onUpdate:modelValue":e[5]||(e[5]=i=>t.site_login_bg_img=i)},null,8,["modelValue"]),s("p",K,r(a(l)("siteLoginBgImgTips")),1)])]),_:1},8,["label"])])]),_:1})]),_:1},8,["model"])),[[E,d.value]]),s("div",P,[s("div",Q,[o(h,{type:"primary",onClick:e[6]||(e[6]=i=>v(u.value))},{default:n(()=>[I(r(a(l)("save")),1)]),_:1})])])])}}});export{Ne as default};

View File

@ -1 +1 @@
import{d as w,k,q as y,u as x,h as m,c as E,e as a,w as o,a as i,t as r,f as t,Z as C,v as B,s as n,i as p,cj as N,ak as T,E as D,al as L,a9 as j,a3 as A}from"./index-38aa4eb6.js";/* empty css *//* empty css *//* empty css *//* empty css */import"./el-tooltip-4ed993c7.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css */const V={class:"main-container"},R={class:"flex justify-between items-center"},$={class:"text-page-title"},q={class:"mt-[20px]"},X=w({__name:"agreement",setup(z){const _=k().meta.title,e=y({loading:!0,data:[]});(()=>{e.loading=!0,e.data=[],N().then(l=>{Object.keys(l.data).forEach(d=>e.data.push(l.data[d])),e.loading=!1}).catch(()=>{e.loading=!1})})();const u=x(),g=l=>{u.push(`/setting/agreement/edit?key=${l.agreement_key}`)};return(l,d)=>{const s=T,h=D,f=L,b=j,v=A;return m(),E("div",V,[a(b,{class:"box-card !border-none",shadow:"never"},{default:o(()=>[i("div",R,[i("span",$,r(t(_)),1)]),i("div",q,[C((m(),B(f,{data:e.data,size:"large"},{empty:o(()=>[i("span",null,r(e.loading?"":t(n)("emptyData")),1)]),default:o(()=>[a(s,{prop:"type_name",label:t(n)("typeName"),"min-width":"100","show-overflow-tooltip":!0},null,8,["label"]),a(s,{prop:"title",label:t(n)("title"),"min-width":"100","show-overflow-tooltip":!0},null,8,["label"]),a(s,{label:t(n)("updateTime"),"min-width":"180",align:"center"},{default:o(({row:c})=>[p(r(c.update_time||""),1)]),_:1},8,["label"]),a(s,{label:t(n)("operation"),align:"right",fixed:"right",width:"100"},{default:o(({row:c})=>[a(h,{type:"primary",link:"",onClick:Z=>g(c)},{default:o(()=>[p(r(t(n)("config")),1)]),_:2},1032,["onClick"])]),_:1},8,["label"])]),_:1},8,["data"])),[[v,e.loading]])])]),_:1})])}}});export{X as default};
import{d as w,k,q as y,u as x,h as m,c as E,e as a,w as o,a as i,t as r,f as t,Y as C,v as B,s as n,i as p,cj as N,aj as T,E as j,ak as D,a8 as L,a2 as A}from"./index-69eae4f0.js";/* empty css *//* empty css *//* empty css *//* empty css */import"./el-tooltip-4ed993c7.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css */const V={class:"main-container"},R={class:"flex justify-between items-center"},$={class:"text-page-title"},q={class:"mt-[20px]"},X=w({__name:"agreement",setup(z){const _=k().meta.title,e=y({loading:!0,data:[]});(()=>{e.loading=!0,e.data=[],N().then(l=>{Object.keys(l.data).forEach(d=>e.data.push(l.data[d])),e.loading=!1}).catch(()=>{e.loading=!1})})();const u=x(),g=l=>{u.push(`/setting/agreement/edit?key=${l.agreement_key}`)};return(l,d)=>{const s=T,h=j,f=D,b=L,v=A;return m(),E("div",V,[a(b,{class:"box-card !border-none",shadow:"never"},{default:o(()=>[i("div",R,[i("span",$,r(t(_)),1)]),i("div",q,[C((m(),B(f,{data:e.data,size:"large"},{empty:o(()=>[i("span",null,r(e.loading?"":t(n)("emptyData")),1)]),default:o(()=>[a(s,{prop:"type_name",label:t(n)("typeName"),"min-width":"100","show-overflow-tooltip":!0},null,8,["label"]),a(s,{prop:"title",label:t(n)("title"),"min-width":"100","show-overflow-tooltip":!0},null,8,["label"]),a(s,{label:t(n)("updateTime"),"min-width":"180",align:"center"},{default:o(({row:c})=>[p(r(c.update_time||""),1)]),_:1},8,["label"]),a(s,{label:t(n)("operation"),align:"right",fixed:"right",width:"100"},{default:o(({row:c})=>[a(h,{type:"primary",link:"",onClick:Y=>g(c)},{default:o(()=>[p(r(t(n)("config")),1)]),_:2},1032,["onClick"])]),_:1},8,["label"])]),_:1},8,["data"])),[[v,e.loading]])])]),_:1})])}}});export{X as default};

View File

@ -1 +1 @@
import{d as q,k as M,u as P,r as y,ck as S,q as T,m as $,s as r,h,c as I,e as a,w as s,f as n,b4 as U,Z as j,v as A,a as k,i as w,t as x,cl as L,cm as O,b5 as H,a9 as Z,L as z,M as G,N as J,E as K,a3 as Q}from"./index-38aa4eb6.js";/* empty css *//* empty css *//* empty css */import{_ as W}from"./index.vue_vue_type_script_setup_true_lang-3848f778.js";import"./el-form-item-4ed993c7.js";/* empty css *//* empty css *//* empty css */import"./index.vue_vue_type_style_index_0_lang-c54b1028.js";/* empty css *//* empty css */import"./attachment-e9cc5d6c.js";import"./index.vue_vue_type_script_setup_true_lang-afbe6a00.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-tooltip-4ed993c7.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./index.vue_vue_type_script_setup_true_lang-7756177a.js";/* empty css */import"./index.vue_vue_type_script_setup_true_lang-a1d95079.js";import"./_plugin-vue_export-helper-c27b6911.js";const X={class:"main-container"},Y={class:"fixed-footer-wrap"},ee={class:"fixed-footer"},Se=q({__name:"agreement_edit",setup(te){const d=M(),V=P(),_=d.query.key||"",i=y(!1),E=S(),B=d.meta.title,f={agreement_key:"",content:"",title:"",agreement_key_name:""},t=T({...f});i.value=!0,_&&(async(m="")=>{Object.assign(t,f);const e=await(await L(m)).data;Object.keys(t).forEach(o=>{e[o]!=null&&(t[o]=e[o])}),i.value=!1})(_);const g=y(),D=$(()=>({title:[{required:!0,message:r("titlePlaceholder"),trigger:"blur"}],content:[{required:!0,trigger:["blur","change"],validator:(m,e,o)=>{if(e==="")o(new Error(r("contentPlaceholder")));else{if(e.length<5||e.length>1e5)return o(new Error(r("contentMaxTips"))),!1;o()}}}]})),C=async m=>{i.value||!m||await m.validate(async e=>{if(e){i.value=!0;const o=t;o.key=t.agreement_key,O(o).then(c=>{i.value=!1,p()}).catch(()=>{i.value=!1})}})},p=()=>{E.removeTab(d.path),V.push({path:"/setting/agreement"})};return(m,e)=>{const o=H,c=Z,v=z,u=G,F=W,N=J,b=K,R=Q;return h(),I("div",X,[a(c,{class:"card !border-none",shadow:"never"},{default:s(()=>[a(o,{content:n(B),icon:n(U),onBack:e[0]||(e[0]=l=>p())},null,8,["content","icon"])]),_:1}),j((h(),A(c,{class:"box-card mt-[15px] !border-none",shadow:"never"},{default:s(()=>[a(N,{model:t,"label-width":"90px",ref_key:"formRef",ref:g,rules:n(D),class:"page-form"},{default:s(()=>[a(u,{label:n(r)("type")},{default:s(()=>[a(v,{modelValue:t.agreement_key_name,"onUpdate:modelValue":e[1]||(e[1]=l=>t.agreement_key_name=l),modelModifiers:{trim:!0},readonly:"",class:"input-width"},null,8,["modelValue"])]),_:1},8,["label"]),a(u,{label:n(r)("title"),prop:"title"},{default:s(()=>[a(v,{modelValue:t.title,"onUpdate:modelValue":e[2]||(e[2]=l=>t.title=l),modelModifiers:{trim:!0},clearable:"",placeholder:n(r)("titlePlaceholder"),class:"input-width",maxlength:"20"},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),a(u,{label:n(r)("content"),prop:"content"},{default:s(()=>[a(F,{modelValue:t.content,"onUpdate:modelValue":e[3]||(e[3]=l=>t.content=l)},null,8,["modelValue"])]),_:1},8,["label"])]),_:1},8,["model","rules"])]),_:1})),[[R,i.value]]),k("div",Y,[k("div",ee,[a(b,{type:"primary",onClick:e[4]||(e[4]=l=>C(g.value))},{default:s(()=>[w(x(n(r)("save")),1)]),_:1}),a(b,{onClick:e[5]||(e[5]=l=>p())},{default:s(()=>[w(x(n(r)("cancel")),1)]),_:1})])])])}}});export{Se as default};
import{d as q,k as M,u as P,r as y,ck as S,q as T,m as $,s as r,h,c as I,e as a,w as s,f as n,b3 as U,Y as j,v as A,a as k,i as w,t as x,cl as L,cm as O,b4 as H,a8 as Y,L as z,M as G,N as J,E as K,a2 as Q}from"./index-69eae4f0.js";/* empty css *//* empty css *//* empty css */import{_ as W}from"./index.vue_vue_type_script_setup_true_lang-22ce18ac.js";import"./el-form-item-4ed993c7.js";/* empty css *//* empty css *//* empty css */import"./index.vue_vue_type_style_index_0_lang-b671f223.js";/* empty css *//* empty css */import"./attachment-edcd969d.js";import"./index.vue_vue_type_script_setup_true_lang-664a6e1b.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-tooltip-4ed993c7.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./index.vue_vue_type_script_setup_true_lang-50a3d7f7.js";/* empty css */import"./index.vue_vue_type_script_setup_true_lang-895d2fd8.js";import"./_plugin-vue_export-helper-c27b6911.js";const X={class:"main-container"},Z={class:"fixed-footer-wrap"},ee={class:"fixed-footer"},Se=q({__name:"agreement_edit",setup(te){const d=M(),V=P(),_=d.query.key||"",i=y(!1),E=S(),B=d.meta.title,f={agreement_key:"",content:"",title:"",agreement_key_name:""},t=T({...f});i.value=!0,_&&(async(m="")=>{Object.assign(t,f);const e=await(await L(m)).data;Object.keys(t).forEach(o=>{e[o]!=null&&(t[o]=e[o])}),i.value=!1})(_);const g=y(),D=$(()=>({title:[{required:!0,message:r("titlePlaceholder"),trigger:"blur"}],content:[{required:!0,trigger:["blur","change"],validator:(m,e,o)=>{if(e==="")o(new Error(r("contentPlaceholder")));else{if(e.length<5||e.length>1e5)return o(new Error(r("contentMaxTips"))),!1;o()}}}]})),C=async m=>{i.value||!m||await m.validate(async e=>{if(e){i.value=!0;const o=t;o.key=t.agreement_key,O(o).then(c=>{i.value=!1,p()}).catch(()=>{i.value=!1})}})},p=()=>{E.removeTab(d.path),V.push({path:"/setting/agreement"})};return(m,e)=>{const o=H,c=Y,v=z,u=G,F=W,N=J,b=K,R=Q;return h(),I("div",X,[a(c,{class:"card !border-none",shadow:"never"},{default:s(()=>[a(o,{content:n(B),icon:n(U),onBack:e[0]||(e[0]=l=>p())},null,8,["content","icon"])]),_:1}),j((h(),A(c,{class:"box-card mt-[15px] !border-none",shadow:"never"},{default:s(()=>[a(N,{model:t,"label-width":"90px",ref_key:"formRef",ref:g,rules:n(D),class:"page-form"},{default:s(()=>[a(u,{label:n(r)("type")},{default:s(()=>[a(v,{modelValue:t.agreement_key_name,"onUpdate:modelValue":e[1]||(e[1]=l=>t.agreement_key_name=l),modelModifiers:{trim:!0},readonly:"",class:"input-width"},null,8,["modelValue"])]),_:1},8,["label"]),a(u,{label:n(r)("title"),prop:"title"},{default:s(()=>[a(v,{modelValue:t.title,"onUpdate:modelValue":e[2]||(e[2]=l=>t.title=l),modelModifiers:{trim:!0},clearable:"",placeholder:n(r)("titlePlaceholder"),class:"input-width",maxlength:"20"},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),a(u,{label:n(r)("content"),prop:"content"},{default:s(()=>[a(F,{modelValue:t.content,"onUpdate:modelValue":e[3]||(e[3]=l=>t.content=l)},null,8,["modelValue"])]),_:1},8,["label"])]),_:1},8,["model","rules"])]),_:1})),[[R,i.value]]),k("div",Z,[k("div",ee,[a(b,{type:"primary",onClick:e[4]||(e[4]=l=>C(g.value))},{default:s(()=>[w(x(n(r)("save")),1)]),_:1}),a(b,{onClick:e[5]||(e[5]=l=>p())},{default:s(()=>[w(x(n(r)("cancel")),1)]),_:1})])])])}}});export{Se as default};

View File

@ -0,0 +1 @@
import{b5 as t}from"./index-69eae4f0.js";function e(){return t.get("aliapp/config")}function p(a){return t.put("aliapp/config",a,{showSuccessMessage:!0})}function n(){return t.get("aliapp/static")}export{n as a,e as g,p as s};

View File

@ -1 +0,0 @@
import{P as t}from"./index-38aa4eb6.js";function e(){return t.get("aliapp/config")}function p(a){return t.put("aliapp/config",a,{showSuccessMessage:!0})}function n(){return t.get("aliapp/static")}export{n as a,e as g,p as s};

View File

@ -1 +0,0 @@
import{P as n}from"./index-38aa4eb6.js";function t(){return n.get("channel/app/config")}function r(e){return n.put("channel/app/config",e,{showSuccessMessage:!0})}function a(e){return n.get("channel/app/version",{params:e})}function o(e){return n.get(`channel/app/version/${e}`)}function u(){return n.get("channel/app/platfrom")}function i(e){return n.post("channel/app/version",e,{showSuccessMessage:!0})}function c(e){return n.put(`channel/app/version/${e.id}`,e,{showSuccessMessage:!0})}function p(e){return n.delete(`channel/app/version/${e.id}`)}function g(e){return n.get(`channel/app/build/log/${e}`)}function f(e){return n.put(`channel/app/version/${e}/release`,{},{showSuccessMessage:!0})}function l(e){return n.post("channel/app/generate_sing_cert",e,{showSuccessMessage:!0})}export{a,g as b,u as c,p as d,c as e,i as f,t as g,o as h,l as i,f as r,r as s};

View File

@ -0,0 +1 @@
import{b5 as n}from"./index-69eae4f0.js";function t(){return n.get("channel/app/config")}function r(e){return n.put("channel/app/config",e,{showSuccessMessage:!0})}function a(e){return n.get("channel/app/version",{params:e})}function o(e){return n.get(`channel/app/version/${e}`)}function u(){return n.get("channel/app/platfrom")}function i(e){return n.post("channel/app/version",e,{showSuccessMessage:!0})}function c(e){return n.put(`channel/app/version/${e.id}`,e,{showSuccessMessage:!0})}function p(e){return n.delete(`channel/app/version/${e.id}`)}function g(e){return n.get(`channel/app/build/log/${e}`)}function f(e){return n.put(`channel/app/version/${e}/release`,{},{showSuccessMessage:!0})}function l(e){return n.post("channel/app/generate_sing_cert",e,{showSuccessMessage:!0})}export{a,g as b,u as c,p as d,c as e,i as f,t as g,o as h,l as i,f as r,r as s};

View File

@ -1 +1 @@
import{_ as o}from"./app-version-edit.vue_vue_type_style_index_0_lang-1da6801d.js";import"./index-38aa4eb6.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./index.vue_vue_type_style_index_0_lang-a4acb467.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-form-item-4ed993c7.js";import"./app-97ec12b5.js";import"./generate-sing-cert.vue_vue_type_script_setup_true_lang-a9fc7de8.js";export{o as default};
import{_ as o}from"./app-version-edit.vue_vue_type_style_index_0_lang-93998c9d.js";import"./index-69eae4f0.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./index.vue_vue_type_style_index_0_lang-f08a4fca.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-form-item-4ed993c7.js";import"./app-c5028586.js";import"./generate-sing-cert.vue_vue_type_script_setup_true_lang-01f9dda9.js";export{o as default};

File diff suppressed because one or more lines are too long

View File

@ -1 +1 @@
import{d as I,u as V,j as M,r as y,q as N,Z as R,h as l,c as x,a as e,t as s,f as a,s as o,e as u,w as c,F as j,W as D,B as T,v as $,i as q,C as k,ca as b,H as w,E as z,K as H,ba as K,cb as O,ab as P,a3 as U,p as W,g as Z}from"./index-38aa4eb6.js";/* empty css *//* empty css *//* empty css */import"./el-tooltip-4ed993c7.js";/* empty css *//* empty css *//* empty css *//* empty css */import{_ as G}from"./apply_empty-cdca3e85.js";import{a as J}from"./addon-a1e06bf2.js";import{_ as Q}from"./_plugin-vue_export-helper-c27b6911.js";const X=""+new URL("app_store_default-c0531792.png",import.meta.url).href,h=_=>(W("data-v-8a156fb4"),_=_(),Z(),_),Y={class:"box-border pt-[68px] px-[76px] overview-top"},ee={key:0},te={class:"flex justify-between items-center"},se={class:"font-[600] text-[26px] text-[#222] leading-[37px]"},ae={class:"font-[500] text-[14px] text-[#222] leading-[20px] mt-[12px]"},oe=h(()=>e("div",{class:"mr-[9px] text-[#3F3F3F] iconfont iconxiazai01"},null,-1)),ne={class:"font-[600] text-[14px] text-[#222] leading-[20px]"},pe={class:"flex flex-wrap mt-[40px]"},ce=["onClick"],ie={class:"bg-[#F7FAFB] py-[18px] px-[24px] flex items-center app-item-head"},re=h(()=>e("div",{class:"image-slot"},[e("img",{class:"w-[40px] h-[40px] rounded-[8px]",src:X})],-1)),le={class:"py-[18px] px-[24px]"},_e={class:"font-[600] leading-[1] text-[14px] text-[#222]"},de={class:"text-[13px] text-[#6D7278] leading-[18px] mt-[6px] truncate"},xe=h(()=>e("div",{class:"w-[230px] mx-auto"},[e("img",{src:G,class:"max-w-full",alt:""})],-1)),ue={class:"flex items-center"},me=I({__name:"app_manage",setup(_){const v=V(),m=M(),n=y(!0),d=N({appList:[]}),f=y({});(()=>{n.value=!0,J().then(p=>{Object.values(p.data).forEach((t,i)=>{t.type=="app"&&d.appList.push(t)}),m.routers.forEach((t,i)=>{t.children&&t.children.length?(t.name=b(t.children),f.value[t.meta.app]=b(t.children)):f.value[t.meta.app]=t.name}),n.value=!1}).catch(()=>{n.value=!1})})();const L=p=>{w.set({key:"menuAppStorage",data:p.key}),w.set({key:"plugMenuTypeStorage",data:""});const t=m.appMenuList;t.push(p.key),m.setAppMenuList(t);const i=f.value[p.key];v.push({name:i})},g=()=>{v.push("/app_manage/app_store")};return(p,t)=>{const i=z,F=H,E=K,S=O,C=P,A=U;return R((l(),x("div",Y,[d.appList&&!n.value?(l(),x("div",ee,[e("div",te,[e("div",null,[e("div",se,s(a(o)("app")),1),e("div",ae,s(a(o)("versionInfo"))+" "+s(a(o)("currentVersion")),1)]),u(i,{onClick:g,class:"px-[15px]"},{default:c(()=>[oe,e("span",ne,s(a(o)("appStore")),1)]),_:1})]),e("div",pe,[(l(!0),x(j,null,D(d.appList,(r,B)=>(l(),x("div",{key:B,class:"app-item w-[280px] box-border !bg-[#fff] rounded-[6px] cursor-pointer mr-[20px] mb-[20px] overflow-hidden",onClick:he=>L(r)},[e("div",ie,[u(F,{class:"w-[44px] h-[44px] rounded-[8px]",src:a(T)(r.icon),fit:"contain"},{error:c(()=>[re]),_:2},1032,["src"])]),e("div",le,[e("div",_e,s(r.title),1),u(E,{class:"box-item",effect:"light",content:r.desc,placement:"bottom-start"},{default:c(()=>[e("div",de,s(r.desc),1)]),_:2},1032,["content"])])],8,ce))),128)),!d.appList.length&&!n.value?(l(),$(C,{key:0,class:"mx-auto overview-empty"},{image:c(()=>[xe]),description:c(()=>[e("p",ue,[e("span",null,s(a(o)("descriptionLeft")),1),u(S,{type:"primary",onClick:g,class:"mx-[5px]"},{default:c(()=>[q(s(a(o)("link")),1)]),_:1}),e("span",null,s(a(o)("descriptionRight")),1)])]),_:1})):k("",!0)])])):k("",!0)])),[[A,n.value]])}}});const Be=Q(me,[["__scopeId","data-v-8a156fb4"]]);export{Be as default};
import{d as I,u as V,j as M,r as y,q as N,Y as R,h as l,c as x,a as e,t as s,f as a,s as o,e as u,w as c,F as j,V as D,B as T,v as $,i as q,C as k,ca as b,H as w,E as z,K as H,ba as K,cb as O,aa as P,a2 as U,p as Y,g as G}from"./index-69eae4f0.js";/* empty css *//* empty css *//* empty css */import"./el-tooltip-4ed993c7.js";/* empty css *//* empty css *//* empty css *//* empty css */import{_ as J}from"./apply_empty-cdca3e85.js";import{a as Q}from"./addon-f5e37302.js";import{_ as W}from"./_plugin-vue_export-helper-c27b6911.js";const X=""+new URL("app_store_default-c0531792.png",import.meta.url).href,h=_=>(Y("data-v-8a156fb4"),_=_(),G(),_),Z={class:"box-border pt-[68px] px-[76px] overview-top"},ee={key:0},te={class:"flex justify-between items-center"},se={class:"font-[600] text-[26px] text-[#222] leading-[37px]"},ae={class:"font-[500] text-[14px] text-[#222] leading-[20px] mt-[12px]"},oe=h(()=>e("div",{class:"mr-[9px] text-[#3F3F3F] iconfont iconxiazai01"},null,-1)),ne={class:"font-[600] text-[14px] text-[#222] leading-[20px]"},pe={class:"flex flex-wrap mt-[40px]"},ce=["onClick"],ie={class:"bg-[#F7FAFB] py-[18px] px-[24px] flex items-center app-item-head"},re=h(()=>e("div",{class:"image-slot"},[e("img",{class:"w-[40px] h-[40px] rounded-[8px]",src:X})],-1)),le={class:"py-[18px] px-[24px]"},_e={class:"font-[600] leading-[1] text-[14px] text-[#222]"},de={class:"text-[13px] text-[#6D7278] leading-[18px] mt-[6px] truncate"},xe=h(()=>e("div",{class:"w-[230px] mx-auto"},[e("img",{src:J,class:"max-w-full",alt:""})],-1)),ue={class:"flex items-center"},me=I({__name:"app_manage",setup(_){const v=V(),m=M(),n=y(!0),d=N({appList:[]}),f=y({});(()=>{n.value=!0,Q().then(p=>{Object.values(p.data).forEach((t,i)=>{t.type=="app"&&d.appList.push(t)}),m.routers.forEach((t,i)=>{t.children&&t.children.length?(t.name=b(t.children),f.value[t.meta.app]=b(t.children)):f.value[t.meta.app]=t.name}),n.value=!1}).catch(()=>{n.value=!1})})();const L=p=>{w.set({key:"menuAppStorage",data:p.key}),w.set({key:"plugMenuTypeStorage",data:""});const t=m.appMenuList;t.push(p.key),m.setAppMenuList(t);const i=f.value[p.key];v.push({name:i})},g=()=>{v.push("/app_manage/app_store")};return(p,t)=>{const i=z,F=H,E=K,S=O,C=P,A=U;return R((l(),x("div",Z,[d.appList&&!n.value?(l(),x("div",ee,[e("div",te,[e("div",null,[e("div",se,s(a(o)("app")),1),e("div",ae,s(a(o)("versionInfo"))+" "+s(a(o)("currentVersion")),1)]),u(i,{onClick:g,class:"px-[15px]"},{default:c(()=>[oe,e("span",ne,s(a(o)("appStore")),1)]),_:1})]),e("div",pe,[(l(!0),x(j,null,D(d.appList,(r,B)=>(l(),x("div",{key:B,class:"app-item w-[280px] box-border !bg-[#fff] rounded-[6px] cursor-pointer mr-[20px] mb-[20px] overflow-hidden",onClick:he=>L(r)},[e("div",ie,[u(F,{class:"w-[44px] h-[44px] rounded-[8px]",src:a(T)(r.icon),fit:"contain"},{error:c(()=>[re]),_:2},1032,["src"])]),e("div",le,[e("div",_e,s(r.title),1),u(E,{class:"box-item",effect:"light",content:r.desc,placement:"bottom-start"},{default:c(()=>[e("div",de,s(r.desc),1)]),_:2},1032,["content"])])],8,ce))),128)),!d.appList.length&&!n.value?(l(),$(C,{key:0,class:"mx-auto overview-empty"},{image:c(()=>[xe]),description:c(()=>[e("p",ue,[e("span",null,s(a(o)("descriptionLeft")),1),u(S,{type:"primary",onClick:g,class:"mx-[5px]"},{default:c(()=>[q(s(a(o)("link")),1)]),_:1}),e("span",null,s(a(o)("descriptionRight")),1)])]),_:1})):k("",!0)])])):k("",!0)])),[[A,n.value]])}}});const Be=W(me,[["__scopeId","data-v-8a156fb4"]]);export{Be as default};

View File

@ -1 +1 @@
import{d as f,k as h,r as b,h as m,c as s,e,w as o,a as i,t as y,f as p,F as v,W as x,s as g,aI as V,aJ as k,a9 as w}from"./index-38aa4eb6.js";/* empty css *//* empty css */import E from"./attachment-e9cc5d6c.js";/* empty css */import"./index.vue_vue_type_script_setup_true_lang-afbe6a00.js";/* empty css *//* empty css *//* empty css *//* empty css */import"./el-form-item-4ed993c7.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-tooltip-4ed993c7.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./index.vue_vue_type_script_setup_true_lang-7756177a.js";/* empty css */import"./index.vue_vue_type_script_setup_true_lang-a1d95079.js";import"./_plugin-vue_export-helper-c27b6911.js";const B={class:"main-container attachment-container"},C={class:"flex justify-between items-center mb-[20px]"},N={class:"text-page-title"},it=f({__name:"attachment",setup(T){const l=h().meta.title,a=["image","video","icon"],n=b(a[0]);return(j,r)=>{const c=V,_=k,d=w;return m(),s("div",B,[e(d,{class:"box-card !border-none full-container",shadow:"never"},{default:o(()=>[i("div",C,[i("span",N,y(p(l)),1)]),e(_,{modelValue:n.value,"onUpdate:modelValue":r[0]||(r[0]=t=>n.value=t),"tab-position":"top"},{default:o(()=>[(m(),s(v,null,x(a,(t,u)=>e(c,{label:p(g)(t),name:t,key:u},{default:o(()=>[e(E,{scene:"attachment",type:t},null,8,["type"])]),_:2},1032,["label","name"])),64))]),_:1},8,["modelValue"])]),_:1})])}}});export{it as default};
import{d as f,k as h,r as b,h as m,c as s,e,w as o,a as i,t as y,f as p,F as v,V as x,s as g,aH as V,aI as k,a8 as w}from"./index-69eae4f0.js";/* empty css *//* empty css */import E from"./attachment-edcd969d.js";/* empty css */import"./index.vue_vue_type_script_setup_true_lang-664a6e1b.js";/* empty css *//* empty css *//* empty css *//* empty css */import"./el-form-item-4ed993c7.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-tooltip-4ed993c7.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./index.vue_vue_type_script_setup_true_lang-50a3d7f7.js";/* empty css */import"./index.vue_vue_type_script_setup_true_lang-895d2fd8.js";import"./_plugin-vue_export-helper-c27b6911.js";const B={class:"main-container attachment-container"},C={class:"flex justify-between items-center mb-[20px]"},N={class:"text-page-title"},it=f({__name:"attachment",setup(T){const l=h().meta.title,a=["image","video","icon"],n=b(a[0]);return(j,r)=>{const c=V,_=k,d=w;return m(),s("div",B,[e(d,{class:"box-card !border-none full-container",shadow:"never"},{default:o(()=>[i("div",C,[i("span",N,y(p(l)),1)]),e(_,{modelValue:n.value,"onUpdate:modelValue":r[0]||(r[0]=t=>n.value=t),"tab-position":"top"},{default:o(()=>[(m(),s(v,null,x(a,(t,u)=>e(c,{label:p(g)(t),name:t,key:u},{default:o(()=>[e(E,{scene:"attachment",type:t},null,8,["type"])]),_:2},1032,["label","name"])),64))]),_:1},8,["modelValue"])]),_:1})])}}});export{it as default};

View File

@ -1 +0,0 @@
.attachment-container{overflow:hidden;min-height:calc(100vh - 94px);background-color:var(--el-bg-color-overlay)}.attachment-container .full-container{height:calc(100vh - 100px)}.attachment-container .el-card__body{height:100%}.attachment-container .el-tabs{display:flex;flex-direction:column-reverse;height:calc(100% - 40px)}.attachment-container .el-tabs__content{flex:1}.attachment-container .el-tabs__content .el-tab-pane{height:100%}.attachment-container .el-tabs__nav-wrap:after{height:1px}.attachment-container .main-wrap{border:none}.attachment-container .main-wrap .group-wrap{padding:0 15px 0 0}.attachment-container .main-wrap .attachment-list-wrap{padding:0 0 0 15px}

View File

@ -0,0 +1 @@
.attachment-container{overflow:hidden;min-height:calc(100vh - 94px);background-color:var(--el-bg-color-overlay)}.attachment-container .full-container{height:calc(100vh - 100px)}.attachment-container .el-card__body{height:100%}.attachment-container .el-tabs{display:flex;flex-direction:column;height:calc(100% - 40px)}.attachment-container .el-tabs__content{flex:1}.attachment-container .el-tabs__content .el-tab-pane{height:100%}.attachment-container .el-tabs__nav-wrap:after{height:1px}.attachment-container .main-wrap{border:none}.attachment-container .main-wrap .group-wrap{padding:0 15px 0 0}.attachment-container .main-wrap .attachment-list-wrap{padding:0 0 0 15px}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1 +1 @@
import{d as b,r as d,q as w,I as m,m as g,R as c,h as E,v as F,w as i,e as n,a,Z as N,i as R,_ as j,aG as B,L as C,M as I,N as O}from"./index-38aa4eb6.js";/* empty css */import"./el-form-item-4ed993c7.js";/* empty css *//* empty css */const k={class:"flex items-center"},D=a("span",{class:"ml-[10px] el-form-item__label"},"消费折扣",-1),M={class:"w-[120px]"},U=a("div",{class:"text-sm text-gray-400 mb-[5px]"},"会员购买产品默认折扣,需要商品设置参与会员折扣有效",-1),Z=b({__name:"benefits-discount",props:{modelValue:{type:Object,default:()=>({})}},emits:["update:modelValue"],setup(p,{expose:_,emit:v}){const f=p,e=d({is_use:0,discount:""}),r=d(null),x=w({discount:[{validator:(l,t,s)=>{e.value.is_use&&(m.empty(e.value.discount)&&s("请输入折扣"),m.decimal(e.value.discount,1)||s("折扣格式错误"),(parseFloat(e.value.discount)<0||parseFloat(e.value.discount)>9.9)&&s("折扣只能输入0~9.9之间的值"),e.value.discount<0&&s("折扣不能小于0")),s()}}]}),o=g({get(){return f.modelValue},set(l){v("update:modelValue",l)}});return c(()=>o.value,(l,t)=>{(!t||!Object.keys(t).length)&&Object.keys(l).length&&(e.value=o.value)},{immediate:!0}),c(()=>e.value,()=>{o.value=e.value},{deep:!0}),_({verify:async()=>{var t;let l=!0;return await((t=r.value)==null?void 0:t.validate(s=>{l=s})),l}}),(l,t)=>{const s=B,V=C,h=I,y=O;return E(),F(y,{ref_key:"formRef",ref:r,model:e.value,rules:x},{default:i(()=>[n(h,{label:"",prop:"discount",class:"!mb-[10px]"},{default:i(()=>[a("div",null,[a("div",k,[n(s,{modelValue:e.value.is_use,"onUpdate:modelValue":t[0]||(t[0]=u=>e.value.is_use=u),"true-label":1,"false-label":0,label:"",size:"large"},null,8,["modelValue"]),D,N(a("div",M,[n(V,{modelValue:e.value.discount,"onUpdate:modelValue":t[1]||(t[1]=u=>e.value.discount=u),modelModifiers:{trim:!0},clearable:""},{append:i(()=>[R("折")]),_:1},8,["modelValue"])],512),[[j,e.value.is_use]])]),U])]),_:1})]),_:1},8,["model","rules"])}}});export{Z as default};
import{d as b,r as d,q as w,I as m,m as g,Q as c,h as F,v as E,w as i,e as n,a,Y as N,i as j,Z as B,aF as C,L as I,M as O,N as R}from"./index-69eae4f0.js";/* empty css */import"./el-form-item-4ed993c7.js";/* empty css *//* empty css */const k={class:"flex items-center"},D=a("span",{class:"ml-[10px] el-form-item__label"},"消费折扣",-1),M={class:"w-[120px]"},U=a("div",{class:"text-sm text-gray-400 mb-[5px]"},"会员购买产品默认折扣,需要商品设置参与会员折扣有效",-1),Y=b({__name:"benefits-discount",props:{modelValue:{type:Object,default:()=>({})}},emits:["update:modelValue"],setup(p,{expose:_,emit:v}){const f=p,e=d({is_use:0,discount:""}),r=d(null),x=w({discount:[{validator:(l,t,s)=>{e.value.is_use&&(m.empty(e.value.discount)&&s("请输入折扣"),m.decimal(e.value.discount,1)||s("折扣格式错误"),(parseFloat(e.value.discount)<0||parseFloat(e.value.discount)>9.9)&&s("折扣只能输入0~9.9之间的值"),e.value.discount<0&&s("折扣不能小于0")),s()}}]}),o=g({get(){return f.modelValue},set(l){v("update:modelValue",l)}});return c(()=>o.value,(l,t)=>{(!t||!Object.keys(t).length)&&Object.keys(l).length&&(e.value=o.value)},{immediate:!0}),c(()=>e.value,()=>{o.value=e.value},{deep:!0}),_({verify:async()=>{var t;let l=!0;return await((t=r.value)==null?void 0:t.validate(s=>{l=s})),l}}),(l,t)=>{const s=C,V=I,h=O,y=R;return F(),E(y,{ref_key:"formRef",ref:r,model:e.value,rules:x},{default:i(()=>[n(h,{label:"",prop:"discount",class:"!mb-[10px]"},{default:i(()=>[a("div",null,[a("div",k,[n(s,{modelValue:e.value.is_use,"onUpdate:modelValue":t[0]||(t[0]=u=>e.value.is_use=u),"true-label":1,"false-label":0,label:"",size:"large"},null,8,["modelValue"]),D,N(a("div",M,[n(V,{modelValue:e.value.discount,"onUpdate:modelValue":t[1]||(t[1]=u=>e.value.discount=u),modelModifiers:{trim:!0},clearable:""},{append:i(()=>[j("折")]),_:1},8,["modelValue"])],512),[[B,e.value.is_use]])]),U])]),_:1})]),_:1},8,["model","rules"])}}});export{Y as default};

View File

@ -1 +1 @@
import{d as U,k as O,r as b,q as V,h as u,c as E,e as n,w as s,a as i,t as m,f as o,Z as z,v as p,s as l,bW as k,C as f,i as v,F as G,W as L,b8 as S,M as j,L as H,aE as I,aF as K,aG as P,bE as q,a9 as X,N as Z,E as $,a3 as J}from"./index-38aa4eb6.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-form-item-4ed993c7.js";/* empty css */import{d as Q,W as Y,X as ee}from"./member-d83c7f22.js";const te={class:"main-container"},ae={class:"flex justify-between items-center"},oe={class:"text-page-title"},se={class:"text-[12px] text-[#999] leading-[24px]"},le=i("span",{class:"ml-2"},"%",-1),ne={class:"text-[12px] text-[#999] leading-[24px]"},re={class:"fixed-footer-wrap"},ie={class:"fixed-footer"},Fe=U({__name:"cash_out",setup(de){const C=O().meta.title,c=b(!0),g=b(),t=V({is_auto_transfer:"0",is_auto_verify:"0",is_open:"0",min:"0",rate:"0",transfer_type:[]}),h=b([]);(async()=>{h.value=await(await Q()).data})(),(async()=>{const d=await(await Y()).data;Object.keys(t).forEach(e=>{d[e]!=null&&(t[e]=d[e])}),c.value=!1})();const R=V({min:[{validator:(d,e,r)=>{Number(e)<.01?r(new Error(l("cashWithdrawalAmountHint"))):r()},trigger:"blur"}],rate:[{validator:(d,e,r)=>{Number(e)>100||Number(e)<0?r(new Error(l("commissionRatioHint"))):r()},trigger:"blur"}]}),F=async d=>{c.value||!d||await d.validate(e=>{if(e){const r={...t};ee(r).then(()=>{c.value=!1}).catch(()=>{c.value=!1})}})};return(d,e)=>{const r=S,_=j,y=H,x=I,N=K,T=P,D=q,w=X,W=Z,A=$,B=J;return u(),E("div",te,[n(w,{class:"box-card !border-none",shadow:"never"},{default:s(()=>[i("div",ae,[i("span",oe,m(o(C)),1)]),z((u(),p(W,{class:"page-form mt-[20px]",model:t,"label-width":"150px",ref_key:"ruleFormRef",ref:g,rules:R},{default:s(()=>[n(w,{class:"box-card !border-none",shadow:"never"},{default:s(()=>[n(_,{label:o(l)("isOpen")},{default:s(()=>[n(r,{modelValue:t.is_open,"onUpdate:modelValue":e[0]||(e[0]=a=>t.is_open=a),"active-value":"1","inactive-value":"0"},null,8,["modelValue"])]),_:1},8,["label"]),t.is_open?(u(),p(_,{key:0,label:o(l)("cashWithdrawalAmount"),prop:"min"},{default:s(()=>[i("div",null,[n(y,{modelValue:t.min,"onUpdate:modelValue":e[1]||(e[1]=a=>t.min=a),modelModifiers:{trim:!0},onKeyup:e[2]||(e[2]=a=>o(k)(a)),class:"input-width",placeholder:o(l)("cashWithdrawalAmountPlaceholder")},null,8,["modelValue","placeholder"]),i("div",se,m(o(l)("minTips")),1)])]),_:1},8,["label"])):f("",!0),t.is_open?(u(),p(_,{key:1,label:o(l)("commissionRatio"),prop:"rate"},{default:s(()=>[n(y,{modelValue:t.rate,"onUpdate:modelValue":e[3]||(e[3]=a=>t.rate=a),modelModifiers:{trim:!0},onKeyup:e[4]||(e[4]=a=>o(k)(a)),class:"input-width",placeholder:o(l)("commissionRatioPlaceholder")},null,8,["modelValue","placeholder"]),le]),_:1},8,["label"])):f("",!0),t.is_open?(u(),p(_,{key:2,label:o(l)("audit"),class:"items-center"},{default:s(()=>[n(N,{modelValue:t.is_auto_verify,"onUpdate:modelValue":e[5]||(e[5]=a=>t.is_auto_verify=a)},{default:s(()=>[n(x,{label:"0",size:"large"},{default:s(()=>[v(m(o(l)("manualAudit")),1)]),_:1}),n(x,{label:"1",size:"large"},{default:s(()=>[v(m(o(l)("automaticAudit")),1)]),_:1})]),_:1},8,["modelValue"])]),_:1},8,["label"])):f("",!0),t.is_open?(u(),p(_,{key:3,label:o(l)("transferMode"),class:"items-baseline"},{default:s(()=>[i("div",null,[n(D,{modelValue:t.transfer_type,"onUpdate:modelValue":e[6]||(e[6]=a=>t.transfer_type=a),size:"large"},{default:s(()=>[(u(!0),E(G,null,L(h.value,(a,M)=>(u(),p(T,{label:a.key,key:"a"+M},{default:s(()=>[v(m(a.name),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"]),i("div",ne,m(o(l)("transferModeTips")),1)])]),_:1},8,["label"])):f("",!0)]),_:1})]),_:1},8,["model","rules"])),[[B,c.value]])]),_:1}),i("div",re,[i("div",ie,[n(A,{type:"primary",onClick:e[7]||(e[7]=a=>F(g.value))},{default:s(()=>[v(m(o(l)("save")),1)]),_:1})])])])}}});export{Fe as default};
import{d as W,k as O,r as b,q as V,h as u,c as E,e as n,w as s,a as i,t as m,f as o,Y as z,v as p,s as l,bW as k,C as f,i as v,F as L,V as S,b8 as j,M as G,L as H,aD as I,aE as K,aF as P,bE as q,a8 as X,N as Y,E as $,a2 as J}from"./index-69eae4f0.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-form-item-4ed993c7.js";/* empty css */import{d as Q,W as Z,X as ee}from"./member-204d2223.js";const te={class:"main-container"},ae={class:"flex justify-between items-center"},oe={class:"text-page-title"},se={class:"text-[12px] text-[#999] leading-[24px]"},le=i("span",{class:"ml-2"},"%",-1),ne={class:"text-[12px] text-[#999] leading-[24px]"},re={class:"fixed-footer-wrap"},ie={class:"fixed-footer"},Fe=W({__name:"cash_out",setup(de){const C=O().meta.title,c=b(!0),g=b(),t=V({is_auto_transfer:"0",is_auto_verify:"0",is_open:"0",min:"0",rate:"0",transfer_type:[]}),h=b([]);(async()=>{h.value=await(await Q()).data})(),(async()=>{const d=await(await Z()).data;Object.keys(t).forEach(e=>{d[e]!=null&&(t[e]=d[e])}),c.value=!1})();const R=V({min:[{validator:(d,e,r)=>{Number(e)<.01?r(new Error(l("cashWithdrawalAmountHint"))):r()},trigger:"blur"}],rate:[{validator:(d,e,r)=>{Number(e)>100||Number(e)<0?r(new Error(l("commissionRatioHint"))):r()},trigger:"blur"}]}),F=async d=>{c.value||!d||await d.validate(e=>{if(e){const r={...t};ee(r).then(()=>{c.value=!1}).catch(()=>{c.value=!1})}})};return(d,e)=>{const r=j,_=G,y=H,x=I,N=K,D=P,T=q,w=X,A=Y,B=$,M=J;return u(),E("div",te,[n(w,{class:"box-card !border-none",shadow:"never"},{default:s(()=>[i("div",ae,[i("span",oe,m(o(C)),1)]),z((u(),p(A,{class:"page-form mt-[20px]",model:t,"label-width":"150px",ref_key:"ruleFormRef",ref:g,rules:R},{default:s(()=>[n(w,{class:"box-card !border-none",shadow:"never"},{default:s(()=>[n(_,{label:o(l)("isOpen")},{default:s(()=>[n(r,{modelValue:t.is_open,"onUpdate:modelValue":e[0]||(e[0]=a=>t.is_open=a),"active-value":"1","inactive-value":"0"},null,8,["modelValue"])]),_:1},8,["label"]),t.is_open?(u(),p(_,{key:0,label:o(l)("cashWithdrawalAmount"),prop:"min"},{default:s(()=>[i("div",null,[n(y,{modelValue:t.min,"onUpdate:modelValue":e[1]||(e[1]=a=>t.min=a),modelModifiers:{trim:!0},onKeyup:e[2]||(e[2]=a=>o(k)(a)),class:"input-width",placeholder:o(l)("cashWithdrawalAmountPlaceholder")},null,8,["modelValue","placeholder"]),i("div",se,m(o(l)("minTips")),1)])]),_:1},8,["label"])):f("",!0),t.is_open?(u(),p(_,{key:1,label:o(l)("commissionRatio"),prop:"rate"},{default:s(()=>[n(y,{modelValue:t.rate,"onUpdate:modelValue":e[3]||(e[3]=a=>t.rate=a),modelModifiers:{trim:!0},onKeyup:e[4]||(e[4]=a=>o(k)(a)),class:"input-width",placeholder:o(l)("commissionRatioPlaceholder")},null,8,["modelValue","placeholder"]),le]),_:1},8,["label"])):f("",!0),t.is_open?(u(),p(_,{key:2,label:o(l)("audit"),class:"items-center"},{default:s(()=>[n(N,{modelValue:t.is_auto_verify,"onUpdate:modelValue":e[5]||(e[5]=a=>t.is_auto_verify=a)},{default:s(()=>[n(x,{label:"0",size:"large"},{default:s(()=>[v(m(o(l)("manualAudit")),1)]),_:1}),n(x,{label:"1",size:"large"},{default:s(()=>[v(m(o(l)("automaticAudit")),1)]),_:1})]),_:1},8,["modelValue"])]),_:1},8,["label"])):f("",!0),t.is_open?(u(),p(_,{key:3,label:o(l)("transferMode"),class:"items-baseline"},{default:s(()=>[i("div",null,[n(T,{modelValue:t.transfer_type,"onUpdate:modelValue":e[6]||(e[6]=a=>t.transfer_type=a),size:"large"},{default:s(()=>[(u(!0),E(L,null,S(h.value,(a,U)=>(u(),p(D,{label:a.key,key:"a"+U},{default:s(()=>[v(m(a.name),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"]),i("div",ne,m(o(l)("transferModeTips")),1)])]),_:1},8,["label"])):f("",!0)]),_:1})]),_:1},8,["model","rules"])),[[M,c.value]])]),_:1}),i("div",re,[i("div",ie,[n(B,{type:"primary",onClick:e[7]||(e[7]=a=>F(g.value))},{default:s(()=>[v(m(o(l)("save")),1)]),_:1})])])])}}});export{Fe as default};

View File

@ -0,0 +1 @@
.btn-time[data-v-d03eaabf]{line-height:36px;text-align:center}[data-v-d03eaabf] .el-button{border-radius:4px!important}[data-v-d03eaabf] .el-timeline-item__node--normal{width:16px!important;height:16px!important}[data-v-d03eaabf] .el-timeline-item__tail{left:6px!important}[data-v-d03eaabf] .el-timeline-item__node.is-hollow{background:#9699B6!important;border-width:3px!important}

Some files were not shown because too many files have changed in this diff Show More