username@email.com
2024-04-30 d15481638e21ccc610f5e36577497cb6279839b9
修改计划订单
13个文件已修改
1020 ■■■■ 已修改文件
CoreCms.Net.IServices/Order/ICoreCmsPlanOrderServices.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
CoreCms.Net.Model/Entities/Order/CoreCmsPlanOrder.cs 71 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
CoreCms.Net.Model/Entities/Order/CoreCmsPlanOrderItem.cs 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
CoreCms.Net.Model/ViewModels/DTO/OrderDTO.cs 38 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
CoreCms.Net.Repository/Order/CoreCmsPlanOrderRepository.cs 16 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
CoreCms.Net.Services/Order/CoreCmsPlanOrderServices.cs 114 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
CoreCms.Net.Web.Admin/Controllers/Com/ToolsController.cs 90 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
CoreCms.Net.Web.Admin/Controllers/Order/CoreCmsPlanOrderController.cs 148 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
CoreCms.Net.Web.Admin/wwwroot/static/jihuageshi/上传计划订单.xlsx 补丁 | 查看 | 原始文档 | blame | 历史
CoreCms.Net.Web.Admin/wwwroot/views/corecmsplanorder/details.html 78 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
CoreCms.Net.Web.Admin/wwwroot/views/corecmsplanorder/edit.html 327 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
CoreCms.Net.Web.Admin/wwwroot/views/corecmsplanorder/index.html 126 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
CoreCms.Net.Web.WebApi/Controllers/OrderController.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
CoreCms.Net.IServices/Order/ICoreCmsPlanOrderServices.cs
@@ -111,7 +111,7 @@
        /// <param name="itemIds">明细id</param>
        /// <param name="itemNums">明细数量</param>
        /// <returns></returns>
        Task<WebApiCallBack> ToUpdate(string orderId ,int userId, string userName, int status, string itemIds, string itemNums);
        Task<WebApiCallBack> ToUpdate(string orderId ,int userId, string userName, int status, string itemIds, string itemNums,string houtai = "");
        /// <summary>
        ///     åˆ›å»ºè®¡åˆ’订单
CoreCms.Net.Model/Entities/Order/CoreCmsPlanOrder.cs
@@ -39,6 +39,65 @@
        /// <summary>
        /// çœId
        /// </summary>
        [Display(Name = "省Id")]
        public System.Int32 shengId { get; set; }
        /// <summary>
        /// å¸‚Id
        /// </summary>
        [Display(Name = "市Id")]
        public System.Int32 shiId { get; set; }
        /// <summary>
        /// å¸‚
        /// </summary>
        [Display(Name = "市")]
        public System.String shi { get; set; }
        /// <summary>
        /// åŒºåŽ¿Id
        /// </summary>
        [Display(Name = "区县Id")]
        public System.Int32 quxianId { get; set; }
        /// <summary>
        /// åŒºåŽ¿åç§°
        /// </summary>
        [Display(Name = "区县名称")]
        public System.String quxian { get; set; }
        /// <summary>
        /// ç‰‡åŒº
        /// </summary>
        [Display(Name = "片区")]
        public System.String pianqu { get; set; }
        /// <summary>
        /// è°ƒæ•´è®¢å•金额
        /// </summary>
        [Display(Name = "调整订单金额")]
@@ -94,7 +153,6 @@
        [StringLength(maximumLength: 50, ErrorMessage = "{0}不能超过{1}字")]
        public System.String shipName { get; set; }
@@ -110,10 +168,17 @@
        public System.String shipMobile { get; set; }
        /// <summary>
        /// æ”¶è´§åœ°å€
        /// </summary>
        [Display(Name = "收货地址")]
        [StringLength(maximumLength: 200, ErrorMessage = "{0}不能超过{1}字")]
        public System.String shouhuoAddress { get; set; }
CoreCms.Net.Model/Entities/Order/CoreCmsPlanOrderItem.cs
@@ -86,7 +86,13 @@
        [Required(ErrorMessage = "请输入{0}")]
        public System.Decimal amount { get; set; }
        /// <summary>
        /// æ˜¯å¦åŽŸå§‹è®¢å•
        /// </summary>
        [SugarColumn(ColumnDescription = "是否原始订单")]
        public bool isOld { get; set; } = false;
    }
}
CoreCms.Net.Model/ViewModels/DTO/OrderDTO.cs
@@ -174,6 +174,15 @@
        ///  è·Ÿè¸ªID,有效期十分钟,会影响主播归因、分享员归因等,需创建订单前调用,调用生成订单 api æ—¶éœ€ä¼ å…¥è¯¥å‚æ•°
        /// </summary>
        public string traceId { get; set; }
        /// <summary>
        ///  æ˜Žç»†ids
        /// </summary>
        public int[] itemIdarray { get; set; }
        /// <summary>
        ///  æ˜Žç»†æ•°é‡
        /// </summary>
        public int[] itemNumarray { get; set; }
    }
@@ -516,6 +525,13 @@
        public System.String shipMobile { get; set; }
        /// <summary>
        /// æ”¶è´§åœ°å€
        /// </summary>
        public System.String shouhuoAddress { get; set; }
@@ -532,16 +548,32 @@
        /// <summary>
        /// quxian
        /// </summary>
        public System.String shi { get; set; }
        /// <summary>
        /// quxian
        /// </summary>
        public System.String quxian { get; set; }
        /// <summary>
        /// ç‰‡åŒº
        /// </summary>
        public System.String pianqu { get; set; }
        /// <summary>
        /// å•†å“åç§°
        /// </summary>
        public System.String name { get; set; }
CoreCms.Net.Repository/Order/CoreCmsPlanOrderRepository.cs
@@ -194,7 +194,13 @@
                createBy = p.createBy,
                upDataBy = p.upDataBy,
                isdelete = p.isdelete,
                shengId = p.shengId,
                    shiId = p.shiId,
                    shi = p.shi,
                    quxian = p.quxian,
                    quxianId = p.quxianId,
                    pianqu = p.pianqu,
                    shouhuoAddress = p.shouhuoAddress,
                }).With(SqlWith.NoLock).ToPageListAsync(pageIndex, pageSize, totalCount);
            }
            else
