123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282 |
- /*
- * 商户交易统计
- */
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Data;
- using MySystem.Models.Main;
- using Library;
- using LitJson;
- namespace MySystem.Service.Main
- {
- public class MerchantTradeSummaryService
- {
- static string _conn = ConfigurationManager.AppSettings["SqlConnStr"].ToString();
- /// <summary>
- /// 查询列表
- /// </summary>
- /// <param name="relationData">关联表</param>
- /// <param name="condition">查询条件(sql语句)</param>
- /// <param name="count">总数(输出)</param>
- /// <param name="page">页码</param>
- /// <param name="limit">每页条数</param>
- /// <returns></returns>
- public static List<Dictionary<string, object>> List(List<RelationData> relationData, string condition, string TradeTime, out int count, int page = 1, int limit = 30, string orderBy = "Sort desc,Id desc")
- {
- List<string> fields = new List<string>(); //要显示的列
- fields.Add("Id");
- fields.Add("Sort");
- fields.Add("QueryCount");
- fields.Add("Status");
- fields.Add("CreateDate");
- fields.Add("UpdateDate");
- fields.Add("SeoTitle");
- fields.Add("SeoKeyword");
- fields.Add("SeoDescription");
- fields.Add("OderCount"); // 订单数
- fields.Add("PayMode"); //支付方式
- fields.Add("TradeAmount"); //订单金额
- fields.Add("InFactAmount"); //实收金额
- fields.Add("WeChatInfactAmount"); //微信实收金额
- fields.Add("AliPayInFactAmount"); //支付宝实收金额
- fields.Add("ActAmount"); //活动总金额
- fields.Add("NonActAmount"); //非活动总金额
- fields.Add("TradeDate"); //日期
- fields.Add("TradeMonth"); //月份
- fields.Add("MerchantId"); //商户Id
- Dictionary<string, object> obj = new DbService(AppConfig.Base.mainTables, _conn).IndexData("MerchantTradeSummary" + TradeTime, relationData, orderBy, page, limit, condition, fields);
- List<Dictionary<string, object>> diclist = obj["data"] as List<Dictionary<string, object>>;
- count = int.Parse(obj["count"].ToString());
- return diclist;
- }
- public static List<Dictionary<string, object>> List(List<RelationData> relationData, string condition, string TradeTime, int page = 1, int limit = 30, string orderBy = "Sort desc,Id desc")
- {
- List<string> fields = new List<string>(); //要显示的列
- fields.Add("Id");
- fields.Add("Sort");
- fields.Add("QueryCount");
- fields.Add("Status");
- fields.Add("CreateDate");
- fields.Add("UpdateDate");
- fields.Add("SeoTitle");
- fields.Add("SeoKeyword");
- fields.Add("SeoDescription");
- fields.Add("OderCount"); // 订单数
- fields.Add("PayMode"); //支付方式
- fields.Add("TradeAmount"); //订单金额
- fields.Add("InFactAmount"); //实收金额
- fields.Add("WeChatInfactAmount"); //微信实收金额
- fields.Add("AliPayInFactAmount"); //支付宝实收金额
- fields.Add("ActAmount"); //活动总金额
- fields.Add("NonActAmount"); //非活动总金额
- fields.Add("TradeDate"); //日期
- fields.Add("TradeMonth"); //月份
- fields.Add("MerchantId"); //商户Id
- Dictionary<string, object> obj = new DbService(AppConfig.Base.mainTables, _conn).IndexData("MerchantTradeSummary" + TradeTime, relationData, orderBy, page, limit, condition, fields);
- List<Dictionary<string, object>> diclist = obj["data"] as List<Dictionary<string, object>>;
- return diclist;
- }
- public static List<Dictionary<string, object>> List2(List<RelationData> relationData, string condition, string TradeTime, int page = 1, int limit = 30, string orderBy = "Sort desc,Id desc")
- {
- List<string> fields = new List<string>(); //要显示的列
- fields.Add("Id");
- fields.Add("Sort");
- fields.Add("QueryCount");
- fields.Add("Status");
- fields.Add("CreateDate");
- fields.Add("UpdateDate");
- fields.Add("SeoTitle");
- fields.Add("SeoKeyword");
- fields.Add("SeoDescription");
- fields.Add("OderCount"); // 订单数
- fields.Add("TradeAmount"); //订单金额
- fields.Add("InFactAmount"); //实收金额
- fields.Add("WeChatInfactAmount"); //微信实收金额
- fields.Add("AliPayInFactAmount"); //支付宝实收金额
- fields.Add("ActAmount"); //活动总金额
- fields.Add("NonActAmount"); //非活动总金额
- fields.Add("TradeDate"); //日期
- fields.Add("TradeMonth"); //月份
- fields.Add("MerchantId"); //商户Id
- Dictionary<string, object> obj = new DbService(AppConfig.Base.statTables, AppConfig.Base.StatConnRds).IndexData("MerchantTradeSummaryList" + TradeTime, relationData, orderBy, page, limit, condition, fields);
- List<Dictionary<string, object>> diclist = obj["data"] as List<Dictionary<string, object>>;
- return diclist;
- }
- public bool CheckTableExist(string date)
- {
- DataTable dt = CustomerSqlConn.dtable("show Tables like 'MerchantTradeSummaryList" + date + "'", AppConfig.Base.StatConnRds);
- if(dt.Rows.Count > 0)
- {
- return true;
- }
- return false;
- }
- /// <summary>
- /// 查询一条记录
- /// </summary>
- /// <param name="Id">主键Id</param>
- /// <returns></returns>
- public static MerchantTradeSummary Query(int Id, string TradeTime)
- {
- WebCMSEntities db = new WebCMSEntities();
- MerchantTradeSummary editData = db.MerchantTradeSummary.FirstOrDefault(m => m.Id == Id) ?? new MerchantTradeSummary();
- db.Dispose();
- return editData;
- }
- public static MerchantTradeSummary Query(string condition, string TradeTime, string fields = "*")
- {
- var merchantTradeSummary = new DbService(AppConfig.Base.mainTables, _conn).Query(fields, "MerchantTradeSummary" + TradeTime, condition);
- if (merchantTradeSummary.Count > 0)
- {
- return Newtonsoft.Json.JsonConvert.DeserializeObject<MerchantTradeSummary>(Newtonsoft.Json.JsonConvert.SerializeObject(merchantTradeSummary));
- }
- return new MerchantTradeSummary();
- }
- public static decimal Sum(string condition, string TradeTime, string field)
- {
- var dt = new DbService(AppConfig.Base.mainTables, _conn).Query("Sum(" + field + ") " + field, "MerchantTradeSummary" + TradeTime, condition);
- decimal amount = 0;
- if (dt.Count > 0)
- {
- amount = decimal.Parse(dt[field].ToString());
- }
- return amount;
- }
- /// <summary>
- /// 查询记录数
- /// </summary>
- /// <param name="Id">主键Id</param>
- /// <returns></returns>
- public static int Count(string TradeTime, string condition = "", string field = "Id")
- {
- var dt = new DbService(AppConfig.Base.mainTables, _conn).Query("Count(" + field + ") " + field, "MerchantTradeSummary" + TradeTime, condition);
- int result = 0;
- if (dt.Count > 0)
- {
- result = int.Parse(dt[field].ToString());
- }
- return result;
- }
- /// <summary>
- /// 查询是否存在
- /// </summary>
- /// <param name="Id">主键Id</param>
- /// <returns></returns>
- public static bool Exist(int Id, string TradeTime)
- {
- WebCMSEntities db = new WebCMSEntities();
- bool check = db.MerchantTradeSummary.Any(m => m.Id == Id);
- db.Dispose();
- return check;
- }
- /// <summary>
- /// 添加数据
- /// </summary>
- /// <param name="Fields">要设置的字段</param>
- /// <returns></returns>
- public static AppResultJson Add(Dictionary<string, object> fields, bool check = true)
- {
- if (check)
- {
- }
- int Id = new DbService(AppConfig.Base.mainTables, _conn).Add("MerchantTradeSummary", fields, 0);
- return new AppResultJson() { Status = "1", Data = Id };
- }
- /// <summary>
- /// 修改数据
- /// </summary>
- /// <param name="Fields">要设置的字段</param>
- /// <param name="Id">主键Id</param>
- public static AppResultJson Edit(Dictionary<string, object> fields, int Id, bool check = true)
- {
- if (check)
- {
- if (string.IsNullOrEmpty(fields["NickName"].ToString()))
- {
- return new AppResultJson() { Status = "-1", Info = "请填写昵称" };
- }
- }
- new DbService(AppConfig.Base.mainTables, _conn).Edit("MerchantTradeSummary", fields, Id);
- return new AppResultJson() { Status = "1", Data = Id };
- }
- /// <summary>
- /// 逻辑删除
- /// </summary>
- /// <param name="Id">主键Id</param>
- public static void Remove(int Id)
- {
- Dictionary<string, object> fields = new Dictionary<string, object>();
- fields.Add("Status", -1);
- new DbService(AppConfig.Base.mainTables, _conn).Edit("MerchantTradeSummary", fields, Id);
- }
- /// <summary>
- /// 删除数据
- /// </summary>
- /// <param name="Id">主键Id</param>
- public static void Delete(int Id)
- {
- new DbService(AppConfig.Base.mainTables, _conn).Delete("MerchantTradeSummary", Id);
- }
- /// <summary>
- /// 排序
- /// </summary>
- /// <param name="Id">主键Id</param>
- /// <param name="Sort">排序序号</param>
- public static void Sort(int Id, int Sort)
- {
- new DbService(AppConfig.Base.mainTables, _conn).Sort("MerchantTradeSummary", Sort, Id);
- }
- /// <summary>
- /// 导入数据
- /// </summary>
- /// <param name="ExcelData">json数据</param>
- public static void Import(string ExcelData)
- {
- WebCMSEntities db = new WebCMSEntities();
- JsonData list = JsonMapper.ToObject(ExcelData);
- for (int i = 1; i < list.Count; i++)
- {
- JsonData dr = list[i];
- db.MerchantTradeSummary.Add(new MerchantTradeSummary()
- {
- CreateDate = DateTime.Now,
- UpdateDate = DateTime.Now,
- });
- db.SaveChanges();
- }
- db.Dispose();
- }
- /// <summary>
- /// 导出excel表格
- /// </summary>
- /// <param name="fields">查询条件(单个字段)</param>
- /// <param name="condition">查询条件(sql语句)</param>
- /// <returns></returns>
- // public static void ExportExcel(List<RelationData> relationData, string condition)
- // {
- // }
- }
- }
|