Browse Source

拼多多审核

qianyi
shanji 3 years ago
parent
commit
eaa06fe3f4
  1. 2
      BBWY.Client/Models/APIModel/Response/PurchaseOrder/AuditPurchaseOrderResponse.cs
  2. 3
      BBWY.Client/Models/Enums.cs
  3. 94
      BBWY.Client/ViewModels/FinancialTerminal/ProcurementAuditViewModel.cs
  4. 3
      BBWY.Server.Business/PurchaseOrder/PurchaseOrderBusiness.cs
  5. 5
      BBWY.Server.Model/Dto/Response/PurchaseOrder/AuditPurchaseOrderResponse.cs
  6. 3
      BBWY.Server.Model/Enums.cs

2
BBWY.Client/Models/APIModel/Response/PurchaseOrder/AuditPurchaseOrderResponse.cs

@ -17,5 +17,7 @@ namespace BBWY.Client.Models
public string OrderId { get; set; } public string OrderId { get; set; }
public DateTime? PurchaseTime { get; set; } public DateTime? PurchaseTime { get; set; }
public Platform? PurchasePlatform { get; set; }
} }
} }

3
BBWY.Client/Models/Enums.cs

@ -79,7 +79,8 @@
= 4, = 4,
= 5, = 5,
= 6, = 6,
= 7 = 7,
退 = 8
} }
/// <summary> /// <summary>

94
BBWY.Client/ViewModels/FinancialTerminal/ProcurementAuditViewModel.cs