@@ -217,7 +223,13 @@
                createBy = p.createBy,
                upDataBy = p.upDataBy,
                isdelete = p.isdelete,
                    shiId = p.shiId,
                    shi = p.shi,
                    quxian = p.quxian,
                    quxianId = p.quxianId,
                    pianqu = p.pianqu,
                    shouhuoAddress = p.shouhuoAddress,
                }).ToPageListAsync(pageIndex, pageSize, totalCount);
            }
            var list = new PageList<CoreCmsPlanOrder>(page, pageIndex, pageSize, totalCount);
CoreCms.Net.Services/Order/CoreCmsPlanOrderServices.cs
@@ -35,6 +35,7 @@
using CoreCms.Net.Model.Entities.baifenbingfa.Promote;
using static SKIT.FlurlHttpClient.Wechat.Api.Models.ScanProductAddV2Request.Types.Product.Types;
using NPOI.SS.Formula.Functions;
using CoreCms.Net.Model.FromBody;
namespace CoreCms.Net.Services
@@ -48,17 +49,20 @@
        private readonly IUnitOfWork _unitOfWork;
        private readonly ICoreCmsPlanOrderItemRepository _itemDal;
        private readonly ICoreCmsUserServices _coreCmsUserServices;
        private readonly ICoreCmsUserServices _userServices;
        public CoreCmsPlanOrderServices(IUnitOfWork unitOfWork, ICoreCmsPlanOrderRepository dal
            , ICoreCmsPlanOrderItemRepository itemDal
            , ICoreCmsUserServices coreCmsUserServices)
            , ICoreCmsUserServices coreCmsUserServices
            , ICoreCmsUserServices userServices)
        {
            this._dal = dal;
            base.BaseDal = dal;
            _unitOfWork = unitOfWork;
            _itemDal = itemDal;
            _coreCmsUserServices = coreCmsUserServices;
        }
            _userServices =userServices;
    }
        #region å®žçŽ°é‡å†™å¢žåˆ æ”¹æŸ¥æ“ä½œ==========================================================
@@ -163,6 +167,8 @@
            }
            if (userId > 0)
            {
                //var user = await _unitOfWork.GetDbClient().Queryable<CoreCmsUser>().Where(x => x.id == userId).FirstAsync();
                where = where.And(p => p.userId == userId);
            }
            var list = await _dal.QueryPageAsync(where, p => p.createTime, OrderByType.Desc, page, limit);
@@ -201,8 +207,9 @@
        /// <param name="status">计划订单状态</param>
        /// <param name="itemIds">明细id</param>
        /// <param name="itemNums">明细数量</param>
        /// <param name="houtai">是否后台编辑</param>
        /// <returns></returns>
        public async Task<WebApiCallBack> ToUpdate(string orderId, int userId, string userName, int status, string itemIds, string itemNums)
        public async Task<WebApiCallBack> ToUpdate(string orderId, int userId, string userName, int status, string itemIds, string itemNums, string houtai = "")
        {
            var jm = new WebApiCallBack() { methodDescription = "修改计划订单" };
            try
@@ -210,7 +217,15 @@
                //开始事务处理
                _unitOfWork.BeginTran();
                var order  = await _dal.QueryByIdAsync(orderId);
                var oldorderAmount = order.orderAmount;
                if (order.status == 2 && string.IsNullOrEmpty(houtai))
                {
                    _unitOfWork.RollbackTran();
                    jm.status = false;
                    jm.otherData = "订单已经提交不能修改";
                    return jm;
                }
                order.upDataBy = userName;
                order.upDataTime = DateTime.Now;
@@ -240,20 +255,24 @@
                {
                    _unitOfWork.RollbackTran();
                    jm.status = false;
                    jm.otherData = "可用余额不能为负";
                    jm.otherData = "订单金额超出计划金额";
                    return jm;
                }
                var keYongAmount = oldorderAmount - orderAmount;
                if (status == 2)
                {
                    order.status = 2;
                    if (order.keYongAmount > 0)
                    if (keYongAmount != 0)
                    {
                        //修改用户余额
                        var jmsss = await _coreCmsUserServices.UpdateBalance(order.userId, order.keYongAmount, "用户计划订单款项结余");
                        var jmsss = await _coreCmsUserServices.UpdateBalance(order.userId, keYongAmount, "用户计划订单"+ order.orderId + "款项结余");
                    }
                    
                }
@@ -305,7 +324,15 @@
                order.status = 1;
                order.shipMobile = jiHuaOrders[0].shipMobile;
                order.shipAddress = jiHuaOrders[0].shipAddress;
                order.shipName = jiHuaOrders[0].shipName; ;
                order.shipName = jiHuaOrders[0].shipName;
                order.shouhuoAddress = jiHuaOrders[0].shouhuoAddress;
                if (string.IsNullOrEmpty(order.shipMobile))
                {
                    //找不到用户就注册用户
                    jm.code = 1;
                    jm.msg = order.shipMobile + "联系电话不能为空";
                    return jm;
                }
                var user = await _unitOfWork.GetDbClient().Queryable<CoreCmsUser>().Where(x => x.mobile == order.shipMobile && x.isDelete == false && x.status == 1).FirstAsync();
                if (user != null)
                {
@@ -313,9 +340,30 @@
                }
                else
                {
                    jm.code = 1;
                    jm.msg = order.shipMobile + "没有找到用户";
                    return jm;
                    var data = new FMWxAccountCreate
                    {
                        mobile = order.shipMobile,
                        invitecode = 0,
                        sessionAuthId = ""
                    };
                   var jms = await _userServices.SmsLogin(data);
                     user = await _unitOfWork.GetDbClient().Queryable<CoreCmsUser>().Where(x => x.mobile == order.shipMobile && x.isDelete == false && x.status == 1).FirstAsync();
                    if (user != null)
                    {
                        order.userId = user.id;
                    }
                    else
                    {
                            //找不到用户就注册用户
                            jm.code = 1;
                            jm.msg = order.shipMobile + "联系电话不正确";
                            return jm;
                    }
                }
               
                order.createBy = userName;
@@ -323,10 +371,29 @@
                order.upDataBy = userName;
                order.upDataTime = DateTime.Now;
                order.isdelete = false;
                var shi = await _unitOfWork.GetDbClient().Queryable<CoreCmsArea>().Where(x => x.name == jiHuaOrders[0].shi).FirstAsync();
                if(shi == null)
                {
                    jm.code = 1;
                    jm.msg = order.shipMobile + "没有找到市";
                    return jm;
                }
                var quxian = await _unitOfWork.GetDbClient().Queryable<CoreCmsArea>().Where(x => x.name == jiHuaOrders[0].quxian && x.parentId == shi.id).FirstAsync();
                if (shi == null)
                {
                    jm.code = 1;
                    jm.msg = order.shipMobile + "没有找到区县";
                    return jm;
                }
                order.shengId = 510000;
                order.shi = jiHuaOrders[0].shi;
                order.shiId = shi.id;
                order.quxianId = quxian.id;
                order.quxian = jiHuaOrders[0].quxian;
                order.pianqu = jiHuaOrders[0].pianqu;
                decimal orderAmount = 0;
@@ -344,8 +411,18 @@
                    item.upDataBy = userName;
                    item.upDataTime = DateTime.Now;
                    item.isdelete = false;
                    item.isOld = true;
                    var jms = await _itemDal.InsertAsync(item);
                    orderAmount += item.amount;
                    item.isOld = false;
                    jms = await _itemDal.InsertAsync(item);
                    if (jms.code == 1)
                    {
                        return jms;
                    }
                }
                order.orderAmount = orderAmount;
