public Response <bool> AddQuotedPrices(AddQuotedPriceRequest request) { Response <bool> response = new Response <bool>(); if (request == null || request.QuotedPrices_New == null || !request.QuotedPrices_New.Any()) { ArgumentNullException ex = new ArgumentNullException("AddQuotedPrices request"); LogError(ex); response.ErrorCode = ErrorCode.Argument; response.Exception = ex; return(response); } try { new QuotedPriceAccessor().AddQuotedPrices(request.QuotedPrices_New); response.IsSuccess = true; } catch (Exception ex) { LogError(ex); response.IsSuccess = false; response.ErrorCode = ErrorCode.Technical; } return(response); }
public ActionResult Create(QuotedPriceViewModel vm) { vm.QuotedPriceDetails = vm.SettedConfigs.FromJsonStringTo <IEnumerable <QuotedPriceDetail> >(); vm.RelatedCustomerID = vm.Target == 0 ? vm.TargetID : vm.RelatedCustomerID; vm.RelatedCustomerName = vm.TargetID == 0 ? vm.TargetName : vm.RelatedCustomerName; AddQuotedPriceRequest request = new AddQuotedPriceRequest() { QuotedPrices = vm.QuotedPriceDetails.Select(q => new QuotedPrice() { ProjectID = base.UserInfo.ProjectID, ProjectName = base.UserInfo.ProjectName, Target = vm.Target, TargetID = vm.TargetID, TargetName = vm.TargetName, ShipperTypeID = vm.ShipperTypeID, ShipperTypeName = vm.ShipperTypeName, PodTypeID = vm.PodTypeID, PodTypeName = vm.PodTypeName, TplOrTtlID = vm.TplOrTtlID, TplOrTtlName = vm.TplOrTtlName, TransportationLineID = vm.TransportationLineID, StartCityID = vm.StartCityID, StartCityName = vm.StartCityName, EndCityID = vm.EndCityID, EndCityName = vm.EndCityName, SegmentDetailID = q.SegmentDetailID, StartVal = q.StartVal, EndVal = q.EndVal, MinPrice = vm.MinPrice ?? 0, Point = vm.Point ?? 0, Price = q.Price, EffectiveStartTime = vm.EffectiveStartTime, EffectiveEndTime = vm.EffectiveEndTime, Creator = base.UserInfo.Name, CreateTime = DateTime.Now, Remark = vm.Remark, State = true, RelatedCustomerID = vm.RelatedCustomerID, RelatedCustomerName = vm.RelatedCustomerName, EmptyCarryPrice = vm.EmptyCarryPrice ?? 0, Decimal1 = vm.Decimal1 ?? 0, Decimal2 = vm.Decimal2 ?? 0 }) }; var response = new QuotedPriceService().AddQuotedPrice(request); if (response.IsSuccess) { ApplicationConfigHelper.RefreshProjectQuotedPrice(base.UserInfo.ProjectID, vm.Target, vm.TargetID, vm.RelatedCustomerID); return(RedirectToAction("Create", new { id = vm.Target, message = "新增报价成功,继续增加" })); } return(Error("新增" + (vm.Target == 0 ? "客户" : "承运商") + "报价失败!")); }
public string ExeclQuotedPrices() { if (Request.Files.Count > 0) { HttpPostedFileBase hpf = Request.Files[0] as HttpPostedFileBase; if (hpf.ContentLength > 0) { //DataSet ds = this.GetDataFromExcel(hpf); DataSet ds = EPPlusOperation.ReadExcelToDataSet(hpf); if (ds != null && ds.Tables[0] != null) { IList <QuotedPrices> qprice = new List <QuotedPrices>(); for (int i = 0; i < ds.Tables[0].Rows.Count; i++) { qprice.Add(new QuotedPrices() { ProjectID = base.UserInfo.ProjectID, ProjectName = base.UserInfo.ProjectName, Target = Convert.ToInt32(ds.Tables[0].Rows[i]["Target"].ToString()), TargetName = ds.Tables[0].Rows[i]["TargetName"].ToString(), StartCityName = ds.Tables[0].Rows[i]["StartCityName"].ToString(), EndCityName = ds.Tables[0].Rows[i]["EndCityName"].ToString(), PodTypeName = ds.Tables[0].Rows[i]["PodTypeName"].ToString(), ShipperTypeName = ds.Tables[0].Rows[i]["ShipperTypeName"].ToString(), P200 = Convert.ToDecimal(ds.Tables[0].Rows[i]["P200"].ToString()), P500 = Convert.ToDecimal(ds.Tables[0].Rows[i]["P500"].ToString()), P1000 = Convert.ToDecimal(ds.Tables[0].Rows[i]["P1000"].ToString()), P2000 = Convert.ToDecimal(ds.Tables[0].Rows[i]["P2000"].ToString()), P5000 = Convert.ToDecimal(ds.Tables[0].Rows[i]["P5000"].ToString()), P10000 = Convert.ToDecimal(ds.Tables[0].Rows[i]["P10000"].ToString()), P20000 = Convert.ToDecimal(ds.Tables[0].Rows[i]["P20000"].ToString()), P30000 = Convert.ToDecimal(ds.Tables[0].Rows[i]["P30000"].ToString()), P99999 = Convert.ToDecimal(ds.Tables[0].Rows[i]["P99999"].ToString()), RelatedCustomerName = ds.Tables[0].Rows[i]["RelatedCustomerName"].ToString() }); } AddQuotedPriceRequest request = new AddQuotedPriceRequest() { QuotedPrices_New = qprice.Select(q => new QuotedPrices() { ProjectID = base.UserInfo.ProjectID, ProjectName = base.UserInfo.ProjectName, Target = q.Target, TargetName = q.TargetName, StartCityName = q.StartCityName, EndCityName = q.EndCityName, PodTypeName = q.PodTypeName, ShipperTypeName = q.ShipperTypeName, P200 = q.P200 ?? 0, P500 = q.P500 ?? 0, P1000 = q.P1000 ?? 0, P2000 = q.P2000 ?? 0, P5000 = q.P5000 ?? 0, P10000 = q.P10000 ?? 0, P20000 = q.P20000 ?? 0, P30000 = q.P30000 ?? 0, P99999 = q.P99999 ?? 0, RelatedCustomerName = q.RelatedCustomerName }) }; var response = new QuotedPriceService().AddQuotedPrices(request); if (response.IsSuccess) { return(new { result = "导入成功", IsSuccess = true }.ToJsonString()); } } return(new { result = "<h3>导入失败!</h3><br/>excel内容有误!", IsSuccess = false }.ToString()); } return(new { result = "文件内容为空", IsSuccess = false }.ToString()); } return(new { result = "请选择文件", IsSuccess = false }.ToString()); }
public string ExeclQuotedPrice() { if (Request.Files.Count > 0) { HttpPostedFileBase hpf = Request.Files[0] as HttpPostedFileBase; if (hpf.ContentLength > 0) { //DataSet ds = this.GetDataFromExcel(hpf); DataSet ds = EPPlusOperation.ReadExcelToDataSet(hpf); if (ds != null && ds.Tables[0] != null) { IList <QuotedPrice> Info = new List <QuotedPrice>(); for (int i = 0; i < ds.Tables[0].Rows.Count; i++) { Info.Add(new QuotedPrice() { ProjectID = base.UserInfo.ProjectID, ProjectName = base.UserInfo.ProjectName, Target = Convert.ToInt32(ds.Tables[0].Rows[i]["Target"]), TargetID = Convert.ToInt32(ds.Tables[0].Rows[i]["TargetID"]), TargetName = ds.Tables[0].Rows[i]["TargetName"].ToString(), ShipperTypeID = 0, ShipperTypeName = ds.Tables[0].Rows[i]["ShipperTypeName"].ToString(), PodTypeID = 0, PodTypeName = ds.Tables[0].Rows[i]["PodTypeName"].ToString(), TplOrTtlID = 0, TplOrTtlName = ds.Tables[0].Rows[i]["TplOrTtlName"].ToString(), TransportationLineID = 0, StartCityID = 0, StartCityName = ds.Tables[0].Rows[i]["StartCityName"].ToString(), EndCityID = 0, EndCityName = ds.Tables[0].Rows[i]["EndCityName"].ToString(), SegmentDetailID = 0, StartVal = Convert.ToInt32(ds.Tables[0].Rows[i]["StartVal"]), EndVal = Convert.ToInt32(ds.Tables[0].Rows[i]["EndVal"]), //hjq MinPrice = 0, Point = 0,// Convert.ToDecimal(ds.Tables[0].Rows[i]["Point"]), Price = Convert.ToDecimal(ds.Tables[0].Rows[i]["Price"]), EffectiveStartTime = Convert.ToDateTime(ds.Tables[0].Rows[i]["EffectiveStartTime"]), EffectiveEndTime = null, Creator = base.UserInfo.Name, CreateTime = DateTime.Now, Remark = "", State = true, RelatedCustomerID = Convert.ToInt32(ds.Tables[0].Rows[i]["RelatedCustomerID"]), RelatedCustomerName = ds.Tables[0].Rows[i]["RelatedCustomerName"].ToString(), //hjq EmptyCarryPrice = 0, Decimal1 = 0, Decimal2 = 0 }); } AddQuotedPriceRequest request = new AddQuotedPriceRequest() { QuotedPrices = Info.Select(q => new QuotedPrice() { ProjectID = base.UserInfo.ProjectID, ProjectName = base.UserInfo.ProjectName, Target = q.Target, TargetID = q.TargetID, TargetName = q.TargetName, ShipperTypeID = q.ShipperTypeID, ShipperTypeName = q.ShipperTypeName, PodTypeID = q.PodTypeID, PodTypeName = q.PodTypeName, TplOrTtlID = q.TplOrTtlID, TplOrTtlName = q.TplOrTtlName, TransportationLineID = q.TransportationLineID, StartCityID = q.StartCityID, StartCityName = q.StartCityName, EndCityID = q.EndCityID, EndCityName = q.EndCityName, SegmentDetailID = q.SegmentDetailID, StartVal = q.StartVal, EndVal = q.EndVal, MinPrice = q.MinPrice ?? 0, Point = q.Point ?? 0, Price = q.Price, EffectiveStartTime = q.EffectiveStartTime, EffectiveEndTime = q.EffectiveEndTime, Creator = base.UserInfo.Name, CreateTime = DateTime.Now, Remark = q.Remark, State = true, RelatedCustomerID = q.RelatedCustomerID, RelatedCustomerName = q.RelatedCustomerName, EmptyCarryPrice = q.EmptyCarryPrice ?? 0, Decimal1 = q.Decimal1 ?? 0, Decimal2 = q.Decimal2 ?? 0 }) }; // var groupedInfos = from g in Info select new QuotedPrice() { ID = g.ID, Remark = g.Remark }; var response = new QuotedPriceService().AddQuotedPrice(request); if (response.IsSuccess) { return(new { result = "导入成功!", IsSuccess = true }.ToJsonString()); } } return(new { result = "<h3>导入失败!</h3><br/>excel内容有误!", IsSuccess = false }.ToString()); } return(new { result = "文件内容为空", IsSuccess = false }.ToString()); } return(new { result = "请选择文件", IsSuccess = false }.ToString()); }