|
@@ -52,6 +52,9 @@ public class CensusController implements CensusControllerAPI {
|
|
|
@Autowired
|
|
@Autowired
|
|
|
private WelcomeOrgService welcomeOrgService;
|
|
private WelcomeOrgService welcomeOrgService;
|
|
|
|
|
|
|
|
|
|
+ @Autowired
|
|
|
|
|
+ private WelcomeStudentService welcomeStudentService;
|
|
|
|
|
+
|
|
|
// #分配
|
|
// #分配
|
|
|
// #总人数 totalData
|
|
// #总人数 totalData
|
|
|
// #已分配床位数 根据性别、学院求和的 totalBed
|
|
// #已分配床位数 根据性别、学院求和的 totalBed
|
|
@@ -66,36 +69,45 @@ public class CensusController implements CensusControllerAPI {
|
|
|
List<BedTotalVo> result = new ArrayList<>();
|
|
List<BedTotalVo> result = new ArrayList<>();
|
|
|
List<WelcomeOrg> orgs = welcomeOrgService.queryColleges(collegeId);
|
|
List<WelcomeOrg> orgs = welcomeOrgService.queryColleges(collegeId);
|
|
|
List<BedSqlTotalVo> sqlDatas = welcomeBedService.queryBedSqlList(collegeId, sex);
|
|
List<BedSqlTotalVo> sqlDatas = welcomeBedService.queryBedSqlList(collegeId, sex);
|
|
|
|
|
+ List<StudentTotalVo> students = welcomeStudentService.queryStudentTotal();
|
|
|
|
|
+
|
|
|
List<String> sexs = new ArrayList<>();
|
|
List<String> sexs = new ArrayList<>();
|
|
|
- if(StringUtils.hasText(sex)){
|
|
|
|
|
|
|
+ if (StringUtils.hasText(sex)) {
|
|
|
sexs.add(sex);
|
|
sexs.add(sex);
|
|
|
- }else{
|
|
|
|
|
|
|
+ } else {
|
|
|
sexs.add("男");
|
|
sexs.add("男");
|
|
|
sexs.add("女");
|
|
sexs.add("女");
|
|
|
}
|
|
}
|
|
|
for (WelcomeOrg org : orgs) {
|
|
for (WelcomeOrg org : orgs) {
|
|
|
- for (String sexStr :sexs){
|
|
|
|
|
|
|
+ for (String sexStr : sexs) {
|
|
|
BedTotalVo btv = new BedTotalVo();
|
|
BedTotalVo btv = new BedTotalVo();
|
|
|
btv.setCollege(org.getName());
|
|
btv.setCollege(org.getName());
|
|
|
btv.setSex(sexStr);
|
|
btv.setSex(sexStr);
|
|
|
List<BedSqlTotalVo> sqlDataCs = sqlDatas.stream().filter(e -> e.getCollege().equals(org.getName()) && e.getSex().equals(sexStr)).collect(Collectors.toList());
|
|
List<BedSqlTotalVo> sqlDataCs = sqlDatas.stream().filter(e -> e.getCollege().equals(org.getName()) && e.getSex().equals(sexStr)).collect(Collectors.toList());
|
|
|
- if(sqlDataCs != null && sqlDataCs.size() > 0){
|
|
|
|
|
- int totalData = sqlDataCs.get(0).getTotalData() == null ? 0 : sqlDataCs.get(0).getTotalData();
|
|
|
|
|
- btv.setTotal(totalData);//总人数
|
|
|
|
|
|
|
+ if (sqlDataCs != null && sqlDataCs.size() > 0) {
|
|
|
|
|
+ //int totalData = sqlDataCs.get(0).getTotalData() == null ? 0 : sqlDataCs.get(0).getTotalData();
|
|
|
|
|
+ //btv.setTotal(totalData);//总人数
|
|
|
int bedTotals = 0;
|
|
int bedTotals = 0;
|
|
|
- for (BedSqlTotalVo d:sqlDataCs) {
|
|
|
|
|
|
|
+ for (BedSqlTotalVo d : sqlDataCs) {
|
|
|
bedTotals = bedTotals + d.getTotalBed();
|
|
bedTotals = bedTotals + d.getTotalBed();
|
|
|
}
|
|
}
|
|
|
btv.setAssignedBed(bedTotals);//已分配床
|
|
btv.setAssignedBed(bedTotals);//已分配床
|
|
|
btv.setAssignedDormitory(sqlDataCs.size());//已分配寝室
|
|
btv.setAssignedDormitory(sqlDataCs.size());//已分配寝室
|
|
|
- int buildCount = (int)sqlDataCs.stream().map(BedSqlTotalVo::getBuild).distinct().count();
|
|
|
|
|
|
|
+ int buildCount = (int) sqlDataCs.stream().map(BedSqlTotalVo::getBuild).distinct().count();
|
|
|
btv.setAssignedBuild(buildCount);//已分配楼栋
|
|
btv.setAssignedBuild(buildCount);//已分配楼栋
|
|
|
- }else{
|
|
|
|
|
- btv.setTotal(0);
|
|
|
|
|
|
|
+ } else {
|
|
|
|
|
+ //btv.setTotal(0);
|
|
|
btv.setAssignedBed(0);//已分配床
|
|
btv.setAssignedBed(0);//已分配床
|
|
|
btv.setAssignedDormitory(0);//已分配寝室
|
|
btv.setAssignedDormitory(0);//已分配寝室
|
|
|
btv.setAssignedBuild(0);//已分配楼栋
|
|
btv.setAssignedBuild(0);//已分配楼栋
|
|
|
}
|
|
}
|
|
|
|
|
+
|
|
|
|
|
+ Optional<StudentTotalVo> ostudent = students.stream().filter(e -> e.getCollege().equals(org.getName()) && e.getSex().equals(sexStr)).findFirst();
|
|
|
|
|
+ if (ostudent != null && ostudent.isPresent()) {
|
|
|
|
|
+ btv.setTotal(ostudent.get().getTotal());
|
|
|
|
|
+ } else {
|
|
|
|
|
+ btv.setTotal(0);
|
|
|
|
|
+ }
|
|
|
result.add(btv);
|
|
result.add(btv);
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
@@ -108,36 +120,44 @@ public class CensusController implements CensusControllerAPI {
|
|
|
List<BedTotalVo> result = new ArrayList<>();
|
|
List<BedTotalVo> result = new ArrayList<>();
|
|
|
List<WelcomeOrg> orgs = welcomeOrgService.queryColleges(collegeId);
|
|
List<WelcomeOrg> orgs = welcomeOrgService.queryColleges(collegeId);
|
|
|
List<BedSqlTotalVo> sqlDatas = welcomeBedService.queryBedSqlList(collegeId, sex);
|
|
List<BedSqlTotalVo> sqlDatas = welcomeBedService.queryBedSqlList(collegeId, sex);
|
|
|
|
|
+ List<StudentTotalVo> students = welcomeStudentService.queryStudentTotal();
|
|
|
|
|
+
|
|
|
List<String> sexs = new ArrayList<>();
|
|
List<String> sexs = new ArrayList<>();
|
|
|
- if(StringUtils.hasText(sex)){
|
|
|
|
|
|
|
+ if (StringUtils.hasText(sex)) {
|
|
|
sexs.add(sex);
|
|
sexs.add(sex);
|
|
|
- }else{
|
|
|
|
|
|
|
+ } else {
|
|
|
sexs.add("男");
|
|
sexs.add("男");
|
|
|
sexs.add("女");
|
|
sexs.add("女");
|
|
|
}
|
|
}
|
|
|
for (WelcomeOrg org : orgs) {
|
|
for (WelcomeOrg org : orgs) {
|
|
|
- for (String sexStr :sexs){
|
|
|
|
|
|
|
+ for (String sexStr : sexs) {
|
|
|
BedTotalVo btv = new BedTotalVo();
|
|
BedTotalVo btv = new BedTotalVo();
|
|
|
btv.setCollege(org.getName());
|
|
btv.setCollege(org.getName());
|
|
|
btv.setSex(sexStr);
|
|
btv.setSex(sexStr);
|
|
|
List<BedSqlTotalVo> sqlDataCs = sqlDatas.stream().filter(e -> e.getCollege().equals(org.getName()) && e.getSex().equals(sexStr)).collect(Collectors.toList());
|
|
List<BedSqlTotalVo> sqlDataCs = sqlDatas.stream().filter(e -> e.getCollege().equals(org.getName()) && e.getSex().equals(sexStr)).collect(Collectors.toList());
|
|
|
- if(sqlDataCs != null && sqlDataCs.size() > 0){
|
|
|
|
|
- int totalData = sqlDataCs.get(0).getTotalData() == null ? 0 : sqlDataCs.get(0).getTotalData();
|
|
|
|
|
- btv.setTotal(totalData);//总人数
|
|
|
|
|
|
|
+ if (sqlDataCs != null && sqlDataCs.size() > 0) {
|
|
|
|
|
+ //int totalData = sqlDataCs.get(0).getTotalData() == null ? 0 : sqlDataCs.get(0).getTotalData();
|
|
|
|
|
+ //btv.setTotal(totalData);//总人数
|
|
|
int bedTotals = 0;
|
|
int bedTotals = 0;
|
|
|
- for (BedSqlTotalVo d:sqlDataCs) {
|
|
|
|
|
|
|
+ for (BedSqlTotalVo d : sqlDataCs) {
|
|
|
bedTotals = bedTotals + d.getTotalBed();
|
|
bedTotals = bedTotals + d.getTotalBed();
|
|
|
}
|
|
}
|
|
|
btv.setAssignedBed(bedTotals);//已分配床
|
|
btv.setAssignedBed(bedTotals);//已分配床
|
|
|
btv.setAssignedDormitory(sqlDataCs.size());//已分配寝室
|
|
btv.setAssignedDormitory(sqlDataCs.size());//已分配寝室
|
|
|
- int buildCount = (int)sqlDataCs.stream().map(BedSqlTotalVo::getBuild).distinct().count();
|
|
|
|
|
|
|
+ int buildCount = (int) sqlDataCs.stream().map(BedSqlTotalVo::getBuild).distinct().count();
|
|
|
btv.setAssignedBuild(buildCount);//已分配楼栋
|
|
btv.setAssignedBuild(buildCount);//已分配楼栋
|
|
|
- }else{
|
|
|
|
|
- btv.setTotal(0);
|
|
|
|
|
|
|
+ } else {
|
|
|
|
|
+ //btv.setTotal(0);
|
|
|
btv.setAssignedBed(0);//已分配床
|
|
btv.setAssignedBed(0);//已分配床
|
|
|
btv.setAssignedDormitory(0);//已分配寝室
|
|
btv.setAssignedDormitory(0);//已分配寝室
|
|
|
btv.setAssignedBuild(0);//已分配楼栋
|
|
btv.setAssignedBuild(0);//已分配楼栋
|
|
|
}
|
|
}
|
|
|
|
|
+ Optional<StudentTotalVo> ostudent = students.stream().filter(e -> e.getCollege().equals(org.getName()) && e.getSex().equals(sexStr)).findFirst();
|
|
|
|
|
+ if (ostudent != null && ostudent.isPresent()) {
|
|
|
|
|
+ btv.setTotal(ostudent.get().getTotal());
|
|
|
|
|
+ } else {
|
|
|
|
|
+ btv.setTotal(0);
|
|
|
|
|
+ }
|
|
|
result.add(btv);
|
|
result.add(btv);
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
@@ -184,37 +204,46 @@ public class CensusController implements CensusControllerAPI {
|
|
|
List<SleepTotalVo> result = new ArrayList<>();
|
|
List<SleepTotalVo> result = new ArrayList<>();
|
|
|
List<WelcomeOrg> orgs = welcomeOrgService.queryColleges(collegeId);
|
|
List<WelcomeOrg> orgs = welcomeOrgService.queryColleges(collegeId);
|
|
|
List<SleepSqlTotalVo> sqlDatas = welcomeBedService.queryTotalSqlList(collegeId, sex);
|
|
List<SleepSqlTotalVo> sqlDatas = welcomeBedService.queryTotalSqlList(collegeId, sex);
|
|
|
|
|
+ List<StudentTotalVo> students = welcomeStudentService.queryStudentTotal();
|
|
|
|
|
+
|
|
|
List<String> sexs = new ArrayList<>();
|
|
List<String> sexs = new ArrayList<>();
|
|
|
- if(StringUtils.hasText(sex)){
|
|
|
|
|
|
|
+ if (StringUtils.hasText(sex)) {
|
|
|
sexs.add(sex);
|
|
sexs.add(sex);
|
|
|
- }else{
|
|
|
|
|
|
|
+ } else {
|
|
|
sexs.add("男");
|
|
sexs.add("男");
|
|
|
sexs.add("女");
|
|
sexs.add("女");
|
|
|
}
|
|
}
|
|
|
for (WelcomeOrg org : orgs) {
|
|
for (WelcomeOrg org : orgs) {
|
|
|
- for (String sexStr :sexs){
|
|
|
|
|
|
|
+ for (String sexStr : sexs) {
|
|
|
SleepTotalVo btv = new SleepTotalVo();
|
|
SleepTotalVo btv = new SleepTotalVo();
|
|
|
btv.setCollege(org.getName());
|
|
btv.setCollege(org.getName());
|
|
|
btv.setSex(sexStr);
|
|
btv.setSex(sexStr);
|
|
|
|
|
+ Optional<StudentTotalVo> ostudent = students.stream().filter(e -> e.getCollege().equals(org.getName()) && e.getSex().equals(sexStr)).findFirst();
|
|
|
|
|
+ if (ostudent != null && ostudent.isPresent()) {
|
|
|
|
|
+ btv.setTotalData(ostudent.get().getTotal());
|
|
|
|
|
+ } else {
|
|
|
|
|
+ btv.setTotalData(0);
|
|
|
|
|
+ }
|
|
|
List<SleepSqlTotalVo> sqlDataCs = sqlDatas.stream().filter(e -> e.getCollege().equals(org.getName()) && e.getSex().equals(sexStr)).collect(Collectors.toList());
|
|
List<SleepSqlTotalVo> sqlDataCs = sqlDatas.stream().filter(e -> e.getCollege().equals(org.getName()) && e.getSex().equals(sexStr)).collect(Collectors.toList());
|
|
|
- if(sqlDataCs != null && sqlDataCs.size() > 0){
|
|
|
|
|
- int toalData =sqlDataCs.get(0).getTotalData() == null ? 0 : sqlDataCs.get(0).getTotalData();
|
|
|
|
|
|
|
+ if (sqlDataCs != null && sqlDataCs.size() > 0) {
|
|
|
|
|
+ int toalData = btv.getTotalData();//sqlDataCs.get(0).getTotalData() == null ? 0 : sqlDataCs.get(0).getTotalData();
|
|
|
int sleeper = sqlDataCs.get(0).getSleeper() == null ? 0 : sqlDataCs.get(0).getSleeper();
|
|
int sleeper = sqlDataCs.get(0).getSleeper() == null ? 0 : sqlDataCs.get(0).getSleeper();
|
|
|
int totalBed = sqlDataCs.get(0).getTotalBed() == null ? 0 : sqlDataCs.get(0).getTotalBed();
|
|
int totalBed = sqlDataCs.get(0).getTotalBed() == null ? 0 : sqlDataCs.get(0).getTotalBed();
|
|
|
- btv.setTotalData(toalData);//总人数
|
|
|
|
|
|
|
+ //btv.setTotalData(toalData);//总人数
|
|
|
btv.setSleeper(sleeper);//已入住人数
|
|
btv.setSleeper(sleeper);//已入住人数
|
|
|
btv.setUnSleeper((toalData - sleeper) < 0 ? 0 : (toalData - sleeper));//未入住人数
|
|
btv.setUnSleeper((toalData - sleeper) < 0 ? 0 : (toalData - sleeper));//未入住人数
|
|
|
btv.setTotalBed(totalBed);//总床数
|
|
btv.setTotalBed(totalBed);//总床数
|
|
|
btv.setSleepBed(sleeper);//已入住床位数
|
|
btv.setSleepBed(sleeper);//已入住床位数
|
|
|
btv.setUnSleepBed((totalBed - sleeper) < 0 ? 0 : (totalBed - sleeper));//未入住床位数
|
|
btv.setUnSleepBed((totalBed - sleeper) < 0 ? 0 : (totalBed - sleeper));//未入住床位数
|
|
|
- }else{
|
|
|
|
|
- btv.setTotalData(0);//总人数
|
|
|
|
|
|
|
+ } else {
|
|
|
|
|
+ //btv.setTotalData(0);//总人数
|
|
|
btv.setSleeper(0);//已入住人数
|
|
btv.setSleeper(0);//已入住人数
|
|
|
btv.setUnSleeper(0);//未入住人数
|
|
btv.setUnSleeper(0);//未入住人数
|
|
|
btv.setTotalBed(0);//总床数
|
|
btv.setTotalBed(0);//总床数
|
|
|
btv.setSleepBed(0);//已入住床位数
|
|
btv.setSleepBed(0);//已入住床位数
|
|
|
btv.setUnSleepBed(0);//未入住床位数
|
|
btv.setUnSleepBed(0);//未入住床位数
|
|
|
}
|
|
}
|
|
|
|
|
+
|
|
|
result.add(btv);
|
|
result.add(btv);
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
@@ -226,32 +255,40 @@ public class CensusController implements CensusControllerAPI {
|
|
|
List<SleepTotalVo> result = new ArrayList<>();
|
|
List<SleepTotalVo> result = new ArrayList<>();
|
|
|
List<WelcomeOrg> orgs = welcomeOrgService.queryColleges(collegeId);
|
|
List<WelcomeOrg> orgs = welcomeOrgService.queryColleges(collegeId);
|
|
|
List<SleepSqlTotalVo> sqlDatas = welcomeBedService.queryTotalSqlList(collegeId, sex);
|
|
List<SleepSqlTotalVo> sqlDatas = welcomeBedService.queryTotalSqlList(collegeId, sex);
|
|
|
|
|
+ List<StudentTotalVo> students = welcomeStudentService.queryStudentTotal();
|
|
|
|
|
+
|
|
|
List<String> sexs = new ArrayList<>();
|
|
List<String> sexs = new ArrayList<>();
|
|
|
- if(StringUtils.hasText(sex)){
|
|
|
|
|
|
|
+ if (StringUtils.hasText(sex)) {
|
|
|
sexs.add(sex);
|
|
sexs.add(sex);
|
|
|
- }else{
|
|
|
|
|
|
|
+ } else {
|
|
|
sexs.add("男");
|
|
sexs.add("男");
|
|
|
sexs.add("女");
|
|
sexs.add("女");
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
for (WelcomeOrg org : orgs) {
|
|
for (WelcomeOrg org : orgs) {
|
|
|
- for (String sexStr :sexs){
|
|
|
|
|
|
|
+ for (String sexStr : sexs) {
|
|
|
SleepTotalVo btv = new SleepTotalVo();
|
|
SleepTotalVo btv = new SleepTotalVo();
|
|
|
btv.setCollege(org.getName());
|
|
btv.setCollege(org.getName());
|
|
|
btv.setSex(sexStr);
|
|
btv.setSex(sexStr);
|
|
|
|
|
+ Optional<StudentTotalVo> ostudent = students.stream().filter(e -> e.getCollege().equals(org.getName()) && e.getSex().equals(sexStr)).findFirst();
|
|
|
|
|
+ if (ostudent != null && ostudent.isPresent()) {
|
|
|
|
|
+ btv.setTotalData(ostudent.get().getTotal());
|
|
|
|
|
+ } else {
|
|
|
|
|
+ btv.setTotalData(0);
|
|
|
|
|
+ }
|
|
|
List<SleepSqlTotalVo> sqlDataCs = sqlDatas.stream().filter(e -> e.getCollege().equals(org.getName()) && e.getSex().equals(sexStr)).collect(Collectors.toList());
|
|
List<SleepSqlTotalVo> sqlDataCs = sqlDatas.stream().filter(e -> e.getCollege().equals(org.getName()) && e.getSex().equals(sexStr)).collect(Collectors.toList());
|
|
|
- if(sqlDataCs != null && sqlDataCs.size() > 0){
|
|
|
|
|
- int toalData =sqlDataCs.get(0).getTotalData() == null ? 0 : sqlDataCs.get(0).getTotalData();
|
|
|
|
|
|
|
+ if (sqlDataCs != null && sqlDataCs.size() > 0) {
|
|
|
|
|
+ int toalData = btv.getTotalData();//sqlDataCs.get(0).getTotalData() == null ? 0 : sqlDataCs.get(0).getTotalData();
|
|
|
int sleeper = sqlDataCs.get(0).getSleeper() == null ? 0 : sqlDataCs.get(0).getSleeper();
|
|
int sleeper = sqlDataCs.get(0).getSleeper() == null ? 0 : sqlDataCs.get(0).getSleeper();
|
|
|
int totalBed = sqlDataCs.get(0).getTotalBed() == null ? 0 : sqlDataCs.get(0).getTotalBed();
|
|
int totalBed = sqlDataCs.get(0).getTotalBed() == null ? 0 : sqlDataCs.get(0).getTotalBed();
|
|
|
- btv.setTotalData(toalData);//总人数
|
|
|
|
|
|
|
+ //btv.setTotalData(toalData);//总人数
|
|
|
btv.setSleeper(sleeper);//已入住人数
|
|
btv.setSleeper(sleeper);//已入住人数
|
|
|
btv.setUnSleeper((toalData - sleeper) < 0 ? 0 : (toalData - sleeper));//未入住人数
|
|
btv.setUnSleeper((toalData - sleeper) < 0 ? 0 : (toalData - sleeper));//未入住人数
|
|
|
btv.setTotalBed(totalBed);//总床数
|
|
btv.setTotalBed(totalBed);//总床数
|
|
|
btv.setSleepBed(sleeper);//已入住床位数
|
|
btv.setSleepBed(sleeper);//已入住床位数
|
|
|
btv.setUnSleepBed((totalBed - sleeper) < 0 ? 0 : (totalBed - sleeper));//未入住床位数
|
|
btv.setUnSleepBed((totalBed - sleeper) < 0 ? 0 : (totalBed - sleeper));//未入住床位数
|
|
|
- }else{
|
|
|
|
|
- btv.setTotalData(0);//总人数
|
|
|
|
|
|
|
+ } else {
|
|
|
|
|
+ //btv.setTotalData(0);//总人数
|
|
|
btv.setSleeper(0);//已入住人数
|
|
btv.setSleeper(0);//已入住人数
|
|
|
btv.setUnSleeper(0);//未入住人数
|
|
btv.setUnSleeper(0);//未入住人数
|
|
|
btv.setTotalBed(0);//总床数
|
|
btv.setTotalBed(0);//总床数
|