@@ -353,9 +430,16 @@
                order.keYongAmount = 0;
                //校验后再创建订单
                var jmss = await _dal.InsertAsync(order);
                var sss =  await _unitOfWork.GetDbClient().Insertable<CoreCmsPlanOrder>(order).ExecuteCommandAsync();
                //var jmss = await _dal.InsertAsync(order);
                //if (jmss.code == 1)
                //{
                //    return jmss;
                //}
@@ -374,7 +458,7 @@
            catch (Exception e)
            {
                _unitOfWork.RollbackTran();
                jm.code = 0;
                jm.code = 1;
                jm.otherData = e.ToString();
            }
            return jm;
CoreCms.Net.Web.Admin/Controllers/Com/ToolsController.cs
@@ -39,6 +39,7 @@
using Microsoft.AspNetCore.Hosting;
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc;
using Microsoft.IdentityModel.Tokens;
using Newtonsoft.Json;
using NPOI.HSSF.UserModel;
using NPOI.SS.UserModel;
@@ -433,70 +434,105 @@
                        IRow row = sheet.GetRow(i);
                        if (row == null) continue; // è·³è¿‡ç©ºè¡Œ
                        ICell cell0 = row.GetCell(0);
                        if (cell0 == null)
                        {
                            jm.msg = "第" + (i + 1) + "市不能为空";
                            return jm;
                        }
                        hang.shi = getcellvalue(cell0);
                        ICell cell1 = row.GetCell(1);
                        if (cell1 == null)
                        {
                            jm.msg ="第" +(i+1) + "学校不能为空";
                            jm.msg = "第" + (i + 1) + "区县不能为空";
                            return jm;
                        }
                        hang.shipAddress = getcellvalue(cell1);
                        hang.quxian = getcellvalue(cell1);
                        ICell cell2 = row.GetCell(2);
                        if (cell2 == null)
                        {
                            jm.msg = "第" + (i + 1) + "联系人不能为空";
                            jm.msg ="第" +(i+1) + "片区不能为空";
                            return jm;
                        }
                        hang.shipName = getcellvalue(cell2);
                        hang.pianqu = getcellvalue(cell2);
                        ICell cell3 = row.GetCell(3);
                        if (cell3 == null)
                        {
                            jm.msg = "第" + (i + 1) + "联系电话不能为空";
                            jm.msg = "第" + (i + 1) + "学校不能为空";
                            return jm;
                        }
                        hang.shipMobile = getcellvalue(cell3);
                        hang.shipAddress = getcellvalue(cell3);
                        ICell cell4 = row.GetCell(4);
                        if (cell4 == null)
                        {
                            jm.msg = "第" + (i + 1) + "商品名称不能为空";
                            jm.msg = "第" + (i + 1) + "联系人不能为空";
                            return jm;
                        }
                        hang.name = getcellvalue(cell4);
                        hang.shipName = getcellvalue(cell4);
                        ICell cell5 = row.GetCell(5);
                        if (cell5 == null)
                        {
                            jm.msg = "第" + (i + 1) + "规格不能为空";
                            jm.msg = "第" + (i + 1) + "联系电话不能为空";
                            return jm;
                        }
                        hang.specification = getcellvalue(cell5);
                        hang.shipMobile = getcellvalue(cell5);
                        ICell cell6 = row.GetCell(6);
                        if (cell6 == null)
                        {
                            jm.msg = "第" + (i + 1) + "单价(元)不能为空";
                            jm.msg = "第" + (i + 1) + "收货地址不能为空";
                            return jm;
                        }
                        hang.price = decimal.Parse(getcellvalue(cell6));
                        hang.shouhuoAddress = getcellvalue(cell6);
                        ICell cell7 = row.GetCell(7);
                        if (cell7 == null)
                        {
                            jm.msg = "第" + (i + 1) + "商品名称不能为空";
                            return jm;
                        }
                        hang.name = getcellvalue(cell7);
                        ICell cell8 = row.GetCell(8);
                        if (cell8 == null)
                        {
                            jm.msg = "第" + (i + 1) + "规格不能为空";
                            return jm;
                        }
                        hang.specification = getcellvalue(cell8);
                        ICell cell9 = row.GetCell(9);
                        if (cell9 == null)
                        {
                            jm.msg = "第" + (i + 1) + "单价(元)不能为空";
                            return jm;
                        }
                        hang.price = decimal.Parse(getcellvalue(cell9));
                        ICell cell10 = row.GetCell(10);
                        if (cell10 == null)
                        {
                            jm.msg = "第" + (i + 1) + "数量不能为空";
                            return jm;
                        }
                        hang.nums = int.Parse(getcellvalue(cell7)); ;
                        hang.nums = int.Parse(getcellvalue(cell10));
                        lie.Add(hang);
                    }
                }
                lie = lie.OrderBy(x => x.shipAddress).ThenBy(x => x.specification).ToList();
               // lie = lie.OrderBy(x => x.shipAddress).ThenBy(x => x.specification).ToList();
                string url = string.Empty;
                url = "121212";
                string pianqu = "";
                if (lie!=null && lie.Count > 0)
                {
                   var  order = new List<JiHuaOrder>();
@@ -504,7 +540,9 @@
                    {
                        if (i == 0 )
                        {
                            order.Add(lie[i]);
                            pianqu = lie[i].pianqu;
                            //if(lie.Count == 1)
                            //{
                            //    //保存订单
@@ -517,19 +555,35 @@
                        }
                        else
                        {
                            if(lie[i].shipAddress  == lie[i - 1].shipAddress)
                            if(string.IsNullOrEmpty(lie[i].shipAddress))
                            {
                                order.Add(lie[i]);
                            }
                            else
                            {
                                //保存订单
                                jm = await _coreCmsPlanOrderServices.ToAddJiHua(lie, _user.ID, _user.Name);
                                jm = await _coreCmsPlanOrderServices.ToAddJiHua(order, _user.ID, _user.Name);
                                if (jm.code == 1)
                                {
                                    return jm;
                                }
                                order = new List<JiHuaOrder>();
                                if (string.IsNullOrEmpty(lie[i].shi))
                                {
                                    lie[i].shi = lie[0].shi;
                                }
                                if (string.IsNullOrEmpty(lie[i].quxian))
                                {
                                    lie[i].quxian = lie[0].quxian;
                                }
                                if (string.IsNullOrEmpty(lie[i].pianqu))
                                {
                                    lie[i].pianqu = pianqu;
                                }
                                else
                                {
                                    pianqu = lie[i].pianqu;
                                }
                                order.Add(lie[i]);
                            }
                        }
@@ -537,7 +591,7 @@
                        if (i == lie.Count - 1)
                        {
                            //保存订单
                            jm = await _coreCmsPlanOrderServices.ToAddJiHua(lie, _user.ID, _user.Name);
                            jm = await _coreCmsPlanOrderServices.ToAddJiHua(order, _user.ID, _user.Name);
                            if (jm.code == 1)
                            {
                                return jm;
CoreCms.Net.Web.Admin/Controllers/Order/CoreCmsPlanOrderController.cs
@@ -34,6 +34,15 @@
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;
namespace CoreCms.Net.Web.Admin.Controllers
{
@@ -52,6 +61,9 @@
        private readonly ICoreCmsPlanOrderItemServices _planOrderItemServices;
        private readonly ICoreCmsSettingServices _coreCmsSettingServices;
        private readonly SemaphoreSlim _semaphore;
        private readonly IHttpContextUser _user;
        private readonly ICoreCmsPlanOrderServices _planOrderServices;
        private readonly ICoreCmsAreaServices _areaServices;
        /// <summary>
@@ -61,12 +73,18 @@
            ,ICoreCmsPlanOrderServices CoreCmsPlanOrderServices
             , ICoreCmsPlanOrderItemServices planOrderItemServices
            , ICoreCmsSettingServices coreCmsSettingServices
            , IHttpContextUser user
            , ICoreCmsPlanOrderServices planOrderServices
            , ICoreCmsAreaServices areaServices
            )
        {
            _webHostEnvironment = webHostEnvironment;
            _CoreCmsPlanOrderServices = CoreCmsPlanOrderServices;
            _planOrderItemServices = planOrderItemServices;
            _coreCmsSettingServices = coreCmsSettingServices;
            _user = user;
            _planOrderServices = planOrderServices;
            _areaServices = areaServices;
        }
        #region èŽ·å–åˆ—è¡¨============================================================
@@ -108,8 +126,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);
@@ -244,10 +280,37 @@
        /// <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> 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 +356,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 +366,22 @@
                jm.msg = "不存在此信息";
                return jm;
            }
            //获取相关状态描述说明转换
            model.statusText = EnumHelper.GetEnumDescriptionByValue<GlobalEnumVars.PlanOrderTiJiao>(model.status);
            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);
            jm.data = new
            {
                model,
                modelItem1,
                modelItem2
            };
            jm.code = 0;
            jm.data = model;
           // jm.data = model;
            return jm;
        }
