From 78a0852831f1119372e36e90dc1e91ce46b8ef66 Mon Sep 17 00:00:00 2001
From: yzh <snbbt@21cn.com>
Date: 星期四, 14 四月 2022 09:13:50 +0800
Subject: [PATCH] 产品、订单

---
 web/App_Code/obj/Debug/App_Code.csproj.AssemblyReference.cache |    0 
 web/web/Bin/Dao.dll                                            |    0 
 web/Model/Model/GwSp.cs                                        |    5 
 web/Dao/obj/Debug/Dao.csproj.CoreCompileInputs.cache           |    2 
 web/web/gwspupdate.aspx.cs                                     |   43 +++++
 web/Model/obj/Debug/Model.pdb                                  |    0 
 web/web/GwSp.aspx.cs                                           |   42 +++++
 web/Dao/Dao.csproj                                             |    4 
 web/Dao/GwSpDao.cs                                             |  163 ++++++++++++++++++-
 web/Dao/obj/Debug/Dao.dll                                      |    0 
 web/Model/obj/Debug/Model.dll                                  |    0 
 web/Dao/obj/Debug/Dao.csproj.AssemblyReference.cache           |    0 
 web/Lib/Model.dll                                              |    0 
 web/web/GwProduct.aspx                                         |    2 
 web/web/Bin/Dao.pdb                                            |    0 
 web/Model/obj/Debug/Model.csproj.CoreCompileInputs.cache       |    2 
 web/Model/Model.csproj                                         |    4 
 web/web/GwSp.aspx                                              |   98 ++++++++++-
 web/Lib/Model.pdb                                              |    0 
 web/web/GwSp.ashx                                              |   46 +++++
 web/web/gwspupdate.aspx                                        |   15 +
 web/Dao/obj/Debug/Dao.pdb                                      |    0 
 web/Lib/Dao.dll                                                |    0 
 web/web/Index.aspx                                             |   11 +
 web/web/Bin/Model.pdb                                          |    0 
 web/.vs/Web/v16/.suo                                           |    0 
 web/UMCLib/obj/Debug/UMCLib.csproj.AssemblyReference.cache     |    0 
 web/Model/obj/Debug/Model.csproj.AssemblyReference.cache       |    0 
 web/web/Bin/Model.dll                                          |    0 
 web/Lib/Dao.pdb                                                |    0 
 30 files changed, 404 insertions(+), 33 deletions(-)

diff --git a/web/.vs/Web/v16/.suo b/web/.vs/Web/v16/.suo
index 587599b..91ac5d4 100644
--- a/web/.vs/Web/v16/.suo
+++ b/web/.vs/Web/v16/.suo
Binary files differ
diff --git a/web/App_Code/obj/Debug/App_Code.csproj.AssemblyReference.cache b/web/App_Code/obj/Debug/App_Code.csproj.AssemblyReference.cache
index 8c2a0bd..c5388d3 100644
--- a/web/App_Code/obj/Debug/App_Code.csproj.AssemblyReference.cache
+++ b/web/App_Code/obj/Debug/App_Code.csproj.AssemblyReference.cache
Binary files differ
diff --git a/web/Dao/Dao.csproj b/web/Dao/Dao.csproj
index 1ee91f7..c1438c0 100644
--- a/web/Dao/Dao.csproj
+++ b/web/Dao/Dao.csproj
@@ -78,6 +78,8 @@
     <Compile Include="GwClientProductDao.cs" />
     <Compile Include="GwMobileAreaDao.cs" />
     <Compile Include="GwMoRouteDao.cs" />
+    <Compile Include="GwOrderAuditDao.cs" />
+    <Compile Include="GwOrderDao.cs" />
     <Compile Include="GwProductDao.cs" />
     <Compile Include="GwRmResendDao.cs" />
     <Compile Include="GwSpPrePattern.cs" />
@@ -90,6 +92,8 @@
     <Compile Include="SpCTPatternInfo.cs" />
     <Compile Include="GwSpDao.cs" />
     <Compile Include="SpSignatureInfo.cs" />
+    <Compile Include="SysFlowDao.cs" />
+    <Compile Include="SysFlowNodeDao.cs" />
     <Compile Include="SysOperationLogDao.cs" />
     <Compile Include="SysXhDao.cs" />
     <Compile Include="UserDao.cs" />
diff --git a/web/Dao/GwSpDao.cs b/web/Dao/GwSpDao.cs
index ecf5d62..a75574b 100644
--- a/web/Dao/GwSpDao.cs
+++ b/web/Dao/GwSpDao.cs
@@ -180,8 +180,13 @@
           spId = "";   apId = "";   clientId = "";
 
       StringBuilder stringBuilder = new StringBuilder();
