| | |
| | | |
| | | |
| | | //flag: 0-待审核订单(已提交、审核中);1-已完成订单(审核通过、审核不通过、取消) |
| | | public List<GwOrder> LoadInfoList(string spId, string clientId, string clientName, int flag, DateTime startDate, DateTime endDate, int pageSize, int PageIndex, out int recordcount) |
| | | public List<GwOrder> LoadInfoList(string spId, string clientId, string compay, int flag, DateTime startDate, DateTime endDate, int pageSize, int PageIndex, string permissionsSQL, out int recordcount) |
| | | { |
| | | |
| | | List<GwOrder> list = new List<GwOrder>(); |
| | |
| | | { |
| | | StringBuilder stringBuilder = new StringBuilder(); |
| | | stringBuilder.Append(" FROM ( "); |
| | | stringBuilder.Append("SELECT GWO.*, GWC.CLIENT_NAME "); |
| | | stringBuilder.Append("SELECT GWO.*, GWC.CLIENT_NAME, GWC.COMPANY, GWOA.AUDITOR "); |
| | | stringBuilder.Append(" FROM GW_ORDER GWO "); |
| | | stringBuilder.Append(" LEFT JOIN (select ORDER_ID, wm_concat(SU.USER_NAME) AUDITOR from (select ORDER_ID, AUDITOR FROM GW_ORDER_AUDIT order by ORDER_ID, AUDIT_SORT) GOA LEFT JOIN SYS_USER SU ON SU.ACCOUNT = GOA.AUDITOR group by ORDER_ID ) GWOA ON GWOA.ORDER_ID = GWO.ORDER_ID "); |
| | | stringBuilder.Append(" LEFT JOIN GW_SP GWS ON GWS.SP_ID = GWO.SP_ID "); |
| | | stringBuilder.Append(" LEFT JOIN GW_CLIENT GWC ON GWC.CLIENT_ID = GWO.CLIENT_ID "); |
| | | stringBuilder.Append(" WHERE 1=1 "); |
| | |
| | | { |
| | | stringBuilder.Append(" and GWO.CLIENT_ID like '%" + clientId + "%'"); |
| | | } |
| | | if ((clientName != null) && (clientName != "")) |
| | | if ((compay != null) && (compay != "")) |
| | | { |
| | | stringBuilder.Append(" and GWC.CLIENT_NAME like '%" + clientName + "%'"); |
| | | stringBuilder.Append(" and GWC.COMPANY like '%" + compay + "%'"); |
| | | } |
| | | //客户权限SQL脚本 |
| | | stringBuilder.Append(permissionsSQL); |
| | | |
| | | stringBuilder.Append(" ) T "); |
| | | |
| | | OracleParameter[] parameterArray = new OracleParameter[] { new OracleParameter(":START_TIME", startDate), new OracleParameter(":END_TIME", endDate) }; |
| | |
| | | } |
| | | |
| | | |
| | | //添加产品或产品分类信息 |
| | | //添加信息 |
| | | public bool Add(GwOrder o) |
| | | { |
| | | StringBuilder stringBuilder = new StringBuilder(); |
| | | stringBuilder.Append("INSERT INTO GW_ORDER ( "); |
| | | stringBuilder.Append(" ORDER_ID, SP_ID, CLIENT_ID, PRODUCT_ID, COMBO_ID, BASIC_NUM, GIVING_NUM, PRICE, ORDER_NUM_TOTAL, ORDER_AMOUNT_TOTAL, BEFORE_BALANCE_NUM "); |
| | | stringBuilder.Append(" ORDER_ID, SP_ID, CLIENT_ID, PRODUCT_ID, COMBO_ID, BASIC_NUM, GIVING_NUM, PRICE, ORDER_NUM_TOTAL, ORDER_AMOUNT_TOTAL, PAY_AMOUNT, BEFORE_BALANCE_NUM "); |
| | | stringBuilder.Append(" , CREATOR, CREATE_TIME, STATUS, REMARK "); |
| | | //stringBuilder.Append(" , AUDITOR, AUDIT_TIME "); |
| | | stringBuilder.Append(" ) "); |
| | | stringBuilder.Append(" VALUES (:ORDER_ID, :SP_ID, :CLIENT_ID, :PRODUCT_ID, :COMBO_ID, :BASIC_NUM, :GIVING_NUM, :PRICE, :ORDER_NUM_TOTAL, :ORDER_AMOUNT_TOTAL, :BEFORE_BALANCE_NUM "); |
| | | stringBuilder.Append(" VALUES (:ORDER_ID, :SP_ID, :CLIENT_ID, :PRODUCT_ID, :COMBO_ID, :BASIC_NUM, :GIVING_NUM, :PRICE, :ORDER_NUM_TOTAL, :ORDER_AMOUNT_TOTAL, :PAY_AMOUNT, :BEFORE_BALANCE_NUM "); |
| | | stringBuilder.Append(" , :CREATOR, :CREATE_TIME, :STATUS, :REMARK "); |
| | | //stringBuilder.Append(" , :AUDITOR, :AUDIT_TIME "); |
| | | stringBuilder.Append(" ) "); |
| | |
| | | new OracleParameter(":PRICE", (object)o.Price), |
| | | new OracleParameter(":ORDER_NUM_TOTAL", (object)o.OrderNumTotal), |
| | | new OracleParameter(":ORDER_AMOUNT_TOTAL", (object)o.OrderAmountTotal), |
| | | new OracleParameter(":PAY_AMOUNT", (object)o.PayAmount), |
| | | new OracleParameter(":BEFORE_BALANCE_NUM", (object)o.BeforeBalanceNum), |
| | | new OracleParameter(":CREATOR", (object)o.Creator), |
| | | new OracleParameter(":CREATE_TIME", (object)o.CreateTime), |
| | |
| | | return OracleHelper.ExecuteSql("update GW_ORDER SET STATUS = :STATUS where ORDER_ID=:ORDER_ID", OracleHelper.Connection, new OracleParameter(":STATUS", (object)status), new OracleParameter(":ORDER_ID", (object)orderId)) > 0; |
| | | } |
| | | |
| | | //更新产品或产品分类信息 |
| | | //更新订单修改前余额 |
| | | 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; |
| | | //status:4-取消 |
| | | return OracleHelper.ExecuteSql("update GW_ORDER SET BASIC_NUM=:BASIC_NUM, GIVING_NUM=:GIVING_NUM, ORDER_NUM_TOTAL=:ORDER_NUM_TOTAL, ORDER_AMOUNT_TOTAL=:ORDER_AMOUNT_TOTAL, PAY_AMOUNT=:PAY_AMOUNT, STATUS = :STATUS where ORDER_ID=:ORDER_ID", OracleHelper.Connection |
| | | , new OracleParameter(":BASIC_NUM", (object)basicNum) |
| | | , new OracleParameter(":GIVING_NUM", (object)givingNum) |
| | | , new OracleParameter(":ORDER_NUM_TOTAL", (object)orderNumTotal) |
| | | , new OracleParameter(":ORDER_AMOUNT_TOTAL", (object)orderAmountTotal) |
| | | , new OracleParameter(":PAY_AMOUNT", (object)payAmount) |
| | | , new OracleParameter(":STATUS", (object)orderStatus) |
| | | , new OracleParameter(":ORDER_ID", (object)orderId) |
| | | ) > 0; |
| | | } |
| | | |
| | | //更新信息 |
| | | public bool Update(GwOrder o) |
| | | { |
| | | OracleParameter[] cmdParms = new OracleParameter[] { |
| | |
| | | new OracleParameter(":PRICE", (object)o.Price), |
| | | new OracleParameter(":ORDER_NUM_TOTAL", (object)o.OrderNumTotal), |
| | | new OracleParameter(":ORDER_AMOUNT_TOTAL", (object)o.OrderAmountTotal), |
| | | new OracleParameter(":PAY_AMOUNT", (object)o.PayAmount), |
| | | new OracleParameter(":BEFORE_BALANCE_NUM", (object)o.BeforeBalanceNum), |
| | | new OracleParameter(":CREATOR", (object)o.Creator), |
| | | new OracleParameter(":CREATE_TIME", (object)o.CreateTime), |
| | |
| | | stringBuilder.Append(" , PRODUCT_ID =:PRODUCT_ID "); |
| | | stringBuilder.Append(" , COMBO_ID =:COMBO_ID "); |
| | | stringBuilder.Append(" , BASIC_NUM=:BASIC_NUM, GIVING_NUM=:GIVING_NUM, PRICE=:PRICE, ORDER_NUM_TOTAL=:ORDER_NUM_TOTAL, ORDER_AMOUNT_TOTAL=:ORDER_AMOUNT_TOTAL "); |
| | | stringBuilder.Append(" , BEFORE_BALANCE_NUM =:BEFORE_BALANCE_NUM, CREATOR=:CREATOR, CREATE_TIME=:CREATE_TIME "); |
| | | stringBuilder.Append(" , PAY_AMOUNT =:PAY_AMOUNT, BEFORE_BALANCE_NUM =:BEFORE_BALANCE_NUM, CREATOR=:CREATOR, CREATE_TIME=:CREATE_TIME "); |
| | | stringBuilder.Append(" , STATUS=:STATUS, REMARK=:REMARK "); |
| | | stringBuilder.Append(" WHERE ORDER_ID=:ORDER_ID "); |
| | | |
| | |
| | | GwOrder o = new GwOrder(); |
| | | if (string.IsNullOrEmpty(orderId)) |
| | | return o; |
| | | using (OracleDataReader reader = OracleHelper.ExecuteReader(string.Format("select * from GW_ORDER where 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()) |
| | | { |
| | |
| | | } |
| | | } |
| | | 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 where update_time>=TO_date('{DateTime.Now.Date}','yyyy-MM-dd HH24:mi:ss') "); |
| | | 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; |
| | | } |
| | | |
| | | //统计记录数 |
| | |
| | | OracleReaderWrapper oracleReaderWrapper = new OracleReaderWrapper(reader); |
| | | o.OrderId = oracleReaderWrapper.GetString("ORDER_ID", ""); |
| | | o.SpId = oracleReaderWrapper.GetString("SP_ID", ""); |
| | | o.ClientId = oracleReaderWrapper.GetString("CLIENT_ID", ""); |
| | | o.ClientId = oracleReaderWrapper.GetString("CLIENT_ID", ""); |
| | | o.Company = oracleReaderWrapper.GetString("COMPANY", ""); |
| | | o.ClientName = oracleReaderWrapper.GetString("CLIENT_NAME", ""); |
| | | o.ProductId = oracleReaderWrapper.GetString("PRODUCT_ID", ""); |
| | | o.ProductName = oracleReaderWrapper.GetString("PRODUCT_NAME", ""); |
| | | o.ComboId = oracleReaderWrapper.GetString("COMBO_ID", ""); |
| | | o.BasicNum = oracleReaderWrapper.GetInt("BASIC_NUM", 0); |
| | | o.GivingNum = oracleReaderWrapper.GetInt("GIVING_NUM", 0); |
| | | o.Price = oracleReaderWrapper.GetInt("PRICE", 0); |
| | | o.OrderNumTotal = oracleReaderWrapper.GetInt("ORDER_NUM_TOTAL", 0); |
| | | o.OrderAmountTotal = oracleReaderWrapper.GetInt("ORDER_AMOUNT_TOTAL", 0); |
| | | o.PayAmount = oracleReaderWrapper.GetInt("PAY_AMOUNT", 0); |
| | | o.BeforeBalanceNum = oracleReaderWrapper.GetInt("BEFORE_BALANCE_NUM", 0); |
| | | o.Creator = oracleReaderWrapper.GetString("CREATOR", ""); |
| | | o.CreateTime = oracleReaderWrapper.GetDateTime("CREATE_TIME"); |
| | | //o.Auditor = oracleReaderWrapper.GetString("AUDITOR", ""); |
| | | o.Auditor = oracleReaderWrapper.GetString("AUDITOR", ""); //各级审核人 |
| | | //o.AuditTime = oracleReaderWrapper.GetDateTime("AUDIT_TIME"); |
| | | o.Status = oracleReaderWrapper.GetInt("STATUS", 0); |
| | | o.Remark = oracleReaderWrapper.GetString("REMARK", ""); |