@@ -319,10 +396,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
@@ -391,11 +517,15 @@
            model.statusText = EnumHelper.GetEnumDescriptionByValue<GlobalEnumVars.PlanOrderTiJiao>(model.status);
            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);
            jm.data = new
            {
                model,
                modelItem,
                modelItem1,
                modelItem2
            };
            jm.code = 0;
            //jm.data = model;
CoreCms.Net.Web.Admin/wwwroot/static/jihuageshi/ÉÏ´«¼Æ»®¶©µ¥.xlsx
Binary files differ
CoreCms.Net.Web.Admin/wwwroot/views/corecmsplanorder/details.html
@@ -16,16 +16,43 @@
                <td width="25%">
                    <label for="shipAddress">学校</label>
                </td>
                <td width="25%">
                <td width="25%">
                    {{ d.params.data.model.shipAddress || '' }}
                </td>
            </tr>
            <tr>
                <td>
                    <label for="shi">市</label>
                </td>
                <td>
                    {{ d.params.data.model.shi || '' }}
                </td>
                <td>
                    <label for="quxian">区县</label>
                </td>
                <td>
                    {{ d.params.data.model.quxian || '' }}
                </td>
            </tr>
            <tr>
                <td>
                    <label for="pianqu">片区</label>
                </td>
                <td>
                    {{ d.params.data.model.pianqu || '' }}
                </td>
                <td>
                    <label for="quxian">收货地址</label>
                </td>
                <td>
                    {{ d.params.data.model.shouhuoAddress || '' }}
                </td>
            </tr>
            <tr>
                <td>
@@ -88,7 +115,12 @@
                </td>
            </tr>
            <tr>
                <td style="background-color:lightsteelblue;" colspan="4">
                    åŽŸè®¢å•
                </td>
            </tr>
            <tr>
                <td style="background-color:lightsteelblue;">
                    å•†å“åç§°
