从山证v2.3.0拷贝
This commit is contained in:
@@ -0,0 +1,71 @@
|
||||
using YLErp.BLL;
|
||||
using YLErp.Model;
|
||||
|
||||
namespace YLErp.Modules.TradeModule.DealModule
|
||||
{
|
||||
/// <summary>
|
||||
/// 交易流程服务
|
||||
/// </summary>
|
||||
public class TradeProcessService : TradeServiceBase
|
||||
{
|
||||
public TradeProcessService(YLBaseService baseService) : base(baseService)
|
||||
{
|
||||
}
|
||||
|
||||
public TradeProcessService(OptUserInfo userInfo) : base(userInfo)
|
||||
{
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// from trade_cashcontroller.DenyReCheck
|
||||
/// </summary>
|
||||
public void DenyReCheck(TradeCashReq req)
|
||||
{
|
||||
var td = DbContext.trade.Find(req.TradeId);
|
||||
if (td == null || (td.TradeStatus != ConsTrade.行权待复核 && td.TradeStatus != ConsTrade.平仓待复核 && td.TradeStatus != ConsTrade.互换待复核))
|
||||
{
|
||||
throw new ServiceException("拒绝失败,找不到要平仓的主交易,该交易不处于待复核状态,不能被拒绝!");
|
||||
}
|
||||
var delTradeCashes = DbContext.trade_cash.Where(O => O.TradeId == req.TradeId && O.ValidState == "InValid" && !O.IsDeleted);
|
||||
DbContext.trade_cash.RemoveRange(delTradeCashes);
|
||||
DbContext.SaveChanges();
|
||||
|
||||
//存在审批流程时,审批流程也进入拒绝状态
|
||||
if (valuedateBLL.SystemDate.CloseReApprove == 1 && HasTradeProcess())
|
||||
{
|
||||
var result = new TradeOpenService(this).UpdateTradeProcessLog(new TradeOpenReqModel
|
||||
{
|
||||
tradeId = td.id,
|
||||
status = "reject",
|
||||
comments = "提前终止拒绝成功"
|
||||
});
|
||||
if (result.RetCode != TradeOpenRetCode.Success && !string.IsNullOrWhiteSpace(result.ErrorMsg))
|
||||
{
|
||||
throw new ServiceException("提前终止拒绝失败");
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
||||
td.TradeStatus = ConsTrade.提前终止拒绝;
|
||||
td.IsApproval = false;
|
||||
AddTradeOperationHistoryAndSetParentTradeInfo(false, td, "提前终止拒绝");
|
||||
|
||||
DbContext.SaveChanges();
|
||||
}
|
||||
/// <summary>
|
||||
/// 分组了结 主交易复核拒绝
|
||||
/// </summary>
|
||||
/// <param name="parentTradeId"></param>
|
||||
public void DenyReCheckByParent(int parentTradeId)
|
||||
{
|
||||
var result = new TradeOpenService(OptUser).UpdateParentTradeProcessLog(new TradeOpenReqModel
|
||||
{
|
||||
tradeId = parentTradeId,
|
||||
status = "reject",
|
||||
comments = "",
|
||||
ignoreMoneyCheck = false
|
||||
});
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user