@ -25,8 +25,6 @@ namespace BBWY.Client.ViewModels
private bool isLoading; private bool isLoading;
private bool isAudited; private bool isAudited;
private bool isShowPayBillPanel; private bool isShowPayBillPanel;
//private bool isShowPurchaseOrderPanel;
//private bool isShowShopOrderPanel;
private bool onlyException; private bool onlyException;
private PurchaseOrderService purchaseOrderService; private PurchaseOrderService purchaseOrderService;
private Department selectedDepartment; private Department selectedDepartment;
@ -53,16 +51,8 @@ namespace BBWY.Client.ViewModels
public IList<Department> DepartmentList { get; set; } public IList<Department> DepartmentList { get; set; }
//public IList<AuditPurchaseOrder> AuditPurchaseOrderList { get; set; }
//public IList<AuditShopOrder> AuditShopOrderList { get; set; }
public IList<AuditPayBill> ShowAuditPayBillList { get; set; } public IList<AuditPayBill> ShowAuditPayBillList { get; set; }
//public IList<AuditPurchaseOrder> ShowAuditPurchaseOrderList { get; set; }
//public IList<AuditShopOrder> ShowAuditShopOrderList { get; set; }
public AuditFile SelectAuditFile public AuditFile SelectAuditFile
{ {
get => selectAuditFile; set get => selectAuditFile; set
@ -80,44 +70,8 @@ namespace BBWY.Client.ViewModels
get => isShowPayBillPanel; set get => isShowPayBillPanel; set
{ {
Set(ref isShowPayBillPanel, value); Set(ref isShowPayBillPanel, value);
//if (Set(ref isShowPayBillPanel, value))
//{
// if (value)
// {
// IsShowPurchaseOrderPanel = false;
// IsShowShopOrderPanel = false;
// }
//}
} }
} }
//public bool IsShowPurchaseOrderPanel
//{
// get => isShowPurchaseOrderPanel; set
// {
// if (Set(ref isShowPurchaseOrderPanel, value))
// {
// if (value)
// {
// IsShowPayBillPanel = false;
// IsShowShopOrderPanel = false;
// }
// }
// }
//}
//public bool IsShowShopOrderPanel
//{
// get => isShowShopOrderPanel; set
// {
// if (Set(ref isShowShopOrderPanel, value))
// {
// if (value)
// {
// IsShowPayBillPanel = false;
// IsShowPurchaseOrderPanel = false;
// }
// }
// }
//}
public bool OnlyException public bool OnlyException
{ {
@ -207,10 +161,23 @@ namespace BBWY.Client.ViewModels
if (!auditPurchaseOrderResponse.Success) if (!auditPurchaseOrderResponse.Success)
throw new Exception($"获取采购单失败,{auditPurchaseOrderResponse.Msg}"); throw new Exception($"获取采购单失败,{auditPurchaseOrderResponse.Msg}");
//按日分组的pdd账单集合, key=日期 value=当日账单总额
var pddPayBillDayDictionary = new Dictionary<DateTime, decimal>();
foreach (var payBill in AuditPayBillList) foreach (var payBill in AuditPayBillList)
{ {
payBill.ErrorMessage = String.Empty; payBill.ErrorMessage = string.Empty;
#region 按日累计拼多多账单金额
if (payBill.MerchantOrderNo.StartsWith("XP"))
{
if (!pddPayBillDayDictionary.TryGetValue(payBill.PayTime.Value.Date, out decimal pddTotalPurchaseAmount))
pddPayBillDayDictionary.Add(payBill.PayTime.Value.Date, 0);
pddTotalPurchaseAmount += Math.Abs(payBill.ExpenditureAmount);
pddPayBillDayDictionary[payBill.PayTime.Value.Date] = pddTotalPurchaseAmount;
}
#endregion
#region 匹配采购单 #region 匹配采购单
var relationPurchaseOrder = auditPurchaseOrderResponse.Data.FirstOrDefault(p => p.PurchaseOrderId == payBill.MerchantOrderNo || var relationPurchaseOrder = auditPurchaseOrderResponse.Data.FirstOrDefault(p => p.PurchaseOrderId == payBill.MerchantOrderNo ||
p.MerchantOrderId == payBill.MerchantOrderNo); p.MerchantOrderId == payBill.MerchantOrderNo);
@ -239,6 +206,22 @@ namespace BBWY.Client.ViewModels
payBill.AuditCapitalType = AuditCapitalType.; payBill.AuditCapitalType = AuditCapitalType.;
#endregion #endregion
} }
#region 按日比较拼多多账单金额和采购单金额
foreach (var key in pddPayBillDayDictionary)
{
var purchaseAmount = auditPurchaseOrderResponse.Data.Where(p => p.PurchaseTime.Value.Date == key.Key &&
p.PurchasePlatform == Platform.).Sum(p => p.PurchaseAmount);
if (key.Value != purchaseAmount)
{
var currentDayPddPayBillList = AuditPayBillList.Where(p => p.PayTime.Value.Date == key.Key.Date &&
p.MerchantOrderNo.StartsWith("XP") &&
string.IsNullOrEmpty(p.RelationPurchaseOrderId));
foreach (var payBill in currentDayPddPayBillList)
payBill.ErrorMessage = $"{key.Key:yyyy-MM-dd}账单金额与采购单不匹配";
}
}
#endregion
} }
catch (Exception ex) catch (Exception ex)
{ {
@ -278,16 +261,6 @@ namespace BBWY.Client.ViewModels
return ("文件已存在", string.Empty, null); return ("文件已存在", string.Empty, null);
try try
{ {
//var dt = new DataTable();
//using (var reader = File.OpenText(filePath))
//{
// using (var csv = new CsvHelper.CsvReader(reader, CultureInfo.InvariantCulture))
// using (var dataReader = new CsvHelper.CsvDataReader(csv))
// {
// dt.Load(dataReader);
// }
//}
var lines = File.ReadAllLines(filePath, Encoding.GetEncoding("GB2312")).ToList(); var lines = File.ReadAllLines(filePath, Encoding.GetEncoding("GB2312")).ToList();
AuditFileList.Add(new AuditFile() { FileName = fileName, AuditFileType = auditFileType }); AuditFileList.Add(new AuditFile() { FileName = fileName, AuditFileType = auditFileType });
return (string.Empty, fileName, lines); return (string.Empty, fileName, lines);
@ -341,12 +314,8 @@ namespace BBWY.Client.ViewModels
{ {
var array = line.CSVstrToArry(); var array = line.CSVstrToArry();
var sourceMerchantOrderNo = array[2].FormatString(); var sourceMerchantOrderNo = array[2].FormatString();
//if (!string.IsNullOrEmpty(sourceMerchantOrderNo))
// continue; //暂时不支持此类商户单号
var incomeAmount = decimal.Parse(array[6].FormatString()); var incomeAmount = decimal.Parse(array[6].FormatString());
var expenditureAmount = decimal.Parse(array[7].FormatString()); var expenditureAmount = decimal.Parse(array[7].FormatString());
//if (expenditureAmount == 0) //支出为0的账单不参与审计
// continue;
payBillNo = array[0].FormatString(); payBillNo = array[0].FormatString();
if (AuditPayBillList.Any(p => p.PayBillNo == payBillNo)) if (AuditPayBillList.Any(p => p.PayBillNo == payBillNo))
continue; continue;
@ -364,7 +333,8 @@ namespace BBWY.Client.ViewModels
Remark = array[11] Remark = array[11]
}; };
payBill.MerchantOrderNo = payBill.SourceMerchantOrderNo; payBill.MerchantOrderNo = payBill.SourceMerchantOrderNo;
if (payBill.MerchantOrderNo == null)
payBill.MerchantOrderNo = "";
if (payBill.SourceMerchantOrderNo.StartsWith("T50060NP")) if (payBill.SourceMerchantOrderNo.StartsWith("T50060NP"))
{ {
payBill.MerchantOrderNo = payBill.SourceMerchantOrderNo.Substring(8); payBill.MerchantOrderNo = payBill.SourceMerchantOrderNo.Substring(8);

3
BBWY.Server.Business/PurchaseOrder/PurchaseOrderBusiness.cs

@ -310,7 +310,8 @@ namespace BBWY.Server.Business
PurchaseOrderId = ods.PurchaseOrderId, PurchaseOrderId = ods.PurchaseOrderId,
MerchantOrderId = ods.MerchantOrderId, MerchantOrderId = ods.MerchantOrderId,
ShopId = o.ShopId, ShopId = o.ShopId,
PurchaseTime = ods.CreateTime PurchaseTime = ods.CreateTime,
PurchasePlatform = ods.PurchasePlatform
}); });
} }

5
BBWY.Server.Model/Dto/Response/PurchaseOrder/AuditPurchaseOrderResponse.cs

@ -17,5 +17,10 @@ namespace BBWY.Server.Model.Dto
public string OrderId { get; set; } public string OrderId { get; set; }
public DateTime? PurchaseTime { get; set; } public DateTime? PurchaseTime { get; set; }
/// <summary>
/// 采购平台
/// </summary>
public Enums.Platform? PurchasePlatform { get; set; }
} }
} }

3
BBWY.Server.Model/Enums.cs

@ -81,7 +81,8 @@
= 4, = 4,
= 5, = 5,
= 6, = 6,
= 7 = 7,
退 = 8
} }
/// <summary> /// <summary>

Loading…
Cancel
Save