93 lines
3.8 KiB
C#
93 lines
3.8 KiB
C#
using System;
|
|
using WX.CRM.BLL.Base;
|
|
using WX.CRM.BLL.Csvr;
|
|
using WX.CRM.BLL.Res;
|
|
using WX.CRM.BLL.Wx;
|
|
using WX.CRM.Common;
|
|
using WX.CRM.DataSynFactory.Templates;
|
|
using WX.CRM.Model.Entity;
|
|
using WX.CRM.Model.Enum;
|
|
|
|
namespace WX.CRM.DataSynFactory.Cmd
|
|
{
|
|
public class Client_OpenOrder_IMP : Interfaces.IDataImportSvr<Client_OpenOrder>
|
|
{
|
|
private WX_SZZYORDER_BL _order = new WX_SZZYORDER_BL();
|
|
private RES_CUSTOMERDETAIL_BL _customer = new RES_CUSTOMERDETAIL_BL();
|
|
private CSVR_FAVORITECUSTOMER_BL _favCustomer = new CSVR_FAVORITECUSTOMER_BL();
|
|
private RES_MYALLOCATERES_BL _myRes = new RES_MYALLOCATERES_BL();
|
|
private RES_MYALLOCATERES_ACT_BL _act = new RES_MYALLOCATERES_ACT_BL();
|
|
private BAS_INNERUSER_BL _user = new BAS_INNERUSER_BL();
|
|
public bool GenerateBusinessOne(Client_OpenOrder t)
|
|
{
|
|
try
|
|
{
|
|
var order = _order.Get(p => p.ORDERID == t.OrderId);
|
|
order.ORDERSTATUS = t.OrderStatus;
|
|
order.ORDERSTATUSNAME = t.OrderStatusName;
|
|
order.OTIME = t.OTime;
|
|
order.ENDTIME = t.EndTime;
|
|
order.ISOPEN = 1;
|
|
order.ACTIVEPRODUCTCODE = t.ActiveProductCode;
|
|
order.ACTIVEPRODUCTEXT = t.ActiveProductExt;
|
|
order.FINACEPAYDATE = t.OTime;
|
|
order.ISFINANCEPAY = 1;
|
|
if (!string.IsNullOrWhiteSpace(t.CName))
|
|
{
|
|
order.CNAME = t.CName;
|
|
|
|
var customer = _customer.Get(p => p.RESID == t.ResId);
|
|
if (customer != null)
|
|
{
|
|
customer.CNAME = t.CName;
|
|
_customer.Update(customer);
|
|
}
|
|
|
|
var list = _favCustomer.GetFavAndMyResList(order.RESID);
|
|
if (list.Count <= 0)
|
|
{
|
|
if(order.INNERUSERID.HasValue)
|
|
{
|
|
//如果找不到归属,下单人写入归属
|
|
var user = _user.GetModel(order.INNERUSERID.Value);
|
|
if (user != null)
|
|
{
|
|
var eid = user.EID;
|
|
var info = new RES_MYALLOCATERES_ACT(new SEQUENCES_BL().Seq_base_get(Model.Enum.PKIDType.LargeTable), order.RESID, eid, 0, "add", null);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
#region 开通后高级资源需要插入待分配表。进行高级资源分配
|
|
|
|
var bas_parameter = new BAS_PARAMETER_BL().GetModel_Patameter("sys_gaoji_typecode");
|
|
if (bas_parameter != null)
|
|
{
|
|
var hasOldOrder = _order.Get(p => p.ORDERID != t.OrderId && p.RESID == order.RESID && p.OTIME.HasValue);
|
|
if (hasOldOrder == null)//如果是首单就需要进行分配
|
|
{
|
|
var ss = bas_parameter.PARAVALUE.Split('|');
|
|
new RES_TOBEALLCOTED_BL().Add(new RES_TOBEALLCOTED()
|
|
{
|
|
APPLYID = 0,
|
|
CTIME = DateTime.Now,
|
|
DIS_NUM = 0,
|
|
RESID = order.RESID,
|
|
RESOURCETAG = ss[0],
|
|
RESTYPEID = Convert.ToDecimal(ss[1]),
|
|
TURNING_ID = new SEQUENCES_BL().Seq_base_get(PKIDType.LargeTable)
|
|
});
|
|
}
|
|
}
|
|
#endregion
|
|
return _order.Update(order);
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
LogHelper.Error(ex.ToString());
|
|
return false;
|
|
}
|
|
}
|
|
}
|
|
}
|