using BBWY.Client.Helpers; using BBWY.Client.Models; using BBWY.Client.Models.APIModel; using BBWY.Client.Models.APIModel.Request; using BBWY.Client.Models.APIModel.Response.PackTask; using BBWY.Client.Models.PackTask; using BBWY.Common.Http; using BBWY.Common.Models; using Newtonsoft.Json; using System; using System.Collections.Generic; using System.Net.Http; using System.Runtime.Serialization; using System.Windows.Documents; namespace BBWY.Client.APIServices { public class PackTaskService : BaseApiService, IDenpendency { public PackTaskService(RestApiService restApiService, GlobalContext globalContext) : base(restApiService, globalContext) { } public ApiResponse GetOrderList(string skuId = null, string taskId = null, DateTime? startTime = null, DateTime? endTime = null, TaskState? availability = null, int? taskStatus = null, int pageIndex = 1, int pageSize = 10 ) { if (taskId!=null&&!string.IsNullOrEmpty(taskId.Trim())) { return SendRequest(globalContext.QKApiHost, "api/PackTask/SearchNewPackTaskList", new { TaskId = taskId, ShopId = globalContext.User.Shop.ShopId.ToString() }, null, HttpMethod.Post); } return SendRequest(globalContext.QKApiHost, "api/PackTask/SearchNewPackTaskList", new { SkuId = skuId, TaskId = taskId, StartTime = startTime, EndTime = endTime, Availability = availability, TaskStatus = taskStatus, PageIndex = pageIndex, PageSize = pageSize, ShopId = globalContext.User.Shop.ShopId.ToString() }, null, HttpMethod.Post); } public ApiResponse GetWareHouseList(int? isWorry = null, string departmentName = null, string skuId = null, string taskId = null, DateTime? startTime = null, DateTime? endTime = null, PackTaskState? TaskState = null, string ShopName = null, int pageIndex = 1, int pageSize = 10 ) { if (taskId != null && !string.IsNullOrEmpty(taskId.Trim())) { return SendRequest(globalContext.QKApiHost, "api/PackTask/SearchTaskList", new { TaskId = taskId }, null, HttpMethod.Post); } return SendRequest(globalContext.QKApiHost, "api/PackTask/SearchTaskList", new { IsWorry = isWorry, DepartmentName = departmentName, SkuId = skuId, TaskId = taskId, StartTime = startTime, EndTime = endTime, TaskState = TaskState, PageIndex = pageIndex, PageSize = pageSize, ShopName = ShopName, }, null, HttpMethod.Post); } public ApiResponse GetAllCount() { return SendRequest(globalContext.QKApiHost, "api/PackTask/GetProductSkuCount", new { ShopId = globalContext.User.Shop.ShopId.ToString() } , null, HttpMethod.Get); } public ApiResponse GetWareAllCount() { return SendRequest(globalContext.QKApiHost, "api/PackTask/GetProductSkuCount", null , null, HttpMethod.Get); } public ApiResponse GetProductSku(string skuId) { HttpClientHelper helper = new HttpClientHelper(globalContext.QKApiHost); string url = $"{globalContext.QKApiHost}/api/PackTask/SearchProduct?skuId={skuId}&ShopId={globalContext.User.Shop.ShopId}"; var data = helper.Get(url); return JsonConvert.DeserializeObject>(data); } public ApiResponse GetSpuCer(string spuId) { HttpClientHelper helper = new HttpClientHelper(globalContext.QKApiHost); string url = $"{globalContext.QKApiHost}/api/PackTask/GetSpuCer?spuId={spuId}"; var data = helper.Get(url); return JsonConvert.DeserializeObject>(data); } public ApiResponse UpdateTask(CreateTaskRequest createTaskRequest) { return SendRequest(globalContext.QKApiHost, "api/PackTask/UpdatePackTask", createTaskRequest , null, HttpMethod.Post); } public ApiResponse DeletedTask(long taskId) { return SendRequest(globalContext.QKApiHost, "api/PackTask/DeletedPackTask", new { TaskId = taskId, UserId = globalContext.User.Id.ToString() } , null, HttpMethod.Post); } public ApiResponse CreateTask(CreateTaskRequest createTaskRequest) { return SendRequest(globalContext.QKApiHost, "api/PackTask/CreatePackTask", createTaskRequest , null, HttpMethod.Post); } public ApiResponse UpdateTaskStatus(long id, int taskStatus, string orderId) { return SendRequest(globalContext.QKApiHost, "api/PackTask/UpdatePackTaskStatus", new { id, taskStatus, orderId } , null, HttpMethod.Post); } public ApiResponse SaveBarCode(BarCodeRequest barCodeModel) { return SendRequest(globalContext.QKApiHost, "api/PackTask/CommitBarCode", barCodeModel , null, HttpMethod.Post); } public ApiResponse SaveCer(CerRequest cerRequest) { return SendRequest(globalContext.QKApiHost, "api/PackTask/CommitCer", cerRequest , null, HttpMethod.Post); } public ApiResponse SaveSpuCer(CerRequest cerRequest) { return SendRequest(globalContext.QKApiHost, "api/PackTask/CommitSpuCer", cerRequest , null, HttpMethod.Post); } public ApiResponse GetPackMembers() { return SendRequest(globalContext.QKApiHost, "api/PackTask/SearchPackMembers", null , null, HttpMethod.Get); } /// /// 获取任务的服务 /// /// public ApiResponse GetTaskService(long taskId) { return SendRequest(globalContext.QKApiHost, "api/PackTask/GetTaskService", new { TaskId = taskId } , null, HttpMethod.Get); } /// /// 上传 更新任务的服务数据 /// /// public ApiResponse UploadService(UploadServiceRequest uploadService) { return SendRequest(globalContext.QKApiHost, "api/PackTask/UploadService", uploadService , null, HttpMethod.Post); } public ApiResponse ShopTotal(string skuId = null, string taskId = null, DateTime? startTime = null, DateTime? endTime = null, string ShopName = null, string DepartmentName = null, int pageIndex = 1, int pageSize = 10 ) { return SendRequest(globalContext.QKApiHost, "api/PackTask/ShopTotal", new { SkuId = skuId, TaskId = taskId, StartTime = startTime, EndTime = endTime, DepartmentName, ShopName, PageIndex = pageIndex, PageSize = pageSize }, null, HttpMethod.Post); } /// /// 批量结算 /// /// /// public ApiResponse BatchSettle(params long[] taskIds) { return SendRequest(globalContext.QKApiHost, "api/PackTask/BatchSettle", new { taskIds = taskIds, userId = globalContext.User.Id.ToString(), }, null, HttpMethod.Post); } /// /// 取消拳探任务 /// /// /// public ApiResponse CancelQTTask(string orderId) { return SendRequest(globalContext.QKApiHost, "api/PackTask/CancelQTTask", new { orderId, userId = globalContext.User.Id.ToString(), }, null, HttpMethod.Post); } } public class AddConsumableRequest { public long TaskId { get; set; } public long[] ConsumableIds { get; set; } } /// /// 上传服务 /// public class UploadServiceRequest { /// /// 折扣 /// public decimal Discount { get; set; } = 1; /// /// 任务id /// public long TaskId { get; set; } /// /// 耗材ids /// public string ConsumableIds { get; set; } /// /// 耗材数量 /// public string ConsumableNos { get; set; } /// /// 工序ids /// public string WorkProcessIds { get; set; } /// /// 工序数量 /// public string WorkProcessNos { get; set; } /// /// 增值服务ids /// public string IncreateServiceIds { get; set; } /// /// 增值服务数量 /// public string IncreateServiceNos { get; set; } public string PackServiceIds { get; set; } public string PackServiceNos { get; set; } /// /// 任务单件费用 /// public decimal SingleFees { get; set; } /// /// 任务总费用 /// public decimal AllFees { get; set; } /// /// 增加数据 /// public List AddPackServices { get; set; } /// /// 删除的数据 /// public List DeletedPackServices { get; set; } //public PersonTaskModel[] PersonTaskModels { get; set; } //public IncreateMemberModel[] IncreateMembers { get; set; } //public ProcessMemberModel[] ProcessMembers { get; set; } public decimal? IncreaseFees { get; set; } public decimal? PackFees { get; set; } public decimal? ConsumableFees { get; set; } public decimal? DiscountPrice { get; set; } public string OrderId { get; set; } public string SkuId { get; set; } } public class PersonTaskModel { /// /// 任务id /// public long TaskId { get; set; } /// /// 打包人 /// public string PackUserId { get; set; } /// /// 服务id /// public long ServiceId { get; set; } /// /// 服务数量 /// public int ServiceCount { get; set; } ///// ///// 增值服务ids ///// //public string IncreateServiceIds { get; set; } ///// ///// 增值服务数量 ///// //public string IncreateServiceNos { get; set; } ///// ///// 工序ids ///// //public string WorkProcessIds { get; set; } ///// ///// 工序数量 ///// //public string WorkProcessNos { get; set; } /// /// /// public bool IsDeleted { get; set; } /// /// 折扣 /// public decimal Discount { get; set; } = 1; /// /// 总费用 /// public decimal AllFees { get; set; } /// /// 时间 /// public DateTime CreateTime { get; set; } = DateTime.Now; public ServiceType ServiceType { get; set; } } public class ConsumableTaskModel { public decimal Price { get; set; } /// /// 耗材服务id /// public long ConsumableId { get; set; } /// /// 耗材服务数量 /// public int ConsumableCount { get; set; } } public class PackServiceMemberModel { public decimal Price { get; set; } public string UserId { get; set; } /// /// 增值服务Id /// public long PackServiceId { get; set; } /// /// 数量 /// public int PackServiceCount { get; set; } public ServiceType ServiceType { get; set; } } //public class IncreateMemberModel //{ // public decimal Price { get; set; } // public string UserId { get; set; } // /// // /// 增值服务Id // /// // public long IncreateId { get; set; } // /// // /// 数量 // /// // public int IncreateCount { get; set; } //} //public class ProcessMemberModel //{ // public decimal Price { get; set; } // public string UserId { get; set; } // /// // /// 工序服务Id // /// // public long ProcessId { get; set; } // /// // /// 工序服务数量 // /// // public int ProcessCount { get; set; } //} }