TG.WXCRM.V4/WX.CRM.DataSynFactory/Cmd/Client_DepositRefundOrder_I...

62 lines
2.1 KiB
C#

using System;
using WX.CRM.BLL.Base;
using WX.CRM.BLL.Wx;
using WX.CRM.Common;
using WX.CRM.DataSynFactory.Templates;
using WX.CRM.Model.Entity;
namespace WX.CRM.DataSynFactory.Cmd
{
public class Client_DepositRefundOrder_IMP : Interfaces.IDataImportSvr<Client_DepositRefundOrder>
{
private WX_SZZYORDERDEPOSIT_BL _orderDeposit = new WX_SZZYORDERDEPOSIT_BL();
private WX_SZZYORDERREFUND_BL _orderRefund = new WX_SZZYORDERREFUND_BL();
private WX_SZZYORDER_REFUND_BL _orderRefund2 = new WX_SZZYORDER_REFUND_BL();
public bool GenerateBusinessOne(Client_DepositRefundOrder t)
{
try
{
var deposit = _orderDeposit.Get(p => p.ID == t.Id);
var orderRefund = _orderRefund.Get(p => p.SID == t.SId);
if (orderRefund != null)
{
orderRefund.AUDITSTATUS = t.AuditStatus;
orderRefund.AUDITOR = t.Auditor;
orderRefund.AUDITORNAME = t.AuditorName;
orderRefund.AUDITTIME = t.AuditTime;
orderRefund.COMPANYCODE = t.DeptCode;
_orderRefund.Update(orderRefund);
}
if (deposit != null)
{
//deposit.ISUSE = t.IsUse;
deposit.LASTPRICE -= orderRefund.REFUNDPRICE;//减去可用金额
_orderDeposit.Update(deposit);
}
var refund = new WX_SZZYORDER_REFUND()
{
PKID = new SEQUENCES_BL().Seq_base_get(),
SZZYORDERID = t.Id,
REFUND = orderRefund.REFUNDPRICE,
REFUNDTIME = new DateTime(t.AuditTime.Year, t.AuditTime.Month, 1),
CTIME = DateTime.Now,
REMARK = string.Empty,
FLAG = 0
};
_orderRefund2.Add(refund);
return true;
}
catch (Exception ex)
{
LogHelper.Error(ex.ToString());
return false;
}
}
}
}