Ejemplo n.º 1
0
            public async Task <long> Handle(Command request, CancellationToken cancellationToken)
            {
                _context.Set <DbDegreeSubEduGroup>().RemoveRange(request.dbDegreeSubEduGroup.Where(o => o.RowState == RowState.Delete));
                await _context.SaveChangesAsync(cancellationToken);

                request.dbDegreeSubEduGroup = request.dbDegreeSubEduGroup.Where(o => o.RowState != RowState.Delete).ToList();


                foreach (var group in request.dbDegreeSubEduGroup.Where(o => o.RowState == RowState.Add))
                {
                }

                foreach (var group in request.dbDegreeSubEduGroup.Where(o => o.RowState == RowState.Edit))
                {
                    _context.Set <DbDegreeSubEduGroup>().Attach(group);
                    _context.Entry(group).State = EntityState.Modified;
                }

                _context.Set <DbDegreeSub>().Attach((DbDegreeSub)request);
                _context.Entry((DbDegreeSub)request).State = EntityState.Modified;

                await _context.SaveChangesAsync(cancellationToken);

                return(request.SubDegreeId);
            }
Ejemplo n.º 2
0
            public async Task <Unit> Handle(Command request, CancellationToken cancellationToken)
            {
                if (_context.Set <SuProfile>().Any(i => i.ProfileCode.ToUpper() == request.ProfileCodeTo.ToUpper()))
                {
                    throw new RestException(HttpStatusCode.BadRequest, "message.SU00043");
                }

                SuProfile suProfile = new SuProfile();

                suProfile.ProfileCode = request.ProfileCodeTo;
                suProfile.ProfileDesc = request.ProfileDescTo;
                suProfile.Active      = true;
                _context.Set <SuProfile>().Add((SuProfile)suProfile);
                await _context.SaveChangesAsync(cancellationToken);

                List <SuMenuProfile> suMenuProfiles = await _context.Set <SuMenuProfile>().Where(e => e.ProfileCode == request.ProfileCodeFrom).AsNoTracking().ToListAsync(cancellationToken);

                foreach (SuMenuProfile suMenuProfile in suMenuProfiles)
                {
                    suMenuProfile.ProfileCode = request.ProfileCodeTo;
                }

                _context.Set <SuMenuProfile>().AddRange(suMenuProfiles);
                await _context.SaveChangesAsync(cancellationToken);

                return(Unit.Value);
            }
Ejemplo n.º 3
0
            public async Task <Unit> Handle(Command request, CancellationToken cancellationToken)
            {
                _context.Set <DbFacProgramDetail>().RemoveRange(request.dbFacProgramDetail.Where(o => o.RowState == RowState.Delete));
                await _context.SaveChangesAsync(cancellationToken);

                request.dbFacProgramDetail = request.dbFacProgramDetail.Where(o => o.RowState != RowState.Delete).ToList();

                foreach (var group in request.dbFacProgramDetail.Where(o => o.RowState == RowState.Add))
                {
                    if (_context.Set <DbFacProgramDetail>().Any(o => o.CompanyCode == request.CompanyCode & o.FacCode == group.FacCode
                                                                & o.ProgramCode == group.ProgramCode & o.DepartmentCode == group.DepartmentCode))
                    {
                        throw new RestException(HttpStatusCode.BadRequest, "message.STD00004", "label.DBRT21.DepartmentCode");
                    }
                    _context.Set <DbFacProgramDetail>().Add(group);
                    _context.Entry(group).State = EntityState.Added;
                    await _context.SaveChangesAsync(cancellationToken);
                }

                foreach (var group in request.dbFacProgramDetail.Where(o => o.RowState == RowState.Edit))
                {
                    _context.Set <DbFacProgramDetail>().Attach(group);
                    _context.Entry(group).State = EntityState.Modified;
                }

                _context.Set <DbFacProgram>().Attach((DbFacProgram)request);
                _context.Entry((DbFacProgram)request).State = EntityState.Modified;
                await _context.SaveChangesAsync(cancellationToken);

                return(Unit.Value);
            }
Ejemplo n.º 4
0
            public async Task <Unit> Handle(Command request, CancellationToken cancellationToken)
            {
                var menu = await _context.Set <SuMenu>().Include(i => i.MenuLabels).FirstOrDefaultAsync(i => i.MenuCode == request.MenuCode);

                _context.Entry(menu).Property("RowVersion").OriginalValue = request.RowVersion;
                _context.Set <SuMenu>().Remove(menu);
                await _context.SaveChangesAsync(cancellationToken);

                return(Unit.Value);
            }
