public ActionResult Edit(PackageCreateDTO req) { Response res = new Response(); if (ModelState.IsValid) { req.IsCustomer = false; try { if (req.Id > 0) { res.Data = PackageRepository.Update(req); } else { res.Data = PackageRepository.Create(req); } } catch (Exception ex) { res.Data = false; res.Message = ex.Message; } } else { res.Data = false; res.Message = string.Join(",", ModelState.SelectMany(ms => ms.Value.Errors).Select(e => e.ErrorMessage)); } return(Json(res, JsonRequestBehavior.AllowGet)); }
public PackageCreateDTO GetModel(int id) { using (var db = new SqlSugarClient(Connection)) { PackageCreateDTO model = null; R_Package data = db.Queryable <R_Package>().InSingle(id); if (data != null) { model = Mapper.Map <R_Package, PackageCreateDTO>(data); model.IsDiscount = data.Property & (int)CytcProperty.是否可打折; model.IsChangePrice = data.Property & (int)CytcProperty.是否可改价; model.IsGive = data.Property & (int)CytcProperty.是否可赠送; //var cytcMxList = db.Queryable<R_PackageDetail>() // .JoinTable<R_ProjectDetail>((s1,s2)=>s1.R_ProjectDetail_Id==s2.Id,JoinType.Left) // .JoinTable<R_ProjectDetail,R_Project>((s1,s2,s3)=>s2.R_Project_Id==s3.Id,JoinType.Left) // .Where<R_Project>(p => p.R_Package_Id == model.Id && p.IsDelete == false).ToList(); var cytcMxList = db.Queryable <R_PackageDetail>() .JoinTable <R_ProjectDetail>((s1, s2) => s1.R_ProjectDetail_Id == s2.Id, JoinType.Left) .JoinTable <R_ProjectDetail, R_Project>((s1, s2, s3) => s2.R_Project_Id == s3.Id, JoinType.Left) .Where <R_Project>((s1, s3) => s1.R_Package_Id == model.Id && s1.IsDelete == false && s3.IsEnable == true) .Select("s1.*").ToList(); model.PackageDetails = cytcMxList; } return(model); } }
public ActionResult SubmitExtend(PackageCreateDTO model, List <PackageDetailCreateDTO> req) { Response res = new Response(); try { res.Data = PackageRepository.DetailCreate(model, req); } catch (Exception ex) { res.Message = ex.InnerException.Message; } return(Json(res, JsonRequestBehavior.AllowGet)); }
public int Create(PackageCreateDTO req) { using (var db = new SqlSugarClient(Connection)) { int result = 0; R_Package model = Mapper.Map <PackageCreateDTO, R_Package>(req); model.Property = req.IsDiscount + req.IsChangePrice + req.IsGive; var insertResult = db.Insert(model); if (insertResult != null) { result = Convert.ToInt32(insertResult); } return(result); } }
public int Update(PackageCreateDTO req) { using (var db = new SqlSugarClient(Connection)) { int result = 0; var baseModel = db.Queryable <R_Package>() .First(p => p.Id == req.Id); R_Package model = new R_Package() { Id = req.Id, Name = req.Name, IsOnSale = req.IsOnSale, Property = req.IsDiscount + req.IsChangePrice + req.IsGive, Describe = req.Describe, CostPrice = baseModel.CostPrice, Price = baseModel.Price, R_Category_Id = req.R_Category_Id }; result = db.Update(model) ? req.Id : 0; return(result); } }
public ActionResult Edit(PackageCreateDTO req) { Response res = new Response(); if (ModelState.IsValid) { req.IsCustomer = false; try { if (req.Id > 0) { res.Data = _packageRepository.Update(req); } else { var currentUser = OperatorProvider.Provider.GetCurrent(); req.R_Company_Id = currentUser.CompanyId.ToInt(); res.Data = _packageRepository.Create(req); } } catch (Exception ex) { res.Data = 0; res.Message = ex.Message; } } else { res.Data = false; res.Message = string.Join(",", ModelState .SelectMany(ms => ms.Value.Errors) .Select(e => e.ErrorMessage)); } return(Json(res, JsonRequestBehavior.AllowGet)); }
public bool DetailCreate(PackageCreateDTO cytc, List <PackageDetailCreateDTO> list) { using (var db = new SqlSugarClient(Connection)) { bool result = true; try { db.BeginTran(); db.Update <R_Package>(new { Price = cytc.Price, CostPrice = cytc.CostPrice }, p => p.Id == cytc.Id); if (list != null && list.Any()) { db.Update <R_PackageDetail>(new { IsDelete = true }, p => p.R_Package_Id == cytc.Id); foreach (var item in list) { if (item.Id > 0) { db.Update <R_PackageDetail>(new R_PackageDetail { Id = item.Id, R_Package_Id = cytc.Id, R_ProjectDetail_Id = item.R_ProjectDetail_Id, Num = item.Num, IsDelete = false }); } else { R_PackageDetail model = new R_PackageDetail() { R_Package_Id = cytc.Id, R_ProjectDetail_Id = item.R_ProjectDetail_Id, IsDelete = false, Num = item.Num }; db.Insert <R_PackageDetail>(model); } } db.Update <R_Package>(new { CostPrice = cytc.CostPrice, Price = cytc.Price }, p => p.Id == cytc.Id); } db.CommitTran(); } catch (Exception) { result = false; db.RollbackTran(); throw; } return(result); } }