/// <summary> /// 替换订单标签 /// </summary> /// <param name="row"></param> /// <param name="item"></param> /// <param name="index"></param> private void ReplaceOrderKey(XWPFTableRow row, CrmOrderEntity item, int index) { foreach (var cell in row.GetTableCells()) { var text = cell.GetText().Trim(); switch (text) { case "金额合计(大写):{allTotalPriceBig}": text = text.Replace("{allTotalPriceBig}", item.TotlaPrice.ToString("N2").MoneyToChinese()); break; case "小写金额:{allTotalPriceSmall}": text = text.Replace("{allTotalPriceSmall}", item.TotlaPrice.ToString("N2")); break; case "{index}": text = text.Replace(text, index.ToString()); break; case "{productId}": text = text.Replace(text, "运费"); break; case "{totalPrice}": text = text.Replace(text, item.FreightPrice.ToString("N2")); break; case "{productFullName}": case "{unit}": case "{count}": case "{singlePrice}": case "{remark}": text = text.Replace(text, ""); break; } // 为保留模板的格式 foreach (var para in cell.Paragraphs) { for (var i = 0; i < para.Runs.Count; i++) { para.Runs[i].SetText(i == para.Runs.Count - 1 ? text : "", 0); } } } }
/// <summary> /// 添加订单 /// </summary> /// <param name="order"></param> /// <param name="items"></param> /// <returns></returns> public bool AddCrmOrder(CrmOrderEntity order, List <CrmOrderItemEntity> items) { var db = GetInstance(); var r = db.Ado.UseTran(() => { var orderId = db.Insertable(order).ExecuteReturnIdentity(); if (orderId > 0) { foreach (var item in items) { item.OrderId = orderId; } db.Insertable(items).ExecuteCommand(); //添加订单详情 } return(orderId > 0); }); return(r.IsSuccess); }
/// <summary> /// 修改订单 /// </summary> /// <param name="model"></param> /// <returns></returns> public bool ModifyCrmOrder(CrmOrderEntity model) { switch (model.Status) { case (int)CrmOrderStatusEnum.Paid: model.PaymentTime = DateTime.Now; break; case (int)CrmOrderStatusEnum.Shipped: model.ConsignTime = DateTime.Now; break; case (int)CrmOrderStatusEnum.Success: model.EndTime = DateTime.Now; break; default: model.CloseTime = DateTime.Now; break; } return(_service.Update(model)); }
public ActionResult <object> ModifyCrmOrder([FromForm] CrmOrderEntity model) { return(_repository.ModifyCrmOrder(model).ResponseSuccessFailure()); }
/// <summary> /// 替换公司和客户标签 /// </summary> /// <param name="row"></param> /// <param name="item"></param> /// <param name="client"></param> private void ReplaceClientCompanyKey(XWPFTableRow row, CrmOrderEntity item, CrmClientEntity client) { foreach (var cell in row.GetTableCells()) { var text = cell.GetText().Trim(); if (text.IsNullOrWhiteSpace()) { continue; } switch (text) { case "{Company:Name}": text = text.Replace(text, AppSettingsHelper.GetString("Company:Name")); break; case "{Company:Address}": text = text.Replace(text, AppSettingsHelper.GetString("Company:Address")); break; case "{Company:Tel}": text = text.Replace(text, AppSettingsHelper.GetString("Company:Tel")); break; case "制单人:{Company: Lister}": text = text.Replace("{Company: Lister}", AppSettingsHelper.GetString("Company:Lister")); break; case "NO. {dateTime}": case "发货日期:{dateTime}": text = text.Replace("{dateTime}", DateTime.Today.ToString("yyyy-MM-dd")); break; case "客户名称:{clientName}": text = text.Replace("{clientName}", client.ClientName); break; case "联系人:{clientRealName}": text = text.Replace("{clientRealName}", client.RealName ?? client.ClientName); break; case "客户地址:{clientAddress}": var addr = Regex.Replace(item.FullAddress, @"[1]+\d{10}", ""); //手机 addr = Regex.Replace(addr, @"(\d{3,4}-)?\d{6,8}$", ""); //座机 text = text.Replace("{clientAddress}", addr.Replace(" ", "")); break; case "电话:{clientTel}": var tel = Regex.Match(item.FullAddress, @"[1]+\d{10}").Value; //手机 if (tel.IsNullOrWhiteSpace()) { tel = Regex.Match(item.FullAddress, @"(\d{3,4}-)?\d{6,8}$").Value; //座机 } text = text.Replace("{clientTel}", tel); break; } // 为保留模板的格式 foreach (var para in cell.Paragraphs) { for (var i = 0; i < para.Runs.Count; i++) { para.Runs[i].SetText(i == para.Runs.Count - 1 ? text : "", 0); } } } }