From 97aa542d1a1cdcb46b2942026d28b7e5dca6c6c0 Mon Sep 17 00:00:00 2001 From: yzh <snbbt@21cn.com> Date: 星期一, 20 六月 2022 21:10:23 +0800 Subject: [PATCH] 首页:通道状态 --- web/Dao/GwAuditCacheDao.cs | 48 +++ web/web/Bin/Dao.dll | 0 web/web/GwStatisV3.ashx | 43 +++ web/Dao/GwOrderDao.cs | 74 +++++ web/Dao/GwStatisV3Dao.cs | 152 +++++++++++ web/Dao/GwEventLogDao.cs | 80 ++++++ web/web/Welcome.aspx | 256 +++++++++++++++++++ web/Lib/Dao.dll | 0 web/web/Index.aspx | 9 web/Dao/Dao.csproj | 1 web/web/Welcome.aspx.cs | 21 + web/Dao/GwSpPrePatternDao.cs | 23 + web/.vs/Web/v16/.suo | 0 web/web/SysDictData.ashx | 2 web/web/SysRoleMenu.ashx | 59 ++++ web/Lib/Dao.pdb | 0 web/web/Bin/Dao.pdb | 0 17 files changed, 744 insertions(+), 24 deletions(-) diff --git a/web/.vs/Web/v16/.suo b/web/.vs/Web/v16/.suo index c09ba32..b55a07d 100644 --- a/web/.vs/Web/v16/.suo +++ b/web/.vs/Web/v16/.suo Binary files differ diff --git a/web/Dao/Dao.csproj b/web/Dao/Dao.csproj index 861f64e..110d560 100644 --- a/web/Dao/Dao.csproj +++ b/web/Dao/Dao.csproj @@ -79,6 +79,7 @@ <Compile Include="GwMobileAreaDao.cs" /> <Compile Include="GwMoRouteDao.cs" /> <Compile Include="GwOrderAuditDao.cs" /> + <Compile Include="GwEventLogDao.cs" /> <Compile Include="GwOrderDao.cs" /> <Compile Include="SysRoleMenuDao.cs" /> <Compile Include="SysDictDataDao.cs" /> diff --git a/web/Dao/GwAuditCacheDao.cs b/web/Dao/GwAuditCacheDao.cs index f95e3ce..b012f24 100644 --- a/web/Dao/GwAuditCacheDao.cs +++ b/web/Dao/GwAuditCacheDao.cs @@ -7,6 +7,7 @@ using System; using System.Collections.Generic; using System.Data; + using System.Data.Common; using System.Runtime.InteropServices; using System.Text; using System.Text.RegularExpressions; @@ -190,5 +191,52 @@ OracleParameter[] parameterArray = new OracleParameter[] { new OracleParameter(":AUDITING_STATUS", (int)status), new OracleParameter(":HASH_CODE", hashCode), new OracleParameter(":OP_ID", opID) }; return (OracleHelper.ExecuteSql(str, OracleHelper.Connection, parameterArray) > 0); } + + //鍙戦�佸唴瀹�:寰呭鏍哥粺璁� + public List<Dictionary<string, object>> GetSendAudit(string permissionsSQL) + { + List<Dictionary<string, object>> list = new List<Dictionary<string, object>>(); + StringBuilder builder = new StringBuilder(); + builder.Append(" SELECT COUNT(1) COUNT FROM GW_AUDIT_CACHE WHERE AUDITING_STATUS =0 "); + builder.Append(permissionsSQL); + + using (OracleDataReader reader = OracleHelper.ExecuteReader(builder.ToString(), OracleHelper.Connection)) + { + while (reader != null && ((DbDataReader)reader).Read()) + { + OracleReaderWrapper oracleReaderWrapper = new OracleReaderWrapper(reader); + int count = oracleReaderWrapper.GetInt("COUNT", 0); + + Dictionary<string, object> map = new Dictionary<string, object>(); + map.Add("count", count); + list.Add(map); + } + } + return list; + } + + //鍙戦�佸唴瀹�:浜屾寰呭鏍哥粺璁� + public List<Dictionary<string, object>> GetSendAuditTow(string permissionsSQL) + { + List<Dictionary<string, object>> list = new List<Dictionary<string, object>>(); + StringBuilder builder = new StringBuilder(); + builder.Append(" SELECT COUNT(1) COUNT FROM GW_AUDIT_CACHE WHERE AUDITING_STATUS =10 "); + builder.Append(permissionsSQL); + + using (OracleDataReader reader = OracleHelper.ExecuteReader(builder.ToString(), OracleHelper.Connection)) + { + while (reader != null && ((DbDataReader)reader).Read()) + { + OracleReaderWrapper oracleReaderWrapper = new OracleReaderWrapper(reader); + int count = oracleReaderWrapper.GetInt("COUNT", 0); + + Dictionary<string, object> map = new Dictionary<string, object>(); + map.Add("count", count); + list.Add(map); + } + } + return list; + } } + } diff --git a/web/Dao/GwEventLogDao.cs b/web/Dao/GwEventLogDao.cs new file mode 100644 index 0000000..36721fd --- /dev/null +++ b/web/Dao/GwEventLogDao.cs @@ -0,0 +1,80 @@ +锘縰sing System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using Model; +using Common; +using Oracle.DataAccess.Client; +using System.Data.Common; + +namespace Dao +{ + /// <summary> + /// 鏁版嵁搴撲簨浠堕�氱煡琛ㄦ搷浣� + /// </summary> + public class GwEventLogDao : IDisposable + { + public void Dispose() + { + } + + private static GwEventLogDao _instance; + public static GwEventLogDao Instance + { + get { + if (_instance == null) + { + _instance = new GwEventLogDao(); + } + return _instance; + } + } + + //閫氶亾鐘舵�� + public List<Dictionary<string, object>> GetOpStatus(string permissionsSQL) + { + List<Dictionary<string, object>> list = new List<Dictionary<string, object>>(); + StringBuilder builder = new StringBuilder(); + builder.Append(" SELECT GEL.*, GWO.OP_NAME FROM GW_EVENT_LOG GEL "); + builder.Append(" LEFT JOIN GW_OP GWO ON GWO.OP_ID = GEL.OP_ID "); + builder.Append(" WHERE 1=1 "); + //builder.Append(" AND EVENT_TYPE = 'OPWARING' AND ASSIGNED_TO = 'WEB' "); + builder.Append(permissionsSQL); + builder.Append(" ORDER BY HANDLE_FLAG, HANDLE_TIME DESC "); + + using (OracleDataReader reader = OracleHelper.ExecuteReader(builder.ToString(), OracleHelper.Connection)) + { + while (reader != null && ((DbDataReader)reader).Read()) + { + OracleReaderWrapper oracleReaderWrapper = new OracleReaderWrapper(reader); + int opId = oracleReaderWrapper.GetInt("OP_ID", 0); + string opName = oracleReaderWrapper.GetString("OP_NAME", ""); + int apId = oracleReaderWrapper.GetInt("AP_ID", 0); + string clientId = oracleReaderWrapper.GetString("CLIENT_ID", ""); + string spId = oracleReaderWrapper.GetString("SP_ID", ""); + DateTime eventTime = oracleReaderWrapper.GetDateTime("EVENT_TIME"); + string eventType = oracleReaderWrapper.GetString("EVENT_TYPE", ""); + string content = oracleReaderWrapper.GetString("CONTENT", ""); + int handleFlag = oracleReaderWrapper.GetInt("HANDLE_FLAG", 0); + DateTime handleTime = oracleReaderWrapper.GetDateTime("HANDLE_TIME"); + + Dictionary<string, object> map = new Dictionary<string, object>(); + map.Add("opId", opId); + map.Add("opName", opName); + map.Add("apId", apId); + map.Add("clientId", clientId); + map.Add("spId", spId); + map.Add("eventTime", eventTime); + map.Add("eventType", eventType); + map.Add("content", content); + map.Add("handleFlag", handleFlag); + map.Add("handleTime", handleTime); + list.Add(map); + } + } + return list; + } + + } + +} diff --git a/web/Dao/GwOrderDao.cs b/web/Dao/GwOrderDao.cs index 0e1a091..d2df31a 100644 --- a/web/Dao/GwOrderDao.cs +++ b/web/Dao/GwOrderDao.cs @@ -169,7 +169,7 @@ } - //娣诲姞浜у搧鎴栦骇鍝佸垎绫讳俊鎭� + //娣诲姞淇℃伅 public bool Add(GwOrder o) { StringBuilder stringBuilder = new StringBuilder(); @@ -241,7 +241,7 @@ ) > 0; } - //鏇存柊浜у搧鎴栦骇鍝佸垎绫讳俊鎭� + //鏇存柊淇℃伅 public bool Update(GwOrder o) { OracleParameter[] cmdParms = new OracleParameter[] { @@ -296,6 +296,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; + } + //缁熻璁板綍鏁� private int ReadCount(OracleDataReader reader) { diff --git a/web/Dao/GwSpPrePatternDao.cs b/web/Dao/GwSpPrePatternDao.cs index 36e9c5d..d55dcc7 100644 --- a/web/Dao/GwSpPrePatternDao.cs +++ b/web/Dao/GwSpPrePatternDao.cs @@ -125,6 +125,29 @@ return list; } + //璐﹀彿鎶ュ鍐呭寰呭鏍哥粺璁� + public List<Dictionary<string, object>> GetSpPrePatternAudit(string permissionsSQL) + { + List<Dictionary<string, object>> list = new List<Dictionary<string, object>>(); + StringBuilder builder = new StringBuilder(); + builder.Append(" SELECT COUNT(1) COUNT FROM GW_SP_PREPATTERN WHERE Audit_Status =0 "); + builder.Append(permissionsSQL); + + using (OracleDataReader reader = OracleHelper.ExecuteReader(builder.ToString(), OracleHelper.Connection)) + { + while (reader != null && ((DbDataReader)reader).Read()) + { + OracleReaderWrapper oracleReaderWrapper = new OracleReaderWrapper(reader); + int count = oracleReaderWrapper.GetInt("COUNT", 0); + + Dictionary<string, object> map = new Dictionary<string, object>(); + map.Add("count", count); + list.Add(map); + } + } + return list; + } + private int ReadCount(OracleDataReader reader) { return new OracleReaderWrapper(reader).GetInt("count", 0); diff --git a/web/Dao/GwStatisV3Dao.cs b/web/Dao/GwStatisV3Dao.cs index f177d7a..dbedbcf 100644 --- a/web/Dao/GwStatisV3Dao.cs +++ b/web/Dao/GwStatisV3Dao.cs @@ -1,5 +1,6 @@ 锘� using Common; +using Model; using Newtonsoft.Json; using Newtonsoft.Json.Linq; using Oracle.DataAccess.Client; @@ -13,7 +14,11 @@ { public class GwStatisV3Dao : IDisposable { - public DataTable Query(string clientID) + public void Dispose() + { + } + + public DataTable Query(string clientID) { return OracleHelper.Execute("SELECT * FROM\r\n(\r\nselect STATIS_TIME,\r\nNVL(SUM(AP_STATUS0),0) as AP_STATUS0,\r\nNVL(SUM(AP_STATUS1),0) as AP_STATUS1,\r\nNVL(SUM(AP_STATUS2),0) as AP_STATUS2,\r\nNVL(SUM(AP_STATUS3),0) as AP_STATUS3,\r\nNVL(SUM(AP_STATUS4),0) as AP_STATUS4,\r\nNVL(SUM(AP_STATUS5),0) as AP_STATUS5\r\n from GW_SM_STATIS_V3 where CLIENT_ID=:CLIENT_ID GROUP BY STATIS_TIME ORDER BY STATIS_TIME DESC) WHERE ROWNUM < 30 ORDER BY STATIS_TIME ASC", OracleHelper.Connection, new OracleParameter(":CLIENT_ID", (object) clientID)); } @@ -148,11 +153,148 @@ return list; } - public void Dispose() - { - } + //娲诲姩瀹㈡埛锛氬鎴�-鍙戦�侀噺銆愬綋鏃ャ�� + public List<Dictionary<string, object>> GetActiveClientDay(string permissionsSQL) + { + List<Dictionary<string, object> > list = new List<Dictionary<string, object> >(); + StringBuilder builder = new StringBuilder(); + builder.Append(" SELECT client_id, company, create_time, SUM(ap_status0 ) ap_status0 FROM ( "); + builder.Append(" SELECT V3.client_id, gc.COMPANY, TO_CHAR(V3.create_time, 'yyyyMMdd') create_time, (ap_status0 + ap_status1 + ap_status2 + ap_status3 + ap_status4 + ap_status5) ap_status0 "); + builder.Append(" FROM (SELECT * FROM GW_SM_STATIS_V3 "); + builder.Append(" WHERE 1=1 "); + builder.Append(" AND TO_CHAR(create_time, 'yyyyMMdd')=:CREATE_TIME "); + builder.Append( permissionsSQL ); + builder.Append(" ) V3 "); + builder.Append(" LEFT JOIN gw_client gc on gc.client_id = V3.client_id "); + builder.Append(" ) aa "); + builder.Append(" GROUP BY client_id, company, create_time "); + builder.Append(" ORDER BY ap_status0 DESC "); - public int GetTotalCount(string clientID, DateTime dateTime) + /** + using (OracleDataReader reader = OracleHelper.ExecuteReader("select count(*) as count from (" + builder.ToString() + ") T", OracleHelper.Connection)) + { + while (reader.Read()) + { + OracleReaderWrapper wrapper = new OracleReaderWrapper(reader); + recordcount = wrapper.GetInt("count", 0); + } + }**/ + using (OracleDataReader reader = OracleHelper.ExecuteReader(builder.ToString(), OracleHelper.Connection, new OracleParameter(":CREATE_TIME", (object)DateTime.Now.ToString("yyyyMMdd"))) ) + //using (OracleDataReader reader = OracleHelper.ExecuteReader(builder.ToString(), OracleHelper.Connection)) + //using (OracleDataReader reader = OracleHelper.ExecuteReader(PubConstant.doOracleSql(PageIndex, pageSize, recordcount, builder.ToString()).ToString() , OracleHelper.Connection )) + { + while (reader != null && ((DbDataReader)reader).Read()) + { + OracleReaderWrapper oracleReaderWrapper = new OracleReaderWrapper(reader); + string clientId = oracleReaderWrapper.GetString("CLIENT_ID", ""); + string company = oracleReaderWrapper.GetString("COMPANY", ""); + int ap_status0 = oracleReaderWrapper.GetInt("AP_STATUS0", 0); + + Dictionary<string, object> map = new Dictionary<string, object>(); + map.Add("clientId", clientId); + map.Add("company", company); + map.Add("ap_status0", ap_status0); + list.Add(map); + } + } + return list; + } + + //閫氶亾-鍙戦�侀噺銆愬綋鏃ャ�� + public List<Dictionary<string, object>> GetOpSendDay(string permissionsSQL) + { + List<Dictionary<string, object>> list = new List<Dictionary<string, object>>(); + StringBuilder builder = new StringBuilder(); + builder.Append(" SELECT OP_ID, OP_NAME, create_time, SUM(op_status0 ) op_status0 FROM ( "); + builder.Append(" SELECT V3.op_id, gwo.op_name, TO_CHAR(V3.create_time, 'yyyyMMdd') create_time, (op_status0 + op_status1 + op_status2 + op_status3 + op_status4 + op_status5) op_status0 "); + builder.Append(" FROM (SELECT * FROM GW_SM_STATIS_V3 "); + builder.Append(" WHERE 1=1 "); + builder.Append(" AND TO_CHAR(create_time, 'yyyyMMdd')=:CREATE_TIME "); + builder.Append(permissionsSQL); + builder.Append(" ) V3 "); + builder.Append(" LEFT JOIN gw_op gwo on gwo.op_id = V3.op_id "); + builder.Append(" ) aa "); + builder.Append(" GROUP BY op_id, op_name, create_time "); + builder.Append(" ORDER BY op_status0 DESC "); + + /** + using (OracleDataReader reader = OracleHelper.ExecuteReader("select count(*) as count from (" + builder.ToString() + ") T", OracleHelper.Connection)) + { + while (reader.Read()) + { + OracleReaderWrapper wrapper = new OracleReaderWrapper(reader); + recordcount = wrapper.GetInt("count", 0); + } + }**/ + using (OracleDataReader reader = OracleHelper.ExecuteReader(builder.ToString(), OracleHelper.Connection, new OracleParameter(":CREATE_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); + string opId = oracleReaderWrapper.GetString("OP_ID", ""); + string opName = oracleReaderWrapper.GetString("OP_NAME", ""); + int op_status0 = oracleReaderWrapper.GetInt("OP_STATUS0", 0); + + Dictionary<string, object> map = new Dictionary<string, object>(); + map.Add("opId", opId); + map.Add("opName", opName); + map.Add("op_status0", op_status0); + list.Add(map); + } + } + return list; + } + + //浜у搧-鍙戦�侀噺銆愬綋鏃ャ�� + public List<Dictionary<string, object>> GetProductSendDay(string permissionsSQL) + { + List<Dictionary<string, object>> list = new List<Dictionary<string, object>>(); + StringBuilder builder = new StringBuilder(); + builder.Append(" SELECT PRODUCT_ID, PRODUCT_NAME, create_time, SUM(ap_status0 ) ap_status0 FROM ( "); + builder.Append(" SELECT gs.product_id, gp.name product_name, TO_CHAR(V3.create_time, 'yyyyMMdd') create_time, (ap_status0 + ap_status1 + ap_status2 + ap_status3 + ap_status4 + ap_status5) ap_status0 "); + builder.Append(" FROM (SELECT * FROM GW_SM_STATIS_V3 "); + builder.Append(" WHERE 1=1 "); + builder.Append(" AND TO_CHAR(create_time, 'yyyyMMdd')=:CREATE_TIME "); + builder.Append(permissionsSQL); + builder.Append(" ) V3 "); + builder.Append(" LEFT JOIN gw_sp gs on gs.sp_id = V3.sp_id "); + builder.Append(" LEFT JOIN gw_product gp on gp.id = gs.product_id "); + builder.Append(" ) aa "); + builder.Append(" GROUP BY PRODUCT_ID, PRODUCT_NAME, create_time "); + builder.Append(" ORDER BY ap_status0 DESC "); + + /** + using (OracleDataReader reader = OracleHelper.ExecuteReader("select count(*) as count from (" + builder.ToString() + ") T", OracleHelper.Connection)) + { + while (reader.Read()) + { + OracleReaderWrapper wrapper = new OracleReaderWrapper(reader); + recordcount = wrapper.GetInt("count", 0); + } + }**/ + using (OracleDataReader reader = OracleHelper.ExecuteReader(builder.ToString(), OracleHelper.Connection, new OracleParameter(":CREATE_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); + string productId = oracleReaderWrapper.GetString("PRODUCT_ID", ""); + string productName = oracleReaderWrapper.GetString("PRODUCT_NAME", ""); + int ap_status0 = oracleReaderWrapper.GetInt("AP_STATUS0", 0); + + Dictionary<string, object> map = new Dictionary<string, object>(); + map.Add("productId", productId); + map.Add("productName", productName); + map.Add("ap_status0", ap_status0); + list.Add(map); + } + } + return list; + } + + + public int GetTotalCount(string clientID, DateTime dateTime) { return Convert.ToInt32(OracleHelper.ExecuteScalar("SELECT NVL(SUM(AP_STATUS0 + AP_STATUS1 + AP_STATUS2 + AP_STATUS3 + AP_STATUS4 + AP_STATUS5),0) FROM GW_SM_STATIS_V3 WHERE CLIENT_ID=:CLIENT_ID AND STATIS_TIME >= :STATIS_TIME", OracleHelper.Connection, new OracleParameter(":CLIENT_ID", (object) clientID), new OracleParameter(":STATIS_TIME", (object) dateTime))); } diff --git a/web/Lib/Dao.dll b/web/Lib/Dao.dll index 19eb874..ab96b82 100644 --- a/web/Lib/Dao.dll +++ b/web/Lib/Dao.dll Binary files differ diff --git a/web/Lib/Dao.pdb b/web/Lib/Dao.pdb index 2be4741..87cb143 100644 --- a/web/Lib/Dao.pdb +++ b/web/Lib/Dao.pdb Binary files differ diff --git a/web/web/Bin/Dao.dll b/web/web/Bin/Dao.dll index 19eb874..ab96b82 100644 --- a/web/web/Bin/Dao.dll +++ b/web/web/Bin/Dao.dll Binary files differ diff --git a/web/web/Bin/Dao.pdb b/web/web/Bin/Dao.pdb index 2be4741..87cb143 100644 --- a/web/web/Bin/Dao.pdb +++ b/web/web/Bin/Dao.pdb Binary files differ diff --git a/web/web/GwStatisV3.ashx b/web/web/GwStatisV3.ashx index e3e87ce..465c896 100644 --- a/web/web/GwStatisV3.ashx +++ b/web/web/GwStatisV3.ashx @@ -10,6 +10,11 @@ public class GwStatisV3 : PageHandler<SysUser> { private GwStatisV3Dao _Dao = new GwStatisV3Dao(); + private GwOrderDao orderDao = new GwOrderDao(); + private GwSpPrePatternDao spPrePatternDao = new GwSpPrePatternDao(); + private GwAuditCacheDao gwAuditCacheDao = new GwAuditCacheDao(); + private GwEventLogDao gwEventLogDao = new GwEventLogDao(); + private int _userId = -1; private string _userType = ""; private string _account = ""; @@ -34,10 +39,46 @@ private JsonPageResult GetRealtimeStatis5m(PageContext<SysUser> context) { + + string permissionsSQL = new GwClientDao().GetClientPermissions(_userId, _userType, null); + var oplist = _Dao.GetRealtimeStatis5mOut(); var aplist = _Dao.GetRealtimeStatis5mIn(); + + //娲诲姩瀹㈡埛锛氬鎴�-鍙戦�侀噺銆愬綋鏃ャ�� + var activeClientDayList = _Dao.GetActiveClientDay(permissionsSQL); + //閫氶亾-鍙戦�侀噺銆愬綋鏃ャ�� + var opSendDayList = _Dao.GetOpSendDay(permissionsSQL); + //浜у搧-鍙戦�侀噺銆愬綋鏃ャ�� + var productSendDayList = _Dao.GetProductSendDay(permissionsSQL); + //璁㈠崟:浠婃棩宸插畬鎴愯鍗� + var orderDayList = orderDao.GetOrderDay(permissionsSQL); + //璁㈠崟:寰呭鏍歌鍗� + var orderAuditList = orderDao.GetOrderAudit(permissionsSQL); + //鍙戦�佸唴瀹�:寰呭鏍� + var sendAuditList = gwAuditCacheDao.GetSendAudit(permissionsSQL); + //鍙戦�佸唴瀹�:浜屾寰呭鏍� + var sendAuditTowList = gwAuditCacheDao.GetSendAuditTow(permissionsSQL); + //璐﹀彿鎶ュ鍐呭:寰呭鏍� + var spPrePatternAuditList = spPrePatternDao.GetSpPrePatternAudit(permissionsSQL); + //閫氶亾鐘舵�� + var opStatusList = gwEventLogDao.GetOpStatus(permissionsSQL); + + - return new JsonPageResult(true, new { ApList = aplist, OpList = oplist } ); + return new JsonPageResult(true, new { + ApList = aplist, + OpList = oplist, + ActiveClientDayList = activeClientDayList, + OpSendDayList = opSendDayList, + ProductSendDayList = productSendDayList, + OrderDayList = orderDayList, + OrderAuditList = orderAuditList, + SendAuditList = sendAuditList, + SendAuditTowList = sendAuditTowList, + SpPrePatternAuditList = spPrePatternAuditList, + OpStatusList = opStatusList + } ); } private string GetApName(List<GwAp>aplist, int apID) { diff --git a/web/web/Index.aspx b/web/web/Index.aspx index 7cc1ae5..abb283a 100644 --- a/web/web/Index.aspx +++ b/web/web/Index.aspx @@ -120,9 +120,8 @@ </a> <ul class="nav nav-second-level"> - <li><a href="GwAuditCache.aspx?StatusFlag=0" class="J_menuItem">寰呭鏍稿唴瀹�</a> </li> - <li><a href="GwSpPrePattern.aspx" class="J_menuItem">甯愬彿鎶ュ鍐呭瀹℃牳</a> </li> - + <li><a href="GwAuditCache.aspx?StatusFlag=0" class="J_menuItem" id="MenuId_GwAuditCache">寰呭鏍稿唴瀹�</a> </li> + <li><a href="GwSpPrePattern.aspx" class="J_menuItem" id="MenuId_GwSpPrePattern">甯愬彿鎶ュ鍐呭瀹℃牳</a> </li> </ul> </li> @@ -182,8 +181,8 @@ <span class="fa arrow"></span> </a> <ul class="nav nav-second-level"> - <li><a href="GwOrderComplete.aspx" class="J_menuItem">宸插畬鎴愯鍗�</a> </li> - <li><a href="GwOrderAudit.aspx" class="J_menuItem">寰呭鏍歌鍗�</a> </li> + <li><a href="GwOrderComplete.aspx" class="J_menuItem" id="MenuId_GwOrderComplete">宸插畬鎴愯鍗�</a> </li> + <li><a href="GwOrderAudit.aspx" class="J_menuItem" id="MenuId_GwOrderAudit">寰呭鏍歌鍗�</a> </li> </ul> </li> diff --git a/web/web/SysDictData.ashx b/web/web/SysDictData.ashx index 69fadbf..eca73cd 100644 --- a/web/web/SysDictData.ashx +++ b/web/web/SysDictData.ashx @@ -68,7 +68,7 @@ str1 += "<tr>"; str1 += "<td>" + bean.DictValue + "</td>"; str1 += "<td>" + bean.DictLabel + "</td>"; - str1 += "<td>" + bean.DictType + "</td>"; + str1 += "<td>" + SysDictTypeToName(bean.DictType) + "</td>"; str1 += "<td>" + bean.DictSort + "</td>"; str1 += "<td>" + (bean.ParanSource == 0 ? "绯荤粺鍐呯疆" : "鐢ㄦ埛娣诲姞") + "</td>"; str1 += "<td>" + SysUserName(string.IsNullOrEmpty(bean.CreateBy)? 0: int.Parse(bean.CreateBy) ) + "</td>"; diff --git a/web/web/SysRoleMenu.ashx b/web/web/SysRoleMenu.ashx new file mode 100644 index 0000000..2a0b215 --- /dev/null +++ b/web/web/SysRoleMenu.ashx @@ -0,0 +1,59 @@ +锘�<%@ WebHandler Language="C#" Class="SysRoleMenuHandler" %> +using Common; +using Dao; +using Model; +// using Newtonsoft.Json; +//using Newtonsoft.Json.Linq; +using System; +using System.Collections.Generic; +using Newtonsoft.Json; + +public class SysRoleMenuHandler : PageHandler<SysUser> +{ + private SysRoleMenuDao _Dao = new SysRoleMenuDao(); + + private List<SysUser> _SysUserList; + + public override JsonPageResult ProcessRequestInternal(PageContext<SysUser> context) + { + string @string = context.GetString("action"); + switch (@string) + { + //case "update": + // return this.Update(context); //淇敼 + case "loadRoleMenuList": + return this.LoadRoleMenuList(context); //鑾峰彇瑙掕壊鏉冮檺鍒楄〃 + case "updatePermission": + return this.UpdatePermission(context); //淇濆瓨瑙掕壊鏉冮檺 + + default: + throw new Exception("Invalid Action=" + @string); + } + } + + private JsonPageResult LoadRoleMenuList(PageContext<SysUser> context) + { + //context.CheckRight("104", FailedOperation.PromptOnly); + string roleId = context.GetString("roleId"); + if(string.IsNullOrEmpty(roleId)) + throw new ArgumentException("鐢ㄦ埛瑙掕壊涓嶈兘涓虹┖锛岃杈撳叆锛�"); + + return new JsonPageResult(true, (object) this._Dao.LoadRoleMenuList(roleId).Keys); + } + + private JsonPageResult UpdatePermission(PageContext<SysUser> context) + { + //context.CheckRight("1042", FailedOperation.PromptOnly); + string @string = context.GetString("menuIDArray"); + string roleId = context.GetString("roleId"); + string[] menuIDArray = JsonConvert.DeserializeObject<string[]>(@string); + if (menuIDArray == null) + throw new ArgumentException("鑿滃崟鏁版嵁寮傚父锛�"); + if (string.IsNullOrEmpty(roleId) ) + throw new ArgumentException("鐢ㄦ埛瑙掕壊鍙傛暟寮傚父锛�"); + + this._Dao.UpdatePermission(roleId, menuIDArray); + return new JsonPageResult(true, (object) "淇濆瓨鏉冮檺鎴愬姛锛�"); + } + +} \ No newline at end of file diff --git a/web/web/Welcome.aspx b/web/web/Welcome.aspx index deabbf1..484ddde 100644 --- a/web/web/Welcome.aspx +++ b/web/web/Welcome.aspx @@ -1,6 +1,27 @@ 锘�<%@ Page Language="C#" masterpagefile="~/Main.master" AutoEventWireup="true" CodeFile="Welcome.aspx.cs" Inherits="Welcome" %> <asp:Content ID="Content1" ContentPlaceHolderID="head" runat="Server"> - <script> + <script type="text/javascript" src="js/contabs.min.js"></script> + + <style type="text/css"> + .dotRed { + //position: absolute; + width: 15px; + height: 15px; + border-radius: 100%; + background: #FF0000; + //box-shadow: 0 2px 4px 0 rgba(0, 0, 0, .2); + } + + .dotGreen { + //position: absolute; + width: 15px; + height: 15px; + border-radius: 100%; + background: #00FF00; + //box-shadow: 0 2px 4px 0 rgba(0, 0, 0, .2); + } + </style> + <script type="text/javascript"> $(function () { function getClass(b) { return b ? "label m-b label-warning" : "label m-b label-primary"; @@ -11,8 +32,99 @@ setTimeout(refreshStatis, 50000); } else { + $.post("gwstatisv3.ashx", { action: "getRealtimeStatis5m" }, function (r) { + if (r.OK) { + //娲诲姩瀹㈡埛鍓峏涓細瀹㈡埛-鍙戦�侀噺銆愬綋鏃ャ�� + var activeClientDayhtml = []; + + $.each(r.Message.ActiveClientDayList, function (i) { + activeClientDayhtml.push("<tr>"); + activeClientDayhtml.push("<td>" + this.clientId + "</td>"); + activeClientDayhtml.push("<td>" + this.company + "</td>"); + activeClientDayhtml.push("<td><span class='" + getClass(false) + "'>" + this.ap_status0 + "</span></td>"); + activeClientDayhtml.push("</tr>"); + }); + + $("#activeClientDayTable tbody").html(activeClientDayhtml.join("\n")); + + //閫氶亾-鍙戦�侀噺銆愬綋鏃ャ�� + var opSendDayhtml = []; + + $.each(r.Message.OpSendDayList, function (i) { + opSendDayhtml.push("<tr>"); + opSendDayhtml.push("<td>" + this.opId + "</td>"); + opSendDayhtml.push("<td>" + this.opName + "</td>"); + opSendDayhtml.push("<td><span class='" + getClass(false) + "'>" + this.op_status0 + "</span></td>"); + opSendDayhtml.push("</tr>"); + }); + + $("#opSendDayTable tbody").html(opSendDayhtml.join("\n")); + + //浜у搧-鍙戦�侀噺銆愬綋鏃ャ�� + var productSendDayhtml = []; + + $.each(r.Message.ProductSendDayList, function (i) { + productSendDayhtml.push("<tr>"); + productSendDayhtml.push("<td>" + this.productName + "</td>"); + productSendDayhtml.push("<td><span class='" + getClass(false) + "'>" + this.ap_status0 + "</span></td>"); + productSendDayhtml.push("</tr>"); + }); + + $("#productSendDayTable tbody").html(productSendDayhtml.join("\n")); + + //璁㈠崟 + var orderhtml = []; + $.each(r.Message.OrderDayList, function (i) { + orderhtml.push("<tr>"); + orderhtml.push("<td>浠婃棩宸插畬鎴� <a href='javascript:;' onclick='doTabOpen(\"MenuId_GwOrderComplete\")' data-id='{0}' class='btn btn-success btn-xs'><u>" + this.orderNum + " </u></a>涓鍗曪紝鎬婚噾棰濓細<span class='" + getClass(false) + "'>" + this.orderAmountTotal/1000 + "</span> 鍏�</td>"); + orderhtml.push("</tr>"); + }); + + $.each(r.Message.OrderAuditList, function (i) { + orderhtml.push("<tr>"); + orderhtml.push("<td>寰呭鎵� <a href='javascript:;' onclick='doTabOpen(\"MenuId_GwOrderAudit\")' data-id='{0}' class='btn btn-success btn-xs'><u>" + this.orderNum + " </u></a>涓鍗曪紝鎬婚噾棰濓細<span class='" + getClass(false) + "'>" + this.orderAmountTotal / 1000 + "</span> 鍏�</td>"); + orderhtml.push("</tr>"); + }); + $("#orderTable tbody").html(orderhtml.join("\n")); + + //寰呭鏍稿彂閫� + var sendAudithtml = []; + $.each(r.Message.SendAuditList, function (i) { + sendAudithtml.push("<tr>"); + sendAudithtml.push("<td>寰呭鏍哥煭淇� <a href='javascript:;' onclick='doTabOpen(\"MenuId_GwAuditCache\")' data-id='{0}' class='btn btn-success btn-xs'>" + this.count + " </a>鏉★紝璇风珛鍗冲鐞�</td>"); + sendAudithtml.push("</tr>"); + }); + + $.each(r.Message.SendAuditTowList, function (i) { + sendAudithtml.push("<tr>"); + //sendAudithtml.push("<td>寰呬簩娆¢壌瀹氱煭淇� <a href='GwAuditCache.aspx?StatusFlag=0&AuditingStatus=10' onclick='doTabOpen(\"MenuId_GwAuditCache\")' data-id='{0}' class='btn btn-success btn-xs'>" + this.count + " </a>鏉★紝璇风珛鍗冲鐞�</td>"); + sendAudithtml.push("<td>寰呬簩娆¢壌瀹氱煭淇� <a href='javascript:;' onclick='doTabOpen(\"MenuId_GwAuditCache\")' data-id='{0}' class='btn btn-success btn-xs'>" + this.count + " </a>鏉★紝璇风珛鍗冲鐞�</td>"); + sendAudithtml.push("</tr>"); + }); + + $.each(r.Message.SpPrePatternAuditList, function (i) { + sendAudithtml.push("<tr>"); + sendAudithtml.push("<td>璐﹀彿鎶ュ鍐呭寰呭鏍� <a href='javascript:;' onclick='doTabOpen(\"MenuId_GwSpPrePattern\")' data-id='{0}' class='btn btn-success btn-xs'>" + this.count + " </a>鏉★紝璇风珛鍗冲鐞�</td>"); + sendAudithtml.push("</tr>"); + }); + $("#sendAuditTable tbody").html(sendAudithtml.join("\n")); + + //閫氶亾鐘舵�� + var opStatushtml = []; + $.each(r.Message.OpStatusList, function (i) { + opStatushtml.push("<tr>"); + opStatushtml.push("<td>" + this.opId + "</td>"); + opStatushtml.push("<td>" + this.opName + "</td>"); + opStatushtml.push("<td>" + this.content + "</td>"); + //opStatushtml.push("<td><span class='" + getClass(false) + "'>" + this.handleFlag + "</span></td>"); + opStatushtml.push("<td>" + ((this.handleFlag == 1) ? "<div class='dotGreen'>" : "<div class='dotRed'>") + "</div></td>"); + opStatushtml.push("</tr>"); + }); + $("#opStatusTable tbody").html(opStatushtml.join("\n")); + + /** var ophtml = []; $.each(r.Message.OpList, function (i) { @@ -46,6 +158,7 @@ aphtml.push("</tr>"); }); $("#apTable tbody").html(aphtml.join("\n")); + **/ setTimeout(refreshStatis, 3000); } @@ -55,13 +168,137 @@ refreshStatis(); }); + + //閾炬帴TABS鏂瑰紡鎵撳紑 + function doTabOpen(menuId) { + //parent.$('#' + menuId).attr("href", "GwAuditCache.aspx?StatusFlag=0&AuditingStatus=10"); + //parent.$('#' + menuId).attr("data-id", "GwAuditCache.aspx?StatusFlag=0&AuditingStatus=10"); + //window.parent.document.getElementById(menuId).click(); //js鏂瑰紡 + //console.log(parent.$('#' + menuId).attr("data-id")); + parent.$('#' + menuId).click(); //jquery鏂瑰紡 + } </script> </asp:Content> <asp:Content ID="Content2" ContentPlaceHolderID="content" runat="Server"> <div class="ibox"> + <div class="ibox-title"> - <h3> - 鎺ュ叆鐐圭姸鎬�</h3> + <h3>娲诲姩瀹㈡埛锛氬鎴�-鍙戦�侀噺銆愬綋鏃ャ��</h3> + </div> + <div class="ibox-content"> + <table class="table table-striped table-bordered table-hover" id="activeClientDayTable"> + <thead> + <tr> + <td> + 瀹㈡埛璐﹀彿 + </td> + <td> + 瀹㈡埛鍏徃 + </td> + <td> + 鍙戦�佹�婚噺 + </td> + </tr> + </thead> + <tbody> + </tbody> + </table> + </div> + <div id="activeClientDayPagination"> + </div> + + <div class="ibox-title"> + <h3>閫氶亾-鍙戦�侀噺銆愬綋鏃ャ��</h3> + </div> + <div class="ibox-content"> + <table class="table table-striped table-bordered table-hover" id="opSendDayTable"> + <thead> + <tr> + <td> + 閫氶亾缂栧彿 + </td> + <td> + 閫氶亾鍚嶇О + </td> + <td> + 鍙戦�佹�婚噺 + </td> + </tr> + </thead> + <tbody> + </tbody> + </table> + </div> + + <div class="ibox-title"> + <h3>浜у搧-鍙戦�侀噺銆愬綋鏃ャ��</h3> + </div> + <div class="ibox-content"> + <table class="table table-striped table-bordered table-hover" id="productSendDayTable"> + <thead> + <tr> + <td> + 浜у搧 + </td> + <td> + 鍙戦�佹�婚噺 + </td> + </tr> + </thead> + <tbody> + </tbody> + </table> + </div> + + <div class="ibox-title"> + <h3>璁㈠崟</h3> + </div> + <div class="ibox-content"> + <table class="table table-striped table-bordered table-hover" id="orderTable"> + <tbody> + </tbody> + </table> + </div> + + <div class="ibox-title"> + <h3>寰呭鏍稿彂閫�</h3> + </div> + <div class="ibox-content"> + <table class="table table-striped table-bordered table-hover" id="sendAuditTable"> + <tbody> + </tbody> + </table> + </div> + + <div class="ibox-title"> + <h3>閫氶亾鐘舵��</h3> + </div> + <div class="ibox-content"> + <table class="table table-striped table-bordered table-hover" id="opStatusTable"> + <thead> + <tr> + <td> + 閫氶亾缂栧彿 + </td> + <td> + 閫氶亾鍚嶇О + </td> + <td> + 鐘舵�佹弿杩� + </td> + <td> + 鐘舵�� + </td> + </tr> + </thead> + <tbody> + </tbody> + </table> + </div> + + <!-- + <div class="ibox-title"> + <h3>鎺ュ叆鐐圭姸鎬�</h3> </div> <div class="ibox-content"> <table class="table table-striped table-bordered table-hover" id="apTable"> @@ -91,9 +328,9 @@ </tbody> </table> </div> + <div class="ibox-title"> - <h3> - 閫氶亾鐘舵��</h3> + <h3>閫氶亾鐘舵��</h3> </div> <div class="ibox-content"> <table class="table table-striped table-bordered table-hover" id="opTable"> @@ -130,14 +367,15 @@ </table> </div> - <div class="ibox-title"> - <h3> - 鏁版嵁搴撹〃绌洪棿</h3> + <div class="ibox-title"> + <h3>鏁版嵁搴撹〃绌洪棿</h3> </div> <div class="ibox-content"> <table class="table table-striped table-bordered table-hover"> - <%= RenderTableSpaceTable() %> + <!%= RenderTableSpaceTable() %> </table> </div> + --> + </div> </asp:Content> diff --git a/web/web/Welcome.aspx.cs b/web/web/Welcome.aspx.cs index 953ac7c..20b832a 100644 --- a/web/web/Welcome.aspx.cs +++ b/web/web/Welcome.aspx.cs @@ -3,6 +3,7 @@ using Dao; using Model; using System; +using System.Collections.Generic; using System.Data; using System.Text; using System.Web; @@ -11,10 +12,13 @@ public partial class Welcome : PageBase<SysUser>, IRequiresSessionState { - + protected List<GwClient> GwClientList; + protected void Page_Load(object sender, EventArgs e) { + using (GwClientDao gwClientDao = new GwClientDao()) + this.GwClientList = gwClientDao.Clientlist(); } public string RenderTableSpaceTable() @@ -37,4 +41,19 @@ return stringBuilder.ToString(); } } + //瀹㈡埛ID杞崲鍚嶇О + public string ClientIdToName(string clientId) + { + if (this.GwClientList.Count == 0) + return clientId; + foreach (GwClient bean in this.GwClientList) + { + if (clientId.Equals(bean.ClientID)) + return bean.Company; + else + continue; + } + + return clientId; + } } -- Gitblit v1.9.1