Ejemplo n.º 5
0
            public async Task <Unit> Handle(Command request, CancellationToken cancellationToken)
            {
                var company = await _context.Set <SuCompany>().Include(i => i.Divisions).ThenInclude(i => i.Divisions).FirstOrDefaultAsync(i => i.CompanyCode == request.CompanyCode);

                _context.Entry(company).Property("RowVersion").OriginalValue = request.RowVersion;
                _context.Set <SuCompany>().Remove(company);
                await _context.SaveChangesAsync(cancellationToken);

                return(Unit.Value);
            }
Ejemplo n.º 6
0
            public async Task<SuProgram> Handle(Query request, CancellationToken cancellationToken)
            {
                var program = await _context.Set<SuProgram>().Where(o => o.ProgramCode == request.ProgramCode).AsNoTracking().FirstOrDefaultAsync(cancellationToken);

                if (program == null)
                    throw new RestException(HttpStatusCode.NotFound, "message.NotFound");

                program.ProgramLabels = await _context.Set<SuProgramLabel>().Where(o => o.ProgramCode == request.ProgramCode && o.LangCode == request.Language).OrderBy(o => o.FieldName).AsNoTracking().ToListAsync(cancellationToken);

                return program;
            }
Ejemplo n.º 7
0
            public async Task <Unit> Handle(Command request, CancellationToken cancellationToken)
            {
                var country = new DbCountry {
                    CountryId = request.CountryId, RowVersion = request.RowVersion
                };

                _context.Set <DbCountry>().Attach(country);
                _context.Set <DbCountry>().Remove(country);
                await _context.SaveChangesAsync(cancellationToken);

                return(Unit.Value);
            }
Ejemplo n.º 8
0
            public async Task <Unit> Handle(Command request, CancellationToken cancellationToken)
            {
                var department = new DbDepartment {
                    DepartmentCode = request.DepartmentCode, RowVersion = request.RowVersion
                };

                _context.Set <DbDepartment>().Attach(department);
                _context.Set <DbDepartment>().Remove(department);
                await _context.SaveChangesAsync(cancellationToken);

                return(Unit.Value);
            }
Ejemplo n.º 9
0
            public async Task <Unit> Handle(Command request, CancellationToken cancellationToken)
            {
                if (await _context.Set <SuUserPermission>().AnyAsync(o => o.Id == request.Id && o.CompanyCode == request.CompanyCode, cancellationToken))
                {
                    throw new RestException(HttpStatusCode.BadRequest, "message.STD00004", "label.SURT06.CompanyCode");
                }

                _context.Set <SuUserPermission>().Add(request);
                await _context.SaveChangesAsync(cancellationToken);

                return(Unit.Value);
            }
Ejemplo n.º 10
0
            public async Task <Unit> Handle(Command request, CancellationToken cancellationToken)
            {
                var building = new DbBuilding {
                    BuildingId = request.BuildingId, RowVersion = request.RowVersion
                };

                _context.Set <DbBuilding>().Attach(building);
                _context.Set <DbBuilding>().Remove(building);
                await _context.SaveChangesAsync(cancellationToken);

                return(Unit.Value);
            }
Ejemplo n.º 11
0
            public async Task <Unit> Handle(Command request, CancellationToken cancellationToken)
            {
                if (_context.Set <DbListItem>().Any(o => o.ListItemGroupCode == request.ListItemGroupCode && o.ListItemCode == request.ListItemCode))
                {
                    throw new RestException(HttpStatusCode.BadRequest, "message.STD00004", "label.DBRT18.listItemCode");
                }

                _context.Set <DbListItem>().Add((DbListItem)request);
                await _context.SaveChangesAsync(cancellationToken);

                return(Unit.Value);
            }
Ejemplo n.º 12
0
            public async Task <Unit> Handle(Command request, CancellationToken cancellationToken)
            {
                var region = new DbRegion {
                    RegionId = request.RegionId, RowVersion = request.RowVersion
                };

                _context.Set <DbRegion>().Attach(region);
                _context.Set <DbRegion>().Remove(region);
                await _context.SaveChangesAsync(cancellationToken);

                return(Unit.Value);
            }
Ejemplo n.º 13
0
            public async Task <Unit> Handle(Command request, CancellationToken cancellationToken)
            {
                if (_context.Set <DbEducationTypeLevel>().Any(o => o.CompanyCode == _user.Company && o.EducationTypeLevel == request.EducationTypeLevel))
                {
                    throw new Common.Exceptions.RestException(HttpStatusCode.BadRequest, "message.STD00004", "label.DBRT09.educationTypeLevel");
                }
                request.CompanyCode = _user.Company;
                _context.Set <DbEducationTypeLevel>().Add((DbEducationTypeLevel)request);
                await _context.SaveChangesAsync(cancellationToken);

                return(Unit.Value);
            }
