From 9173f6e5b34a12c01804676d76842031e9ec6724 Mon Sep 17 00:00:00 2001 From: username@email.com <yzy2002yzy@163.com> Date: 星期三, 26 六月 2024 11:52:16 +0800 Subject: [PATCH] Merge branch 'master' of http://47.108.235.38:8080/r/baifenbaishop --- CoreCms.Net.Web.Admin/Controllers/Order/CoreCmsPlanOrderController.cs | 267 ++++++++++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 254 insertions(+), 13 deletions(-) diff --git a/CoreCms.Net.Web.Admin/Controllers/Order/CoreCmsPlanOrderController.cs b/CoreCms.Net.Web.Admin/Controllers/Order/CoreCmsPlanOrderController.cs index 78894d6..46617dc 100644 --- a/CoreCms.Net.Web.Admin/Controllers/Order/CoreCmsPlanOrderController.cs +++ b/CoreCms.Net.Web.Admin/Controllers/Order/CoreCmsPlanOrderController.cs @@ -34,6 +34,16 @@ using CoreCms.Net.Model.Entities.Order; using CoreCms.Net.Services; using System.Threading; +using MathNet.Numerics.Distributions; +using CoreCms.Net.Model.ViewModels.DTO; +using CoreCms.Net.Auth.HttpContextUser; +using MathNet.Numerics; +using Org.BouncyCastle.Asn1.Cmp; +using static CoreCms.Net.Configuration.GlobalEnumVars; +using static SKIT.FlurlHttpClient.Wechat.Api.Models.CardCreateRequest.Types.MembershipCard.Types.Base.Types; +using static SKIT.FlurlHttpClient.Wechat.Api.Models.CgibinExpressDeliveryOpenMessageGetDeliveryListResponse.Types; +using System.Threading.Channels; +using System.Collections.Generic; namespace CoreCms.Net.Web.Admin.Controllers { @@ -52,6 +62,11 @@ private readonly ICoreCmsPlanOrderItemServices _planOrderItemServices; private readonly ICoreCmsSettingServices _coreCmsSettingServices; private readonly SemaphoreSlim _semaphore; + private readonly IHttpContextUser _user; + private readonly ICoreCmsPlanOrderServices _planOrderServices; + private readonly ICoreCmsAreaServices _areaServices; + private readonly ICoreCmsOrderServices _orderServices; + private readonly ICoreCmsOrderItemServices _orderItemServices; /// <summary> @@ -61,12 +76,23 @@ ,ICoreCmsPlanOrderServices CoreCmsPlanOrderServices , ICoreCmsPlanOrderItemServices planOrderItemServices , ICoreCmsSettingServices coreCmsSettingServices + , IHttpContextUser user + , ICoreCmsPlanOrderServices planOrderServices + , ICoreCmsAreaServices areaServices + , ICoreCmsOrderServices orderServices + , ICoreCmsOrderItemServices orderItemServices ) { _webHostEnvironment = webHostEnvironment; _CoreCmsPlanOrderServices = CoreCmsPlanOrderServices; _planOrderItemServices = planOrderItemServices; _coreCmsSettingServices = coreCmsSettingServices; + _user = user; + _planOrderServices = planOrderServices; + _areaServices = areaServices; + _orderServices = orderServices; + _orderItemServices = orderItemServices; + } #region 鑾峰彇鍒楄〃============================================================ @@ -108,8 +134,26 @@ { where = where.And(p => p.orderId.Contains(orderId)); } - //璋冩暣璁㈠崟閲戦 decimal - var orderAmount = Request.Form["orderAmount"].FirstOrDefault().ObjectToDecimal(0); + //甯� varchar + var shi = Request.Form["shi"].FirstOrDefault().ObjectToInt(0); + if (shi>0) + { + where = where.And(p => p.shiId == shi); + } + //鍖哄幙 varchar + var quxian = Request.Form["quxian"].FirstOrDefault().ObjectToInt(0); ; + if (quxian>0) + { + where = where.And(p => p.quxianId == quxian); + } + //鏀惰揣鍦板潃 varchar + var shouhuoAddress = Request.Form["shouhuoAddress"].FirstOrDefault(); + if (!string.IsNullOrEmpty(shouhuoAddress)) + { + where = where.And(p => p.shouhuoAddress.Contains(shouhuoAddress)); + } + //璋冩暣璁㈠崟閲戦 decimal + var orderAmount = Request.Form["orderAmount"].FirstOrDefault().ObjectToDecimal(0); if (orderAmount > 0) { where = where.And(p => p.orderAmount == orderAmount); @@ -223,7 +267,7 @@ { //鑾峰彇鐩稿叧鐘舵�佹弿杩拌鏄庤浆鎹� order.statusText = EnumHelper.GetEnumDescriptionByValue<GlobalEnumVars.PlanOrderTiJiao>(order.status); - + order.keYongAmount = order.keYongAmount - order.huaFeiAmount; } } @@ -244,10 +288,56 @@ /// <returns></returns> [HttpPost] [Description("棣栭〉鏁版嵁")] - public AdminUiCallBack GetIndex() + public async Task<AdminUiCallBack> GetIndex() { //杩斿洖鏁版嵁 var jm = new AdminUiCallBack { code = 0 }; + + var shi = await _areaServices.QueryListByClauseAsync(p=>p.parentId == 510000); + + jm.data = shi; + + return jm; + } + #endregion + #region 閫夋嫨鐪�============================================================ + // POST: Api/CoreCmsPlanOrder/GetIndex + /// <summary> + /// 閫夋嫨甯� + /// </summary> + /// <returns></returns> + [Description("閫夋嫨鐪�")] + [AllowAnonymous] + public async Task<AdminUiCallBack> GetCityId(int shengid = 0) + { + //杩斿洖鏁版嵁 + var jm = new AdminUiCallBack { code = 0 }; + + var shi = await _areaServices.QueryListByClauseAsync(p => p.parentId == shengid); + + jm.data = shi; + + return jm; + } + #endregion + + #region 閫夋嫨甯�============================================================ + // POST: Api/CoreCmsPlanOrder/GetIndex + /// <summary> + /// 閫夋嫨甯� + /// </summary> + /// <returns></returns> + [Description("閫夋嫨甯�")] + [AllowAnonymous] + public async Task<AdminUiCallBack> GetAreaId(int cityid = 0) + { + //杩斿洖鏁版嵁 + var jm = new AdminUiCallBack { code = 0 }; + + var shi = await _areaServices.QueryListByClauseAsync(p => p.parentId == cityid); + + jm.data = shi; + return jm; } #endregion @@ -293,7 +383,7 @@ /// <returns></returns> [HttpPost] [Description("缂栬緫鏁版嵁")] - public async Task<AdminUiCallBack> GetEdit([FromBody]FMIntId entity) + public async Task<AdminUiCallBack> GetEdit([FromBody]FMStringId entity) { var jm = new AdminUiCallBack(); @@ -303,8 +393,32 @@ jm.msg = "涓嶅瓨鍦ㄦ淇℃伅"; return jm; } + //鑾峰彇鐩稿叧鐘舵�佹弿杩拌鏄庤浆鎹� + model.statusText = EnumHelper.GetEnumDescriptionByValue<GlobalEnumVars.PlanOrderTiJiao>(model.status); + model.keYongAmount = model.keYongAmount - model.huaFeiAmount; + + var modelItem1 = await _planOrderItemServices.QueryListByClauseAsync(p => p.orderId == entity.id && p.isOld == true, p => p.specification, OrderByType.Asc); + + var modelItem2 = await _planOrderItemServices.QueryListByClauseAsync(p => p.orderId == entity.id && p.isOld == false, p => p.specification, OrderByType.Asc); + + foreach (var coreCmsPlanOrderItem in modelItem1) + { + var coreCmsPlanOrderItem1 = modelItem2.Where(p => p.name == coreCmsPlanOrderItem.name && p.specification == coreCmsPlanOrderItem.specification).FirstOrDefault(); + if (coreCmsPlanOrderItem1 != null) + { + coreCmsPlanOrderItem.idnew = coreCmsPlanOrderItem1.id; + coreCmsPlanOrderItem.numsnew = coreCmsPlanOrderItem1.nums; + coreCmsPlanOrderItem.amountnew = coreCmsPlanOrderItem1.amount; + } + } + + jm.data = new + { + model, + modelItem1 + }; jm.code = 0; - jm.data = model; + // jm.data = model; return jm; } @@ -319,10 +433,59 @@ /// <returns></returns> [HttpPost] [Description("缂栬緫鎻愪氦")] - public async Task<AdminUiCallBack> DoEdit([FromBody]CoreCmsPlanOrder entity) + public async Task<AdminUiCallBack> DoEdit([FromBody] CreateOrder entity) { - var jm = await _CoreCmsPlanOrderServices.UpdateAsync(entity); + var jm = new AdminUiCallBack(); + + + + try + { + + + if (entity.itemIdarray ==null || entity.itemIdarray.Length==0) + { + jm.data = 10000; + jm.msg = GlobalErrorCodeVars.Code10000; + return jm; + } + string itemIds = string.Join(",", entity.itemIdarray); + + string itemNums = string.Join(",", entity.itemNumarray); + + + // jm = await _CoreCmsPlanOrderServices.UpdateAsync(new CoreCmsPlanOrder()); + var jms = await _planOrderServices.ToUpdate(entity.orderId, _user.ID, _user.Name, 2, itemIds, itemNums,"shi"); + if (jms.status) + { + jm.code = 0; + jm.data = jms.data; + jm.msg = "淇敼鎴愬姛"; + } + else + { + jm.code = 1; + jm.data = jms.data; + jm.msg = jms.otherData.ToString(); + } + + + + + + } + catch (Exception e) + { + jm.msg = "鏁版嵁澶勭悊寮傚父"; + jm.otherData = e; + } + + return jm; + + + + } #endregion @@ -345,8 +508,33 @@ jm.msg = GlobalConstVars.DataisNo; return jm; } - jm = await _CoreCmsPlanOrderServices.DeleteByIdAsync(entity.id); + jm = await _CoreCmsPlanOrderServices.DeleteByIdAsync(entity.id , _user.Name); + return jm; + } + + // POST: Api/CoreCmsPlanOrder/DoDelete/10 + /// <summary> + /// 鍗曢�夊垹闄� + /// </summary> + /// <param name="entity"></param> + /// <returns></returns> + [HttpPost] + [Description("鍗曢�夊垹闄�")] + public async Task<AdminUiCallBack> DoDeletedel([FromBody] FMStringId entity) + { + var jm = new AdminUiCallBack(); + + var model = await _CoreCmsPlanOrderServices.QueryByIdAsync(entity.id); + if (model == null) + { + jm.msg = GlobalConstVars.DataisNo; + return jm; + } + + var bl = await _CoreCmsPlanOrderServices.DeleteByIdAsync(entity.id); + jm.code = bl ? 0 : 1; + jm.msg = bl ? GlobalConstVars.DeleteSuccess : GlobalConstVars.DeleteFailure; return jm; } #endregion @@ -360,9 +548,29 @@ /// <returns></returns> [HttpPost] [Description("鎵归噺鍒犻櫎")] - public async Task<AdminUiCallBack> DoBatchDelete([FromBody]FMArrayIntIds entity) + public async Task<AdminUiCallBack> DoBatchDelete([FromBody]FMArrayStringIds entity) { - var jm = await _CoreCmsPlanOrderServices.DeleteByIdsAsync(entity.id); + var jm = await _CoreCmsPlanOrderServices.DeleteByIdsAsync(entity.id, _user.Name); + return jm; + } + + + // POST: Api/CoreCmsPlanOrder/DoBatchDelete/10,11,20 + /// <summary> + /// 鎵归噺鍒犻櫎 + /// </summary> + /// <param name="entity"></param> + /// <returns></returns> + [HttpPost] + [Description("鎵归噺鍒犻櫎")] + public async Task<AdminUiCallBack> DoBatchDeletedel([FromBody] FMArrayStringIds entity) + { + var jm = new AdminUiCallBack(); + + var bl = await _CoreCmsPlanOrderServices.DeleteByIdsAsync(entity.id); + jm.code = bl ? 0 : 1; + jm.msg = bl ? GlobalConstVars.DeleteSuccess : GlobalConstVars.DeleteFailure; + return jm; } @@ -389,13 +597,46 @@ } //鑾峰彇鐩稿叧鐘舵�佹弿杩拌鏄庤浆鎹� model.statusText = EnumHelper.GetEnumDescriptionByValue<GlobalEnumVars.PlanOrderTiJiao>(model.status); + model.keYongAmount = model.keYongAmount - model.huaFeiAmount; - var modelItem = await _planOrderItemServices.QueryListByClauseAsync(p => p.orderId == entity.id, p => p.specification, OrderByType.Asc); + var modelItem1 = await _planOrderItemServices.QueryListByClauseAsync(p => p.orderId == entity.id && p.isOld == true, p => p.specification, OrderByType.Asc); + + var modelItem2 = await _planOrderItemServices.QueryListByClauseAsync(p => p.orderId == entity.id && p.isOld == false, p => p.specification, OrderByType.Asc); + + + foreach(var coreCmsPlanOrderItem in modelItem1) + { + var coreCmsPlanOrderItem1 = modelItem2.Where(p => p.name == coreCmsPlanOrderItem.name && p.specification == coreCmsPlanOrderItem.specification).FirstOrDefault(); + if (coreCmsPlanOrderItem1 != null) + { + coreCmsPlanOrderItem.idnew = coreCmsPlanOrderItem1.id; + coreCmsPlanOrderItem.numsnew = coreCmsPlanOrderItem1.nums; + coreCmsPlanOrderItem.amountnew = coreCmsPlanOrderItem1.amount; + } + } + var coreCmsOrderItems = new List<CoreCmsOrderItem>(); + //鏌ヨ鐢ㄨ鍒掕鍗曠Н鍒嗚喘涔扮殑璁㈠崟 + var coreCmsOrders = await _orderServices.QueryListByClauseAsync(p => p.planorderId == model.orderId && p.isdel == false); + if(coreCmsOrders!=null && coreCmsOrders.Count > 0) + { + var orderids = new List<string>(); + foreach(var coreCmsOrder in coreCmsOrders) + { + orderids.Add(coreCmsOrder.orderId); + } + coreCmsOrderItems = await _orderItemServices.QueryListByClauseAsync(p => orderids.Contains(p.orderId)); + + } + + + + jm.data = new { model, - modelItem, + modelItem1 , + coreCmsOrderItems }; jm.code = 0; //jm.data = model; -- Gitblit v1.9.1