Browse Source

调整数据查询来源

DuGuYang 11 months ago
parent
commit
466b870a15

+ 15 - 7
Areas/Api/Controllers/Main/ConsumerOrdersController.cs

@@ -136,7 +136,7 @@ namespace MySystem.Areas.Api.Controllers.v1
             {
                 ActFlag = false;
             }
-            if(merchant.IsAct == 0) ActFlag = false;
+            if (merchant.IsAct == 0) ActFlag = false;
             var ledgerModel = ActFlag ? "5" : "1";
 
             var infos = ConsumerOrdersUtil.AddConsumerOrders(MerchantId, ConsumerId, merchant.UserId, PayMode, PayMoney, SnNo, OrderNo, ActFlag ? (PayMoney * 0.99M) * merchantset.DiviPercent / 100 : 0, ActFlag ? 1u : 0u, ActFlag ? PayMoney * merchantset.GetPercent / 100 : PayMoney, Newtonsoft.Json.JsonConvert.SerializeObject(merchantset), merchantset.Version);
@@ -205,8 +205,8 @@ namespace MySystem.Areas.Api.Controllers.v1
             JsonData data = JsonMapper.ToObject(value);
             Dictionary<string, object> Obj = new Dictionary<string, object>();
             int Id = int.Parse(function.CheckInt(data["id"].ToString()));
-            ConsumerOrders order = maindb.ConsumerOrders.FirstOrDefault(m => m.Id == Id);
-            if (order != null)
+            ConsumerOrders order = maindb.ConsumerOrders.FirstOrDefault(m => m.Id == Id) ?? new ConsumerOrders();
+            if (order.Id > 0)
             {
                 List<ConsumerOrders> suborders = RedisDbconn.Instance.GetList<ConsumerOrders>("ConsumerOrdersHd:Divi:" + order.PayMode + ":" + order.MerchantId, 1, 999999);
                 if (suborders.Count > 0)
@@ -224,7 +224,11 @@ namespace MySystem.Areas.Api.Controllers.v1
                     }
                 }
             }
-            return new AppResultJson() { Status = "-1", Info = "取消失败", Data = Obj };
+            else
+            {
+                return new AppResultJson() { Status = "-1", Info = "取消失败", Data = Obj };
+            }
+            return new AppResultJson() { Status = "1", Info = "", Data = Obj };
         }
         #endregion
 
@@ -242,8 +246,8 @@ namespace MySystem.Areas.Api.Controllers.v1
             JsonData data = JsonMapper.ToObject(value);
             Dictionary<string, object> Obj = new Dictionary<string, object>();
             int Id = int.Parse(function.CheckInt(data["id"].ToString()));
-            ConsumerOrders order = maindb.ConsumerOrders.FirstOrDefault(m => m.Id == Id);
-            if (order != null)
+            ConsumerOrders order = maindb.ConsumerOrders.FirstOrDefault(m => m.Id == Id) ?? new ConsumerOrders();
+            if (order.Id > 0)
             {
                 JsonData ProfitInfo = JsonMapper.ToObject(order.SeoDescription);
                 int ProfitDays = int.Parse(function.CheckInt(ProfitInfo["ProfitDays"].ToString())); //活动有效时间
@@ -265,7 +269,11 @@ namespace MySystem.Areas.Api.Controllers.v1
                     return new AppResultJson() { Status = "1", Info = "", Data = Obj };
                 }
             }
-            return new AppResultJson() { Status = "-1", Info = "恢复失败", Data = Obj };
+            else
+            {
+                return new AppResultJson() { Status = "-1", Info = "恢复失败", Data = Obj };
+            }
+            return new AppResultJson() { Status = "1", Info = "", Data = Obj };
         }
         #endregion
 

+ 39 - 14
Util/Business/BusinessUtil.cs

@@ -47,12 +47,12 @@ namespace MySystem
             //     dataList.Add(curData);
             // }
             string limit = " limit " + pageSize;
