Exemplo n.º 1
0
 public OpResult SaveOrUpdate(Entity.ProductVer obj)
 {
     if (ProductVerRepository.IsExists(o => o.SysName == obj.SysName && o.Id != obj.Id))
     {
         return(OpResult.Fail("系统名称已存在!"));
     }
     if (obj.Id == 0)
     {
         obj.ProductId = ProductVerRepository.GetMaxInt(o => o.ProductId);
         obj.CreateDT  = DateTime.Now;
         obj.CreateUID = CurrentUser.UID;
         ProductVerRepository.Add(obj, false);
     }
     else
     {
         var product = ProductVerRepository.Find(o => o.Id == obj.Id);
         product.Name    = obj.Name;
         product.SysName = obj.SysName;
         product.Alias   = obj.Alias;
         product.Memo    = obj.Memo;
         obj             = product;
     }
     ProductVerRepository.SaveChanges(obj);
     return(OpResult.Success());
 }
Exemplo n.º 2
0
        public OpResult Publish(string verId, short state)
        {
            var obj = Get(verId);

            if (obj != null)
            {
                if (!obj.ProductRoles.Any())
                {
                    return(OpResult.Fail("请先配置角色!"));
                }
                obj.VerStatus = state;
                var list = ProductRoleVerRepository.GetQuery(o => o.ProductId == obj.ProductId && o.RoleVerId != obj.RoleVerId).ToList();
                list.Where(o => o.VerStatus == obj.VerStatus).Each(o => o.Status = 2);
                if (state == 1)//测试
                {
                    obj.PublishDT  = DateTime.Now;
                    obj.PublishUID = CurrentUser.UID;
                    obj.Status     = 1;
                    var source = list.OrderByDescending(o => o.VerCode).FirstOrDefault(o => o.VerCode > 0);
                    if (source == null)
                    {
                        obj.VerCode = 1;
                    }
                    else
                    {
                        obj.VerCode = source.VerCode + 0.1m;
                    }
                }

                ProductVerRepository.SaveChanges();
                return(OpResult.Success());
            }
            return(OpResult.Fail());
        }
Exemplo n.º 3
0
        public OpResult SetState(string id, short state)
        {
            var ids  = id.Split(',').Select(o => int.Parse(o)).ToList();
            var list = ProductVerRepository.GetQuery(o => ids.Contains(o.Id)).ToList();

            list.ForEach(o => o.Status = state);
            ProductVerRepository.SaveChanges();
            return(OpResult.Success());
        }