public OpResult Copy(int verId) { var pro = Get(verId); if (pro != null && pro.Status != 0) { //if (ProductVerRepository.IsExists(o => o.ProductCode == pro.ProductCode && o.VerCode > pro.VerCode && o.Status == 0)) //return OpResult.Fail("已存在未发布的版本!"); var obj = new Entity.ProductPublishVer(); pro.ToCopyProperty(obj); obj.Id = 0; obj.Status = 0; obj.VerStatus = 0; obj.VerCode = 0; obj.PublishDT = null; obj.PublishUID = ""; obj.ProductPublishSqls = pro.ProductPublishSqls.ToClone(); if (!obj.ModuleId.IsNullOrEmpty()) { obj.HasModelId = "1"; obj.ModuleId = ""; } if (!obj.RoleId.IsNullOrEmpty()) { obj.HasRoleId = "1"; obj.RoleId = ""; } if (!obj.DictId.IsNullOrEmpty()) { obj.HasDictId = "1"; obj.DictId = ""; } if (!obj.DataId.IsNullOrEmpty()) { obj.HasDataId = "1"; obj.DataId = ""; } return(SaveVer(obj)); } return(OpResult.Fail()); }
public OpResult SaveOrUpdate(Entity.ProductPublishVer obj) { if (obj.Id == 0) { obj.PublishId = ProductPublishVerRepository.GetMaxInt(o => (int?)o.PublishId); obj.CreateDT = DateTime.Now; obj.UpdateDT = obj.CreateDT; obj.UpdateUID = CurrentUser.UID; obj.CreateUID = obj.UpdateUID; ProductPublishVerRepository.Add(obj, false); } else { var product = ProductPublishVerRepository.Find(o => o.Id == obj.Id); obj.ToCopyProperty(product, new List <string>() { "CreateDT", "CreateUID", "PublishId" }); product.UpdateUID = CurrentUser.UID; product.UpdateDT = DateTime.Now; } ProductPublishVerRepository.SaveChanges(); return(OpResult.Success()); }
public OpResult SaveVer(Entity.ProductPublishVer obj) { if (ProductPublishVerRepository.IsExists(o => o.ProductId == obj.ProductId && o.VerStatus == 0 && o.Id != obj.Id)) { return(OpResult.Fail("已存在未发布的版本")); } if (obj.HasModelId == "1") { if (obj.ModuleId.IsNullOrEmpty()) { var model = ProductModuleVerRepository.GetOfficialLast(obj.ProductId); if (model == null) { return(OpResult.Fail("功能升级未发布正式版!")); } obj.ModuleId = model.ModuleId; } } else { obj.ModuleId = ""; } if (obj.HasRoleId == "1") { if (obj.RoleId.IsNullOrEmpty()) { var model = ProductRoleVerRepository.GetOfficialLast(obj.ProductId); if (model == null) { return(OpResult.Fail("角色升级未发布正式版!")); } obj.RoleId = model.RoleVerId; } } else { obj.RoleId = ""; } if (obj.HasDictId == "1") { if (obj.DictId.IsNullOrEmpty()) { var model = ProductDictionaryVerRepository.GetOfficialLast(obj.ProductId); if (model == null) { return(OpResult.Fail("字典升级未发布正式版!")); } obj.DictId = model.DictId; } } else { obj.DictId = ""; } if (obj.HasDataId == "1") { if (obj.DataId.IsNullOrEmpty()) { var model = ProductDataVerRepository.GetOfficialLast(obj.ProductId); if (model == null) { return(OpResult.Fail("初始数据升级未发布正式版!")); } obj.DataId = model.DataId; } } else { obj.DataId = ""; } return(SaveOrUpdate(obj)); }