-            if(pageNum > 1)
+            if (pageNum > 1)
             {
                 int skip = (pageNum - 1) * pageSize;
                 limit = " limit " + skip + "," + pageSize;
             }
-            DataTable dt = CustomerSqlConn.dtable("select TradeDate,sum(TradeAmount) TotalAmount,sum(TotalActual) InFactAmount,sum(if(IsAct=1,TradeAmount,0)) ActAmount,sum(if(IsAct=0,TradeAmount,0)) NonActAmount,sum(if(PayMode=2,TotalActual,0)) WeChatInFactAmount,sum(if(PayMode=1,TotalActual,0)) AliPayInFactAmount,sum(TradeCount) OrderCount from MerchantAmountSummay where MerchantId=" + MerchantId + " group by TradeDate order by TradeDate desc" + limit, AppConfig.Base.SqlConnStr);
+            DataTable dt = CustomerSqlConn.dtable("select TradeDate,sum(TradeAmount) TotalAmount,sum(TotalActual) InFactAmount,sum(if(IsAct=1,TradeAmount,0)) ActAmount,sum(if(IsAct=0,TradeAmount,0)) NonActAmount,sum(if(PayMode=2,TotalActual,0)) WeChatInFactAmount,sum(if(PayMode=1,TotalActual,0)) AliPayInFactAmount,sum(TradeCount) OrderCount from MerchantAmountSummay where MerchantId=" + MerchantId + " and TradeMonth='" + TradeMonth + "' group by TradeDate order by TradeDate desc" + limit, AppConfig.Base.SqlConnStr);
             if (dt.Rows.Count < 1)
             {
                 return dataList;
@@ -87,19 +87,44 @@ namespace MySystem
         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)
