From 3bf021ed05b7ae7a50b4287b2831588495bb06e6 Mon Sep 17 00:00:00 2001 From: yzh <snbbt@21cn.com> Date: 星期四, 30 六月 2022 12:35:39 +0800 Subject: [PATCH] 优化金额或条数的长度处理。 --- web/Dao/GwClientDao.cs | 46 +++++++++++++++++++++++++--------------------- 1 files changed, 25 insertions(+), 21 deletions(-) diff --git a/web/Dao/GwClientDao.cs b/web/Dao/GwClientDao.cs index c1d1699..fe7bc15 100644 --- a/web/Dao/GwClientDao.cs +++ b/web/Dao/GwClientDao.cs @@ -303,7 +303,7 @@ * clientId锛氬鎴稩D * */ - public bool UpdateClientAmount(int AddBalance, int payAmount, string clientId ) + public bool UpdateClientAmount(Int64 AddBalance, Int64 payAmount, string clientId ) { return OracleHelper.ExecuteSql("UPDATE GW_CLIENT SET BALANCE=(BALANCE + :BALANCE), TOP_UP_AMOUNT_TOTAL=(TOP_UP_AMOUNT_TOTAL + :TOP_UP_AMOUNT_TOTAL) WHERE CLIENT_ID=:CLIENT_ID", OracleHelper.Connection, new OracleParameter(":BALANCE", (object)AddBalance), new OracleParameter(":TOP_UP_AMOUNT_TOTAL", (object)payAmount), new OracleParameter(":CLIENT_ID", (object)clientId)) > 0; } @@ -543,7 +543,7 @@ /** * 鍑芥暟鎻忚堪锛� 鏍规嵁瀹㈡埛ID鑾峰彇鍒嗛厤鐨勪釜鎬т骇鍝� * clientId: 瀹㈡埛鎴稩D - * userType: 鐢ㄦ埛绫诲瀷锛�1-绠$悊鍛�;2-涓氬姟鍛�--鍏ㄥ憳;3-涓氬姟涓荤;4-涓氬姟鎬荤洃;5-瀹㈡湇浜哄憳;6-璐㈠姟浜哄憳;99-鍏朵粬 + * userType: 鐢ㄦ埛绫诲瀷锛屽涓椂浠モ��,鈥濆垎闅旓細1-绠$悊鍛�;2-涓氬姟鍛�--鍏ㄥ憳;3-瀹㈡埛缁忕悊;4-瀹㈡湇浜哄憳;5-璐㈠姟浜哄憳 * return: SQL瀛楃涓� * */ @@ -586,6 +586,8 @@ //鏇存柊涓�у垎閰嶅鎴烽泦闀垮害澶т簬0鏃� string key2 = "UPDATE GW_PRODUCT SET CLIENT_IDS=:CLIENT_ID || ',' || CLIENT_IDS WHERE (CLIENT_IDS IS NOT NULL AND LENGTH(CLIENT_IDS) > 0) AND ID=:PRODUCT_ID "; + + list = new List<KeyValuePair<string, OracleParameter[]>>(); foreach (string str in productIdArray) { OracleParameter[] oracleParameterArray2 = new OracleParameter[2] @@ -594,14 +596,15 @@ new OracleParameter(":PRODUCT_ID", (object) str) }; - list = new List<KeyValuePair<string, OracleParameter[]>>(); list.Add(new KeyValuePair<string, OracleParameter[]>(key2, oracleParameterArray2)); - OracleHelper.ExecuteSqlTran(list, OracleHelper.Connection); } + OracleHelper.ExecuteSqlTran(list, OracleHelper.Connection); //鏇存柊涓�у垎閰嶅鎴烽泦闀垮害涓�0鏃� string key3 = "UPDATE GW_PRODUCT SET CLIENT_IDS=:CLIENT_ID WHERE (CLIENT_IDS IS NULL OR LENGTH(CLIENT_IDS) <= 0) AND ID=:PRODUCT_ID "; + + list = new List<KeyValuePair<string, OracleParameter[]>>(); foreach (string str in productIdArray) { OracleParameter[] oracleParameterArray2 = new OracleParameter[2] @@ -609,21 +612,20 @@ new OracleParameter(":CLIENT_ID", (object) clientId), new OracleParameter(":PRODUCT_ID", (object) str) }; - - list = new List<KeyValuePair<string, OracleParameter[]>>(); + list.Add(new KeyValuePair<string, OracleParameter[]>(key3, oracleParameterArray2)); - OracleHelper.ExecuteSqlTran(list, OracleHelper.Connection); } + OracleHelper.ExecuteSqlTran(list, OracleHelper.Connection); } /** * 鍑芥暟鎻忚堪锛� 鏍规嵁绯荤粺鐢ㄦ埛鑾峰彇鏈夋潈闄愬鎴� * userId: 鐢ㄦ埛ID - * userType: 鐢ㄦ埛绫诲瀷锛�1-绠$悊鍛�;2-涓氬姟鍛�--鍏ㄥ憳;3-涓氬姟涓荤;4-涓氬姟鎬荤洃;5-瀹㈡湇浜哄憳;6-璐㈠姟浜哄憳;99-鍏朵粬 + * userType: 鐢ㄦ埛绫诲瀷锛屽涓椂浠モ��,鈥濆垎闅旓細1-绠$悊鍛�;2-涓氬姟鍛�--鍏ㄥ憳;3-瀹㈡埛缁忕悊;4-瀹㈡湇浜哄憳;5-璐㈠姟浜哄憳 * return: SQL瀛楃涓� * */ - public string GetClientPermissions(int userId, int userType, string alias) + public string GetClientPermissions(int userId, string userType, string alias) { if (!string.IsNullOrEmpty(alias)) { @@ -631,17 +633,18 @@ } string sqlStr = ""; - //涓氬姟鍛樺拰鍏朵粬 - if(userType==2 || userType == 99) + //涓氬姟鍛� + if(DataConverter.checkStrForArrayStr(2, userType)) { sqlStr += " AND " + alias + "CLIENT_ID IN (SELECT CLIENT_ID FROM GW_CLIENT WHERE IS_ENABLE=1 AND (SALESMAN='" + userId + "' ) ) "; } - //涓氬姟涓荤 - else if (userType == 3) + //瀹㈡埛缁忕悊 + else if (DataConverter.checkStrForArrayStr(3, userType) ) { sqlStr += " AND " + alias + "CLIENT_ID IN (SELECT CLIENT_ID FROM GW_CLIENT WHERE IS_ENABLE=1 AND (SALESMAN='" + userId + "' or CUSTOMER_MANAGER='" + userId + "' ) ) "; } - else + //绠$悊鍛� + else if (DataConverter.checkStrForArrayStr(1, userType)) { //sqlStr += " AND CLIENT_ID IN (SELECT CLIENT_ID FROM GW_CLIENT WHERE IS_ENABLE=1 ) "; } @@ -652,10 +655,10 @@ /** * 鍑芥暟鎻忚堪锛� 鏍规嵁绯荤粺鐢ㄦ埛鑾峰彇鏈夋潈闄愬鎴疯处鍙� * userId: 鐢ㄦ埛ID - * userType: 鐢ㄦ埛绫诲瀷锛�1-绠$悊鍛�;2-涓氬姟鍛�--鍏ㄥ憳;3-涓氬姟涓荤;4-涓氬姟鎬荤洃;5-瀹㈡湇浜哄憳;6-璐㈠姟浜哄憳;99-鍏朵粬 + * userType: 鐢ㄦ埛绫诲瀷锛屽涓椂浠モ��,鈥濆垎闅旓細1-绠$悊鍛�;2-涓氬姟鍛�--鍏ㄥ憳;3-瀹㈡埛缁忕悊;4-瀹㈡湇浜哄憳;5-璐㈠姟浜哄憳 * return: SQL瀛楃涓� * */ - public string GetSpPermissions(int userId, int userType, string alias) + public string GetSpPermissions(int userId, string userType, string alias) { if (!string.IsNullOrEmpty(alias)) { @@ -663,17 +666,18 @@ } string sqlStr = ""; - //涓氬姟鍛樺拰鍏朵粬 - if (userType == 2 || userType == 99) + //涓氬姟鍛� + if (DataConverter.checkStrForArrayStr(2, userType)) { sqlStr += " AND " + alias + "SP_ID IN (SELECT SP_ID from GW_SP where DEL_FLAG = 0 and CLIENT_ID IN (SELECT CLIENT_ID FROM GW_CLIENT WHERE IS_ENABLE=1 AND (SALESMAN='" + userId + "' ) ) ) "; } - //涓氬姟涓荤 - else if (userType == 3) + //瀹㈡埛缁忕悊 + else if (DataConverter.checkStrForArrayStr(3, userType)) { sqlStr += " AND " + alias + "SP_ID IN (SELECT SP_ID from GW_SP where DEL_FLAG = 0 and CLIENT_ID IN (SELECT CLIENT_ID FROM GW_CLIENT WHERE IS_ENABLE=1 AND (SALESMAN='" + userId + "' or CUSTOMER_MANAGER='" + userId + "' ) ) ) "; } - else + //绠$悊鍛� + else if (DataConverter.checkStrForArrayStr(1, userType)) { //sqlStr += " AND CLIENT_ID IN (SELECT CLIENT_ID FROM GW_CLIENT WHERE IS_ENABLE=1 ) "; } -- Gitblit v1.9.1