新增销售订单获取收款金额API
This commit is contained in:
parent
b83a4c0773
commit
72eebf5edb
@ -132,6 +132,10 @@
|
||||
<Reference Include="Kingdee.BOS.DataEntity">
|
||||
<HintPath>..\..\派诺-斌哥\git\6、程序\GZ_KD_Parino\dll\Kingdee.BOS.DataEntity.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Kingdee.BOS.ServiceFacade.KDServiceFx, Version=9.0.78.3, Culture=neutral, processorArchitecture=MSIL">
|
||||
<SpecificVersion>False</SpecificVersion>
|
||||
<HintPath>Library\Kingdee.BOS.ServiceFacade.KDServiceFx.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Kingdee.BOS.ServiceHelper">
|
||||
<HintPath>..\..\派诺-斌哥\git\6、程序\GZ_KD_Parino\dll\Kingdee.BOS.ServiceHelper.dll</HintPath>
|
||||
</Reference>
|
||||
@ -328,6 +332,14 @@
|
||||
</Reference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="Models\K3Request\ReportDataParam.cs" />
|
||||
<Compile Include="Models\K3Result\KingdeeResult.cs" />
|
||||
<Compile Include="Models\K3Result\ListResult.cs" />
|
||||
<Compile Include="Models\K3Result\Model\K3CloudResponseStatus.cs" />
|
||||
<Compile Include="Models\K3Result\Model\K3CloudResult.cs" />
|
||||
<Compile Include="Models\K3Result\Model\K3CloudResultInfo.cs" />
|
||||
<Compile Include="Models\K3Result\Model\K3CloudSuccessEntity.cs" />
|
||||
<Compile Include="Models\VO\SaleExecuteOut.cs" />
|
||||
<Compile Include="PRD_PPBOMCHANGE\PLTH.cs" />
|
||||
<Compile Include="PRD_PPBOMCHANGE\PLTHForm.cs" />
|
||||
<Compile Include="PRD_PPBOMCHANGE\PLTHWL.cs" />
|
||||
@ -337,8 +349,8 @@
|
||||
<Compile Include="SAL_ORDER\DataChage.cs" />
|
||||
<Compile Include="SAL_ORDER\SaveWL.cs" />
|
||||
<Compile Include="ScheduleService\SaleOrderSumSicsAmountRefresh.cs" />
|
||||
<Compile Include="Service\SaleOrderService.cs" />
|
||||
<Compile Include="Service\SaleSicsService.cs" />
|
||||
<Compile Include="Services\SaleOrderService.cs" />
|
||||
<Compile Include="Services\SaleSicsService.cs" />
|
||||
<Compile Include="T_IV_SALESIC\ServicePlugIn\Audit.cs" />
|
||||
<Compile Include="T_IV_SALESIC\ServicePlugIn\Submit.cs" />
|
||||
<Compile Include="T_IV_SALESIC\ServicePlugIn\UnAudit.cs" />
|
||||
@ -362,6 +374,7 @@
|
||||
<Compile Include="SQL\SqlManage.cs" />
|
||||
<Compile Include="SUB_PPBOM\AuditPOM.cs" />
|
||||
<Compile Include="T_IV_SALESIC\UnAuditS_Order.cs" />
|
||||
<Compile Include="WebApiService\SaleOrderApiService.cs" />
|
||||
<Compile Include="XMYSLRB\AfterSave.cs" />
|
||||
<Compile Include="XMYSLRB\OnLoadLR.cs" />
|
||||
<Compile Include="XMYSLRB\Save.cs" />
|
||||
@ -379,6 +392,7 @@
|
||||
<Content Include="Library\Kingdee.BOS.Core.dll" />
|
||||
<Content Include="Library\Kingdee.BOS.DataEntity.dll" />
|
||||
<Content Include="Library\Kingdee.BOS.dll" />
|
||||
<Content Include="Library\Kingdee.BOS.ServiceFacade.KDServiceFx.dll" />
|
||||
<Content Include="Library\Kingdee.BOS.ServiceHelper.dll" />
|
||||
<Content Include="Library\Kingdee.BOS.VerificationHelper.dll" />
|
||||
<Content Include="Library\Kingdee.BOS.Web.dll" />
|
||||
|
||||
BIN
Library/Kingdee.BOS.ServiceFacade.KDServiceFx.dll
Normal file
BIN
Library/Kingdee.BOS.ServiceFacade.KDServiceFx.dll
Normal file
Binary file not shown.
44
Models/K3Request/ReportDataParam.cs
Normal file
44
Models/K3Request/ReportDataParam.cs
Normal file
@ -0,0 +1,44 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace GZ_LTHPilot_ORDER.Models.K3Request
|
||||
{
|
||||
|
||||
|
||||
public class ReportDataParam
|
||||
{
|
||||
public bool ReturnJsonData { get; set; }
|
||||
public string FieldKeys { get; set; }
|
||||
public string SchemeId { get; set; }
|
||||
public int StartRow { get; set; }
|
||||
public int Limit { get; set; }
|
||||
public bool IsVerifyBaseDataField { get; set; }
|
||||
public object[] FilterString { get; set; }
|
||||
public Model Model { get; set; }
|
||||
}
|
||||
|
||||
public class Model
|
||||
{
|
||||
public string FSaleOrgList { get; set; }
|
||||
public DateTime FSoFromDate { get; set; }
|
||||
public DateTime FSoToDate { get; set; }
|
||||
|
||||
public string FSaleOFrom { get; set; }
|
||||
public string FSaleOTo { get; set; }
|
||||
public string FFormCloseStatus { get; set; }
|
||||
public string FFormStatus { get; set; }
|
||||
public string FPriceFrom { get; set; }
|
||||
public string FBusCloseStatus { get; set; }
|
||||
public bool FMergingSOHeader { get; set; }
|
||||
public bool FIncludedUnfilledOrders { get; set; }
|
||||
public bool FIsRecWithMat { get; set; }
|
||||
public string FSuite { get; set; }
|
||||
public string FSetAccountType { get; set; }
|
||||
public bool FIsGroup { get; set; }
|
||||
public bool FIncludedFree { get; set; }
|
||||
}
|
||||
|
||||
}
|
||||
15
Models/K3Result/KingdeeResult.cs
Normal file
15
Models/K3Result/KingdeeResult.cs
Normal file
@ -0,0 +1,15 @@
|
||||
using GZ_LTHPilot_ORDER.Models.K3Result.Model;
|
||||
|
||||
namespace GZ_LTHPilot_ORDER.Models.K3Result
|
||||
{
|
||||
/// <summary>
|
||||
/// 金蝶云星空返回类
|
||||
/// </summary>
|
||||
public class KingdeeResult<T>
|
||||
{
|
||||
/// <summary>
|
||||
/// 返回对象
|
||||
/// </summary>
|
||||
public K3CloudResult<T> Result { get; set; }
|
||||
}
|
||||
}
|
||||
25
Models/K3Result/ListResult.cs
Normal file
25
Models/K3Result/ListResult.cs
Normal file
@ -0,0 +1,25 @@
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace GZ_LTHPilot_ORDER.Models.K3Result
|
||||
{
|
||||
/// <summary>
|
||||
/// 列表查询输出类
|
||||
/// </summary>
|
||||
public class ListResult
|
||||
{
|
||||
|
||||
/// <summary>
|
||||
/// 列表
|
||||
/// </summary>
|
||||
public List<dynamic> List { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 构造函数
|
||||
/// </summary>
|
||||
/// <param name="list"></param>
|
||||
public ListResult(List<dynamic> list)
|
||||
{
|
||||
List = list;
|
||||
}
|
||||
}
|
||||
}
|
||||
35
Models/K3Result/Model/K3CloudResponseStatus.cs
Normal file
35
Models/K3Result/Model/K3CloudResponseStatus.cs
Normal file
@ -0,0 +1,35 @@
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace GZ_LTHPilot_ORDER.Models.K3Result.Model
|
||||
{
|
||||
/// <summary>
|
||||
/// 响应对象
|
||||
/// </summary>
|
||||
public class K3CloudResponseStatus
|
||||
{
|
||||
/// <summary>
|
||||
/// 错误代码
|
||||
/// </summary>
|
||||
public int ErrorCode { get; set; }
|
||||
/// <summary>
|
||||
/// 是否成功
|
||||
/// </summary>
|
||||
public bool IsSuccess { get; set; }
|
||||
/// <summary>
|
||||
/// 错误信息列表
|
||||
/// </summary>
|
||||
public List<K3CloudResultInfo> Errors { get; set; }
|
||||
/// <summary>
|
||||
/// 成功实体
|
||||
/// </summary>
|
||||
public List<K3CloudSuccessEntity> SuccessEntitys { get; set; }
|
||||
/// <summary>
|
||||
/// 成功消息
|
||||
/// </summary>
|
||||
public List<K3CloudResultInfo> SuccessMessages { get; set; }
|
||||
/// <summary>
|
||||
/// 消息代码
|
||||
/// </summary>
|
||||
public int MsgCode { get; set; }
|
||||
}
|
||||
}
|
||||
53
Models/K3Result/Model/K3CloudResult.cs
Normal file
53
Models/K3Result/Model/K3CloudResult.cs
Normal file
@ -0,0 +1,53 @@
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace GZ_LTHPilot_ORDER.Models.K3Result.Model
|
||||
{
|
||||
/// <summary>
|
||||
/// 返回类
|
||||
/// </summary>
|
||||
public class K3CloudResult<T>
|
||||
{
|
||||
/// <summary>
|
||||
/// 响应对象
|
||||
/// </summary>
|
||||
public K3CloudResponseStatus ResponseStatus { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 转换响应对象
|
||||
/// </summary>
|
||||
public K3CloudResponseStatus ConvertResponseStatus { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 返回结果,用于查看单据
|
||||
/// </summary>
|
||||
public object Result { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 开始索引
|
||||
/// </summary>
|
||||
public long? StartIndex { get; set; }
|
||||
/// <summary>
|
||||
/// 是否最后
|
||||
/// </summary>
|
||||
public bool? IsLast { get; set; }
|
||||
/// <summary>
|
||||
/// 文件大小
|
||||
/// </summary>
|
||||
public long? FileSize { get; set; }
|
||||
/// <summary>
|
||||
/// 文件名称
|
||||
/// </summary>
|
||||
public string FileName { get; set; }
|
||||
/// <summary>
|
||||
/// 文件内容(Base64)
|
||||
/// </summary>
|
||||
public string FilePart { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 返回数据行数
|
||||
/// </summary>
|
||||
public int? RowCount { get; set; }
|
||||
|
||||
public List<T> Rows { get; set; }
|
||||
}
|
||||
}
|
||||
21
Models/K3Result/Model/K3CloudResultInfo.cs
Normal file
21
Models/K3Result/Model/K3CloudResultInfo.cs
Normal file
@ -0,0 +1,21 @@
|
||||
namespace GZ_LTHPilot_ORDER.Models.K3Result.Model
|
||||
{
|
||||
/// <summary>
|
||||
/// 金蝶云星空查看错误信息类
|
||||
/// </summary>
|
||||
public class K3CloudResultInfo
|
||||
{
|
||||
/// <summary>
|
||||
/// 字段名称
|
||||
/// </summary>
|
||||
public string FieldName { get; set; }
|
||||
/// <summary>
|
||||
/// 错误信息
|
||||
/// </summary>
|
||||
public string Message { get; set; }
|
||||
/// <summary>
|
||||
/// 序号
|
||||
/// </summary>
|
||||
public int DIndex { get; set; }
|
||||
}
|
||||
}
|
||||
25
Models/K3Result/Model/K3CloudSuccessEntity.cs
Normal file
25
Models/K3Result/Model/K3CloudSuccessEntity.cs
Normal file
@ -0,0 +1,25 @@
|
||||
namespace GZ_LTHPilot_ORDER.Models.K3Result.Model
|
||||
{
|
||||
/// <summary>
|
||||
/// 成功实体
|
||||
/// </summary>
|
||||
public class K3CloudSuccessEntity
|
||||
{
|
||||
/// <summary>
|
||||
/// 单据Id
|
||||
/// </summary>
|
||||
public int Id { get; set; }
|
||||
/// <summary>
|
||||
/// 单据编号
|
||||
/// </summary>
|
||||
public string Number { get; set; }
|
||||
/// <summary>
|
||||
/// 实体索引
|
||||
/// </summary>
|
||||
public int DIndex { get; set; }
|
||||
/// <summary>
|
||||
/// 分录Id
|
||||
/// </summary>
|
||||
public object EntryIds { get; set; }
|
||||
}
|
||||
}
|
||||
18
Models/VO/SaleExecuteOut.cs
Normal file
18
Models/VO/SaleExecuteOut.cs
Normal file
@ -0,0 +1,18 @@
|
||||
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace GZ_LTHPilot_ORDER.Models.VO
|
||||
{
|
||||
public class SaleExecuteOut
|
||||
{
|
||||
public string FSALEORGNAME { get; set; }
|
||||
public string FBILLNO { get; set; }
|
||||
public string FDate { get; set; }
|
||||
public string FALLMATCHAMOUNT { get; set; }
|
||||
}
|
||||
}
|
||||
@ -1,47 +0,0 @@
|
||||
using Kingdee.BOS;
|
||||
using Kingdee.BOS.Orm.DataEntity;
|
||||
using Kingdee.BOS.ServiceHelper;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace GZ_LTHPilot_ORDER.Service
|
||||
{
|
||||
/// <summary>
|
||||
/// 销售订单服务类
|
||||
/// </summary>
|
||||
public class SaleOrderService
|
||||
{
|
||||
private Context ctx;
|
||||
|
||||
public SaleOrderService(Context ctx)
|
||||
{
|
||||
this.ctx = ctx;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 根据纸质合同号、组织获取销售订单
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public DynamicObjectCollection GetSaleOrderByOrgIdAndContractNo(string orgId, string contractNo)
|
||||
{
|
||||
var sqlTemp = @"/*dialect*/SELECT
|
||||
*
|
||||
FROM
|
||||
T_SAL_ORDER t1
|
||||
LEFT JOIN T_SAL_ORDERFIN t1fin ON t1.FID = t1fin.FID
|
||||
WHERE
|
||||
1 = 1
|
||||
AND t1.FDOCUMENTSTATUS = 'C'
|
||||
AND t1.FCANCELSTATUS = 'A'
|
||||
AND t1.FSALEORGID = '{0}'
|
||||
AND t1.F_CONTRACTNUMBER = '{1}'
|
||||
";
|
||||
var sql = string.Format(sqlTemp, orgId, contractNo);
|
||||
var resultData = DBServiceHelper.ExecuteDynamicObject(ctx, sql);
|
||||
return resultData;
|
||||
}
|
||||
}
|
||||
}
|
||||
144
Services/SaleOrderService.cs
Normal file
144
Services/SaleOrderService.cs
Normal file
@ -0,0 +1,144 @@
|
||||
using GZ_LTHPilot_ORDER.Models.K3Request;
|
||||
using GZ_LTHPilot_ORDER.Models.K3Result;
|
||||
using GZ_LTHPilot_ORDER.Models.VO;
|
||||
using Kingdee.BOS;
|
||||
using Kingdee.BOS.Orm.DataEntity;
|
||||
using Kingdee.BOS.ServiceHelper;
|
||||
using Kingdee.BOS.WebApi.FormService;
|
||||
using Kingdee.K3.FIN.App.Core.Match.Object;
|
||||
using Newtonsoft.Json;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace GZ_LTHPilot_ORDER.Service
|
||||
{
|
||||
/// <summary>
|
||||
/// 销售订单服务类
|
||||
/// </summary>
|
||||
public class SaleOrderService
|
||||
{
|
||||
private Context ctx;
|
||||
|
||||
public SaleOrderService(Context ctx)
|
||||
{
|
||||
this.ctx = ctx;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 根据纸质合同号、组织获取销售订单
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public DynamicObjectCollection GetSaleOrderByOrgIdAndContractNo(string orgId, string contractNo)
|
||||
{
|
||||
var sqlTemp = @"/*dialect*/SELECT
|
||||
*
|
||||
FROM
|
||||
T_SAL_ORDER t1
|
||||
LEFT JOIN T_SAL_ORDERFIN t1fin ON t1.FID = t1fin.FID
|
||||
WHERE
|
||||
1 = 1
|
||||
AND t1.FDOCUMENTSTATUS = 'C'
|
||||
AND t1.FCANCELSTATUS = 'A'
|
||||
AND t1.FSALEORGID = '{0}'
|
||||
AND t1.F_CONTRACTNUMBER = '{1}'
|
||||
";
|
||||
var sql = string.Format(sqlTemp, orgId, contractNo);
|
||||
var resultData = DBServiceHelper.ExecuteDynamicObject(ctx, sql);
|
||||
return resultData;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取销售订单收款金额
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public decimal GetSaleOrderReceiveAmount(string orgId, string billNo)
|
||||
{
|
||||
var saleOrder = this.GetSaleOrderByBillNoAndOrgId(orgId, billNo);
|
||||
var date = Convert.ToDateTime(saleOrder["FDATE"]);
|
||||
ReportDataParam param = new ReportDataParam()
|
||||
{
|
||||
ReturnJsonData = true,
|
||||
FieldKeys = "FSALEORGNAME,FBILLNO,FDate,FALLMATCHAMOUNT",
|
||||
IsVerifyBaseDataField = true,
|
||||
Model = new Model()
|
||||
{
|
||||
FSaleOrgList = orgId,
|
||||
FSoFromDate = date.AddDays(-2),
|
||||
FSoToDate = date.AddDays(1),
|
||||
FSaleOFrom = billNo,
|
||||
FSaleOTo = billNo,
|
||||
FFormCloseStatus = "ALL",
|
||||
FFormStatus = "C",
|
||||
FPriceFrom = "SALORDERBILL",
|
||||
FBusCloseStatus = "ALL",
|
||||
FMergingSOHeader = true,
|
||||
FIncludedUnfilledOrders = false,
|
||||
FIsRecWithMat = true,
|
||||
}
|
||||
};
|
||||
var paramString = JsonConvert.SerializeObject(param);
|
||||
var reusltString = WebApiServiceCall.GetSysReportData(this.ctx, "SAL_DetailReport", paramString).ToString();
|
||||
var result = JsonConvert.DeserializeObject<KingdeeResult<SaleExecuteOut>>(reusltString);
|
||||
var rows = result.Result.Rows;
|
||||
var dataRow = rows.Where(n => n.FBILLNO == billNo).FirstOrDefault();
|
||||
if (dataRow != null)
|
||||
{
|
||||
return Convert.ToDecimal(dataRow.FALLMATCHAMOUNT);
|
||||
}
|
||||
return 0m;
|
||||
}
|
||||
|
||||
|
||||
public DynamicObject GetSaleOrderByBillNoAndOrgId(string orgId, string billNo)
|
||||
{
|
||||
var sqlTemp = @"/*dialect*/SELECT
|
||||
*
|
||||
FROM
|
||||
T_SAL_ORDER t1
|
||||
WHERE
|
||||
1 = 1
|
||||
AND t1.FSALEORGID = '{0}'
|
||||
AND t1.FBILLNO = '{1}'
|
||||
";
|
||||
var sql = string.Format(sqlTemp, orgId, billNo);
|
||||
var result = DBServiceHelper.ExecuteDynamicObject(this.ctx, sql);
|
||||
if (result.Count == 0)
|
||||
{
|
||||
throw new Exception($"组织:{orgId},没有找到编号为 {billNo} 的销售订单");
|
||||
}
|
||||
return result[0];
|
||||
}
|
||||
|
||||
public List<SaleExecuteOut> GetSaleOrderReceiveAmountByDate(string orgId, DateTime startDate, DateTime endDate)
|
||||
{
|
||||
ReportDataParam param = new ReportDataParam()
|
||||
{
|
||||
ReturnJsonData = true,
|
||||
FieldKeys = "FSALEORGNAME,FBILLNO,FDate,FALLMATCHAMOUNT",
|
||||
IsVerifyBaseDataField = true,
|
||||
Model = new Model()
|
||||
{
|
||||
FSaleOrgList = orgId,
|
||||
FSoFromDate = startDate,
|
||||
FSoToDate = startDate,
|
||||
FFormCloseStatus = "ALL",
|
||||
FFormStatus = "C",
|
||||
FPriceFrom = "SALORDERBILL",
|
||||
FBusCloseStatus = "ALL",
|
||||
FMergingSOHeader = true,
|
||||
FIncludedUnfilledOrders = false,
|
||||
FIsRecWithMat = true,
|
||||
}
|
||||
};
|
||||
var paramString = JsonConvert.SerializeObject(param);
|
||||
var reusltString = WebApiServiceCall.GetSysReportData(this.ctx, "SAL_DetailReport", paramString).ToString();
|
||||
var result = JsonConvert.DeserializeObject<KingdeeResult<SaleExecuteOut>>(reusltString);
|
||||
var rows = result.Result.Rows;
|
||||
var dataRow = rows.Where(n => n.FBILLNO.Trim() == string.Empty).ToList();
|
||||
return dataRow;
|
||||
}
|
||||
}
|
||||
}
|
||||
39
WebApiService/SaleOrderApiService.cs
Normal file
39
WebApiService/SaleOrderApiService.cs
Normal file
@ -0,0 +1,39 @@
|
||||
|
||||
using GZ_LTHPilot_ORDER.Models.VO;
|
||||
using GZ_LTHPilot_ORDER.Service;
|
||||
using Kingdee.BOS.App.Data;
|
||||
using Kingdee.BOS.ServiceFacade.KDServiceFx;
|
||||
using Kingdee.BOS.Util;
|
||||
using Kingdee.BOS;
|
||||
using Kingdee.BOS.WebApi.Client;
|
||||
using Kingdee.BOS.WebApi.ServicesStub;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace GZ_LTHPilot_ORDER.WebApiService
|
||||
{
|
||||
[Description("商品类型"), HotUpdate]
|
||||
public class SaleOrderApiService : AbstractWebApiBusinessService
|
||||
{
|
||||
public SaleOrderApiService(KDServiceContext context) : base(context)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
public decimal GetSaleOrderReceiveAmount(string orgId, string billNo)
|
||||
{
|
||||
SaleOrderService saleOrderService = new SaleOrderService(this.KDContext.Session.AppContext);
|
||||
return saleOrderService.GetSaleOrderReceiveAmount(orgId, billNo);
|
||||
}
|
||||
|
||||
public List<SaleExecuteOut> GetSaleOrderReceiveAmountByDate(string orgId, DateTime startDate, DateTime endDate)
|
||||
{
|
||||
SaleOrderService saleOrderService = new SaleOrderService(this.KDContext.Session.AppContext);
|
||||
return saleOrderService.GetSaleOrderReceiveAmountByDate(orgId, startDate, endDate);
|
||||
}
|
||||
}
|
||||
}
|
||||
Loading…
x
Reference in New Issue
Block a user