Ejemplo n.º 14
0
            public async Task <Unit> Handle(Command request, CancellationToken cancellationToken)
            {
                if (_context.Set <DbFac>().Any(o => o.CompanyCode == request.CompanyCode && o.FacCode == request.FacCode))
                {
                    throw new RestException(HttpStatusCode.BadRequest, "message.STD00004", "label.DBRT11.facCode");
                }
                request.CompanyCode = _user.Company;
                _context.Set <DbFac>().Add((DbFac)request);
                await _context.SaveChangesAsync(cancellationToken);

                return(Unit.Value);
            }
Ejemplo n.º 15
0
            public async Task <string> Handle(Command request, CancellationToken cancellationToken)
            {
                if (_context.Set <DbDepartment>().Any(o => o.CompanyCode == _user.Company && o.DepartmentCode == request.DepartmentCode))
                {
                    throw new Common.Exceptions.RestException(HttpStatusCode.BadRequest, "message.STD00004", "label.DBRT20.departmentCode");
                }
                request.CompanyCode = _user.Company;
                _context.Set <DbDepartment>().Add((DbDepartment)request);
                await _context.SaveChangesAsync(cancellationToken);

                return(request.DepartmentCode);
            }
Ejemplo n.º 16
0
            public async Task <Unit> Handle(Command request, CancellationToken cancellationToken)
            {
                var educationtype = new DbEducationType {
                    CompanyCode = _user.Company, EducationTypeCode = request.EducationTypeCode, RowVersion = request.RowVersion
                };

                _context.Set <DbEducationType>().Attach(educationtype);
                _context.Set <DbEducationType>().Remove(educationtype);
                await _context.SaveChangesAsync(cancellationToken);

                return(Unit.Value);
            }
Ejemplo n.º 17
0
            public async Task <Unit> Handle(Command request, CancellationToken cancellationToken)
            {
                var listitem = new DbListItem {
                    ListItemGroupCode = request.ListItemGroupCode, ListItemCode = request.ListItemCode, RowVersion = request.RowVersion
                };

                _context.Set <DbListItem>().Attach(listitem);
                _context.Set <DbListItem>().Remove(listitem);
                await _context.SaveChangesAsync(cancellationToken);

                return(Unit.Value);
            }
Ejemplo n.º 18
0
            public async Task <Unit> Handle(Command request, CancellationToken cancellationToken)
            {
                var province = new DbProvince {
                    ProvinceId = request.ProvinceId, RowVersion = request.RowVersion
                };

                _context.Set <DbProvince>().Attach(province);
                _context.Set <DbProvince>().Remove(province);
                await _context.SaveChangesAsync(cancellationToken);

                return(Unit.Value);
            }
Ejemplo n.º 19
0
            public async Task <Unit> Handle(Command request, CancellationToken cancellationToken)
            {
                if (_context.Set <SuDivision>().Any(i => i.CompanyCode == request.CompanyCode && i.DivCode.ToUpper() == request.DivCode.ToUpper()))
                {
                    throw new RestException(HttpStatusCode.BadRequest, "message.STD00004", "label.SURT01.DivCode");
                }

                _context.Set <SuDivision>().Add((SuDivision)request);
                await _context.SaveChangesAsync(cancellationToken);

                return(Unit.Value);
            }
Ejemplo n.º 20
0
            public async Task <long> Handle(Command request, CancellationToken cancellationToken)
            {
                if (_context.Set <DbBuilding>().Any(o => o.CompanyCode == _user.Company && o.BuildingId == request.BuildingId))
                {
                    throw new Common.Exceptions.RestException(HttpStatusCode.BadRequest, "message.STD00004", "label.DBRT17.buildingCode");
                }
                request.CompanyCode = _user.Company;
                _context.Set <DbBuilding>().Add((DbBuilding)request);
                await _context.SaveChangesAsync(cancellationToken);

                return(request.BuildingId);
            }
Ejemplo n.º 21
0
            public async Task <Unit> Handle(Command request, CancellationToken cancellationToken)
            {
                var location = new DbLocation {
                    CompanyCode = request.CompanyCode, LocationCode = request.LocationCode, RowVersion = request.RowVersion
                };

                _context.Set <DbLocation>().Attach(location);
                _context.Set <DbLocation>().Remove(location);
                await _context.SaveChangesAsync(cancellationToken);

                return(Unit.Value);
            }
Ejemplo n.º 22
0
            public async Task <Unit> Handle(Command request, CancellationToken cancellationToken)
            {
                SuPasswordPolicy passwordPolicy = new SuPasswordPolicy {
                    PasswordPolicyCode = request.PasswordPolicyCode, RowVersion = request.RowVersion
                };

                _context.Set <SuPasswordPolicy>().Attach(passwordPolicy);
                _context.Set <SuPasswordPolicy>().Remove(passwordPolicy);
                await _context.SaveChangesAsync(cancellationToken);

                return(Unit.Value);
            }