-      stringBuilder.Append("select  '&nbsp;'  || SP_ID as SP_ID, AP_ID, '&nbsp;' || CLIENT_ID  as CLIENT_ID, STRATEGY_ID, PASSWORD, CLIENT_IP, CLIENT_PORT, ACCESS_CODE, BALANCE/1000 AS BALANCE, PRIORITY, PRICE/1000 AS PRICE, CASE CHARGE_TYPE  WHEN 2 THEN '鍚庝粯璐�' ELSE '棰勪粯璐�' END as CHARGE_TYPE, THRESHOLD, CREATE_TIME, REMARK, ACTIVATE_TIME, MAX_CONN_COUNT, MO_ENABLED, FORCE_UDHI, PASSING_TIME, AUDITING_MODE, DEDUCT_PERCENT, CM_OP_ID, CT_OP_ID, UN_OP_ID, DEFISHING_THRESHOLD, TIME_PERMITTING, REJECT_IF_FORBIDDEN, DEFISHING_TIMEOUT, SIGNATURES, REJECT_IF_NO_SIGNATURE, REFUND_IF_UNDELIVERED, ROUTER_TYPE, CHANNEL_TYPE, STATUS, MODIFY_TIME, DEFISHING_OP_ID, MONTH_FIXED_FEE, MONTH_MIN_FEE, FEE_SHORT_LENGTH, FEE_LONG_LENGTH, SIGNATURE_MODE, MCPM, MC_EXPRESSION, BLACK_MODE, DIVERTER_ID  from GW_SP where 1=1");
-      OracleParameter[] oracleParameterArray = new OracleParameter[3];
+      stringBuilder.Append("select  '&nbsp;'  || SP_ID as SP_ID, AP_ID, '&nbsp;' || CLIENT_ID  as CLIENT_ID, STRATEGY_ID, PASSWORD, CLIENT_IP, CLIENT_PORT, ACCESS_CODE, BALANCE/1000 AS BALANCE, PRIORITY, PRICE/1000 AS PRICE, CASE CHARGE_TYPE  WHEN 2 THEN '鍚庝粯璐�' ELSE '棰勪粯璐�' END as CHARGE_TYPE, THRESHOLD, CREATE_TIME, REMARK, ACTIVATE_TIME, MAX_CONN_COUNT, MO_ENABLED, FORCE_UDHI, PASSING_TIME, AUDITING_MODE, DEDUCT_PERCENT, CM_OP_ID, CT_OP_ID, UN_OP_ID, DEFISHING_THRESHOLD, TIME_PERMITTING, REJECT_IF_FORBIDDEN, DEFISHING_TIMEOUT, SIGNATURES, REJECT_IF_NO_SIGNATURE, REFUND_IF_UNDELIVERED, ROUTER_TYPE, CHANNEL_TYPE, STATUS, MODIFY_TIME, DEFISHING_OP_ID, MONTH_FIXED_FEE, MONTH_MIN_FEE, FEE_SHORT_LENGTH, FEE_LONG_LENGTH, SIGNATURE_MODE, MCPM, MC_EXPRESSION, BLACK_MODE, DIVERTER_ID ");
+
+        //add: yangzh by 2022-03-14 start
+        //stringBuilder.Append(" from GW_SP where 1=1 ");
+        stringBuilder.Append(" from GW_SP where 1=1 AND DEL_FLAG = 0 ");
+        //add: yangzh by 2022-03-14 start
+            OracleParameter[] oracleParameterArray = new OracleParameter[3];
       if (spId != null && spId != "")
       {
         oracleParameterArray[0] = new OracleParameter(":SpID", (OracleDbType) 112);
@@ -207,8 +212,11 @@
     {
       List<GwSp> list1 = new List<GwSp>();
       StringBuilder stringBuilder = new StringBuilder();
-      stringBuilder.Append("from GW_SP where 1=1");
-      List<OracleParameter> list2 = new List<OracleParameter>();
+            //add: yangzh by 2022-03-14 start
+            //stringBuilder.Append("from GW_SP where 1=1");
+            stringBuilder.Append("from GW_SP where 1=1 AND DEL_FLAG = 0 "); //鍒犻櫎鏍囧織杩囨护锛�0-姝e父
+            //add: yangzh by 2022-03-14 start
+            List<OracleParameter> list2 = new List<OracleParameter>();
       if (spId != null && spId != "")
       {
         list2.Add(new OracleParameter(":SpID", (object) spId));
@@ -237,12 +245,15 @@
       return list1;
     }
 
-        public List<GwSp> LoadInfoList(string spId, string apId, string clientId, int routerType, string opID, int chargeType, int pageIndex, int pageSize, string resendStatus, out int recordCount)
+        public List<GwSp> LoadInfoList(string spId, string apId, string clientId, int routerType, string opID, int chargeType, int pageIndex, int pageSize, string resendStatus, out int recordCount, string productId )
         {
             List<GwSp> list1 = new List<GwSp>();
             recordCount = 0;
             StringBuilder stringBuilder = new StringBuilder();
-            stringBuilder.Append("from GW_SP where 1=1");
+            //add: yangzh by 2022-03-14 start
+            //stringBuilder.Append("from GW_SP where 1=1");
+            stringBuilder.Append("from GW_SP where 1=1 AND DEL_FLAG = 0");  //鍒櫎鏍囧織杩囨护锛氫负0-姝e父
+            //add: yangzh by 2022-03-14 end
             List<OracleParameter> list2 = new List<OracleParameter>();
             if (spId != null && spId != "")
             {
@@ -292,6 +303,11 @@
                     }
                 }
             }
+            if (productId != null && productId != "" && productId != "0")
+            {
+                list2.Add(new OracleParameter(":ProductId", (object)productId));
+                stringBuilder.Append(" and Product_Id=:ProductId");
+            }
             stringBuilder.Append(" order by ID DESC");
             using (OracleDataReader reader = OracleHelper.ExecuteReader("select count(*) as count " + stringBuilder.ToString(), OracleHelper.Connection, list2.ToArray()))
             {
@@ -311,11 +327,120 @@
         }
 
     public bool Update(GwSp o)
-    {
-        return OracleHelper.ExecuteSql("UPDATE GW_SP SET AP_ID=:APID,COMBINATION_MODE=:COMBINATION_MODE,CLIENT_ID=:CLIENTID,STRATEGY_ID=:STRATEGYID,PASSWORD=:PASSWORD,\r\nCLIENT_IP=:CLIENTIP,CLIENT_PORT=:CLIENTPORT,ACCESS_CODE=:ACCESSCODE,\r\nPRIORITY=:PRIORITY,PRICE=:PRICE,CHARGE_TYPE=:CHARGETYPE,\r\nTHRESHOLD=:THRESHOLD,MAX_CONN_COUNT=:MAXCONNCOUNT,REMARK=:REMARK,\r\nTIME_PERMITTING=:TIME_PERMITTING,AUDITING_MODE=:AUDITINGMODE,\r\nDEDUCT_PERCENT=:DEDUCTPERCENT,\r\nCM_OP_ID=:CM_OP_ID,CT_OP_ID=:CT_OP_ID,UN_OP_ID=:UN_OP_ID,\r\nDEFISHING_TIMEOUT = :DEFISHING_TIMEOUT,DEFISHING_THRESHOLD =:DEFISHING_THRESHOLD,\r\nREJECT_IF_FORBIDDEN =:REJECT_IF_FORBIDDEN,\r\nREFUND_IF_UNDELIVERED =:REFUND_IF_UNDELIVERED,\r\nROUTER_TYPE=:ROUTER_TYPE,STATUS=:STATUS,ACCESSCODE_MODE=:ACCESSCODE_MODE,\r\nEXTNOEXTENSION_MODE=:EXTNOEXTENSION_MODE,DEFISHING_OP_ID =:DEFISHING_OP_ID,\r\nMODIFY_TIME=SYSDATE,FEE_SHORT_LENGTH=:FEE_SHORT_LENGTH,FEE_LONG_LENGTH=:FEE_LONG_LENGTH,\r\nBLACK_MODE=:BLACK_MODE,\r\nDIVERTER_ID=:DIVERTER_ID,\r\nMCPM=:MCPM,\r\nMC_EXPRESSION=:MC_EXPRESSION,\r\nCM_EXT_PARAMS=:CM_EXT_PARAMS,\r\nCT_EXT_PARAMS=:CT_EXT_PARAMS,\r\nCU_EXT_PARAMS=:CU_EXT_PARAMS,\r\nCM_GROUP_ID=:CM_GROUP_ID,\r\nCU_GROUP_ID=:CU_GROUP_ID,\r\nCT_GROUP_ID=:CT_GROUP_ID ,\r\nBALANCE_THRESHOLD = :BALANCE_THRESHOLD,\r\nALARM_MOBILE = :ALARM_MOBILE,\r\nFORCE_SIGN_FLAG = :FORCE_SIGN_FLAG,\r\nFORCE_SIGN = :FORCE_SIGN,\r\nSIGNATURE_MODE=:SIGNATURE_MODE,\r\nSIGNATURES=:SIGNATURES\r\n,VerCodeMode=:VerCodeMode \r\n,ProvincialNetworkMode=:ProvincialNetworkMode \r\n,RESEND_STATUS=:RESEND_STATUS \r\n,RESEND_CM_GROUPID=:RESEND_CM_GROUPID \r\n,RESEND_CU_GROUPID=:RESEND_CU_GROUPID \r\n,RESEND_CT_GROUPID=:RESEND_CT_GROUPID,TRANSFERFLAG=:TRANSFERFLAG WHERE SP_ID=:SPID", OracleHelper.Connection, new OracleParameter(":APID", (object)o.ApID), new OracleParameter(":COMBINATION_MODE", (object)o.CombinationMode), new OracleParameter(":CLIENTID", (object)o.ClientID), new OracleParameter(":STRATEGYID", (object)o.StrategyID), new OracleParameter(":PASSWORD", (object)o.Password), new OracleParameter(":CLIENTIP", (object)o.ClientIp), new OracleParameter(":CLIENTPORT", (object)o.ClientPort), new OracleParameter(":ACCESSCODE", (object)o.AccessCode), new OracleParameter(":PRIORITY", (object)o.Priority), new OracleParameter(":PRICE", (object)o.Price), new OracleParameter(":CHARGETYPE", (object)o.ChargeType), new OracleParameter(":THRESHOLD", (object)o.Threshold), new OracleParameter(":MAXCONNCOUNT", (object)o.MaxConnCount), new OracleParameter(":REMARK", (object)o.Remark), new OracleParameter(":TIME_PERMITTING", (object)o.TimePermitting), new OracleParameter(":AUDITINGMODE", (object)o.AuditingMode), new OracleParameter(":DEDUCTPERCENT", (object)o.DeductPercent), new OracleParameter(":SPID", (object)o.SpID), new OracleParameter(":CM_OP_ID", (object)o.CMOPID), new OracleParameter(":CT_OP_ID", (object)o.CTOPID), new OracleParameter(":UN_OP_ID", (object)o.UNOPID), new OracleParameter(":DEFISHING_TIMEOUT", (object)o.DefishingTimeout), new OracleParameter(":DEFISHING_THRESHOLD", (object)o.DefishingThreshold), new OracleParameter(":REJECT_IF_FORBIDDEN", (object)o.RejectIfForbidden), new OracleParameter(":REFUND_IF_UNDELIVERED", (object)o.RefundIfUndelivered), new OracleParameter(":STATUS", (object)o.Status), new OracleParameter(":ACCESSCODE_MODE", (object)o.AccessCodeMode), new OracleParameter(":EXTNOEXTENSION_MODE", (object)o.ExtnoExtensionMode), new OracleParameter(":DEFISHING_OP_ID", (object)o.DefishingOPID), new OracleParameter(":ROUTER_TYPE", (object)o.RouterType), new OracleParameter(":CM_EXT_PARAMS", (object)o.CMextparms), new OracleParameter(":CT_EXT_PARAMS", (object)o.CTextparams), new OracleParameter(":CU_EXT_PARAMS", (object)o.CUextparams), new OracleParameter(":FEE_SHORT_LENGTH", (object)o.FeeShortLength), new OracleParameter(":FEE_LONG_LENGTH", (object)o.FeeLongLength), new OracleParameter(":BLACK_MODE", (object)o.BlackMode), new OracleParameter(":DIVERTER_ID", (object)o.DiverterID), new OracleParameter(":MCPM", (object)o.MCPM), new OracleParameter(":MC_EXPRESSION", (object)o.McExpression), new OracleParameter(":CM_GROUP_ID", (object)o.CMGroupID), new OracleParameter(":CU_GROUP_ID", (object)o.CUGroupID), new OracleParameter(":CT_GROUP_ID", (object)o.CTGroupID), new OracleParameter(":BALANCE_THRESHOLD", (object)o.BalanceThreshold), new OracleParameter(":ALARM_MOBILE", (object)o.AlarmMobile), new OracleParameter(":FORCE_SIGN_FLAG", (object)o.ForceSignFlag), new OracleParameter(":FORCE_SIGN", (object)o.ForceSign), new OracleParameter(":SIGNATURE_MODE", (object)o.SignatureMode), new OracleParameter(":SIGNATURES", (object)o.Signatures), new OracleParameter(":VerCodeMode", (object)o.VerCodeMode), new OracleParameter(":ProvincialNetworkMode",(object)o.ProvincialNetworkMode),new OracleParameter(":RESEND_STATUS", (object)o.RESEND_STATUS),new OracleParameter(":RESEND_CM_GROUPID", (object)o.RESEND_CM_GROUPID),new OracleParameter(":RESEND_CU_GROUPID", (object)o.RESEND_CU_GROUPID),new OracleParameter(":RESEND_CT_GROUPID",(object)o.RESEND_CT_GROUPID),new OracleParameter(":TRANSFERFLAG",(object)o.TransferFlag)) > 0;
+        {
+            StringBuilder stringBuilder = new StringBuilder();
+            stringBuilder.Append("UPDATE GW_SP SET ");
+            stringBuilder.Append(" AP_ID=:APID, COMBINATION_MODE=:COMBINATION_MODE,CLIENT_ID=:CLIENTID,STRATEGY_ID=:STRATEGYID,PASSWORD=:PASSWORD ");
+            stringBuilder.Append(" , CLIENT_IP=:CLIENTIP,CLIENT_PORT=:CLIENTPORT,ACCESS_CODE=:ACCESSCODE ");
+            stringBuilder.Append(" , PRIORITY=:PRIORITY,PRICE=:PRICE,CHARGE_TYPE=:CHARGETYPE ");
+            stringBuilder.Append(" , THRESHOLD=:THRESHOLD,MAX_CONN_COUNT=:MAXCONNCOUNT,REMARK=:REMARK ");
+            stringBuilder.Append(" , TIME_PERMITTING=:TIME_PERMITTING,AUDITING_MODE=:AUDITINGMODE ");
+            stringBuilder.Append(" , DEDUCT_PERCENT=:DEDUCTPERCENT ");
+            stringBuilder.Append(" , CM_OP_ID=:CM_OP_ID,CT_OP_ID=:CT_OP_ID,UN_OP_ID=:UN_OP_ID ");
+            stringBuilder.Append(" , DEFISHING_TIMEOUT = :DEFISHING_TIMEOUT,DEFISHING_THRESHOLD =:DEFISHING_THRESHOLD ");
+            stringBuilder.Append(" , REJECT_IF_FORBIDDEN =:REJECT_IF_FORBIDDEN ");
+            stringBuilder.Append(" , REFUND_IF_UNDELIVERED =:REFUND_IF_UNDELIVERED ");
+            stringBuilder.Append(" , ROUTER_TYPE=:ROUTER_TYPE,STATUS=:STATUS,ACCESSCODE_MODE=:ACCESSCODE_MODE ");
+            stringBuilder.Append(" , EXTNOEXTENSION_MODE=:EXTNOEXTENSION_MODE,DEFISHING_OP_ID =:DEFISHING_OP_ID ");
+            stringBuilder.Append(" , MODIFY_TIME=SYSDATE,FEE_SHORT_LENGTH=:FEE_SHORT_LENGTH,FEE_LONG_LENGTH=:FEE_LONG_LENGTH ");
+            stringBuilder.Append(" , BLACK_MODE=:BLACK_MODE ");
+            stringBuilder.Append(" , DIVERTER_ID=:DIVERTER_ID ");
+            stringBuilder.Append(" , MCPM=:MCPM ");
+            stringBuilder.Append(" , MC_EXPRESSION=:MC_EXPRESSION ");
+            stringBuilder.Append(" , CM_EXT_PARAMS=:CM_EXT_PARAMS ");
+            stringBuilder.Append(" , CT_EXT_PARAMS=:CT_EXT_PARAMS ");
+            stringBuilder.Append(" , CU_EXT_PARAMS=:CU_EXT_PARAMS ");
+            stringBuilder.Append(" , CM_GROUP_ID=:CM_GROUP_ID ");
+            stringBuilder.Append(" , CU_GROUP_ID=:CU_GROUP_ID ");
+            stringBuilder.Append(" , CT_GROUP_ID=:CT_GROUP_ID ");
+            stringBuilder.Append(" , BALANCE_THRESHOLD = :BALANCE_THRESHOLD ");
+            stringBuilder.Append(" , ALARM_MOBILE = :ALARM_MOBILE ");
+            stringBuilder.Append(" , FORCE_SIGN_FLAG = :FORCE_SIGN_FLAG ");
+            stringBuilder.Append(" , FORCE_SIGN = :FORCE_SIGN ");
+            stringBuilder.Append(" , SIGNATURE_MODE=:SIGNATURE_MODE ");
+            stringBuilder.Append(" , SIGNATURES=:SIGNATURESE ");
+            stringBuilder.Append(" , VerCodeMode=:VerCodeMode ");
+            stringBuilder.Append(" , ProvincialNetworkMode=:ProvincialNetworkMode ");
+            stringBuilder.Append(" , RESEND_STATUS =:RESEND_STATUS ");
+            stringBuilder.Append(" , RESEND_CM_GROUPID =:RESEND_CM_GROUPID ");
+            stringBuilder.Append(" , RESEND_CU_GROUPID =:RESEND_CU_GROUPID ");
+            stringBuilder.Append(" , RESEND_CT_GROUPID =:RESEND_CT_GROUPID ");
+            stringBuilder.Append(" , RANSFERFLAG =:TRANSFERFLAG ");
+            stringBuilder.Append(" WHERE SP_ID=:SPID" );
+
+
+            return OracleHelper.ExecuteSql(stringBuilder.ToString(), OracleHelper.Connection, 
+                new OracleParameter(":APID", (object)o.ApID), 
+                new OracleParameter(":COMBINATION_MODE", (object)o.CombinationMode), 
+                new OracleParameter(":CLIENTID", (object)o.ClientID), 
+                new OracleParameter(":STRATEGYID", (object)o.StrategyID), 
+                new OracleParameter(":PASSWORD", (object)o.Password), 
+                new OracleParameter(":CLIENTIP", (object)o.ClientIp), 
+                new OracleParameter(":CLIENTPORT", (object)o.ClientPort), 
+                new OracleParameter(":ACCESSCODE", (object)o.AccessCode), 
+                new OracleParameter(":PRIORITY", (object)o.Priority), 
+                new OracleParameter(":PRICE", (object)o.Price), 
+                new OracleParameter(":CHARGETYPE", (object)o.ChargeType), 
+                new OracleParameter(":THRESHOLD", (object)o.Threshold), 
+                new OracleParameter(":MAXCONNCOUNT", (object)o.MaxConnCount), 
+                new OracleParameter(":REMARK", (object)o.Remark), 
+                new OracleParameter(":TIME_PERMITTING", (object)o.TimePermitting), 
+                new OracleParameter(":AUDITINGMODE", (object)o.AuditingMode), 
+                new OracleParameter(":DEDUCTPERCENT", (object)o.DeductPercent), 
+                new OracleParameter(":SPID", (object)o.SpID), 
+                new OracleParameter(":CM_OP_ID", (object)o.CMOPID), 
+                new OracleParameter(":CT_OP_ID", (object)o.CTOPID), 
+                new OracleParameter(":UN_OP_ID", (object)o.UNOPID), 
+                new OracleParameter(":DEFISHING_TIMEOUT", (object)o.DefishingTimeout), 
+                new OracleParameter(":DEFISHING_THRESHOLD", (object)o.DefishingThreshold), 
+                new OracleParameter(":REJECT_IF_FORBIDDEN", (object)o.RejectIfForbidden), 
+                new OracleParameter(":REFUND_IF_UNDELIVERED", (object)o.RefundIfUndelivered), 
+                new OracleParameter(":STATUS", (object)o.Status), 
+                new OracleParameter(":ACCESSCODE_MODE", (object)o.AccessCodeMode), 
+                new OracleParameter(":EXTNOEXTENSION_MODE", (object)o.ExtnoExtensionMode), 
+                new OracleParameter(":DEFISHING_OP_ID", (object)o.DefishingOPID), 
+                new OracleParameter(":ROUTER_TYPE", (object)o.RouterType), 
+                new OracleParameter(":CM_EXT_PARAMS", (object)o.CMextparms), 
+                new OracleParameter(":CT_EXT_PARAMS", (object)o.CTextparams), 
+                new OracleParameter(":CU_EXT_PARAMS", (object)o.CUextparams), 
+                new OracleParameter(":FEE_SHORT_LENGTH", (object)o.FeeShortLength), 
+                new OracleParameter(":FEE_LONG_LENGTH", (object)o.FeeLongLength), 
+                new OracleParameter(":BLACK_MODE", (object)o.BlackMode), 
+                new OracleParameter(":DIVERTER_ID", (object)o.DiverterID), 
+                new OracleParameter(":MCPM", (object)o.MCPM), 
+                new OracleParameter(":MC_EXPRESSION", (object)o.McExpression), 
+                new OracleParameter(":CM_GROUP_ID", (object)o.CMGroupID), 
+                new OracleParameter(":CU_GROUP_ID", (object)o.CUGroupID), 
+                new OracleParameter(":CT_GROUP_ID", (object)o.CTGroupID), 
+                new OracleParameter(":BALANCE_THRESHOLD", (object)o.BalanceThreshold), 
+                new OracleParameter(":ALARM_MOBILE", (object)o.AlarmMobile), 
+                new OracleParameter(":FORCE_SIGN_FLAG", (object)o.ForceSignFlag), 
+                new OracleParameter(":FORCE_SIGN", (object)o.ForceSign), 
+                new OracleParameter(":SIGNATURE_MODE", (object)o.SignatureMode), 
+                new OracleParameter(":SIGNATURES", (object)o.Signatures), 
+                new OracleParameter(":VerCodeMode", (object)o.VerCodeMode), 
+                new OracleParameter(":ProvincialNetworkMode",(object)o.ProvincialNetworkMode),
+                new OracleParameter(":RESEND_STATUS", (object)o.RESEND_STATUS),
+                new OracleParameter(":RESEND_CM_GROUPID", (object)o.RESEND_CM_GROUPID),
+                new OracleParameter(":RESEND_CU_GROUPID", (object)o.RESEND_CU_GROUPID),
+                new OracleParameter(":RESEND_CT_GROUPID",(object)o.RESEND_CT_GROUPID),
+                new OracleParameter(":TRANSFERFLAG",(object)o.TransferFlag)
+                ) > 0;
     }
 
     public bool UpdateBalance(int Balance, string spid)
+    {
+      return OracleHelper.ExecuteSql("UPDATE GW_SP SET BALANCE=:BALANCE WHERE SP_ID=:SP_ID", OracleHelper.Connection, new OracleParameter(":BALANCE", (object) Balance), new OracleParameter(":SP_ID", (object) spid)) > 0;
+    }
+
+        //鏍规嵁璁㈠崟鏇存柊瀹㈡埛璐﹀彿浣欓锛堜綑棰濄�佹潯鏁般�佽禒閫佹潯鏁般�佸熀鏈潯鏁帮級
+        /// <summary>
+        /// //add: yangzh by 2022-04-01 
+        /// </summary>
+        /// <param name="Balance"></param>
+        /// <param name="spid"></param>
+        /// <returns></returns>
+        public bool UpdateBalanceByOrder(int Balance, string spid)
     {
       return OracleHelper.ExecuteSql("UPDATE GW_SP SET BALANCE=:BALANCE WHERE SP_ID=:SP_ID", OracleHelper.Connection, new OracleParameter(":BALANCE", (object) Balance), new OracleParameter(":SP_ID", (object) spid)) > 0;
     }
@@ -365,8 +490,11 @@
     {
       if (string.IsNullOrEmpty(clientID) || string.Equals("0", clientID) || (string.IsNullOrEmpty(spID) || string.Equals("0", spID)))
         return true;
-      using (OracleDataReader oracleDataReader = OracleHelper.ExecuteReader("select * from GW_SP where CLIENT_ID=:CLIENT_ID AND SP_ID=:SP_ID", OracleHelper.Connection, new OracleParameter(":CLIENT_ID", (object) clientID), new OracleParameter(":SP_ID", (object) spID)))
-      {
+            //add: yangzh by 2022-03-14 start
+            //using (OracleDataReader oracleDataReader = OracleHelper.ExecuteReader("select * from GW_SP where CLIENT_ID=:CLIENT_ID AND SP_ID=:SP_ID", OracleHelper.Connection, new OracleParameter(":CLIENT_ID", (object) clientID), new OracleParameter(":SP_ID", (object) spID)))
+            using (OracleDataReader oracleDataReader = OracleHelper.ExecuteReader("select * from GW_SP where DEL_FLAG=2 AND CLIENT_ID=:CLIENT_ID AND SP_ID=:SP_ID", OracleHelper.Connection, new OracleParameter(":CLIENT_ID", (object)clientID), new OracleParameter(":SP_ID", (object)spID)))
+            //add: yangzh by 2022-03-14 end
+            {
         if (((DbDataReader) oracleDataReader).Read())
           return true;
       }
@@ -377,10 +505,14 @@
     {
       if (string.IsNullOrEmpty(spid) || string.Equals("0", spid))
         return false;
-      return OracleHelper.ExecuteSql(string.Format("delete from GW_SP where SP_ID=:SP_ID"), OracleHelper.Connection, new OracleParameter(":SP_ID", (object) spid)) > 0;
-    }
+            //add: yangzh by 2022-03-14 start
+            //return OracleHelper.ExecuteSql(string.Format("delete from GW_SP where SP_ID=:SP_ID"), OracleHelper.Connection, new OracleParameter(":SP_ID", (object) spid)) > 0;
+            //閫昏緫鍒犻櫎
+            return OracleHelper.ExecuteSql(string.Format("UPDATE GW_SP SET DEL_FLAG=2, STATUS=0 where SP_ID=:SP_ID"), OracleHelper.Connection, new OracleParameter(":SP_ID", (object) spid)) > 0;
+            //add: yangzh by 2022-03-14 end
+        }
 
-    private bool ReadInfo(OracleDataReader reader, GwSp o)
+        private bool ReadInfo(OracleDataReader reader, GwSp o)
         {
             OracleReaderWrapper oracleReaderWrapper = new OracleReaderWrapper(reader);
             o.SpID = oracleReaderWrapper.GetString("SP_ID", "");
@@ -447,6 +579,11 @@
             o.RESEND_CT_GROUPID = oracleReaderWrapper.GetInt("RESEND_CT_GROUPID", 0);
             o.RESEND_STATUS = oracleReaderWrapper.GetInt("RESEND_STATUS", 0);
             o.TransferFlag = oracleReaderWrapper.GetInt("TransferFlag",0);
+
+            o.ProductId = oracleReaderWrapper.GetString("PRODUCT_ID", "");  //浜у搧ID
+            o.BasicNum = oracleReaderWrapper.GetInt("BASIC_NUM", 0);  //鍩烘湰鏉℃暟(鍓╀綑鏁�)
+            o.GivingNum = oracleReaderWrapper.GetInt("GIVING_NUM", 0);  //璧犻�佹潯鏁�(鍓╀綑鏁�)
+            o.DelFlag = oracleReaderWrapper.GetInt("DelFlag", 0); //鍒犻櫎鏍囧織锛�0-姝e父锛�2-閫昏緫鍒犻櫎
             return true;
         }
 
diff --git a/web/Dao/obj/Debug/Dao.csproj.AssemblyReference.cache b/web/Dao/obj/Debug/Dao.csproj.AssemblyReference.cache
index a1ab47f..20947fa 100644
--- a/web/Dao/obj/Debug/Dao.csproj.AssemblyReference.cache
+++ b/web/Dao/obj/Debug/Dao.csproj.AssemblyReference.cache
Binary files differ
diff --git a/web/Dao/obj/Debug/Dao.csproj.CoreCompileInputs.cache b/web/Dao/obj/Debug/Dao.csproj.CoreCompileInputs.cache
index 3d7058c..732ea46 100644
--- a/web/Dao/obj/Debug/Dao.csproj.CoreCompileInputs.cache
+++ b/web/Dao/obj/Debug/Dao.csproj.CoreCompileInputs.cache
@@ -1 +1 @@
-2f4ee5a304a64e1617ed59777b36c0169fa3e828
+0544a4b948cdc93476250066129b440538ad7759
diff --git a/web/Dao/obj/Debug/Dao.dll b/web/Dao/obj/Debug/Dao.dll
index 910baf0..cd10034 100644
--- a/web/Dao/obj/Debug/Dao.dll
+++ b/web/Dao/obj/Debug/Dao.dll
Binary files differ
diff --git a/web/Dao/obj/Debug/Dao.pdb b/web/Dao/obj/Debug/Dao.pdb
index d93f58c..0727b98 100644
--- a/web/Dao/obj/Debug/Dao.pdb
+++ b/web/Dao/obj/Debug/Dao.pdb
Binary files differ
diff --git a/web/Lib/Dao.dll b/web/Lib/Dao.dll
index 910baf0..cd10034 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 d93f58c..0727b98 100644
--- a/web/Lib/Dao.pdb
+++ b/web/Lib/Dao.pdb
Binary files differ
diff --git a/web/Lib/Model.dll b/web/Lib/Model.dll
index 88ff236..f33cae8 100644
--- a/web/Lib/Model.dll
+++ b/web/Lib/Model.dll
Binary files differ
diff --git a/web/Lib/Model.pdb b/web/Lib/Model.pdb
index a9b5d2f..550d08d 100644
--- a/web/Lib/Model.pdb
+++ b/web/Lib/Model.pdb
Binary files differ
diff --git a/web/Model/Model.csproj b/web/Model/Model.csproj
index 33dbb38..e913b4e 100644
--- a/web/Model/Model.csproj
+++ b/web/Model/Model.csproj
@@ -68,6 +68,10 @@
     <Compile Include="Model\GwMobileArea.cs" />
     <Compile Include="Model\GwMoRoute.cs" />
     <Compile Include="Model\GwOpGroupItem.cs" />
+    <Compile Include="Model\GwOrderAudit.cs" />
+    <Compile Include="Model\SysFlowNode.cs" />
+    <Compile Include="Model\SysFlow.cs" />
+    <Compile Include="Model\GwOrder.cs" />
     <Compile Include="Model\GwProduct.cs" />
     <Compile Include="Model\GwRmResend.cs" />
     <Compile Include="Model\GwSmsTask.cs" />
diff --git a/web/Model/Model/GwSp.cs b/web/Model/Model/GwSp.cs
index 1ffd29a..97de40d 100644
--- a/web/Model/Model/GwSp.cs
+++ b/web/Model/Model/GwSp.cs
@@ -39,6 +39,11 @@
 
         private int _TransferFlag;//鎼哄彿杞綉璁剧疆銆�0鍚敤锛�1鍋滅敤
 
+        public string ProductId { get; set; }  //浜у搧ID
+        public int BasicNum { get; set; }  //鍩烘湰鏉℃暟
+        public int GivingNum { get; set; }  //璧犻�佹潯鏁�
+        public int DelFlag { get; set; }  //鍒犻櫎鏍囧織锛�0-姝e父锛�2-閫昏緫鍒犻櫎
+
         public int Id
         {
             get { return this._id; }
diff --git a/web/Model/obj/Debug/Model.csproj.AssemblyReference.cache b/web/Model/obj/Debug/Model.csproj.AssemblyReference.cache
index 4eb1e67..a927aa2 100644
--- a/web/Model/obj/Debug/Model.csproj.AssemblyReference.cache
+++ b/web/Model/obj/Debug/Model.csproj.AssemblyReference.cache
Binary files differ
diff --git a/web/Model/obj/Debug/Model.csproj.CoreCompileInputs.cache b/web/Model/obj/Debug/Model.csproj.CoreCompileInputs.cache
index 43635fb..237ef06 100644
--- a/web/Model/obj/Debug/Model.csproj.CoreCompileInputs.cache
+++ b/web/Model/obj/Debug/Model.csproj.CoreCompileInputs.cache
@@ -1 +1 @@
-00bfb7d603acc6cb6309f95b0c5c17d4ff8f2b67
+1bacd091eedbdb18186fe1adccdde3305270d490
diff --git a/web/Model/obj/Debug/Model.dll b/web/Model/obj/Debug/Model.dll
index 88ff236..f33cae8 100644
--- a/web/Model/obj/Debug/Model.dll
+++ b/web/Model/obj/Debug/Model.dll
Binary files differ
diff --git a/web/Model/obj/Debug/Model.pdb b/web/Model/obj/Debug/Model.pdb
index a9b5d2f..550d08d 100644
--- a/web/Model/obj/Debug/Model.pdb
+++ b/web/Model/obj/Debug/Model.pdb
Binary files differ
diff --git a/web/UMCLib/obj/Debug/UMCLib.csproj.AssemblyReference.cache b/web/UMCLib/obj/Debug/UMCLib.csproj.AssemblyReference.cache
index b08d99c..b7c12fd 100644
--- a/web/UMCLib/obj/Debug/UMCLib.csproj.AssemblyReference.cache
+++ b/web/UMCLib/obj/Debug/UMCLib.csproj.AssemblyReference.cache
Binary files differ
diff --git a/web/web/Bin/Dao.dll b/web/web/Bin/Dao.dll
index 910baf0..cd10034 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 d93f58c..0727b98 100644
--- a/web/web/Bin/Dao.pdb
+++ b/web/web/Bin/Dao.pdb
Binary files differ
diff --git a/web/web/Bin/Model.dll b/web/web/Bin/Model.dll
index 88ff236..f33cae8 100644
--- a/web/web/Bin/Model.dll
+++ b/web/web/Bin/Model.dll
Binary files differ
diff --git a/web/web/Bin/Model.pdb b/web/web/Bin/Model.pdb
index a9b5d2f..550d08d 100644
--- a/web/web/Bin/Model.pdb
+++ b/web/web/Bin/Model.pdb
Binary files differ
diff --git a/web/web/GwProduct.aspx b/web/web/GwProduct.aspx
index f68d735..de239c9 100644
--- a/web/web/GwProduct.aspx
+++ b/web/web/GwProduct.aspx
@@ -294,7 +294,7 @@
                             <label class="col-sm-2 control-label">
                                 鐖剁骇鍒嗙被ID</label>
                             <div class="col-sm-4 ">
-                                <select name="parentId" id="parentId">
+                                <select name="parentId" id="parentId" class="form-control">
                                     <%=GetProductClassOptions("0")%>
                                 </select>
                             </div>
diff --git a/web/web/GwSp.ashx b/web/web/GwSp.ashx
index 6f41e03..0a168f7 100644
--- a/web/web/GwSp.ashx
+++ b/web/web/GwSp.ashx
@@ -19,6 +19,7 @@
     private List<GwDiverter> _DiverterList;
     private List<GwAp> _APList;
     private List<GwStrategy> _StrategyList;
+    private List<GwProduct> _ProductList;
 
     private List<GwOp> OpList
     {
@@ -82,6 +83,25 @@
                     this._APList = gwApDao.LoadInfoList();
             }
             return this._APList;
+        }
+    }
+
+    private List<GwProduct> ProductList
+    {
+        get
+        {
+            if (this._ProductList == null)
+            {
+                using (GwProductDao gwProductDao = new GwProductDao())
+                {
+                    GwProduct gwProduct = new GwProduct();
+                        gwProduct.Classes = -1;
+                        gwProduct.IsDefault = -1;
+                        gwProduct.IsEnable = -1;
+                    this._ProductList = gwProductDao.getAllList(gwProduct);
+                }
+            }
+            return this._ProductList;
         }
     }
 
@@ -285,6 +305,7 @@
         int int3 = context.GetInt("pageSize", 20);
         int int4 = context.GetInt("pageIndex", 1);
         int int5 = context.GetInt("resendStatus", 1);
+        string productId = context.GetString("productId")==null? "": context.GetString("productId");
         if (!string.IsNullOrEmpty(string3) && int1 <= 0)
             throw new ArgumentException("璇烽�夋嫨閫氶亾缁勮矾鐢辨ā寮�");
         GwSpDao gwSpDao = new GwSpDao();
@@ -294,7 +315,7 @@
         if (string.IsNullOrEmpty(clientId) && !string.IsNullOrEmpty(string4))
             clientId = new GwClientDao().GetClientName(string4).ClientID;
         //鍔犺浇璐﹀彿鍒楄〃淇℃伅
-        List<GwSp> list = gwSpDao.LoadInfoList(string2, apId, clientId, int1, string3, int2, int4, int3, int5.ToString(),out recordCount);
+        List<GwSp> list = gwSpDao.LoadInfoList(string2, apId, clientId, int1, string3, int2, int4, int3, int5.ToString(),out recordCount, productId);
         string str1 = "";
         if (list != null && list.Count > 0)
         {
@@ -302,6 +323,7 @@
             {
                 str1 = str1 + "<tr><td  rowspan=\"1\" ><input type=\"checkbox\"name=\"checkbox\" value=\"" + gwSp.SpID + "\"/></td><td rowspan=\"1\">" + gwSp.SpID + "<div class=\"text-muted\">" + this.GetAPName(gwSp.ApID) + "</div><div class=\"text-muted\">" + this.GetClientName(gwSp.ClientID) + "</div>";
                 str1 += "</td>";
+                str1 = str1 + "<td>" + (object)this.GetProductToName(gwSp.ProductId) + "</td>";
                 if (gwSp.RouterType == 1)
                 {
                     str1 += "<td rowspan=\"1\"><div class=\"btn  btn-primary btn-xs\">鐐硅矾鐢�</div>";
@@ -328,7 +350,10 @@
                 string str2 = "<div class=\"text-muted\">" + gwSp.ChargerTypeText + "</div>";
                 if (gwSp.ChargerTypeText == "鍚庝粯璐�")
                     str2 = "<div  style=\"color:red\">" + gwSp.ChargerTypeText + "</div>";
-                str1 = str1 + (object)"<td><div class=\"text-muted\">" + (object)(gwSp.Balance / (long)gwSp.Price) + "鏉�/" + (object)((double)gwSp.Balance / 1000.0) + "鍏�</div>";
+                //add: yangzh by 2022-03-14 start
+                //str1 = str1 + (object)"<td><div class=\"text-muted\">" + (object)(gwSp.Balance / (long)gwSp.Price) + "鏉�/" + (object)((double)gwSp.Balance / 1000.0) + "鍏�</div>";
+                str1 = str1 + (object)"<td><div class=\"text-muted\">" + (object)(gwSp.BasicNum + (long)gwSp.GivingNum) + "鏉� / " + (object)(gwSp.BasicNum) + "鏉� / " + (object)(gwSp.GivingNum) + "鏉�</div>";
+                //add: yangzh by 2022-03-14 end
                 str1 = str1 + (object)str2 + "<div class=\"text-muted\">" + (object)((double)gwSp.Price / 1000.0) + "鍏�/鏉�</div>";
                 if (context.HasRight("3021"))
                     str1 += string.Format(" <a class=\"btn btn-xs btn-success action-modal-charge\"  data-id=\"{0}\"><i class=\"fa fa-cny\"></i> 鍏呭��</a>", (object)gwSp.SpID);
@@ -353,8 +378,9 @@
                 if (context.HasRight("3023"))
                     str1 += string.Format(" <a class=\"btn-block btn btn-primary btn-xs action-modal-edit\" data-id=\"{0}\"><i class=\"fa fa-edit\"></i>  缂栬緫</a>", (object)gwSp.SpID);
                 str1 += string.Format(" <a class=\"btn-block btn btn-success btn-xs action-create-summary\" data-id=\"{0}\">璐﹀彿鎽樿</a>", (object)gwSp.SpID);
-                if (context.HasRight("3024"))
-                    str1 += string.Format(" <a class=\"btn-block btn btn-xs btn-default action-delete\"  data-id=\"{0}\"><i class=\"fa fa-trash\"></i> 鍒犻櫎</a>", (object)gwSp.SpID);
+
+                //if (context.HasRight("3024"))
+                //    str1 += string.Format(" <a class=\"btn-block btn btn-xs btn-default action-delete\"  data-id=\"{0}\"><i class=\"fa fa-trash\"></i> 鍒犻櫎</a>", (object)gwSp.SpID);
                 str1 += "</td>";
                 str1 += "</tr>";
             }
@@ -480,6 +506,18 @@
         return "銆�" + gwDiverter.DiverterName + "銆戝娴佺瓥鐣�";
     }
 
+    //浜у搧杞悕绉�
+    private string GetProductToName(string productId)
+    {
+        GwProduct gwProduct = this.ProductList.Find((Predicate<GwProduct>)(bean => productId.Equals(bean.Id) ));
+        if (gwProduct != null)
+        {
+            //return string.Format("{0}-{1}", (object)gwAp.ApID, (object)gwAp.ApName);//2021.2.24.wzp鍙樻洿,鍚庣画鍙互鍒犻櫎
+            return string.Format("{0}", (object)gwProduct.Name);
+        }
+        return string.Empty;
+    }
+
     private JsonPageResult LoadGwSpPageList(PageContext<SysUser> context)
     {
         string string1 = context.GetString("SelectedSpID");
diff --git a/web/web/GwSp.aspx b/web/web/GwSp.aspx
index d13da23..5003bf1 100644
--- a/web/web/GwSp.aspx
+++ b/web/web/GwSp.aspx
@@ -1,5 +1,7 @@
 锘�<%@ Page Language="C#" masterpagefile="~/Main.master"  AutoEventWireup="true" CodeFile="GwSp.aspx.cs" Inherits="_GwSp" %>
 <asp:Content runat="server" ID="Content1" ContentPlaceHolderID="head">
+    <link href="../static/select2/select2.css" type="text/css" rel="stylesheet" />
+    <script src="../static/select2/select2.js" language="javascript" type="text/javascript"></script>
  
     
     <script type="text/javascript" language="javascript">
@@ -18,10 +20,11 @@
                 var clientName = $("#clientName").val();
                 var chargeType = $("#chargeType").val();
                 var resendStatus = $("#RESEND_STATUS").val();
+                var productId = $("#productId").val();
                 $.ajax({
                     url: "GwSp.ashx",
                     type: "POST",
-                    data: { action: "loadGwSpAccountPageList", spID: spID, apID: apID, opID: opID, routerType: routerType, clientID: clientID, clientName: clientName, chargeType: chargeType, pageIndex: pagination.getPageIndex(), pageSize: pagination.getPageSize(), resendStatus: resendStatus },
+                    data: { action: "loadGwSpAccountPageList", spID: spID, apID: apID, opID: opID, routerType: routerType, clientID: clientID, clientName: clientName, chargeType: chargeType, pageIndex: pagination.getPageIndex(), pageSize: pagination.getPageSize(), resendStatus: resendStatus, productId: productId },
                     success: function(result) {
                         if (result.OK) {
                             $("#gwspTable tbody").html(result.Message.Table);
@@ -112,11 +115,18 @@
                 }, "json");
             });
 
-            $(document).on("click", ".action-modal-charge", function(e) {
-                var id = $(this).data("id");
-                $("#chargeDialog .action-charge").data("id", id);
-                $("#chargeDialog .title").text(id + "璐︽埛鍏呭��");
-                $("#chargeDialog").modal("show");
+            //$(document).on("click", ".action-modal-charge", function(e) {
+            //    var id = $(this).data("id");
+            //    $("#chargeDialog .action-charge").data("id", id);
+            //    $("#chargeDialog .title").text(id + "璐︽埛鍏呭��");
+            //    $("#chargeDialog").modal("show");
+            //});
+
+            //鍏呭��
+            $(document).on("click", ".action-modal-charge", function () {
+                var spID = $(this).data("id");  //璐﹀彿ID
+                //window.open("gwOrderCreate.aspx?spId=" + spID, 'gwOrderCreate');
+                window.location.href = "gwOrderCreate.aspx?spId=" + spID;
             });
 
             //缂栬緫璐﹀彿
@@ -169,7 +179,10 @@
 
             loadPageList();
             
-            
+
+            $(document).on("click", ".action-create", function () {
+                window.location.href = "gwspupdate.aspx";
+            });
             
 
             $(document).on("click", ".action-export", function() {
@@ -343,6 +356,12 @@
             }
 
         });
+
+
+        $('#parentId').select2({
+            placeholder: "璇烽�夋嫨鍏宠仈浜у搧",
+            allowClear: true
+        });
     </script>
  </asp:Content> 
 <asp:Content runat="server" ID="Content2" ContentPlaceHolderID="title">瀹㈡埛璐﹀彿淇℃伅閰嶇疆</asp:Content> 
@@ -384,6 +403,15 @@
                 <div class="input-group m-b">
                     <span class="input-group-addon">閫氶亾ID</span>
                     <input type="text" name="opID" id="opID" class="form-control col-md-2" />
+                </div>
+            </div>
+
+            <div class="form-group">
+                <div class="input-group m-b">
+                    <span class="input-group-addon">鍏宠仈浜у搧ID</span>
+                        <select name="productId" id="productId" class="form-control">
+                            <%=GetProductOptions("")%>
+                        </select>
                 </div>
             </div>
             <div>
@@ -446,13 +474,19 @@
                         SP璐﹀彿/鎺ュ叆鍗忚/褰掑睘瀹㈡埛
                     </th>
                     <th>
+                        鍏宠仈浜у搧
+                    </th>
+                    <th>
                         閫氶亾
                     </th>
                     <th>
                         澶辫触琛ュ彂
                     </th>
                     <th>
+                        <!-- add: yangzh by 2022-03-14 start
                         鏉℃暟/浣欓/浠樿垂鏂瑰紡/鍗曚环/鍛婅
+                         -->
+                        鍓╀綑鎬绘潯鏁�/鍩烘湰鏉℃暟/璧犻�佹潯鏁�/浠樿垂鏂瑰紡/鍗曚环/鍛婅
                     </th>
                     <th>
                         璐﹀彿閰嶇疆灞炴��
@@ -493,11 +527,11 @@
                         <label class="col-sm-2 control-label">
                             绉诲姩閫氶亾
                         </label>
- <div class="col-sm-10">
- <select name="CMOPID" id="CMOPID" class="form-control">
+                 <div class="col-sm-10">
+                 <select name="CMOPID" id="CMOPID" class="form-control">
  
- <%=GetOpOptions(0)%>
-  </select>
+                 <%=GetOpOptions(0)%>
+                  </select>
   
  
                         </div>
@@ -561,6 +595,7 @@
             </div>
         </div>
     </div>
+    <%--
     <div class="modal inmodal fade" id="chargeDialog" tabindex="-1" role="dialog" aria-hidden="true">
         <div class="modal-dialog form-horizontal">
             <div class="modal-content animated ">
@@ -592,6 +627,47 @@
             </div>
         </div>
     </div>
+    --%>
+    
+    <div class="modal inmodal fade" id="chargeDialog" tabindex="-1" role="dialog" aria-hidden="true">
+        <div class="modal-dialog form-horizontal">
+            <div class="modal-content animated ">
+                <div class="modal-header">
+                    <span class="title">璐︽埛鍏呭��</span><a class="close" data-dismiss="modal" aria-hidden="true">脳</a></div>
+                <div class="modal-body">
+                    <div class="form-group">
+                        <label class="col-sm-2 control-label">
+                            鍏呭�奸噾棰�</label>
+                        <div class="col-sm-10 input-group m-b">
+                            <input type="text" class="form-control" name="amount" id="amount" value="" />
+                            <span class="input-group-addon">锟�</span>
+                        </div>
+                    </div>
+                    <div class="form-group">
+                        <label class="col-sm-2 control-label">
+                            鍏呭�奸噾棰�</label>
+                        <div class="col-sm-10 input-group m-b">
+                            <input type="text" class="form-control" name="amount" id="amount" value="" />
+                            <span class="input-group-addon">锟�</span>
+                        </div>
+                    </div>
+                    <div class="form-group">
+                        <label class="col-sm-2 control-label">
+                            澶囨敞</label>
+                        <div class="col-sm-10 input-group m-b">
+                            <input type="text" class="form-control" name="remark" id="remark" value="" />
+                            <span class="input-group-addon"></span>
+                        </div>
+                    </div>
+                </div>
+                <div class="modal-footer">
+                    <button class="btn-default btn" data-dismiss="modal" aria-hidden="true">
+                        鍙栨秷</button>&nbsp;&nbsp;
+                    <input class="btn btn-primary action-charge" value="纭畾鍏呭��" type="button" />
+                </div>
+            </div>
+        </div>
+    </div>
     <div class="modal inmodal fade" id="model-abstract" tabindex="-1" role="dialog" aria-hidden="true">
         <div class="modal-dialog form-horizontal">
             <div class="modal-content animated ">
diff --git a/web/web/GwSp.aspx.cs b/web/web/GwSp.aspx.cs
index 5e9680a..3ab21b3 100644
--- a/web/web/GwSp.aspx.cs
+++ b/web/web/GwSp.aspx.cs
@@ -14,7 +14,8 @@
     protected List<GwOp> OpList;
     protected List<GwOpGroup> GroupList;
     protected List<GwAp> ApList;
- 
+    protected List<GwProduct> GwProductList;
+
     public IEnumerable<GwDiverter> DiverterList { get; set; }
 
     protected void Page_Load(object sender, EventArgs e)
@@ -28,6 +29,16 @@
             this.GroupList = gwOpGroupDao.GetGroupList();
         using (GwDiverterDao gwDiverterDao = new GwDiverterDao())
             this.DiverterList = (IEnumerable<GwDiverter>)gwDiverterDao.LoadList();
+
+        //鑾峰彇鍚敤鐨勪骇鍝佸垎绫�
+        using (GwProductDao gwProductDao = new GwProductDao())
+        {
+            GwProduct bean = new GwProduct();
+            bean.Classes = -1;
+            bean.IsEnable = -1;
+            bean.IsDefault = -1;
+            this.GwProductList = gwProductDao.getAllList(bean);
+        }
     }
 
     public string GetGroupOptions(int groupID)
@@ -61,4 +72,33 @@
         }
         return stringBuilder.ToString();
     }
+
+    //鑾峰彇浜у搧淇℃伅
+    public string GetProductOptions(string productId)
+    {
+        StringBuilder stringBuilder = new StringBuilder();
+        if (this.GwProductList.Count == 0)
+            return "<option value='0'>鏃�</option>";
+        stringBuilder.AppendFormat("<option value=\"{0}\" >{1}</option>", (object)0, (object)"鏃�");
+        foreach (GwProduct bean in this.GwProductList)
+        {
+            //鍋滅敤鐨勪骇鍝佸垎绫讳笉鍐嶆樉绀�
+            if (bean.IsEnable == 0)
+            {
+                continue;
+            }
+            //绫诲埆涓轰骇鍝佷笉鍐嶆樉绀�
+            if (bean.Classes == 0)
+            {
+                continue;
+            }
+
+            if (productId.Equals(bean.Id))
+                stringBuilder.AppendFormat("<option value=\"{0}\" selected>{0}-{1}</option>", (object)bean.Id, (object)bean.Name);
+            else
+                stringBuilder.AppendFormat("<option value=\"{0}\">{0}-{1}</option>", (object)bean.Id, (object)bean.Name);
+        }
+        return stringBuilder.ToString();
+    }
+
 }
diff --git a/web/web/Index.aspx b/web/web/Index.aspx
index 6e648a4..c7de607 100644
--- a/web/web/Index.aspx
+++ b/web/web/Index.aspx
@@ -174,6 +174,17 @@
                             <li><a href="GwProduct.aspx" class="J_menuItem">浜у搧鍒楄〃</a> </li>
                         </ul>
                     </li>
+                    <li>
+                        <a href="#">
+                            <i class="fa fa-rocket"></i>
+                            <span class="nav-label">璁㈠崟绠$悊</span>
+                            <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>
+                        </ul>
+                    </li>
 
                     <li>
                         <a href="#"><i class="fa fa-user-secret"></i><span class="nav-label">瀹㈡埛绠$悊 </span><span class="fa arrow"></span></a>
diff --git a/web/web/gwspupdate.aspx b/web/web/gwspupdate.aspx
index a941127..da59c11 100644
--- a/web/web/gwspupdate.aspx
+++ b/web/web/gwspupdate.aspx
@@ -485,6 +485,21 @@
             </tr>
             <tr>
                 <th>
+                    鍏宠仈浜у搧:
+                </th>
+                <td colspan="3">
+                     
+                    <select name="ProductId" id="ProductId" disabled="disabled">
+                        <%=GetProductOptions(GwSp.ProductId)%>
+                    </select>
+                    
+                    <span class="highlight"> </span>
+                    
+                    
+                </td>
+            </tr>
+            <tr>
+                <th>
                     SPID:
                 </th>
                 <td>
diff --git a/web/web/gwspupdate.aspx.cs b/web/web/gwspupdate.aspx.cs
index 7560580..85f7ffd 100644
--- a/web/web/gwspupdate.aspx.cs
+++ b/web/web/gwspupdate.aspx.cs
@@ -12,8 +12,9 @@
 {
     protected List<GwAp> ApList;
     protected List<GwOp> OpList;
+    protected List<GwProduct> GwProductList;
 
-    
+
 
     public GwSp GwSp { get; protected set; }
 
@@ -73,6 +74,16 @@
                 this.GwSp.CombinationMode = 0;
             }
         }
