Commit 66aa5a55 authored by 黄奎's avatar 黄奎
parents 5922c1dc c1e8477a
using System;
using System.Collections.Generic;
using System.Text;
namespace Mall.Model.Entity.TradePavilion
{
/// <summary>
/// 【商载通】访问记录信息 访问载体数,访问楼宇数,访问品牌数,访问企业数
/// </summary>
public class RB_Visit_Log
{
/// <summary>
/// 编号
/// </summary>
public int ID { get; set; }
/// <summary>
/// 商户号id
/// </summary>
public int TenantId { get; set; }
/// <summary>
/// 小程序id
/// </summary>
public int MallBaseId { get; set; }
/// <summary>
/// 创建人
/// </summary>
public int CreateBy { get; set; }
/// <summary>
/// 创建时间
/// </summary>
public DateTime CreateDate { get; set; }
/// <summary>
/// 产品id
/// </summary>
public int ProductID { get; set; }
/// <summary>
/// 1-访问载体,2-访问楼宇,3-访问品牌,4-访问企业
/// </summary>
public int ProductType { get; set; }
}
}
using System;
using System.Collections.Generic;
using System.Text;
using VT.FW.DB;
namespace Mall.Model.Entity.WeChatStatistics
{
/// <summary>
/// 微信小程序统计
/// </summary>
[Serializable]
[DB(ConnectionName = "DefaultConnection")]
public class RB_Wechat_Statistics
{
//新载体数量,新楼宇数,新品牌数量,新企业数,载体总数,楼宇总数,品牌总数,企业总数,留存用户、活跃留存、打开次数,访问次数、访问人数、人均停留时长、次均停留时长、平均访问深度、转发次数、转发人数、累计用户数,访问载体数,访问楼宇数,访问品牌数,访问企业数。
/// <summary>
/// 编号
/// </summary>
public int ID { get; set; }
/// <summary>
/// 商户号id
/// </summary>
public int TenantId { get; set; }
/// <summary>
/// 小程序id
/// </summary>
public int MallBaseId { get; set; }
/// <summary>
/// 删除状态
/// </summary>
public int Status { get; set; }
/// <summary>
/// 新载体数量
/// </summary>
public int CarrierNum { get; set; }
/// <summary>
/// 新楼宇数
/// </summary>
public int BuildingCarrierNum { get; set; }
/// <summary>
/// 新品牌数量
/// </summary>
public int BrandNum { get; set; }
/// <summary>
/// 新企业数
/// </summary>
public int EnterpriseNum { get; set; }
/// <summary>
/// 载体总数
/// </summary>
public int CarrierTotalNum { get; set; }
/// <summary>
/// 楼宇总数
/// </summary>
public int BuildingCarrierTotalNum { get; set; }
/// <summary>
/// 品牌总数
/// </summary>
public int BrandTotalNum { get; set; }
/// <summary>
/// 企业总数
/// </summary>
public int EnterpriseTotalNum { get; set; }
/// <summary>
/// 访问载体数
/// </summary>
public int CarrierVisitNum { get; set; }
/// <summary>
/// 访问楼宇数
/// </summary>
public int BuildingCarrierVisitNum { get; set; }
/// <summary>
/// 访问品牌数
/// </summary>
public int BrandVisitNum { get; set; }
/// <summary>
/// 访问企业数
/// </summary>
public int EnterpriseVisitNum { get; set; }
/// <summary>
/// 日期
/// </summary>
public string Ref_Date { get; set; }
#region 用户访问小程序日留存
/// <summary>
/// 新增用户留存
/// </summary>
public int NewVisitUV { get; set; }
/// <summary>
/// 活跃用户留存
/// </summary>
public int VisitUV { get; set; }
#endregion
#region 用户访问小程序数据概况
/// <summary>
/// 累计用户数
/// </summary>
public int Visit_Total { get; set; }
/// <summary>
/// 转发次数
/// </summary>
public int Share_PV { get; set; }
/// <summary>
/// 转发人数
/// </summary>
public int Share_UV { get; set; }
#endregion
#region 用户访问小程序数据日趋势
/// <summary>
/// 打开次数
/// </summary>
public int Session_CNT { get; set; }
/// <summary>
/// 访问次数
/// </summary>
public int Visit_PV { get; set; }
/// <summary>
/// 访问人数
/// </summary>
public int Visit_UV { get; set; }
/// <summary>
/// 新用户数
/// </summary>
public int Visit_UV_New { get; set; }
/// <summary>
/// 人均停留时长 (浮点型,单位:秒)
/// </summary>
public decimal Stay_Time_UV { get; set; }
/// <summary>
/// 次均停留时长 (浮点型,单位:秒)
/// </summary>
public decimal Stay_Time_Session { get; set; }
/// <summary>
/// 平均访问深度 (浮点型)
/// </summary>
public decimal Visit_Depth { get; set; }
#endregion
}
}
using Mall.Model.Entity.WeChatStatistics;
using System;
using System.Collections.Generic;
using System.Text;
using VT.FW.DB;
namespace Mall.Model.Extend.TradePavilion
{
/// <summary>
/// 用户访问小程序日留存扩展实体
/// </summary>
[Serializable]
[DB(ConnectionName = "DefaultConnection")]
public class RB_Wechat_Statistics_Extend : RB_Wechat_Statistics
{
/// <summary>
/// 日期
/// </summary>
public string ref_date { get; set; }
/// <summary>
/// 新增用户留存
/// </summary>
public List<DailyRetainVisit> visit_uv_new { get; set; }
/// <summary>
/// 活跃用户留存
/// </summary>
public List<DailyRetainVisit> visit_uv { get; set; }
}
public class DailyRetainVisit
{
/// <summary>
/// 标识,0开始,表示当天,1表示1天后。依此类推,key取值分别是:0,1,2,3,4,5,6,7,14,30
/// </summary>
public int key { get; set; }
/// <summary>
/// key对应日期的新增用户数/活跃用户数(key=0时)或留存用户数(k>0时)
/// </summary>
public int value { get; set; }
}
public class DailyVisitTrend
{
/// <summary>
/// 数据列表
/// </summary>
public List<DailyVisitTrendItem> list { get; set; }
}
public class DailyVisitTrendItem
{
/// <summary>
/// 日期,格式为 yyyymmdd
/// </summary>
public string ref_date { get; set; }
#region 用户访问小程序数据日趋势
/// <summary>
/// 打开次数
/// </summary>
public int session_cnt { get; set; }
/// <summary>
/// 访问次数
/// </summary>
public int visit_pv { get; set; }
/// <summary>
/// 访问人数
/// </summary>
public int visit_uv { get; set; }
/// <summary>
/// 新用户数
/// </summary>
public int visit_uv_new { get; set; }
/// <summary>
/// 人均停留时长 (浮点型,单位:秒)
/// </summary>
public decimal stay_time_uv { get; set; }
/// <summary>
/// 次均停留时长 (浮点型,单位:秒)
/// </summary>
public decimal stay_time_session { get; set; }
/// <summary>
/// 平均访问深度 (浮点型)
/// </summary>
public decimal visit_depth { get; set; }
#endregion
#region 用户访问小程序数据概况
/// <summary>
/// 转发次数
/// </summary>
public int share_pv { get; set; }
/// <summary>
/// 转发人数
/// </summary>
public int share_uv { get; set; }
/// <summary>
/// 累计用户数
/// </summary>
public int visit_total { get; set; }
#endregion
}
}
using Mall.Model.Extend.TradePavilion;
using Mall.Repository.TradePavilion;
using System;
using System.Collections.Generic;
using System.Text;
namespace Mall.Module.TradePavilion
{
public class WechatStatisticsModule
{
private readonly RB_Wechat_StatisticsRepository wechat_StatisticsRepository = new RB_Wechat_StatisticsRepository();
/// <summary>
/// 获取列表
/// </summary>
/// <param name="dmodel"></param>
/// <returns></returns>
public List<RB_Wechat_Statistics_Extend> GetList(RB_Wechat_Statistics_Extend dmodel)
{
return wechat_StatisticsRepository.GetList(dmodel);
}
}
}
using Mall.Model.Entity.TradePavilion;
using Mall.Model.Extend.TradePavilion;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Mall.Repository.TradePavilion
{
/// <summary>
///
/// </summary>
public class RB_Visit_LogRepository : BaseRepository<RB_Visit_Log>
{
/// <summary>
/// 表名称
/// </summary>
public string TableName { get { return nameof(RB_Visit_Log); } }
/// <summary>
/// 获取访问记录信息
/// </summary>
/// <param name="query"></param>
/// <param name="startTime"></param>
/// <param name="endTime"></param>
/// <returns></returns>
public List<RB_Visit_Log> GetList(RB_Visit_Log query, string startTime, string endTime)
{
StringBuilder builder = new StringBuilder();
builder.Append($" SELECT * FROM {TableName} WHERE 1=1");
if (query != null)
{
if (query.TenantId > 0)
{
builder.Append($" AND {nameof(RB_Prize_Extend.TenantId)}={query.TenantId}");
}
if (query.MallBaseId > 0)
{
builder.Append($" AND {nameof(RB_Prize_Extend.MallBaseId)}={query.MallBaseId}");
}
if (!string.IsNullOrWhiteSpace(startTime))
{
builder.Append($" AND {nameof(RB_Prize_Extend.CreateDate)}={query.Id}");
}
if (!string.IsNullOrWhiteSpace(endTime))
{
builder.Append($" AND {nameof(RB_Prize_Extend.CreateDate)}={query.Id}");
}
}
builder.Append($" order by Id desc");
return Get<RB_Visit_Log>(builder.ToString()).ToList();
}
}
}
using Mall.Model.Entity.WeChatStatistics;
using Mall.Model.Extend.Miai;
using Mall.Model.Extend.TradePavilion;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Mall.Repository.TradePavilion
{
/// <summary>
/// 微信小程序统计仓储类
/// </summary>
public class RB_Wechat_StatisticsRepository : BaseRepository<RB_Wechat_Statistics>
{
/// <summary>
/// 获取列表
/// </summary>
/// <param name="dmodel"></param>
/// <returns></returns>
public List<RB_Wechat_Statistics_Extend> GetList(RB_Wechat_Statistics_Extend dmodel)
{
string where = $" 1=1 and {nameof(RB_Wechat_Statistics_Extend.Status)}=0 ";
if (dmodel.TenantId > 0)
{
where += $@" and {nameof(RB_Wechat_Statistics_Extend.TenantId)}={dmodel.TenantId}";
}
if (dmodel.MallBaseId > 0)
{
where += $@" and {nameof(RB_Wechat_Statistics_Extend.MallBaseId)}={dmodel.MallBaseId}";
}
if (!string.IsNullOrEmpty(dmodel.Ref_Date))
{
where += $@" and {nameof(RB_Wechat_Statistics_Extend.Ref_Date)} ='{dmodel.Ref_Date}'";
}
string sql = $@"select * from RB_Wechat_Statistics where {where}";
return Get<RB_Wechat_Statistics_Extend>(sql).ToList();
}
}
}
This diff is collapsed.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment