mirror of
http://git.coreshop.cn/jianweie/coreshoppro.git
synced 2025-12-06 16:03:25 +08:00
【新增】增加MySql.Data组件,防止出现Nlog新版mysql不写入的问题。
【优化】优化本地上传写入文件夹缺少反斜杠的问题。 【修复】修复appsetting.json微信公众号配置项命名错误的问题。 【新增】定时任务增加微信公众号获取JS-Token并且全局缓存功能。 【新增】增加微信公众号获取JS-SDK使用权限签名算法。 【新增】新增微信公众号【微信被动回复消息】功能,用于关于公众号提醒,微信聊天被动关键词回复等。 【新增】新增微信公众号【微信菜单管理】功能,用于管理公众号底部三列五横的链接。 【新增】新增微信公众号【消息推送】接口及业务处理。用于接收从微信公众号推送的事件交互。 【新增】新增微信公众号【授权鉴权跳转】功能,用于验证是否为微信公众号访问,及获取openid等信息。 【新增】新增微信公众号用户accressToekn存储机制。 【新增】新增微信公众号发送模板消息方法。 【新增】数据库新增【WeChatMessageResponse】【WeChatUserAccessToken】两个表,【CoreCmsUserWeChatInfo】增加【isSubscribe】是否关注字段。 【新增】商品品牌管理品牌logo增加原图上传 【新增】商品分类管理分类图片增加原图上传 【新增】新增最新后台左侧管理菜单目录脚本,完整数据库脚本备份新增最新商品商品示例。
This commit is contained in:
@@ -5,6 +5,7 @@
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="SKIT.FlurlHttpClient.Wechat.Api" Version="2.20.1" />
|
||||
<PackageReference Include="sqlSugarCore" Version="5.1.3.32" />
|
||||
</ItemGroup>
|
||||
|
||||
|
||||
@@ -141,5 +141,12 @@ namespace CoreCms.Net.Model.Entities
|
||||
[Display(Name = "更新时间")]
|
||||
[SugarColumn(ColumnDescription = "更新时间", IsNullable = true)]
|
||||
public System.DateTime? updateTime { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 是否订阅
|
||||
/// </summary>
|
||||
[Display(Name = "是否订阅")]
|
||||
[SugarColumn(ColumnDescription = "是否订阅", IsNullable = true)]
|
||||
public System.Boolean isSubscribe { get; set; }
|
||||
}
|
||||
}
|
||||
212
CoreCms.Net.Model/Entities/WeChat/WeChatMessageResponse.cs
Normal file
212
CoreCms.Net.Model/Entities/WeChat/WeChatMessageResponse.cs
Normal file
@@ -0,0 +1,212 @@
|
||||
/***********************************************************************
|
||||
* Project: CoreCms
|
||||
* ProjectName: 核心内容管理系统
|
||||
* Web: https://www.corecms.net
|
||||
* Author: 大灰灰
|
||||
* Email: jianweie@163.com
|
||||
* CreateTime: 2022/12/28 22:34:52
|
||||
* Description: 暂无
|
||||
***********************************************************************/
|
||||
|
||||
using SqlSugar;
|
||||
using System.ComponentModel;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
|
||||
namespace CoreCms.Net.Model.Entities
|
||||
{
|
||||
/// <summary>
|
||||
/// 微信自动回复消息表
|
||||
/// </summary>
|
||||
public partial class WeChatMessageResponse
|
||||
{
|
||||
/// <summary>
|
||||
/// 构造函数
|
||||
/// </summary>
|
||||
public WeChatMessageResponse()
|
||||
{
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 序列
|
||||
/// </summary>
|
||||
[Display(Name = "序列")]
|
||||
|
||||
[SugarColumn(IsPrimaryKey = true, IsIdentity = true)]
|
||||
|
||||
[Required(ErrorMessage = "请输入{0}")]
|
||||
|
||||
|
||||
|
||||
public System.Int32 id { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 消息类型
|
||||
/// </summary>
|
||||
[Display(Name = "消息类型")]
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
public System.Int32? messageRule { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 分类
|
||||
/// </summary>
|
||||
[Display(Name = "分类")]
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
public System.Int32? category { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 匹配字符
|
||||
/// </summary>
|
||||
[Display(Name = "匹配字符")]
|
||||
|
||||
|
||||
[StringLength(maximumLength:100,ErrorMessage = "{0}不能超过{1}字")]
|
||||
|
||||
|
||||
public System.String matchKey { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 文本回复内容
|
||||
/// </summary>
|
||||
[Display(Name = "文本回复内容")]
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
public System.String textContent { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 图片回复内容
|
||||
/// </summary>
|
||||
[Display(Name = "图片回复内容")]
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
public System.String imgTextContext { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 图片回复图片地址
|
||||
/// </summary>
|
||||
[Display(Name = "图片回复图片地址")]
|
||||
|
||||
|
||||
[StringLength(maximumLength:1000,ErrorMessage = "{0}不能超过{1}字")]
|
||||
|
||||
|
||||
public System.String imgTextUrl { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 图片回复超链接
|
||||
/// </summary>
|
||||
[Display(Name = "图片回复超链接")]
|
||||
|
||||
|
||||
[StringLength(maximumLength:1000,ErrorMessage = "{0}不能超过{1}字")]
|
||||
|
||||
|
||||
public System.String imgTextLink { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 语音回复地址
|
||||
/// </summary>
|
||||
[Display(Name = "语音回复地址")]
|
||||
|
||||
|
||||
[StringLength(maximumLength:1000,ErrorMessage = "{0}不能超过{1}字")]
|
||||
|
||||
|
||||
public System.String meidaUrl { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 语音回复超链接
|
||||
/// </summary>
|
||||
[Display(Name = "语音回复超链接")]
|
||||
|
||||
|
||||
[StringLength(maximumLength:1000,ErrorMessage = "{0}不能超过{1}字")]
|
||||
|
||||
|
||||
public System.String meidaLink { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 是否启用
|
||||
/// </summary>
|
||||
[Display(Name = "是否启用")]
|
||||
|
||||
[Required(ErrorMessage = "请输入{0}")]
|
||||
|
||||
|
||||
|
||||
public System.Boolean enable { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 是否默认
|
||||
/// </summary>
|
||||
[Display(Name = "是否默认")]
|
||||
|
||||
[Required(ErrorMessage = "请输入{0}")]
|
||||
|
||||
|
||||
|
||||
public System.Boolean isDefault { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 备注
|
||||
/// </summary>
|
||||
[Display(Name = "备注")]
|
||||
|
||||
|
||||
[StringLength(maximumLength:1000,ErrorMessage = "{0}不能超过{1}字")]
|
||||
|
||||
|
||||
public System.String remark { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 排序
|
||||
/// </summary>
|
||||
[Display(Name = "排序")]
|
||||
|
||||
[Required(ErrorMessage = "请输入{0}")]
|
||||
|
||||
|
||||
|
||||
public System.Int32 sort { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 创建时间
|
||||
/// </summary>
|
||||
[Display(Name = "创建时间")]
|
||||
|
||||
[Required(ErrorMessage = "请输入{0}")]
|
||||
|
||||
|
||||
|
||||
public System.DateTime createTime { get; set; }
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
140
CoreCms.Net.Model/Entities/WeChat/WeChatUserAccessToken.cs
Normal file
140
CoreCms.Net.Model/Entities/WeChat/WeChatUserAccessToken.cs
Normal file
@@ -0,0 +1,140 @@
|
||||
/***********************************************************************
|
||||
* Project: CoreCms
|
||||
* ProjectName: 核心内容管理系统
|
||||
* Web: https://www.corecms.net
|
||||
* Author: 大灰灰
|
||||
* Email: jianweie@163.com
|
||||
* CreateTime: 2022/12/28 22:34:42
|
||||
* Description: 暂无
|
||||
***********************************************************************/
|
||||
|
||||
using SqlSugar;
|
||||
using System.ComponentModel;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
|
||||
namespace CoreCms.Net.Model.Entities
|
||||
{
|
||||
/// <summary>
|
||||
/// 微信用户交互授权
|
||||
/// </summary>
|
||||
public partial class WeChatUserAccessToken
|
||||
{
|
||||
/// <summary>
|
||||
/// 构造函数
|
||||
/// </summary>
|
||||
public WeChatUserAccessToken()
|
||||
{
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 序列
|
||||
/// </summary>
|
||||
[Display(Name = "序列")]
|
||||
|
||||
[SugarColumn(IsPrimaryKey = true, IsIdentity = true)]
|
||||
|
||||
[Required(ErrorMessage = "请输入{0}")]
|
||||
|
||||
|
||||
|
||||
public System.Int32 id { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 网页授权接口调用凭证
|
||||
/// </summary>
|
||||
[Display(Name = "网页授权接口调用凭证")]
|
||||
|
||||
[Required(ErrorMessage = "请输入{0}")]
|
||||
[StringLength(maximumLength:120,ErrorMessage = "{0}不能超过{1}字")]
|
||||
|
||||
|
||||
public System.String access_token { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 超时时间秒
|
||||
/// </summary>
|
||||
[Display(Name = "超时时间秒")]
|
||||
|
||||
[Required(ErrorMessage = "请输入{0}")]
|
||||
|
||||
|
||||
|
||||
public System.Int32 expires_in { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 用户刷新access_token
|
||||
/// </summary>
|
||||
[Display(Name = "用户刷新access_token")]
|
||||
|
||||
|
||||
[StringLength(maximumLength:120,ErrorMessage = "{0}不能超过{1}字")]
|
||||
|
||||
|
||||
public System.String refresh_token { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 需刷新时间
|
||||
/// </summary>
|
||||
[Display(Name = "需刷新时间")]
|
||||
|
||||
[Required(ErrorMessage = "请输入{0}")]
|
||||
|
||||
|
||||
|
||||
public System.DateTime refresh_DateTime { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 用户唯一标识
|
||||
/// </summary>
|
||||
[Display(Name = "用户唯一标识")]
|
||||
|
||||
|
||||
[StringLength(maximumLength:50,ErrorMessage = "{0}不能超过{1}字")]
|
||||
|
||||
|
||||
public System.String openid { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 用户授权的作用域
|
||||
/// </summary>
|
||||
[Display(Name = "用户授权的作用域")]
|
||||
|
||||
|
||||
[StringLength(maximumLength:50,ErrorMessage = "{0}不能超过{1}字")]
|
||||
|
||||
|
||||
public System.String scope { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 是否为快照页模式虚拟账号
|
||||
/// </summary>
|
||||
[Display(Name = "是否为快照页模式虚拟账号")]
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
public System.Int32? is_snapshotuser { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 用户统一标识
|
||||
/// </summary>
|
||||
[Display(Name = "用户统一标识")]
|
||||
|
||||
|
||||
[StringLength(maximumLength:50,ErrorMessage = "{0}不能超过{1}字")]
|
||||
|
||||
|
||||
public System.String unionid { get; set; }
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using SKIT.FlurlHttpClient.Wechat.Api.Models;
|
||||
|
||||
namespace CoreCms.Net.Model.WeChatEntites
|
||||
{
|
||||
public class MenuFull_ButtonGroupForSkit
|
||||
{
|
||||
public List<CgibinMenuCreateRequest.Types.Button> button { get; set; }
|
||||
}
|
||||
}
|
||||
28
CoreCms.Net.Model/WeChatEntites/TmpMsgModel.cs
Normal file
28
CoreCms.Net.Model/WeChatEntites/TmpMsgModel.cs
Normal file
@@ -0,0 +1,28 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace CoreCms.Net.Model
|
||||
{
|
||||
public class TmpMsgModel
|
||||
{
|
||||
public string OpenId { get; set; }
|
||||
public string TemplateId { get; set; }
|
||||
public string First { get; set; }
|
||||
public string Keyword1 { get; set; } = string.Empty;
|
||||
|
||||
public string Keyword2 { get; set; } = string.Empty;
|
||||
public string Keyword3 { get; set; } = string.Empty;
|
||||
public string Keyword4 { get; set; } = string.Empty;
|
||||
public string Keyword5 { get; set; } = string.Empty;
|
||||
public string Keyword6 { get; set; } = string.Empty;
|
||||
public string Keyword7 { get; set; } = string.Empty;
|
||||
public string Keyword8 { get; set; } = string.Empty;
|
||||
public string Keyword9 { get; set; } = string.Empty;
|
||||
public string Keyword10 { get; set; } = string.Empty;
|
||||
public string Remark { get; set; } = string.Empty;
|
||||
public string Url { get; set; } = string.Empty;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user