예제 #1
0
        public static bool DeleteHotline(int id, out string errmsg)
        {
            var bOk = false;

            using (var mContext = new FavLinkEntities())
            {
                var its = from p in mContext.tbl_hotline
                          where p.id == id
                          select p;
                if (its.Any())
                {
                    var obj = its.First();
                    mContext.tbl_hotline.DeleteObject(obj);
                }
                try
                {
                    mContext.SaveChanges();
                    bOk    = true;
                    errmsg = string.Empty;
                }
                catch (Exception ex)
                {
                    errmsg = ex.Message;
                }
            }
            return(bOk);
        }
예제 #2
0
        public static bool EnableUser(int uid, bool bEnabled, out string errmsg)
        {
            bool bOk = false;

            using (var mContext = new FavLinkEntities())
            {
                var persons = from p in mContext.tbl_user
                              where p.id == uid
                              select p;
                foreach (var obj in persons)
                {
                    obj.IsValid = bEnabled;
                }
                try
                {
                    mContext.SaveChanges();
                    bOk    = true;
                    errmsg = string.Empty;
                }
                catch (Exception ex)
                {
                    errmsg = ex.Message;
                }
            }
            return(bOk);
        }
예제 #3
0
        public static bool InsertItSupport(string sname, string sphone, out string errmsg)
        {
            bool bOk = false;

            using (FavLinkEntities context = new FavLinkEntities())
            {
                var items = from x in context.tbl_itsupport
                            where 0 == x.name.CompareTo(sname)
                            select x;
                if (items.Any())
                {
                    errmsg = string.Format("{0} already exist", sname);
                    return(false);
                }

                //insert
                var entity = new tbl_itsupport()
                {
                    name         = sname,
                    phone_number = sphone
                };
                try
                {
                    context.tbl_itsupport.AddObject(entity);
                    context.SaveChanges();
                    bOk    = true;
                    errmsg = string.Empty;
                }
                catch (Exception ex)
                {
                    errmsg = ex.Message;
                }
            }
            return(bOk);
        }
예제 #4
0
        public static bool DeleteItSupport(int id, out string errmsg)
        {
            var bOk = false;

            using (var mContext = new FavLinkEntities())
            {
                var its = from p in mContext.tbl_itsupport
                          where p.id == id
                          select p;
                if (its.Any())
                {
                    var obj  = its.First();
                    var data = obj.tbl_itsupport_arrangment.ToList();
                    foreach (var ita in data)
                    {
                        mContext.tbl_itsupport_arrangment.DeleteObject(ita);
                    }
                    mContext.tbl_itsupport.DeleteObject(obj);
                }
                try
                {
                    mContext.SaveChanges();
                    bOk    = true;
                    errmsg = string.Empty;
                }
                catch (Exception ex)
                {
                    errmsg = "IT support was arranged, can not delete";
                }
            }
            return(bOk);
        }
예제 #5
0
        public static bool DeleteLinkByID(int lid, out string errmsg)
        {
            bool bOk = false;

            errmsg = string.Empty;
            using (var mContext = new FavLinkEntities())
            {
                var its = from p in mContext.tbl_link_data
                          where p.id == lid
                          select p;
                if (its.Any())
                {
                    var obj = its.First();
                    try
                    {
                        mContext.tbl_link_data.DeleteObject(obj);
                        mContext.SaveChanges();
                        bOk    = true;
                        errmsg = string.Empty;
                    }
                    catch (Exception ex)
                    {
                        errmsg = ex.Message;
                    }
                }
                else
                {
                    errmsg = "the Link already deleted";
                }
            }
            return(bOk);
        }
예제 #6
0
        public static bool DeleteUser(int id, out string errmsg)
        {
            bool bOk = false;

            errmsg = string.Empty;
            using (var mContext = new FavLinkEntities())
            {
                var persons = from p in mContext.tbl_user
                              where p.id == id
                              select p;
                if (persons.Any())
                {
                    var obj  = persons.First();
                    var data = obj.tbl_link_data.ToList();
                    foreach (var link in data)
                    {
                        mContext.tbl_link_data.DeleteObject(link);
                    }
                    mContext.tbl_user.DeleteObject(obj);
                    try
                    {
                        mContext.SaveChanges();
                        bOk = true;
                    }
                    catch (Exception ex)
                    {
                        errmsg = ex.Message;
                    }
                }
            }
            return(bOk);
        }
예제 #7
0
        public static bool UpdateLinkData(int userID, int lid, string linkName, string linkUrl,
                                          string linkIcon, string linkColor, string linkCate, out string errmsg)
        {
            bool bOk = false;

            using (FavLinkEntities context = new FavLinkEntities())
            {
                int ncate = int.Parse(linkCate);
                var items = from x in context.tbl_link_data
                            where x.id == lid
                            select x;
                if (!items.Any())
                {
                    errmsg = string.Format("The URL not exist!");
                    return(false);
                }

                //避免更新之后出现重复项
                //var targets = from x in context.tbl_link_data
                //                where x.ref_userID == userID
                //                      && x.ref_categoryID == ncate
                //                      && (0 == string.Compare(linkUrl, x.url, true))
                //                select x;
                //if (targets.Any())
                //{
                //    var item = targets.First();
                //    errmsg = string.Format("This update was abandoned for it will cause duplicate items, the previous name is: {0}", item.name);
                //    return false;
                //}

                //update
                var entity = items.First();
                entity.name           = linkName;
                entity.url            = linkUrl;
                entity.icon           = linkIcon;
                entity.bg_color       = linkColor;
                entity.ref_categoryID = int.Parse(linkCate);

                try{
                    context.SaveChanges();
                    bOk    = true;
                    errmsg = string.Empty;
                }
                catch (Exception ex)
                {
                    errmsg = ex.Message;
                }
            }
            return(bOk);
        }
