/// <summary> /// 保存表单(新增、修改) /// </summary> /// <param name="keyValue">主键值</param> /// <param name="entity">实体对象</param> /// <returns></returns> public void SaveForm(string keyValue, Client_OrderDescriptionEntity entity) { try { service.SaveForm(keyValue, entity); } catch (Exception) { throw; } }
public ActionResult SaveForm(string keyValue, Client_OrderDescriptionEntity entity) { client_orderdescriptionbll.SaveForm(keyValue, entity); return(Success("操作成功。")); }
public void SaveFormApi(string keyValue, OrderEntity orderEntity, List <OrderEntryEntity> orderEntryList, List <ReceivableEntity> receivableentityList, string userid, string username) { IRepository db = new RepositoryFactory().BaseRepository().BeginTrans(); try { decimal realsize = 0; if (!string.IsNullOrEmpty(orderEntity.PhotoPath)) { if (orderEntity.PhotoPath.ToString().Substring(orderEntity.PhotoPath.Length - 1, 1) == ",") { orderEntity.PhotoPath = orderEntity.PhotoPath.Substring(0, orderEntity.PhotoPath.Length - 1); } } if (!string.IsNullOrEmpty(keyValue)) { decimal recA = 0; ////主表 // orderEntity.Modify(keyValue); orderEntity.OrderId = keyValue; if (receivableentityList != null) { //收款 db.Delete <ReceivableEntity>(t => t.OrderId.Equals(keyValue)); foreach (ReceivableEntity receivableEntity in receivableentityList) { System.Threading.Thread.Sleep(10); receivableEntity.PaymentTime = receivableEntity.PaymentTime == null ? DateTime.Now : receivableEntity.PaymentTime; receivableEntity.CreateDate = receivableEntity.CreateDate == null ? DateTime.Now : receivableEntity.CreateDate; receivableEntity.CreateUserId = receivableEntity.CreateUserId == null ? userid : receivableEntity.CreateUserId; receivableEntity.CreateUserName = receivableEntity.CreateUserName == null ? username : receivableEntity.CreateUserName; recA = recA + Convert.ToDecimal(receivableEntity.PaymentPrice) - Convert.ToDecimal(receivableEntity.DrawbackPrice); receivableEntity.ReceivableId = Guid.NewGuid().ToString(); receivableEntity.OrderId = orderEntity.OrderId; //添加收款 db.Insert(receivableEntity); } } if (orderEntryList != null) { //明细 db.Delete <OrderEntryEntity>(t => t.OrderId.Equals(keyValue)); foreach (OrderEntryEntity orderEntryEntity in orderEntryList) { System.Threading.Thread.Sleep(10); orderEntryEntity.RealSize = orderEntryEntity.RealSize == null ? 0 : orderEntryEntity.RealSize; orderEntryEntity.RealAmount = orderEntryEntity.RealAmount == null ? 0 : orderEntryEntity.RealAmount; realsize = realsize + Convert.ToDecimal(orderEntryEntity.RealSize == null ? 0 : orderEntryEntity.RealSize); orderEntryEntity.EstimateSize = 0; orderEntryEntity.EstimateAmount = 0; orderEntryEntity.OrderEntryId = Guid.NewGuid().ToString(); orderEntryEntity.OrderId = orderEntity.OrderId; db.Insert(orderEntryEntity); } } if (orderEntity.OrderStatusName.Contains("已")) { orderEntity.OrderStatusId = "3"; if (string.IsNullOrEmpty(Convert.ToString(orderEntity.FinishDate))) { orderEntity.FinishDate = DateTime.Today; } } else { orderEntity.OrderStatusId = "1"; } //if (Convert.ToString(orderEntity.OrderStatusId) != "3") //{ // orderEntity.FinishDate = null; //} if (recA > 0) { //更改订单状态 if (GetEntity(keyValue).Accounts >= recA) { orderEntity.PaymentState = 3; } else { orderEntity.PaymentState = 2; } if (orderEntity.PayeeModeId == null) { orderEntity.PayeeModeId = "1"; orderEntity.PayeeModeName = "现金"; } } db.Update(orderEntity); orderEntity.SellerId = null; orderEntity.SellerName = null; orderEntity.ModifyDate = DateTime.Now; orderEntity.ModifyUserId = userid; orderEntity.ModifyUserName = username; orderEntity.ReceivedAmount = recA; orderEntity.RealSize = realsize; //施工面积 db.Update(orderEntity); if (GetEntity(keyValue).Description != orderEntity.Description && !string.IsNullOrEmpty(orderEntity.Description)) {//备注和之前不同时,插入备注列表 Client_OrderDescriptionEntity orderDescriptionEntity = new Client_OrderDescriptionEntity(); orderDescriptionEntity.CreateDate = DateTime.Now; orderDescriptionEntity.CreateUserId = userid; orderDescriptionEntity.CreateUserName = username; orderDescriptionEntity.DescriptionId = Guid.NewGuid().ToString(); orderDescriptionEntity.OrderId = orderEntity.OrderId; orderDescriptionEntity.DescriptionContent = orderEntity.Description; db.Insert(orderDescriptionEntity); } } else { CustomerService customerService = new CustomerService(); if (customerService.GetEntityByCondation(orderEntity.CustomerName, orderEntity.ContecterTel).Count() == 0) { CustomerEntity customerEntity = new CustomerEntity(); customerEntity.FullName = orderEntity.CustomerName; customerEntity.Tel = orderEntity.ContecterTel; customerEntity.Mobile = orderEntity.ContecterTel; customerService.SaveFormApi("", customerEntity); orderEntity.CustomerId = customerService.GetEntityByCondation(orderEntity.CustomerName, orderEntity.ContecterTel).ToList()[0].CustomerId; } //主表 orderEntity.SellerId = userid; orderEntity.SellerName = username; if (orderEntity.OrderDate == null) { orderEntity.OrderDate = DateTime.Now; } //orderEntity.OrderDate = DateTime.Now; orderEntity.CreateUserId = userid; orderEntity.CreateUserName = username; orderEntity.OrderId = Guid.NewGuid().ToString(); orderEntity.CreateDate = DateTime.Now; orderEntity.OrderCode = coderuleService.SetBillCodeApi(userid, "", ((int)CodeRuleEnum.Customer_OrderCode).ToString()); coderuleService.UseRuleSeed(orderEntity.CreateUserId, "", ((int)CodeRuleEnum.Customer_OrderCode).ToString(), db);//占用单据号 decimal recA = 0; if (receivableentityList != null) { //收款 // db.Delete<ReceivableEntity>(t => t.OrderId.Equals(keyValue)); foreach (ReceivableEntity receivableEntity in receivableentityList) { System.Threading.Thread.Sleep(10); receivableEntity.CreateDate = DateTime.Now; receivableEntity.PaymentTime = receivableEntity.PaymentTime == null ? DateTime.Now : receivableEntity.PaymentTime; receivableEntity.CreateUserId = userid; receivableEntity.CreateUserName = username; recA = recA + Convert.ToDecimal(receivableEntity.PaymentPrice) - Convert.ToDecimal(receivableEntity.DrawbackPrice); receivableEntity.ReceivableId = Guid.NewGuid().ToString(); receivableEntity.OrderId = orderEntity.OrderId; //添加收款 db.Insert(receivableEntity); } } if (orderEntryList != null) { //明细 foreach (OrderEntryEntity orderEntryEntity in orderEntryList) { System.Threading.Thread.Sleep(10); orderEntryEntity.RealSize = orderEntryEntity.RealSize == null ? 0 : orderEntryEntity.RealSize; orderEntryEntity.RealAmount = orderEntryEntity.RealAmount == null ? 0 : orderEntryEntity.RealAmount; realsize = realsize + Convert.ToDecimal(orderEntryEntity.RealSize == null ? 0 : orderEntryEntity.RealSize); orderEntryEntity.EstimateSize = 0; orderEntryEntity.EstimateAmount = 0; orderEntryEntity.OrderEntryId = Guid.NewGuid().ToString(); orderEntryEntity.OrderId = orderEntity.OrderId; db.Insert(orderEntryEntity); } } if (orderEntity.OrderStatusName.Contains("已")) { orderEntity.OrderStatusId = "3"; if (string.IsNullOrEmpty(Convert.ToString(orderEntity.FinishDate))) { orderEntity.FinishDate = DateTime.Today; } } else { orderEntity.OrderStatusId = "1"; } if (recA > 0) { //更改订单状态 if (orderEntity.Accounts >= recA) { orderEntity.PaymentState = 3; } else { orderEntity.PaymentState = 2; } if (orderEntity.PayeeModeId == null) { orderEntity.PayeeModeId = "1"; orderEntity.PayeeModeName = "现金"; } } orderEntity.RealSize = realsize; //施工面积 orderEntity.ReceivedAmount = recA; db.Insert(orderEntity); if (!string.IsNullOrEmpty(orderEntity.Description)) { Client_OrderDescriptionEntity orderDescriptionEntity = new Client_OrderDescriptionEntity(); orderDescriptionEntity.CreateDate = DateTime.Now; orderDescriptionEntity.CreateUserId = userid; orderDescriptionEntity.CreateUserName = username; orderDescriptionEntity.DescriptionId = Guid.NewGuid().ToString(); orderDescriptionEntity.OrderId = orderEntity.OrderId; orderDescriptionEntity.DescriptionContent = orderEntity.Description; db.Insert(orderDescriptionEntity); } } db.Commit(); } catch { db.Rollback(); throw; } }