using MySystem.MainModels; using Library; using System.Collections.Generic; using System; namespace MySystem { /// <summary> /// 经营数据工具类 /// </summary> public class BusinessUtil { #region 经营数据记录(月) /// <summary> /// 经营数据记录(月) /// </summary> /// <param name="MerchantId">商户Id</param> /// <param name="TradeMonth">月份</param> /// <param name="pageSize">条数</param> /// <param name="pageNum">页数</param> /// <returns></returns> public static List<Dictionary<string, object>> BussinessRecordForMonth(int MerchantId, string TradeMonth, int pageSize, int pageNum) { List<Dictionary<string, object>> dataList = new List<Dictionary<string, object>>(); if(!new MerchantTradeSummaryService().CheckTableExist(TradeMonth)) { return dataList; } List<Dictionary<string, object>> source = new MerchantTradeSummaryService().List2(new List<FieldItem>(), " and MerchantId=" + MerchantId, TradeMonth, pageNum, pageSize, "TradeDate desc"); // var infos = UserTradeDbconn.GetDateTradeList(MerchantId,TradeMonth); foreach (Dictionary<string, object> subdata in source) { Dictionary<string, object> curData = new Dictionary<string, object>(); curData.Add("TradeDate", subdata["TradeDate"].ToString()); //日期 curData.Add("TotalAmount", subdata["TradeAmount"].ToString()); //营业总金额 curData.Add("InFactAmount", subdata["InFactAmount"].ToString()); //实收总金额 curData.Add("ActAmount", subdata["ActAmount"].ToString()); //活动总金额 curData.Add("NonActAmount", subdata["NonActAmount"].ToString()); //非活动总金额 curData.Add("WeChatInFactAmount", subdata["WeChatInfactAmount"].ToString()); //微信实收 curData.Add("AliPayInFactAmount", subdata["AliPayInFactAmount"].ToString()); //支付宝实收 curData.Add("OrderCount", subdata["OderCount"].ToString()); //订单数 dataList.Add(curData); } return dataList; } #endregion #region 经营数据记录(半年) /// <summary> /// 经营数据记录(半年) /// </summary> /// <param name="MerchantId">商户Id</param> /// <param name="pageSize">条数</param> /// <param name="pageNum">页数</param> /// <returns></returns> public static List<Dictionary<string, object>> BussinessRecordForHalfYear(int MerchantId, int pageSize, int pageNum) { List<Dictionary<string, object>> dataList = new List<Dictionary<string, object>>(); List<Dictionary<string, object>> source = UserTradeDbconn.Instance.GetMonthTradeList(MerchantId, "TradeAmount,InFactAmount,ActAmount,NonActAmount,WeChatInFactAmount,AliPayInFactAmount,OderCount"); foreach (Dictionary<string, object> subdata in source) { Dictionary<string, object> curData = new Dictionary<string, object>(); curData.Add("TradeDate", subdata["TradeDate"].ToString()); //日期 curData.Add("TotalAmount", subdata["TradeAmount"].ToString()); //营业总金额 curData.Add("InFactAmount", subdata["InFactAmount"].ToString()); //实收总金额 curData.Add("ActAmount", subdata["ActAmount"].ToString()); //活动总金额 curData.Add("NonActAmount", subdata["NonActAmount"].ToString()); //非活动总金额 curData.Add("WeChatInFactAmount", subdata["WeChatInFactAmount"].ToString()); //微信实收 curData.Add("AliPayInFactAmount", subdata["AliPayInFactAmount"].ToString()); //支付宝实收 curData.Add("OrderCount", subdata["OderCount"].ToString()); //订单数 dataList.Add(curData); } return dataList; } #endregion #region 经营详情列表 /// <summary> /// 经营详情列表 /// </summary> /// <param name="condition">查询条件</param> /// <param name="pageSize">条数</param> /// <param name="pageNum">页数</param> /// <returns></returns> public static List<Dictionary<string, object>> DayDetailList(string condition, int pageSize, int pageNum) { List<Dictionary<string, object>> dataList = new List<Dictionary<string, object>>(); List<Dictionary<string, object>> source = new ConsumerOrdersService().List(new List<FieldItem>(), condition, pageNum, pageSize); foreach (Dictionary<string, object> subdata in source) { Dictionary<string, object> curData = new Dictionary<string, object>(); curData.Add("Id", subdata["Id"].ToString()); //订单Id curData.Add("TradeDate", DateTime.Parse(subdata["CreateDate"].ToString()).ToString("HH:mm:ss")); //日期 curData.Add("PayMode", subdata["PayMode"].ToString()); //支付方式(1 支付宝 2 微信) curData.Add("IsAct", subdata["IsAct"].ToString()); //是否活动(1 是 0 否) curData.Add("PayMoney", subdata["PayMoney"].ToString()); //订单金额 dataList.Add(curData); } return dataList; } #endregion #region 交易详情 /// <summary> /// 交易详情 /// </summary> /// <param name="condition">查询条件</param> /// <returns></returns> public static Dictionary<string, object> OrderDetail(string condition) { Dictionary<string, object> obj = new Dictionary<string, object>(); List<Dictionary<string, object>> source = new ConsumerOrdersService().List(new List<FieldItem>(), condition, 1, 999); foreach (Dictionary<string, object> subdata in source) { obj.Add("TradeDate", DateTime.Parse(subdata["CreateDate"].ToString()).ToString("yyyy-MM-dd HH:mm:ss")); //日期 obj.Add("PayMode", subdata["PayMode"].ToString()); //支付方式(1 微信 2 支付宝) obj.Add("PayMoney", subdata["PayMoney"].ToString()); //是否活动(1 是 0 否) obj.Add("IsAct", subdata["IsAct"].ToString()); //是否活动(1 是 0 否) obj.Add("OrderNo", subdata["OrderNo"].ToString()); //订单号 List<Dictionary<string, object>> dataList = new List<Dictionary<string, object>>(); List<Dictionary<string, object>> dics = new ConsumerProfitService().List(new List<FieldItem>(), " and OrderId=" + int.Parse(subdata["Id"].ToString()) + "", 1, 999); foreach (Dictionary<string, object> dic in dics) { Dictionary<string, object> cdata = new Dictionary<string, object>(); var CreateDate = DateTime.Parse(dic["CreateDate"].ToString()); var TradeDate = CreateDate.Month + "月" + CreateDate.Day + "日" + " " + CreateDate.ToString("HH:mm"); cdata.Add("ProfitDate", TradeDate); //分红时间 cdata.Add("ProfitAmount", dic["GetMoney"].ToString()); //分红金额 dataList.Add(cdata); } obj.Add("ProfitTotalAmount", new ConsumerProfitService().Sum("GetMoney", " and OrderId=" + int.Parse(subdata["Id"].ToString()) + "")["GetMoney"]); //分红总金额 MerchantInfo merchant = new MerchantInfoService().Query(int.Parse(function.CheckInt(subdata["MerchantId"].ToString()))); obj.Add("MerchantName", merchant.Name); //门店名称 obj.Add("ProfitList", dataList); //订单分红记录列表 } return obj; } #endregion } }