From a3022b7241480fd71dae97443d98f12e313056be Mon Sep 17 00:00:00 2001 From: wzp <2040239371@qq.com> Date: 星期三, 26 十月 2022 17:22:30 +0800 Subject: [PATCH] 修复24-25日反馈的bug --- web/Dao/GwOrderDao.cs | 80 +++++++++++++++++++++++++++++++++++++-- 1 files changed, 75 insertions(+), 5 deletions(-) diff --git a/web/Dao/GwOrderDao.cs b/web/Dao/GwOrderDao.cs index 0e1a091..1b177c9 100644 --- a/web/Dao/GwOrderDao.cs +++ b/web/Dao/GwOrderDao.cs @@ -169,7 +169,7 @@ } - //娣诲姞浜у搧鎴栦骇鍝佸垎绫讳俊鎭� + //娣诲姞淇℃伅 public bool Add(GwOrder o) { StringBuilder stringBuilder = new StringBuilder(); @@ -224,7 +224,7 @@ } //鏇存柊璁㈠崟淇敼鍓嶄綑棰� - public bool UpdateBalanceAndStatus(int basicNum, int givingNum, int orderNumTotal, int orderAmountTotal, int payAmount , int beforeGivingNum, int orderStatus, string orderId ) + public bool UpdateBalanceAndStatus(Int64 basicNum, Int64 givingNum, Int64 orderNumTotal, Int64 orderAmountTotal, Int64 payAmount , Int64 beforeGivingNum, int orderStatus, string orderId ) { if (string.IsNullOrEmpty(orderId)) return false; @@ -241,7 +241,7 @@ ) > 0; } - //鏇存柊浜у搧鎴栦骇鍝佸垎绫讳俊鎭� + //鏇存柊淇℃伅 public bool Update(GwOrder o) { OracleParameter[] cmdParms = new OracleParameter[] { @@ -285,7 +285,7 @@ GwOrder o = new GwOrder(); if (string.IsNullOrEmpty(orderId)) return o; - using (OracleDataReader reader = OracleHelper.ExecuteReader(string.Format("select gwo.*, gc.COMPANY, gp.name PRODUCT_NAME from gw_order gwo left join gw_client gc on gc.client_id = gwo.client_id left join gw_product gp on gp.id = gwo.product_id where gwo.ORDER_ID=:ORDER_ID"), OracleHelper.Connection, new OracleParameter(":ORDER_ID", (object)orderId))) + using (OracleDataReader reader = OracleHelper.ExecuteReader(string.Format("select gwo.*, gc.Client_Name, gp.name PRODUCT_NAME from gw_order gwo left join gw_client gc on gc.client_id = gwo.client_id left join gw_product gp on gp.id = gwo.product_id where gwo.ORDER_ID=:ORDER_ID"), OracleHelper.Connection, new OracleParameter(":ORDER_ID", (object)orderId))) { if (((DbDataReader)reader).Read()) { @@ -294,6 +294,76 @@ } } return o; + } + + //浠婃棩宸插畬鎴愯鍗曟暟鍙婃�婚 + public List<Dictionary<string, object>> GetOrderDay(string permissionsSQL) + { + List<Dictionary<string, object>> list = new List<Dictionary<string, object>>(); + StringBuilder builder = new StringBuilder(); + builder.Append(" SELECT COUNT(1) order_num, SUM(order_amount_total) order_amount_total FROM ( "); + builder.Append(" SELECT a.order_id, a.client_id, a.status, a.order_amount_total "); + builder.Append(" , CASE WHEN b.update_time is null then TO_CHAR(a.create_time, 'yyyyMMdd') ELSE TO_CHAR(b.update_time, 'yyyyMMdd') END AS update_time "); + builder.Append(" FROM gw_order a "); + builder.Append(" LEFT JOIN ( "); + builder.Append(" SELECT order_id, max(audit_time) update_time FROM gw_order_audit goa "); + builder.Append(" GROUP BY order_id "); + builder.Append(" ) b ON b.order_id = a.order_id "); + builder.Append(" ) "); + builder.Append(" WHERE 1=1 AND status=2 "); + //builder.Append(" AND update_time=:UPDATE_TIME "); + builder.Append(permissionsSQL); + + //using (OracleDataReader reader = OracleHelper.ExecuteReader(builder.ToString(), OracleHelper.Connection, new OracleParameter(":UPDATE_TIME", (object)DateTime.Now.ToString("yyyyMMdd")))) + using (OracleDataReader reader = OracleHelper.ExecuteReader(builder.ToString(), OracleHelper.Connection)) + { + while (reader != null && ((DbDataReader)reader).Read()) + { + OracleReaderWrapper oracleReaderWrapper = new OracleReaderWrapper(reader); + int orderNum = oracleReaderWrapper.GetInt("ORDER_NUM", 0); + int orderAmountTotal = oracleReaderWrapper.GetInt("ORDER_AMOUNT_TOTAL", 0); + + Dictionary<string, object> map = new Dictionary<string, object>(); + map.Add("orderNum", orderNum); + map.Add("orderAmountTotal", orderAmountTotal); + list.Add(map); + } + } + return list; + } + + //寰呭鏍歌鍗曟暟鍙婃�婚 + public List<Dictionary<string, object>> GetOrderAudit(string permissionsSQL) + { + List<Dictionary<string, object>> list = new List<Dictionary<string, object>>(); + StringBuilder builder = new StringBuilder(); + builder.Append(" SELECT COUNT(1) order_num, SUM(order_amount_total) order_amount_total FROM ( "); + builder.Append(" SELECT a.order_id, a.client_id, a.status, a.order_amount_total "); + //builder.Append(" , CASE WHEN b.update_time is null then TO_CHAR(a.create_time, 'yyyyMMdd') ELSE TO_CHAR(b.update_time, 'yyyyMMdd') END AS update_time "); + builder.Append(" FROM gw_order a "); + builder.Append(" LEFT JOIN ( "); + builder.Append(" SELECT order_id, max(audit_time) update_time FROM gw_order_audit goa "); + builder.Append(" GROUP BY order_id "); + builder.Append(" ) b ON b.order_id = a.order_id "); + builder.Append(" ) "); + builder.Append(" WHERE 1=1 AND status IN (0,1) "); + builder.Append(permissionsSQL); + + using (OracleDataReader reader = OracleHelper.ExecuteReader(builder.ToString(), OracleHelper.Connection)) + { + while (reader != null && ((DbDataReader)reader).Read()) + { + OracleReaderWrapper oracleReaderWrapper = new OracleReaderWrapper(reader); + int orderNum = oracleReaderWrapper.GetInt("ORDER_NUM", 0); + int orderAmountTotal = oracleReaderWrapper.GetInt("ORDER_AMOUNT_TOTAL", 0); + + Dictionary<string, object> map = new Dictionary<string, object>(); + map.Add("orderNum", orderNum); + map.Add("orderAmountTotal", orderAmountTotal); + list.Add(map); + } + } + return list; } //缁熻璁板綍鏁� @@ -310,7 +380,7 @@ o.OrderId = oracleReaderWrapper.GetString("ORDER_ID", ""); o.SpId = oracleReaderWrapper.GetString("SP_ID", ""); o.ClientId = oracleReaderWrapper.GetString("CLIENT_ID", ""); - o.Company = oracleReaderWrapper.GetString("COMPANY", ""); + o.Company = oracleReaderWrapper.GetString("Client_Name", ""); o.ClientName = oracleReaderWrapper.GetString("CLIENT_NAME", ""); o.ProductId = oracleReaderWrapper.GetString("PRODUCT_ID", ""); o.ProductName = oracleReaderWrapper.GetString("PRODUCT_NAME", ""); -- Gitblit v1.9.1