@@ -99,12 +131,12 @@
                <td style="background-color:lightsteelblue;">
                    æ•°é‡
                </td>
                <td style="background-color:lightsteelblue;" >
                <td style="background-color:lightsteelblue;">
                    æ€»ä»·ï¼ˆå…ƒï¼‰
                </td>
            </tr>
            {{# layui.each(d.params.data.modelItem, function(index, item){ }}
            {{# layui.each(d.params.data.modelItem1, function(index, item){ }}
            <tr>
                <td>
                    {{ item.name }}   {{ item.specification }}
@@ -123,6 +155,44 @@
            <tr>
                <td style="background-color:lightsteelblue;" colspan="4">
                    ä¿®æ”¹è®¢å•
                </td>
            </tr>
            <tr>
                <td style="background-color:lightsteelblue;">
                    å•†å“åç§°
                </td>
                <td style="background-color:lightsteelblue;">
                    å•价(元)
                </td>
                <td style="background-color:lightsteelblue;">
                    æ•°é‡
                </td>
                <td style="background-color:lightsteelblue;">
                    æ€»ä»·ï¼ˆå…ƒï¼‰
                </td>
            </tr>
            {{# layui.each(d.params.data.modelItem2, function(index, item){ }}
            <tr>
                <td>
                    {{ item.name }}   {{ item.specification }}
                </td>
                <td>
                    {{ item.price }}
                </td>
                <td>
                    {{ item.nums }}
                </td>
                <td>
                    {{ item.amount }}
                </td>
            </tr>
            {{# }); }}
        </tbody>
    </table>
</script>
CoreCms.Net.Web.Admin/wwwroot/views/corecmsplanorder/edit.html
@@ -1,110 +1,346 @@
<script type="text/html" template lay-done="layui.data.sendParams(d);">
    <div class="layui-form coreshop-form layui-form-pane" lay-filter="LAY-app-CoreCmsPlanOrder-editForm" id="LAY-app-CoreCmsPlanOrder-editForm">
        <div class="layui-form-item">
            <label for="orderId" class="layui-form-label  layui-form-required">订单号</label>
            <div class="layui-input-block">
                <input name="orderId"   lay-verType="tips" lay-verify="required" class="layui-input" placeholder="请输入订单号" lay-reqText="请输入订单号"  value="{{d.params.data.orderId || '' }}" />
            </div>
        </div>
        <div class="layui-form-item">
            <label for="orderAmount" class="layui-form-label  layui-form-required">调整订单金额</label>
            <div class="layui-input-block">
                <input name="orderAmount"   lay-verType="tips" lay-verify="required" class="layui-input" placeholder="请输入调整订单金额" lay-reqText="请输入调整订单金额"  value="{{d.params.data.orderAmount || '' }}" />
            </div>
        </div>
        <div class="layui-form-item">
        <input type="hidden" name="orderId" id="orderId" value="{{d.params.data.model.orderId || '' }}">
        <table class="layui-table layui-form">
            <colgroup>
                <col width="100">
                <col>
            </colgroup>
            <tbody>
                <tr>
                    <td width="25%">
                        <label for="orderId">订单号</label>
                    </td>
                    <td width="25%">
                        {{ d.params.data.model.orderId || '' }}
                    </td>
                    <td width="25%">
                        <label for="shipAddress">学校</label>
                    </td>
                    <td width="25%">
                        {{ d.params.data.model.shipAddress || '' }}
                    </td>
                </tr>
                <tr>
                    <td>
                        <label for="shi">市</label>
                    </td>
                    <td>
                        {{ d.params.data.model.shi || '' }}
                    </td>
                    <td>
                        <label for="quxian">区县</label>
                    </td>
                    <td>
                        {{ d.params.data.model.quxian || '' }}
                    </td>
                </tr>
                <tr>
                    <td>
                        <label for="pianqu">片区</label>
                    </td>
                    <td>
                        {{ d.params.data.model.pianqu || '' }}
                    </td>
                    <td>
                        <label for="quxian">收货地址</label>
                    </td>
                    <td>
                        {{ d.params.data.model.shouhuoAddress || '' }}
                    </td>
                </tr>
                <tr>
                    <td>
                        <label for="shipName">联系人</label>
                    </td>
                    <td>
                        {{ d.params.data.model.shipName || '' }}
                    </td>
                    <td>
                        <label for="shipMobile">联系电话</label>
                    </td>
                    <td>
                        {{ d.params.data.model.shipMobile || '' }}
                    </td>
                </tr>
                <tr>
                    <td>
                        <label for="oldOrderAmount">计划金额</label>
                    </td>
                    <td >
                        <input id="oldOrderAmount" name="oldOrderAmount" type="number" class="layui-input" value="{{ d.params.data.model.oldOrderAmount || '' }}" readonly="readonly" />
                    </td>
                    <td>
                        <label for="orderAmount">调整金额</label>
                    </td>
                    <td>
                        <input  id="orderAmount" name="orderAmount" type="number" class="layui-input" value="{{ d.params.data.model.orderAmount || '' }}" readonly="readonly" />
                    </td>
                </tr>
                <tr>
                    <td >
                        <label for="keYongAmount">可用余额</label>
                    </td>
                    <td>
                        <input id="keYongAmount" name="keYongAmount" type="number" class="layui-input" value="{{ d.params.data.model.keYongAmount || '' }}" readonly="readonly" />
                    </td>
                    <td>
                        <label for="status">订单状态</label>
                    </td>
                    <td>
                        {{ d.params.data.model.statusText || '' }}
                    </td>
                </tr>
                <tr>
                    <td>
                        <label for="createTime">建立时间</label>
                    </td>
                    <td>
                        {{ d.params.data.model.createTime || '' }}
                    </td>
                    <td>
                        <label for="upDataTime">修改时间</label>
                    </td>
                    <td>
                        {{ d.params.data.model.upDataTime || '' }}
                    </td>
                </tr>
                <tr>
                    <td style="background-color:lightsteelblue;" colspan="4">
                        åŽŸè®¢å•
                    </td>
                </tr>
                <tr>
                    <td style="background-color:lightsteelblue;">
                        å•†å“åç§°
                    </td>
                    <td style="background-color:lightsteelblue;">
                        å•价(元)
                    </td>
                    <td style="background-color:lightsteelblue;">
                        æ•°é‡
                    </td>
                    <td style="background-color:lightsteelblue;">
                        æ€»ä»·ï¼ˆå…ƒï¼‰
                    </td>
                </tr>
                {{# layui.each(d.params.data.modelItem1, function(index, item){ }}
                <tr>
                    <td>
                        {{ item.name }}   {{ item.specification }}
                    </td>
                    <td>
                        {{ item.price }}
                    </td>
                    <td>
                        {{ item.nums }}
                    </td>
                    <td>
                        {{ item.amount }}
                    </td>
                </tr>
                {{# }); }}
                <tr>
                    <td style="background-color:lightsteelblue;" colspan="4">
                        ä¿®æ”¹è®¢å•
                    </td>
                </tr>
                <tr>
                    <td style="background-color:lightsteelblue;">
                        å•†å“åç§°
                    </td>
                    <td style="background-color:lightsteelblue;">
                        å•价(元)
                    </td>
                    <td style="background-color:lightsteelblue;">
                        æ•°é‡
                    </td>
                    <td style="background-color:lightsteelblue;">
                        æ€»ä»·ï¼ˆå…ƒï¼‰
                    </td>
                </tr>
                {{# layui.each(d.params.data.modelItem2, function(index, item){ }}
                <tr>
                    <td>
                        <input type="hidden" name="itemIdarray" value="{{item.id || '' }}">
                        {{ item.name }}   {{ item.specification }}
                    </td>
                    <td>
                        {{ item.price }}
                        <input type="hidden" name="price" value="{{item.price || '' }}">
                    </td>
                    <td>
                        <input name="itemNumarray" lay-verType="tips" type="number" min="0" max="99999999" lay-verify="required|number" class="layui-input" placeholder="请输入数量" lay-reqText="请输入数量" value="{{ item.nums }}" onchange="changenum('{{ index }}')" />
                    </td>
                    <td>
                        <input name="amount"  type="number" class="layui-input" value="{{ item.amount }}" readonly="readonly"  />
                    </td>
                </tr>
                {{# }); }}
            </tbody>
        </table>
        <!--<div class="layui-form-item">
            <label for="status" class="layui-form-label  layui-form-required">订单状态</label>
            <div class="layui-input-block">
                <input  type="number" min="0" max="999999" name="status"   lay-verType="tips" lay-verify="required|number" class="layui-input" value="{{d.params.data.status || '' }}" placeholder="请输入订单状态" lay-reqText="请输入订单状态并为数字"  />
            </div>
        </div>
        <div class="layui-form-item">
        <div class="layui-form-item">
            <label for="userId" class="layui-form-label  layui-form-required">用户ID å…³è”user.id</label>
            <div class="layui-input-block">
                <input  type="number" min="0" max="999999" name="userId"   lay-verType="tips" lay-verify="required|number" class="layui-input" value="{{d.params.data.userId || '' }}" placeholder="请输入用户ID å…³è”user.id" lay-reqText="请输入用户ID å…³è”user.id并为数字"  />
            </div>
        </div>
        <div class="layui-form-item">
        <div class="layui-form-item">
            <label for="shipAddress" class="layui-form-label  layui-form-required">学校</label>
            <div class="layui-input-block">
                <input name="shipAddress"   lay-verType="tips" lay-verify="required" class="layui-input" placeholder="请输入学校" lay-reqText="请输入学校"  value="{{d.params.data.shipAddress || '' }}" />
            </div>
        </div>
        <div class="layui-form-item">
        <div class="layui-form-item">
            <label for="shipName" class="layui-form-label  layui-form-required">联系人</label>
            <div class="layui-input-block">
                <input name="shipName"   lay-verType="tips" lay-verify="required" class="layui-input" placeholder="请输入联系人" lay-reqText="请输入联系人"  value="{{d.params.data.shipName || '' }}" />
            </div>
        </div>
        <div class="layui-form-item">
        <div class="layui-form-item">
            <label for="shipMobile" class="layui-form-label  layui-form-required">收货电话</label>
            <div class="layui-input-block">
                <input name="shipMobile"   lay-verType="tips" lay-verify="required" class="layui-input" placeholder="请输入收货电话" lay-reqText="请输入收货电话"  value="{{d.params.data.shipMobile || '' }}" />
            </div>
        </div>
        <div class="layui-form-item">
        <div class="layui-form-item">
            <label for="oldOrderAmount" class="layui-form-label  layui-form-required">计划订单金额</label>
            <div class="layui-input-block">
                <input name="oldOrderAmount"   lay-verType="tips" lay-verify="required" class="layui-input" placeholder="请输入计划订单金额" lay-reqText="请输入计划订单金额"  value="{{d.params.data.oldOrderAmount || '' }}" />
            </div>
        </div>
        <div class="layui-form-item">
        <div class="layui-form-item">
            <label for="keYongAmount" class="layui-form-label  layui-form-required">可用余额</label>
            <div class="layui-input-block">
                <input name="keYongAmount"   lay-verType="tips" lay-verify="required" class="layui-input" placeholder="请输入可用余额" lay-reqText="请输入可用余额"  value="{{d.params.data.keYongAmount || '' }}" />
            </div>
        </div>
        <div class="layui-form-item">
        <div class="layui-form-item">
            <label for="createTime" class="layui-form-label  layui-form-required">建立时间</label>
            <div class="layui-input-block">
                <input name="createTime"  id="editTime-CoreCmsPlanOrder-createTime" type="text" lay-verType="tips" lay-verify="required|datetime" class="layui-input" placeholder="请输入建立时间" lay-reqText="请输入建立时间"   value="{{d.params.data.createTime || '' }}"/>
            </div>
        </div>
        <div class="layui-form-item">
        <div class="layui-form-item">
            <label for="upDataTime" class="layui-form-label  layui-form-required">修改时间</label>
            <div class="layui-input-block">
                <input name="upDataTime"  id="editTime-CoreCmsPlanOrder-upDataTime" type="text" lay-verType="tips" lay-verify="required|datetime" class="layui-input" placeholder="请输入修改时间" lay-reqText="请输入修改时间"   value="{{d.params.data.upDataTime || '' }}"/>
            </div>
        </div>
        <div class="layui-form-item">
        <div class="layui-form-item">
            <label for="createBy" class="layui-form-label  layui-form-required">创建人</label>
            <div class="layui-input-block">
                <input name="createBy"   lay-verType="tips" lay-verify="required" class="layui-input" placeholder="请输入创建人" lay-reqText="请输入创建人"  value="{{d.params.data.createBy || '' }}" />
            </div>
        </div>
        <div class="layui-form-item">
        <div class="layui-form-item">
            <label for="upDataBy" class="layui-form-label  layui-form-required">修改人</label>
            <div class="layui-input-block">
                <input name="upDataBy"   lay-verType="tips" lay-verify="required" class="layui-input" placeholder="请输入修改人" lay-reqText="请输入修改人"  value="{{d.params.data.upDataBy || '' }}" />
            </div>
        </div>
        <div class="layui-form-item" pane>
        <div class="layui-form-item" pane>
            <label for="isdelete" class="layui-form-label  layui-form-required">删除标志</label>
            <div class="layui-input-block">
                <input type="checkbox" lay-filter="switch" name="isdelete"   {{ d.params.data.isdelete ? 'checked' : '' }} lay-skin="switch" lay-text="开启|关闭">
            </div>
        </div>
        </div>-->
        <div class="layui-form-item text-right core-hidden">
            <input type="button" class="layui-btn" lay-submit lay-filter="LAY-app-CoreCmsPlanOrder-editForm-submit" id="LAY-app-CoreCmsPlanOrder-editForm-submit" value="确认编辑">
        </div>
    </div>
</script>
<script>
    function changenum(index) {
        //alert($("input[name='itemNumarray']:eq(" + index + ")").val());
        //alert($("input[name='price']:eq(" + index + ")").val());
        //alert($("input[name='amount']:eq(" + index + ")").val());
        //alert($('#oldOrderAmount').val());
        //alert($('#orderAmount').val());
        //alert($('#keYongAmount').val());
        var itemNumarray = $("input[name='itemNumarray']:eq(" + index + ")").val();
        var price = $("input[name='price']:eq(" + index + ")").val();
        $("input[name='amount']:eq(" + index + ")").val((itemNumarray * price).toFixed(2));
        var zongjia = 0;
        for (v = 0; v < $("input[name='amount']").size(); v++) {
            zongjia = zongjia + parseFloat($("input[name='amount']:eq(" + v + ")").val());
        }
        $('#orderAmount').val(zongjia);
        var yue = (parseFloat($('#oldOrderAmount').val()) - zongjia).toFixed(2);
        $('#keYongAmount').val(yue);
        if (yue < 0) {
            layer.msg("订单金额超出计划金额");
        }
    }
    var debug= layui.setter.debug;
    layui.data.sendParams = function (d) {
        //开启调试情况下获取接口赋值数据
@@ -119,16 +355,7 @@
                , cropperImg = layui.cropperImg
                , coreHelper = layui.coreHelper;
        
            laydate.render({
                elem: '#editTime-CoreCmsPlanOrder-createTime',
                type: 'datetime',
                fullPanel: true
            });
            laydate.render({
                elem: '#editTime-CoreCmsPlanOrder-upDataTime',
                type: 'datetime',
                fullPanel: true
            });
            form.verify({
                
            });
CoreCms.Net.Web.Admin/wwwroot/views/corecmsplanorder/index.html
@@ -33,24 +33,47 @@
            <input type="text" name="orderAmount"  placeholder="请输入调整订单金额" class="layui-input">
        </div>
    </div>-->
            <div class="layui-inline">
                <label class="layui-form-label" for="status">订单状态</label>
        <div class="layui-input-inline">
            <select name="status">
                <option value="">请选择</option>
                <option value="1">未提交</option>
                <option value="2">已提交</option>
            </select>
        </div>
    </div>
                <div class="layui-input-inline">
                    <select name="status">
                        <option value="">请选择</option>
                        <option value="1">未提交</option>
                        <option value="2">已提交</option>
                    </select>
                </div>
            </div>
            <!--<div class="layui-inline">
        <label class="layui-form-label" for="userId">用户ID å…³è”user.id</label>
        <div class="layui-input-inline">
            <input type="text" name="userId"  placeholder="请输入用户ID å…³è”user.id" class="layui-input">
        </div>
    </div>-->
            <div class="layui-inline">
                <label class="layui-form-label" for="shi">市</label>
                <div class="layui-input-inline">
                    <!--<input type="text" name="shi" placeholder="请输入市" class="layui-input">-->
                    <select name="shi" id="shi" lay-filter="cityFilter" >
                        <option value="0">请选择</option>
                        {{# layui.each(indexData, function(index, item){ }}
                        <option value="{{ item.id }}">{{ item.name }}</option>
                        {{# }); }}
                    </select>
                </div>
            </div>
            <div class="layui-inline">
                <label class="layui-form-label" for="quxian">区县</label>
                <div class="layui-input-inline">
                    <!--<input type="text" name="quxian" placeholder="请输入区县" class="layui-input">-->
                    <select name="quxian" id="quxian" lay-filter="quxian">
                    </select>
                </div>
            </div>
            <div class="layui-inline">
                <label class="layui-form-label" for="shipAddress">学校</label>
                <div class="layui-input-inline">
@@ -67,6 +90,12 @@
                <label class="layui-form-label" for="shipMobile">联系电话</label>
                <div class="layui-input-inline">
                    <input type="text" name="shipMobile" placeholder="请输入联系电话" class="layui-input">
                </div>
            </div>
            <div class="layui-inline">
                <label class="layui-form-label" for="shouhuoAddress">收货地址</label>
                <div class="layui-input-inline">
                    <input type="text" name="shouhuoAddress" placeholder="收货地址" class="layui-input">
                </div>
            </div>
            <!--<div class="layui-inline">
@@ -135,8 +164,8 @@
<script type="text/html" id="LAY-app-CoreCmsPlanOrder-tableBox-bar">
    <a class="layui-btn layui-btn-primary layui-btn-xs" lay-event="detail">查看</a>
    <!--<a class="layui-btn layui-btn-xs" lay-event="edit">编辑</a>
    <a class="layui-btn layui-btn-danger layui-btn-xs" data-dropdown="#CoreCmsPlanOrderTbDelDrop{{d.LAY_INDEX}}" no-shade="true">删除</a>-->
    <a class="layui-btn layui-btn-xs" lay-event="edit">编辑</a>
    <!--<a class="layui-btn layui-btn-danger layui-btn-xs" data-dropdown="#CoreCmsPlanOrderTbDelDrop{{d.LAY_INDEX}}" no-shade="true">删除</a>-->
    <div class="dropdown-menu-nav dropdown-popconfirm dropdown-top-right layui-hide" id="CoreCmsPlanOrderTbDelDrop{{d.LAY_INDEX}}"
         style="max-width: 200px;white-space: normal;min-width: auto;margin-left: 10px;">
        <div class="dropdown-anchor"></div>
@@ -152,6 +181,7 @@
</script>
<script>
    var indexData;
    var debug= layui.setter.debug;
    layui.data.done = function (d) {
@@ -181,6 +211,38 @@
                        //执行重载
                        table.reloadData('LAY-app-CoreCmsPlanOrder-tableBox',{ where: field });
                    });
                // ç›‘听提交事件
                form.on('select(cityFilter)', function (data) {
                    var city = $("#shi").val();
                    $.ajax({
                        type: "GET",
                        url: layui.setter.apiUrl + 'Api/CoreCmsPlanOrder/GetAreaId?cityid=' + city,
                        dataType: "json",
                        global: false,
                        data: "",
                        success: function (data) {
                            console.log(data.data);
                            var quxian = $("#quxian");
                            quxian.find('option').remove();
                            var aaa = '<option value="0">请选择</option>';
                            quxian.append(aaa);
                            if (data.data.length > 0) {
                                for (var i = 0; i < data.data.length; i++) {
                                    var o = '<option value="' + data.data[i].id + '" >' + data.data[i].name + '</option>';
                                    quxian.append(o);
                                }
                                // ä½¿ç”¨form.render方法重新渲染select
                                form.render('select');
                            }
                        },
                        error: function () {
                            parent.layer.msg('失败', { icon: 5 });
                        }
                    });
                });
                //数据绑定
                table.render({
                    elem: '#LAY-app-CoreCmsPlanOrder-tableBox',
@@ -199,12 +261,14 @@
                        [
                            { type: "checkbox", fixed: "left" },
                            { field: 'orderId', title: '订单号', sort: false,width: 115 },
                            { field: 'shi', title: '市', sort: false, width: 50 },
                            { field: 'quxian', title: '区县', sort: false, width: 50 },
                            { field: 'pianqu', title: '片区', sort: false, width: 115 },
                         /*   { field: 'userId', title: '用户ID å…³è”user.id', sort: false,width: 105 },*/
                            { field: 'shipAddress', title: '学校', sort: false,width: 335 },
                            { field: 'shipAddress', title: '学校', sort: false, width: 115 },
                            { field: 'shipName', title: '联系人', sort: false,width: 115 },
                            { field: 'shipMobile', title: '联系电话', sort: false,width: 115 },
                            { field: 'shipMobile', title: '联系电话', sort: false, width: 115 },
                            { field: 'shouhuoAddress', title: '收货地址', sort: false, width: 115 },
                            { field: 'oldOrderAmount', title: '计划金额', sort: false, width: 115 },
                            { field: 'orderAmount', title: '调整金额', sort: false, width: 115 },
                            { field: 'keYongAmount', title: '可用余额', sort: false,width: 115 },
@@ -309,7 +373,7 @@
                }
                //执行编辑操作
                function doEdit(obj){
                    coreHelper.Post("Api/CoreCmsPlanOrder/GetEdit", {id:obj.data.id}, function (e) {
                    coreHelper.Post("Api/CoreCmsPlanOrder/GetEdit", { id: obj.data.orderId }, function (e) {
                        if (e.code === 0) {
                            admin.popup({
                                shadeClose: false,
@@ -317,15 +381,31 @@
                                area: ['1200px', '90%'],
                                id: 'LAY-popup-CoreCmsPlanOrder-edit',
                                success: function (layero, index) {
                                    view(this.id).render('base/CoreCmsPlanOrder/edit', { data: e.data }).done(function () {
                                    view(this.id).render('CoreCmsPlanOrder/edit', { data: e.data }).done(function () {
                                        //监听提交
                                        form.on('submit(LAY-app-CoreCmsPlanOrder-editForm-submit)',
                                            function(data) {
                                                var field = data.field; //获取提交的字段
                                                field.isdelete = field.isdelete == 'on';
                                                //field.isdelete = field.isdelete == 'on';
                                                delete field["itemNumarray"];
                                                var newarray = Array();
                                                for (v = 0; v < $("input[name='itemNumarray']").size(); v++) {
                                                    newarray.push($("input[name='itemNumarray']:eq("+v+")").val())
                                                }
                                                field["itemNumarray"] = newarray;
                                                delete field["itemIdarray"];
                                                var newarray = Array();
                                                for (v = 0; v < $("input[name='itemIdarray']").size(); v++) {
                                                    newarray.push($("input[name='itemIdarray']:eq(" + v + ")").val())
                                                }
                                                field["itemIdarray"] = newarray;
                                                if (debug) { console.log(field); } //开启调试返回数据
                                                console.log(field);
                                                //提交 Ajax æˆåŠŸåŽï¼Œå…³é—­å½“å‰å¼¹å±‚å¹¶é‡è½½è¡¨æ ¼
                                                coreHelper.Post("Api/CoreCmsPlanOrder/DoEdit", field, function (e) {
                                                        console.log(e)
@@ -340,7 +420,7 @@
                                            });
                                    })
                                    // ç¦æ­¢å¼¹çª—出现滚动条
                                    $(layero).children('.layui-layer-content').css('overflow', 'visible');
                                 /*   $(layero).children('.layui-layer-content').css('overflow', 'visible');*/
                                }
                                 , btn: ['确定', '取消']
                                , yes: function (index, layero) {
@@ -366,7 +446,7 @@
                                        form.render();
                                    });
                                    // ç¦æ­¢å¼¹çª—出现滚动条
                                    $(layero).children('.layui-layer-content').css('overflow', 'visible');
                                 /*   $(layero).children('.layui-layer-content').css('overflow', 'visible');*/
                                }
                            });
                        } else {
@@ -486,6 +566,10 @@
                form.render();
            });
    };
</script>
<!--设置删除标志-->
CoreCms.Net.Web.WebApi/Controllers/OrderController.cs
@@ -417,7 +417,7 @@
            //获取相关状态描述说明转换
            model.statusText = EnumHelper.GetEnumDescriptionByValue<GlobalEnumVars.PlanOrderTiJiao>(model.status);
            var modelItem = await _planOrderItemServices.QueryListByClauseAsync(p => p.orderId == entity.id, p => p.specification, OrderByType.Asc);
            var modelItem = await _planOrderItemServices.QueryListByClauseAsync(p => p.orderId == entity.id && p.isOld == false, p => p.specification, OrderByType.Asc);
            jm.code = 0;
            jm.status = true;