+
+        //鑾峰彇鍚敤鐨勪骇鍝佸垎绫�
+        using (GwProductDao gwProductDao = new GwProductDao())
+        {
+            GwProduct bean = new GwProduct();
+            bean.Classes = 1;
+            bean.IsEnable = -1;
+            this.GwProductList = gwProductDao.getAllList(bean);
+        }
+
     }
 
     public string McCount(int i, string mcExpression)
@@ -213,4 +224,34 @@
             return num;
         }
     }
+
+
+    //鑾峰彇浜у搧淇℃伅
+    public string GetProductOptions(string productId)
+    {
+        StringBuilder stringBuilder = new StringBuilder();
+        if (this.GwProductList.Count == 0)
+            return "<option value='0'>鏃�</option>";
+        stringBuilder.AppendFormat("<option value=\"{0}\" >{1}</option>", (object)0, (object)"鏃�");
+        foreach (GwProduct bean in this.GwProductList)
+        {
+            //鍋滅敤鐨勪骇鍝佸垎绫讳笉鍐嶆樉绀�
+            if (bean.IsEnable == 0)
+            {
+                continue;
+            }
+            //绫诲埆涓轰骇鍝佷笉鍐嶆樉绀�
+            if (bean.Classes == 0)
+            {
+                continue;
+            }
+
+            if (productId.Equals(bean.Id))
+                stringBuilder.AppendFormat("<option value=\"{0}\" selected>{0}-{1}</option>", (object)bean.Id, (object)bean.Name);
+            else
+                stringBuilder.AppendFormat("<option value=\"{0}\">{0}-{1}</option>", (object)bean.Id, (object)bean.Name);
+        }
+        return stringBuilder.ToString();
+    }
+
 }

--
Gitblit v1.9.1