Exemple #1
0
        public async System.Threading.Tasks.Task <DataTable> SaveBoRolesAsync(string roleId, string userName, List <BoRoleLine> boRoleLines, FAISEntities db)
        {
            foreach (var line in boRoleLines)
            {
                var boRole = new BO_ROLE()
                {
                    ROLE_ID   = line.ROLE_ID,
                    CAN_READ  = line.CAN_READ,
                    CAN_WRITE = line.CAN_WRITE,
                    STATUS    = "ACTIVE",
                };

                if (line.OBJECT_TYPE == "BO")
                {
                    boRole.META_BO_ID = line.META_BO_ID;
                }
                else
                {
                    boRole.PAGE_ID = line.META_BO_ID;
                }

                if (line.lineStatus == "new")
                {
                    boRole.CREATED_BY   = userName;
                    boRole.CREATED_DATE = DateTime.Now;
                    boRole.ROLE_ID      = roleId;

                    db.Entry(boRole).State = System.Data.Entity.EntityState.Added;
                }
                else
                {
                    boRole = await db.BO_ROLE.FindAsync(line.BO_ROLE_ID);

                    boRole.CAN_READ     = line.CAN_READ;
                    boRole.CAN_WRITE    = line.CAN_WRITE;
                    boRole.UPDATED_BY   = userName;
                    boRole.UPDATED_DATE = DateTime.Now;

                    db.Entry(boRole).State = System.Data.Entity.EntityState.Modified;
                }
            }

            await db.SaveChangesAsync();

            return(GetBoRoles(roleId));
        }