示例#1
0
        public bool Update(EF.Department entity)
        {
            var code = entity.Code.ToUpper();

            var item      = _dbContext.Departments.FirstOrDefault(x => x.ID == entity.ID);
            var kpiLevels = _dbContext.KPILevels.Where(f => f.TableID == item.Code).ToList();

            kpiLevels.ForEach(a =>
            {
                a.TableID = code;
            });


            try
            {
                var SOP = _dbContext.Departments.Find(entity.ID);
                SOP.Name    = entity.Name;
                SOP.Code    = code;
                SOP.LevelID = entity.LevelID;
                _dbContext.SaveChanges();
                return(true);
            }
            catch (Exception ex)
            {
                //logging
                return(false);
            }
        }
示例#2
0
        public int Add(EF.Department entity)
        {
            var code = entity.Code.ToUpper();
            List <EF.KPILevel> kpiLevelList = new List <EF.KPILevel>();

            if (_dbContext.Departments.FirstOrDefault(x => x.Code == code) != null)
            {
                return(2);
            }
            if (_dbContext.KPILevels.FirstOrDefault(x => x.KPICode == entity.Code) != null)
            {
                return(2);
            }
            //get all kpi
            var kpis = new KPIAdminDAO().GetAll();

            foreach (var kpi in kpis)
            {
                var kpilevel = new EF.KPILevel();
                kpilevel.TableID = code;
                kpilevel.KPICode = kpi.Code;
                kpilevel.Name    = kpi.Name;
                kpilevel.Checked = false;
                kpiLevelList.Add(kpilevel);
            }
            try
            {
                entity.Code = entity.Code.ToUpper();
                _dbContext.Departments.Add(entity);
                _dbContext.KPILevels.AddRange(kpiLevelList);
                _dbContext.SaveChanges();
                return(1);
            }
            catch
            {
                return(0);
            }
        }