예제 #8
0
        public static bool InsertLinkData(int userID,
                                          string linkName,
                                          string linkUrl,
                                          string linkIcon,
                                          string linkColor,
                                          string linkCate,
                                          out string errmsg)
        {
            bool bOk = false;

            using (FavLinkEntities context = new FavLinkEntities())
            {
                int ncate = int.Parse(linkCate);
                var items = from x in context.tbl_link_data
                            where x.ref_userID == userID &&
                            x.ref_categoryID == ncate &&
                            (0 == string.Compare(linkUrl, x.url, true))// 0 == x.url.CompareTo(linkUrl)
                            select x;
                if (items.Any())
                {
                    var item = items.First();
                    errmsg = string.Format("The URL was already exist, the name is: {0}", item.name);
                    return(false);
                }

                //insert
                var entity = new tbl_link_data()
                {
                    ref_userID     = userID,
                    name           = linkName,
                    url            = linkUrl,
                    icon           = linkIcon,
                    bg_color       = linkColor,
                    ref_categoryID = ncate
                };
                try
                {
                    context.tbl_link_data.AddObject(entity);
                    context.SaveChanges();
                    bOk    = true;
                    errmsg = string.Empty;
                }
                catch (Exception ex)
                {
                    errmsg = ex.Message;
                }
            }
            return(bOk);
        }
예제 #9
0
        public static bool UpdateItSupportArrangement(int oldID, int userID, int shiftID, string sProject, int nMonth, out string errmsg)
        {
            bool bOk = false;

            using (FavLinkEntities context = new FavLinkEntities())
            {
                var items = from x in context.tbl_itsupport_arrangment
                            where x.id == oldID
                            select x;
                if (!items.Any())
                {
                    //not exist before, insert it
                    return(InsertItSupportArrangement(userID, shiftID, sProject, nMonth, out errmsg));
                }

                //避免更新之后出现重复项
                var targets = from x in context.tbl_itsupport_arrangment
                              where x.ref_personID == userID &&
                              x.shift == shiftID &&
                              x.month == nMonth &&
                              0 == string.Compare(sProject, x.project, true)
                              select x;
                if (targets.Any())
                {
                    var item = targets.First();
                    errmsg = string.Format("This update was abandoned for it will cause duplicate items, the ID is: {0}", item.id);
                    return(false);
                }

                //update
                var entity = items.First();
                entity.ref_personID = userID;
                entity.shift        = shiftID;
                entity.project      = sProject;
                entity.month        = nMonth;

                try
                {
                    context.SaveChanges();
                    bOk    = true;
                    errmsg = string.Empty;
                }
                catch (Exception ex)
                {
                    errmsg = ex.Message;
                }
            }
            return(bOk);
        }
예제 #10
0
 public static void UpdateUserLoginTimeByAd(string sAdName)
 {
     using (FavLinkEntities context = new FavLinkEntities())
     {
         var people = from p in context.tbl_user
                      where (0 == String.Compare(p.ADAccount, sAdName, StringComparison.InvariantCultureIgnoreCase))
                      select p;
         if (people.Any())
         {
             var user = people.First();
             user.LastLogon = DateTime.Now;
             context.ObjectStateManager.ChangeObjectState(user, System.Data.EntityState.Modified);
             context.SaveChanges();
         }
     }
 }
예제 #11
0
        public static bool InsertUserInfo(string inputad, ref string errmsg)
        {
            bool bOk    = false;
            var  adUser = GetAdInfo(inputad, out errmsg);

            if (adUser == null)
            {
                errmsg = "AD login failed!";
                return(false);
            }
            var adInfo = GetUserInfoByAd(inputad);

            if (adInfo != null)
            {
                errmsg = "You had been registered!";
                return(false);
            }
            using (FavLinkEntities context = new FavLinkEntities())
            {
                var entity = new tbl_user()
                {
                    ADAccount = adUser.ADAccount,
                    Email     = adUser.Email,
                    FullName  = adUser.FirstName + ' ' + adUser.LastName,
                    IsAdmin   = false,
                    IsValid   = true
                };
                try
                {
                    context.tbl_user.AddObject(entity);
                    context.SaveChanges();
                    bOk    = true;
                    errmsg = string.Empty;
                }
                catch (Exception ex)
                {
                    errmsg = ex.Message;
                }
            }
            return(bOk);
        }
예제 #12
0
        public static bool InsertItSupportArrangement(int userID, int shiftID, string sProject, int nMonth, out string errmsg)
        {
            bool bOk = false;

            using (FavLinkEntities context = new FavLinkEntities())
            {
                var items = from x in context.tbl_itsupport_arrangment
                            where x.ref_personID == userID &&
                            x.shift == shiftID &&
                            x.month == nMonth &&
                            0 == x.project.CompareTo(sProject)
                            select x;
                if (items.Any())
                {
                    errmsg = string.Format("The arrangement already exist!");
                    return(false);
                }

                //insert
                var entity = new tbl_itsupport_arrangment()
                {
                    ref_personID = userID,
                    shift        = shiftID,
                    project      = sProject,
                    month        = nMonth,
                };
                try
                {
                    context.tbl_itsupport_arrangment.AddObject(entity);
                    context.SaveChanges();
                    bOk    = true;
                    errmsg = string.Empty;
                }
                catch (Exception ex)
                {
                    errmsg = ex.Message;
                }
            }
            return(bOk);
        }