using System;
|
using System.Collections.Generic;
|
using System.Linq;
|
using System.Text;
|
using CY.WebService;
|
using System.Data;
|
using System.Data.SqlClient;
|
using CY.WebService.Logging;
|
|
namespace CyinOrderWebService
|
{
|
public class WebServiceBLL
|
{
|
/// <summary>
|
/// 自动对规定时间内的订单进行收货操作
|
/// </summary>
|
public void AcceptOverTimeOrder()
|
{
|
try
|
{
|
List<int> d = new List<int>();
|
Database _dataBase = new Database();
|
DataTable OrderTable = _dataBase.SelectModel(" * ", " EC_OrderBasic ", string.Format(" OrderState <> 1 AND OrderState <> 6 AND OrderState <> -1 AND OrderState > 0 AND DeliveryTime <=GETDATE() AND OrderTypeId <=0 "));//执行查询
|
DataRow[] result = OrderTable.Select();
|
int i = -1;
|
while (++i < result.Length)
|
{
|
IList<SqlParameter> sqlParms = new List<SqlParameter>()
|
{
|
new SqlParameter(){ParameterName="@returnValue",Direction=ParameterDirection.ReturnValue,SqlDbType=SqlDbType.Int,DbType=DbType.Int32},
|
new SqlParameter(){ParameterName="@orderId",Value=int.Parse(result[i]["Keyid"].ToString())},
|
new SqlParameter(){ParameterName="@memberId",Value=Guid.Parse(result[i]["BuyerId"].ToString()),SqlDbType=SqlDbType.UniqueIdentifier}
|
};
|
_dataBase.Query("sp_EC_Order_AcceptById", CommandType.StoredProcedure, sqlParms.ToArray<SqlParameter>());
|
}
|
}
|
catch (Exception ex)
|
{
|
Log4NetAdapter log_Log4NetAdapter = new Log4NetAdapter();
|
log_Log4NetAdapter.Log(ex.Message);
|
}
|
}
|
|
/// <summary>
|
/// 自动删除超过规定时间的线上订单
|
/// </summary>
|
public void DelOverTimeOrder()
|
{
|
try
|
{
|
List<int> d = new List<int>();
|
Database _dataBase = new Database();
|
DataTable OrderTable = _dataBase.SelectModel(" * ", " EC_OrderBasic ", string.Format(" PayState = 0 AND OrderState = 1 AND CreateTime <='{0}' AND OrderTypeId <=0 ", DateTime.Now.AddDays(-int.Parse(System.Configuration.ConfigurationManager.AppSettings["OrderOverDays"].ToString())).ToString()));//执行查询
|
DataRow[] result = OrderTable.Select();
|
int i = -1;
|
while (++i < result.Length)
|
{
|
IList<SqlParameter> sqlParms = new List<SqlParameter>()
|
{
|
new SqlParameter(){ParameterName="@Keyid",Value=int.Parse(result[i]["Keyid"].ToString())}
|
};
|
_dataBase.Query("sp_EC_OrderBasic_DeleteOnlineOverTime", CommandType.StoredProcedure, sqlParms.ToArray<SqlParameter>());
|
}
|
}
|
catch (Exception ex)
|
{
|
Log4NetAdapter log_Log4NetAdapter = new Log4NetAdapter();
|
log_Log4NetAdapter.Log(ex.Message);
|
}
|
}
|
|
/// <summary>
|
/// 自动删除超过规定时间的线上订单
|
/// </summary>
|
public void RemovedlOverTimeOrder()
|
{
|
try
|
{
|
string time = DateTime.Now.AddDays(-int.Parse(System.Configuration.ConfigurationManager.AppSettings["RecruitmentsOverDays"].ToString())).ToString();
|
Database _dataBase = new Database();
|
_dataBase.ExecuteSql(" UPDATE OA_StaffRecruitments SET R_Status='1' WHERE R_Status='2' AND R_StartTime <='" + time + "' ");
|
}
|
catch (Exception ex)
|
{
|
Log4NetAdapter log_Log4NetAdapter = new Log4NetAdapter();
|
log_Log4NetAdapter.Log(ex.Message);
|
}
|
}
|
|
/// <summary>
|
/// 将已到期会员状态修改为已到期
|
/// </summary>
|
public void SetMemberStatus()
|
{
|
try
|
{
|
List<int> d = new List<int>();
|
Database _dataBase = new Database();
|
DataTable OrderTable = _dataBase.SelectModel(" * ", " EC_MemberBasic ", string.Format(" MemberType = '印刷厂商' AND ExpirationTime <= GETDATE() AND UseState='3' "));//执行查询
|
DataRow[] result = OrderTable.Select();
|
int i = -1;
|
while (++i < result.Length)
|
{
|
IList<SqlParameter> sqlParms = new List<SqlParameter>()
|
{
|
new SqlParameter(){ParameterName="@MemberId",Value=Guid.Parse(result[i]["MemberId"].ToString()),SqlDbType=SqlDbType.UniqueIdentifier},
|
new SqlParameter(){ParameterName="@UseState",Value=1}
|
};
|
_dataBase.Query("sp_EC_MemberBasic_FirmOverTime", CommandType.StoredProcedure, sqlParms.ToArray<SqlParameter>());
|
}
|
}
|
catch (Exception ex)
|
{
|
Log4NetAdapter log_Log4NetAdapter = new Log4NetAdapter();
|
log_Log4NetAdapter.Log(ex.Message);
|
}
|
}
|
|
/// <summary>
|
/// 15天未还款自动降低客户信誉
|
/// </summary>
|
public void LowerCreditLevel()
|
{
|
try
|
{
|
Database _dataBase = new Database();
|
DataTable OrderTable = _dataBase.SelectModel(" t.PayeeId,MIN(t.CreateTime) AS CreateTime ", " (SELECT PayeeId,CreateTime FROM dbo.Pay_IncExpRecord AS a WHERE a.BalanceAccount='9' AND a.TradingType=1 AND a.Keyid > ISNULL((SELECT TOP(1) Keyid FROM dbo.Pay_IncExpRecord WHERE BalanceAccount='14' AND a.PayeeId = PayId ORDER BY Keyid DESC),0) AND a.CreateTime > ISNULL((SELECT TOP(1) CreateTime FROM dbo.Pay_CreditRecard WHERE a.PayeeId = PayId ORDER BY Keyid DESC),'2000-01-01 00:00:00')) t ", string.Format(" 1=1 GROUP BY t.PayeeId ORDER BY MIN(t.CreateTime) "));//执行查询
|
DataRow[] result = OrderTable.Select();
|
int i = -1;
|
while (++i < result.Length)
|
{
|
int Payeeid = int.Parse(result[i]["PayeeId"].ToString());
|
DateTime CreatTime = DateTime.Parse(result[i]["CreateTime"].ToString());
|
if (CreatTime.AddDays(15) < DateTime.Now)
|
{
|
IList<SqlParameter> sqlParms = new List<SqlParameter>()
|
{
|
new SqlParameter(){ParameterName="@PayeeId",Value=Payeeid}
|
};
|
_dataBase.Query("sp_Pay_PaymentAccount_LowerCreditLevel", CommandType.StoredProcedure, sqlParms.ToArray<SqlParameter>());
|
}
|
}
|
}
|
catch (Exception ex)
|
{
|
Log4NetAdapter log_Log4NetAdapter = new Log4NetAdapter();
|
log_Log4NetAdapter.Log(ex.Message);
|
}
|
}
|
}
|
}
|