+            // 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", decimal.Parse(subdata["TradeAmount"].ToString()).ToString("f2")); //营业总金额
+            //     curData.Add("InFactAmount", decimal.Parse(subdata["InFactAmount"].ToString()).ToString("f2")); //实收总金额
+            //     curData.Add("ActAmount", decimal.Parse(subdata["ActAmount"].ToString()).ToString("f2")); //活动总金额
+            //     curData.Add("NonActAmount", decimal.Parse(subdata["NonActAmount"].ToString()).ToString("f2")); //非活动总金额
+            //     curData.Add("WeChatInFactAmount", decimal.Parse(subdata["WeChatInfactAmount"].ToString()).ToString("f2")); //微信实收
+            //     curData.Add("AliPayInFactAmount", decimal.Parse(subdata["AliPayInFactAmount"].ToString()).ToString("f2")); //支付宝实收
+            //     curData.Add("OrderCount", subdata["OderCount"].ToString()); //订单数
+            //     dataList.Add(curData);
+            // }
+
+            var end = DateTime.Now.ToString("yyyyMM");
+            var start = DateTime.Now.AddMonths(-5).ToString("yyyyMM");
+            DataTable dt = CustomerSqlConn.dtable("SELECT TradeMonth 日期,SUM(TradeAmount) 营业总金额,SUM(TotalActual) 实收总金额,SUM(IF(IsAct=1,TotalActual,0)) 活动总金额,SUM(IF(IsAct=0,TotalActual,0)) 非活动总金额,SUM(IF(PayMode=1,TotalActual,0)) 微信实收,SUM(IF(PayMode=2,TotalActual,0)) 支付宝实收,SUM(TradeCount) 订单数 FROM MerchantAmountSummay WHERE MerchantId=" + MerchantId + " AND TradeMonth>='" + start + "' AND TradeMonth<='" + end + "' GROUP BY TradeMonth ORDER BY TradeMonth DESC", AppConfig.Base.SqlConnStr);
+            if (dt.Rows.Count < 1)
             {
-                Dictionary<string, object> curData = new Dictionary<string, object>();
-                curData.Add("TradeDate", subdata["TradeDate"].ToString()); //日期
-                curData.Add("TotalAmount", decimal.Parse(subdata["TradeAmount"].ToString()).ToString("f2")); //营业总金额
-                curData.Add("InFactAmount", decimal.Parse(subdata["InFactAmount"].ToString()).ToString("f2")); //实收总金额
-                curData.Add("ActAmount", decimal.Parse(subdata["ActAmount"].ToString()).ToString("f2")); //活动总金额
-                curData.Add("NonActAmount", decimal.Parse(subdata["NonActAmount"].ToString()).ToString("f2")); //非活动总金额
-                curData.Add("WeChatInFactAmount", decimal.Parse(subdata["WeChatInfactAmount"].ToString()).ToString("f2")); //微信实收
-                curData.Add("AliPayInFactAmount", decimal.Parse(subdata["AliPayInFactAmount"].ToString()).ToString("f2")); //支付宝实收
-                curData.Add("OrderCount", subdata["OderCount"].ToString()); //订单数
-                dataList.Add(curData);
+                return dataList;
+            }
+            else
+            {
+                foreach (DataRow item in dt.Rows)
+                {
+                    Dictionary<string, object> curData = new Dictionary<string, object>();
+                    var TradeDate = item["日期"].ToString();
+                    curData.Add("TradeDate", TradeDate.Substring(0, 4) + "-" + TradeDate.Substring(TradeDate.Length - 2, 2)); //日期
+                    curData.Add("TotalAmount", decimal.Parse(item["营业总金额"].ToString()).ToString("f2")); //营业总金额
+                    curData.Add("InFactAmount", decimal.Parse(item["实收总金额"].ToString()).ToString("f2")); //实收总金额
+                    curData.Add("ActAmount", decimal.Parse(item["活动总金额"].ToString()).ToString("f2")); //活动总金额
+                    curData.Add("NonActAmount", decimal.Parse(item["非活动总金额"].ToString()).ToString("f2")); //非活动总金额
+                    curData.Add("WeChatInFactAmount", decimal.Parse(item["微信实收"].ToString()).ToString("f2")); //微信实收
+                    curData.Add("AliPayInFactAmount", decimal.Parse(item["支付宝实收"].ToString()).ToString("f2")); //支付宝实收
+                    curData.Add("OrderCount", item["订单数"].ToString()); //订单数
+                    dataList.Add(curData);
+                }
             }
             return dataList;
         }

+ 2 - 1
Util/MySelf/MySelfUtil.cs

@@ -158,7 +158,8 @@ namespace MySystem
             Obj.Add("TotalAmount", query.TotalAmount.ToString("f2")); //营收总金额
             Obj.Add("TotalActual", query.TotalActual.ToString("f2")); //实收总金额
             var yesterday = DateTime.Now.AddDays(-1).ToString("yyyyMMdd");
-            Obj.Add("YesterDayActual", decimal.Parse(function.CheckNum(UserTradeDbconn.Instance.GetTrade(MerchantId, yesterday, "InFactAmount")["InFactAmount"].ToString())).ToString("f2")); //昨日收入
+            // Obj.Add("YesterDayActual", decimal.Parse(function.CheckNum(UserTradeDbconn.Instance.GetTrade(MerchantId, yesterday, "InFactAmount")["InFactAmount"].ToString())).ToString("f2")); //昨日收入
+            Obj.Add("YesterDayActual", decimal.Parse(MerchantAmountSummayService.Sum("TotalActual", " and MerchantId=" + MerchantId + " and TradeDate='" + yesterday + "'")["TotalActual"]).ToString("f2")); //昨日收入
             Obj.Add("SettleAmount", 0.00); //待结算金额
             Obj.Add("TotalOrder", query.TotalConsumeCount); //累计订单
             Obj.Add("TotalCustomer", query.TotalCustomer); //累计客户