Ejemplo n.º 23
0
            public async Task <Unit> Handle(Command request, CancellationToken cancellationToken)
            {
                var subdistrict = new DbSubDistrict {
                    SubDistrictId = request.SubDistrictId, RowVersion = request.RowVersion
                };

                _context.Set <DbSubDistrict>().Attach(subdistrict);
                _context.Set <DbSubDistrict>().Remove(subdistrict);
                await _context.SaveChangesAsync(cancellationToken);

                return(Unit.Value);
            }
Ejemplo n.º 24
0
            public async Task <Unit> Handle(Command request, CancellationToken cancellationToken)
            {
                var subdegreetype = new DbDegreeSub {
                    SubDegreeId = request.SubDegreeId, RowVersion = request.RowVersion
                };

                _context.Set <DbDegreeSub>().Attach(subdegreetype);
                _context.Set <DbDegreeSub>().Remove(subdegreetype);
                await _context.SaveChangesAsync(cancellationToken);

                return(Unit.Value);
            }
Ejemplo n.º 25
0
            public async Task <SuMenu> Handle(Query request, CancellationToken cancellationToken)
            {
                var menu = await _context.Set <SuMenu>().Where(i => i.MenuCode == request.MenuCode).AsNoTracking().FirstOrDefaultAsync(cancellationToken);

                if (menu == null)
                {
                    throw new RestException(HttpStatusCode.NotFound, "message.NotFound");
                }

                menu.MenuLabels = await _context.Set <SuMenuLabel>().Where(i => i.MenuCode == request.MenuCode).AsNoTracking().ToListAsync(cancellationToken);

                return(menu);
            }
Ejemplo n.º 26
0
            public async Task <Unit> Handle(Command request, CancellationToken cancellationToken)
            {
                var major = new DbMajor {
                    CompanyCode = _user.Company, ProgramCode = request.ProgramCode
                    , FacCode   = request.FacCode, MajorCode = request.MajorCode, RowVersion = request.RowVersion
                };

                _context.Set <DbMajor>().Attach(major);
                _context.Set <DbMajor>().Remove(major);
                await _context.SaveChangesAsync(cancellationToken);

                return(Unit.Value);
            }
Ejemplo n.º 27
0
            public async Task <bool> Handle(Query request, CancellationToken cancellationToken)
            {
                List <SuProgramLabel> programLabel = await _context.Set <SuProgramLabel>().Where(i => i.ProgramCode == request.ProgramCode && i.LangCode == Lang.en).AsNoTracking().ToListAsync(cancellationToken);

                foreach (SuProgramLabel item in programLabel)
                {
                    if (_context.Set <SuProgramLabel>().Any(i => i.ProgramCode == item.ProgramCode && i.FieldName == item.FieldName && i.SystemCode == item.SystemCode && i.LangCode == Lang.th))
                    {
                        return(true);
                    }
                }

                return(false);
            }
Ejemplo n.º 28
0
            public async Task <Unit> Handle(Command request, CancellationToken cancellationToken)
            {
                var user = new SuUser {
                    Id = request.Id, RowVersion = request.RowVersion
                };

                user.UserType = await _context.Set <SuUserType>().FirstOrDefaultAsync(o => o.UserId == request.Id, cancellationToken);

                _context.Set <SuUser>().Attach(user);
                _context.Set <SuUser>().Remove(user);
                await _context.SaveChangesAsync(cancellationToken);

                return(Unit.Value);
            }
Ejemplo n.º 29
0
            public async Task <string> Handle(Command request, CancellationToken cancellationToken)
            {
                request.CompanyCode = _user.Company;
                if (_context.Set <DbMajor>().Any(o => o.CompanyCode == request.CompanyCode & o.ProgramCode == request.ProgramCode
                                                 & o.MajorCode == request.MajorCode & o.FacCode == request.FacCode))
                {
                    throw new RestException(HttpStatusCode.BadRequest, "message.STD00004", "label.DBRT13.majorCode");
                }

                _context.Set <DbMajor>().Add((DbMajor)request);
                await _context.SaveChangesAsync(cancellationToken);

                return("{companyCode:" + request.CompanyCode + ", programCode:" + request.ProgramCode
                       + ", majorCode:" + request.MajorCode + ", facCode:" + request.FacCode + "}");
            }
Ejemplo n.º 30
0
            public async Task <long> Handle(Command request, CancellationToken cancellationToken)
            {
                _context.Set <DbDegree>().Add((DbDegree)request);
                await _context.SaveChangesAsync(cancellationToken);

                return(request.DegreeId);
            }