Files
zszq-trs/YLErpDAL/CustomizedBizLogic/BizLogicGFSM.cs
T
2024-05-09 14:06:26 +08:00

41 lines
1.5 KiB
C#

using NPOI.SS.Formula.Functions;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using YLErp.BLL;
using YLErp.Modules;
namespace YLErp.CustomizedBizLogic
{
/// <summary>
/// 广发商贸编码规则
/// </summary>
public class BizLogicGFSM : BizLogicDefault
{
/// <summary>
/// 交易编号
/// </summary>
/// <param name="reqModel"></param>
/// <param name="db"></param>
/// <returns></returns>
public override string GenerateTradeNumberBeforeConfirm(TradeNumberReqModel reqModel, YLContext db)
{
var client = DataCacheProvider.GetClientDataSource().GetData(reqModel.clientId);
var tradeNumbers = new List<string>();
var tradeDate = reqModel.trade.TradeDate ?? reqModel.trade.StartDate;
tradeNumbers = db.trade.Where(x => x.ParentTradeId == 0 && x.ValidState != "InValid" && x.TradeDate == tradeDate).Select(x => x.TradeNumber).ToList();
var count = tradeNumbers.Count + 1;
var tradeNumber = client.Number + "-" + tradeDate.Value.ToString("yyyyMMdd") + count.ToString().PadLeft(3, '0');
return tradeNumber;
}
public override string GenerateSubTradeNumberBeforeConfirm(trade curLeg, trade masterTrade, int legIndex, YLContext db)
{
string tradeNumber = masterTrade.TradeNumber + "-" + legIndex.ToString();
return tradeNumber;
}
}
}