예산통계 수정중
parent
94b9b3e3de
commit
6c5e968861
|
|
@ -31,7 +31,7 @@ public class BudgetController {
|
||||||
@GetMapping("/budgeting")
|
@GetMapping("/budgeting")
|
||||||
public ModelAndView viewShipList(@AuthenticationPrincipal UserInfo loginUser, BudgetDto.BudgetingSearchReqeust requestDto, Pageable pageable) {
|
public ModelAndView viewShipList(@AuthenticationPrincipal UserInfo loginUser, BudgetDto.BudgetingSearchReqeust requestDto, Pageable pageable) {
|
||||||
ModelAndView mav = new ModelAndView("budget/budgeting");
|
ModelAndView mav = new ModelAndView("budget/budgeting");
|
||||||
if (requestDto.getYear() == null || requestDto.getYear().equals("")) {
|
if (requestDto.getYear() == null) {
|
||||||
LocalDate date = LocalDate.now();
|
LocalDate date = LocalDate.now();
|
||||||
requestDto.setYear(date.getYear());
|
requestDto.setYear(date.getYear());
|
||||||
}
|
}
|
||||||
|
|
@ -148,9 +148,10 @@ public class BudgetController {
|
||||||
requestDto.setStDate(LocalDate.parse(CurrentYear));
|
requestDto.setStDate(LocalDate.parse(CurrentYear));
|
||||||
requestDto.setEdDate(date);
|
requestDto.setEdDate(date);
|
||||||
}
|
}
|
||||||
//하위청 리스트
|
//하위청 리스트 - 검색용
|
||||||
List<CodeResult> downOrgList = budgetService.selectDownOrg(userOrgCode);
|
mav.addObject("downOrgList", budgetService.selectDownOrg(loginUser.getOgCd()));
|
||||||
mav.addObject("downOrgList", downOrgList);
|
//하위청 리스트 - 목록용
|
||||||
|
mav.addObject("downList", budgetService.selectDownOrg(requestDto.getCode()));
|
||||||
mav.addObject("loginOrgan", loginUser.getOgCd());
|
mav.addObject("loginOrgan", loginUser.getOgCd());
|
||||||
|
|
||||||
mav.addObject("searchParams", requestDto);
|
mav.addObject("searchParams", requestDto);
|
||||||
|
|
@ -186,7 +187,7 @@ public class BudgetController {
|
||||||
mav.addObject("list");
|
mav.addObject("list");
|
||||||
}
|
}
|
||||||
//하위청 리스트
|
//하위청 리스트
|
||||||
List<CodeResult> downOrgList = budgetService.selectDownOrg(userOrgCode);
|
List<CodeResult> downOrgList = budgetService.selectDownOrg(loginUser.getOgCd());
|
||||||
mav.addObject("downOrgList", downOrgList);
|
mav.addObject("downOrgList", downOrgList);
|
||||||
|
|
||||||
List<CodeResult> codeList = budgetService.selectGetLowerOrgCodeByName(loginUser);
|
List<CodeResult> codeList = budgetService.selectGetLowerOrgCodeByName(loginUser);
|
||||||
|
|
@ -216,7 +217,13 @@ public class BudgetController {
|
||||||
userOrgCode = requestDto.getCode();
|
userOrgCode = requestDto.getCode();
|
||||||
|
|
||||||
// List<ExpenseResult> list = budgetService.selectBudgetExpenseInfo(loginUser, requestDto);
|
// List<ExpenseResult> list = budgetService.selectBudgetExpenseInfo(loginUser, requestDto);
|
||||||
List<ExpenseResult> list = budgetService.selectBudgetExpenseInfoList(loginUser, requestDto);
|
BudgetParams params = new BudgetParams();
|
||||||
|
params.setYear(requestDto.getYear().toString());
|
||||||
|
params.setCode(requestDto.getCode());
|
||||||
|
params.setUser(loginUser.getUserId());
|
||||||
|
params.setStDate(requestDto.getStDate());
|
||||||
|
params.setEdDate(requestDto.getEdDate());
|
||||||
|
List<ExpenseResult> list = budgetService.selectBudgetExpenseInfoList(params);
|
||||||
mav.addObject("list", list);
|
mav.addObject("list", list);
|
||||||
} else {
|
} else {
|
||||||
// 로그인된 해당청 기본선택
|
// 로그인된 해당청 기본선택
|
||||||
|
|
@ -231,9 +238,10 @@ public class BudgetController {
|
||||||
requestDto.setStDate(LocalDate.parse(CurrentYear));
|
requestDto.setStDate(LocalDate.parse(CurrentYear));
|
||||||
requestDto.setEdDate(date);
|
requestDto.setEdDate(date);
|
||||||
}
|
}
|
||||||
//하위청 리스트
|
//하위청 리스트 - 검색용
|
||||||
List<CodeResult> downOrgList = budgetService.selectDownOrg(userOrgCode);
|
mav.addObject("downOrgList", budgetService.selectDownOrg(loginUser.getOgCd()));
|
||||||
mav.addObject("downOrgList", downOrgList);
|
//하위청 리스트 - 목록용
|
||||||
|
mav.addObject("downList", budgetService.selectDownOrg(requestDto.getCode()));
|
||||||
mav.addObject("loginOrgan", loginUser.getOgCd());
|
mav.addObject("loginOrgan", loginUser.getOgCd());
|
||||||
|
|
||||||
mav.addObject("searchParams", requestDto);
|
mav.addObject("searchParams", requestDto);
|
||||||
|
|
@ -271,15 +279,7 @@ public class BudgetController {
|
||||||
mav.addObject("list", list);
|
mav.addObject("list", list);
|
||||||
} else {
|
} else {
|
||||||
// 로그인된 해당청 기본선택
|
// 로그인된 해당청 기본선택
|
||||||
userOrgCode = userInfoService.selectUserInfo(loginUser.getUserSeq()).getOgCd();
|
userOrgCode = loginUser.getOgCd();
|
||||||
String HighOrgCode = budgetService.selectGetHighOrgCode(userOrgCode);
|
|
||||||
if (HighOrgCode == null) { // 1, 2단계시
|
|
||||||
requestDto.setCode(userOrgCode);
|
|
||||||
} else { // 3단계 이하 관서시
|
|
||||||
requestDto.setCode(HighOrgCode);
|
|
||||||
userOrgCode = HighOrgCode;
|
|
||||||
}
|
|
||||||
|
|
||||||
mav.addObject("list");
|
mav.addObject("list");
|
||||||
|
|
||||||
// 첫해 첫날 ~ 오늘날짜 기본세팅
|
// 첫해 첫날 ~ 오늘날짜 기본세팅
|
||||||
|
|
@ -289,7 +289,7 @@ public class BudgetController {
|
||||||
requestDto.setEdDate(date);
|
requestDto.setEdDate(date);
|
||||||
}
|
}
|
||||||
//하위청 리스트
|
//하위청 리스트
|
||||||
List<CodeResult> downOrgList = budgetService.selectDownOrg(userOrgCode);
|
List<CodeResult> downOrgList = budgetService.selectDownOrg(loginUser.getOgCd());
|
||||||
mav.addObject("downOrgList", downOrgList);
|
mav.addObject("downOrgList", downOrgList);
|
||||||
|
|
||||||
List<CodeResult> codeList = budgetService.selectGetLowerOrgCodeByName(loginUser);
|
List<CodeResult> codeList = budgetService.selectGetLowerOrgCodeByName(loginUser);
|
||||||
|
|
@ -302,13 +302,22 @@ public class BudgetController {
|
||||||
|
|
||||||
/* 집행표 - 화면 */
|
/* 집행표 - 화면 */
|
||||||
@GetMapping("/stats/org")
|
@GetMapping("/stats/org")
|
||||||
public ModelAndView viewExpenseList(@AuthenticationPrincipal UserInfo loginUser, BudgetDto.StatsSearchReqeust requestDto, Pageable pageable) {
|
public ModelAndView viewExpenseList(@AuthenticationPrincipal UserInfo loginUser, BudgetDto.StatsSearchReqeust requestDto) {
|
||||||
ModelAndView mav = new ModelAndView("budget/statsOrg");
|
ModelAndView mav = new ModelAndView("budget/statsOrg");
|
||||||
String userOrgCode;
|
String userOrgCode;
|
||||||
if (requestDto.getYear() != null) {
|
if (requestDto.getYear() != null) {
|
||||||
userOrgCode = requestDto.getCode();
|
userOrgCode = requestDto.getCode();
|
||||||
|
|
||||||
List<ExpenseResult> list = budgetService.selectSpGetbudgetStatOrg(loginUser, requestDto);
|
// List<ExpenseResult> list = budgetService.selectSpGetbudgetStatOrg(loginUser, requestDto);
|
||||||
|
BudgetParams params = new BudgetParams();
|
||||||
|
params.setYear(requestDto.getYear().toString());
|
||||||
|
params.setCode(requestDto.getCode());
|
||||||
|
params.setUser(loginUser.getUserId());
|
||||||
|
params.setStDate(requestDto.getStDate());
|
||||||
|
params.setEdDate(requestDto.getEdDate());
|
||||||
|
params.setWon(requestDto.getWon());
|
||||||
|
List<ExpenseResult> list = budgetService.selectBudgetExpenseInfoList(params);
|
||||||
|
|
||||||
mav.addObject("list", list);
|
mav.addObject("list", list);
|
||||||
} else {
|
} else {
|
||||||
// 로그인된 해당청 기본선택
|
// 로그인된 해당청 기본선택
|
||||||
|
|
@ -329,13 +338,11 @@ public class BudgetController {
|
||||||
requestDto.setStDate(LocalDate.parse(CurrentYear));
|
requestDto.setStDate(LocalDate.parse(CurrentYear));
|
||||||
requestDto.setEdDate(date);
|
requestDto.setEdDate(date);
|
||||||
}
|
}
|
||||||
//하위청 리스트
|
//하위청 리스트 - 검색용
|
||||||
List<CodeResult> downOrgList = budgetService.selectDownOrg(userOrgCode);
|
mav.addObject("downOrgList", budgetService.selectDownOrg(loginUser.getOgCd()));
|
||||||
mav.addObject("downOrgList", downOrgList);
|
//하위청 리스트 - 목록용
|
||||||
|
mav.addObject("downList", budgetService.selectDownOrg(requestDto.getCode()));
|
||||||
List<CodeResult> codeList = budgetService.selectGetLowerOrgCodeByName(loginUser);
|
mav.addObject("loginOrgan", loginUser.getOgCd());
|
||||||
mav.addObject("codeList", codeList);
|
|
||||||
|
|
||||||
mav.addObject("searchParams", requestDto);
|
mav.addObject("searchParams", requestDto);
|
||||||
|
|
||||||
return mav;
|
return mav;
|
||||||
|
|
@ -348,24 +355,29 @@ public class BudgetController {
|
||||||
|
|
||||||
List<YearResult> yearList = budgetService.selectBudgetingYearList(loginUser);
|
List<YearResult> yearList = budgetService.selectBudgetingYearList(loginUser);
|
||||||
if (requestDto.getStDate() != null) {
|
if (requestDto.getStDate() != null) {
|
||||||
List<StatsItemResult> list = budgetService.selectSpGetbudgetStatDetail(loginUser, requestDto);
|
// List<StatsItemResult> list = budgetService.selectSpGetbudgetStatDetail(loginUser, requestDto);
|
||||||
|
List<StatsDetailResult> list = budgetService.selectStatDetailList(requestDto);
|
||||||
List<L3CodeResult> codeList = budgetService.selectSpGetL3Code(loginUser, requestDto.getYear());
|
List<L3CodeResult> codeList = budgetService.selectSpGetL3Code(loginUser, requestDto.getYear());
|
||||||
mav.addObject("list", list);
|
mav.addObject("list", list);
|
||||||
mav.addObject("codeList", codeList);
|
mav.addObject("codeList", codeList);
|
||||||
} else {
|
} else {
|
||||||
|
|
||||||
LocalDate date = LocalDate.now();
|
LocalDate date = LocalDate.now();
|
||||||
List<L3CodeResult> codeList = budgetService.selectSpGetL3Code(loginUser, String.valueOf(date.getYear()));
|
List<L3CodeResult> codeList = budgetService.selectSpGetL3Code(loginUser, date.getYear());
|
||||||
requestDto.setYear(String.valueOf(date.getYear()));
|
requestDto.setYear(date.getYear());
|
||||||
mav.addObject("list");
|
mav.addObject("list");
|
||||||
mav.addObject("codeList", codeList);
|
mav.addObject("codeList", codeList);
|
||||||
|
requestDto.setCode(loginUser.getOgCd());
|
||||||
// 첫해 첫날 ~ 오늘날짜 기본세팅
|
// 첫해 첫날 ~ 오늘날짜 기본세팅
|
||||||
String CurrentYear = String.valueOf(date.getYear()) + "-01-01";
|
String CurrentYear = date.getYear() + "-01-01";
|
||||||
requestDto.setStDate(LocalDate.parse(CurrentYear));
|
requestDto.setStDate(LocalDate.parse(CurrentYear));
|
||||||
requestDto.setEdDate(date);
|
requestDto.setEdDate(date);
|
||||||
}
|
}
|
||||||
List<CodeResult> codeList = budgetService.selectGetLowerOrgCodeByName(loginUser);
|
|
||||||
|
//하위청 리스트 - 검색용
|
||||||
|
mav.addObject("downOrgList", budgetService.selectDownOrg(loginUser.getOgCd()));
|
||||||
|
//하위청 리스트 - 목록용
|
||||||
|
mav.addObject("downList", budgetService.selectDownOrg(requestDto.getCode()));
|
||||||
|
mav.addObject("loginOrgan", loginUser.getOgCd());
|
||||||
|
|
||||||
mav.addObject("yearList", yearList);
|
mav.addObject("yearList", yearList);
|
||||||
mav.addObject("searchParams", requestDto);
|
mav.addObject("searchParams", requestDto);
|
||||||
|
|
|
||||||
|
|
@ -31,4 +31,5 @@ public interface BudgetMapper {
|
||||||
List<BudgetName> selectBudgetInfoList(BudgetParams params);
|
List<BudgetName> selectBudgetInfoList(BudgetParams params);
|
||||||
List<AssignAmount> selectBudgetAssignAmountList(BudgetParams params);
|
List<AssignAmount> selectBudgetAssignAmountList(BudgetParams params);
|
||||||
List<ExpenseAmount> selectBudgetExpenseAmountList(BudgetParams params);
|
List<ExpenseAmount> selectBudgetExpenseAmountList(BudgetParams params);
|
||||||
|
List<StatsDetailResult> selectStatDetailList(BudgetParams params);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -14,10 +14,9 @@ public class BudgetDto {
|
||||||
@AllArgsConstructor
|
@AllArgsConstructor
|
||||||
@ToString
|
@ToString
|
||||||
public static class BudgetingListResponse {
|
public static class BudgetingListResponse {
|
||||||
|
private String budgetNameL1;
|
||||||
private String budget_name_l1;
|
private String budgetNameL2;
|
||||||
private String budget_name_l2;
|
private String budgetNameL3;
|
||||||
private String budget_name_l3;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Data
|
@Data
|
||||||
|
|
@ -123,7 +122,7 @@ public class BudgetDto {
|
||||||
@AllArgsConstructor
|
@AllArgsConstructor
|
||||||
@ToString
|
@ToString
|
||||||
public static class StatsSearchReqeust {
|
public static class StatsSearchReqeust {
|
||||||
private String year;
|
private Integer year;
|
||||||
private String code;
|
private String code;
|
||||||
private String item;
|
private String item;
|
||||||
@DateTimeFormat(pattern = "yyyy-MM-dd")
|
@DateTimeFormat(pattern = "yyyy-MM-dd")
|
||||||
|
|
@ -151,7 +150,7 @@ public class BudgetDto {
|
||||||
@AllArgsConstructor
|
@AllArgsConstructor
|
||||||
@ToString
|
@ToString
|
||||||
public static class L3CodeRequest {
|
public static class L3CodeRequest {
|
||||||
private String year;
|
private Integer year;
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -22,7 +22,7 @@ public class BudgetParams {
|
||||||
private String user;
|
private String user;
|
||||||
private String id;
|
private String id;
|
||||||
private String item;
|
private String item;
|
||||||
private Integer won;
|
private Integer won = 1;
|
||||||
|
|
||||||
private String newCode1;
|
private String newCode1;
|
||||||
private String newCode2;
|
private String newCode2;
|
||||||
|
|
|
||||||
|
|
@ -6,55 +6,56 @@ import lombok.Setter;
|
||||||
@Getter
|
@Getter
|
||||||
@Setter
|
@Setter
|
||||||
public class ExpenseResult extends BudgetName{
|
public class ExpenseResult extends BudgetName{
|
||||||
Integer totalAssignAmount = 0;
|
Double totalAssignAmount = 0d;
|
||||||
Integer expenseTAmount = 0;
|
Double expenseTAmount = 0d;
|
||||||
Integer balanceTAmount = 0;
|
Double balanceTAmount = 0d;
|
||||||
|
Double taRate = 0d;
|
||||||
|
|
||||||
Integer periodAssignAmount1 = 0;
|
Double periodAssignAmount1 = 0d;
|
||||||
Integer expensePAmount1 = 0;
|
Double expensePAmount1 = 0d;
|
||||||
Integer balanceAmount1 = 0;
|
Double balanceAmount1 = 0d;
|
||||||
Double expenseRate1 = 0d;
|
Double expenseRate1 = 0d;
|
||||||
|
|
||||||
Integer periodAssignAmount2 = 0;
|
Double periodAssignAmount2 = 0d;
|
||||||
Integer expensePAmount2 = 0;
|
Double expensePAmount2 = 0d;
|
||||||
Integer balanceAmount2 = 0;
|
Double balanceAmount2 = 0d;
|
||||||
Double expenseRate2 = 0d;
|
Double expenseRate2 = 0d;
|
||||||
|
|
||||||
Integer periodAssignAmount3 = 0;
|
Double periodAssignAmount3 = 0d;
|
||||||
Integer expensePAmount3 = 0;
|
Double expensePAmount3 = 0d;
|
||||||
Integer balanceAmount3 = 0;
|
Double balanceAmount3 = 0d;
|
||||||
Double expenseRate3 = 0d;
|
Double expenseRate3 = 0d;
|
||||||
|
|
||||||
|
|
||||||
Integer periodAssignAmount4 = 0;
|
Double periodAssignAmount4 = 0d;
|
||||||
Integer expensePAmount4 = 0;
|
Double expensePAmount4 = 0d;
|
||||||
Integer balanceAmount4 = 0;
|
Double balanceAmount4 = 0d;
|
||||||
Double expenseRate4 = 0d;
|
Double expenseRate4 = 0d;
|
||||||
|
|
||||||
|
|
||||||
Integer periodAssignAmount5 = 0;
|
Double periodAssignAmount5 = 0d;
|
||||||
Integer expensePAmount5 = 0;
|
Double expensePAmount5 = 0d;
|
||||||
Integer balanceAmount5 = 0;
|
Double balanceAmount5 = 0d;
|
||||||
Double expenseRate5 = 0d;
|
Double expenseRate5 = 0d;
|
||||||
|
|
||||||
|
|
||||||
Integer periodAssignAmount6 = 0;
|
Double periodAssignAmount6 = 0d;
|
||||||
Integer expensePAmount6 = 0;
|
Double expensePAmount6 = 0d;
|
||||||
Integer balanceAmount6 = 0;
|
Double balanceAmount6 = 0d;
|
||||||
Double expenseRate6 = 0d;
|
Double expenseRate6 = 0d;
|
||||||
|
|
||||||
Integer periodAssignAmount7 = 0;
|
Double periodAssignAmount7 = 0d;
|
||||||
Integer expensePAmount7 = 0;
|
Double expensePAmount7 = 0d;
|
||||||
Integer balanceAmount7 = 0;
|
Double balanceAmount7 = 0d;
|
||||||
Double expenseRate7 = 0d;
|
Double expenseRate7 = 0d;
|
||||||
|
|
||||||
Integer periodAssignAmount8 = 0;
|
Double periodAssignAmount8 = 0d;
|
||||||
Integer expensePAmount8 = 0;
|
Double expensePAmount8 = 0d;
|
||||||
Integer balanceAmount8 = 0;
|
Double balanceAmount8 = 0d;
|
||||||
Double expenseRate8 = 0d;
|
Double expenseRate8 = 0d;
|
||||||
|
|
||||||
Integer periodAssignAmount9 = 0;
|
Double periodAssignAmount9 = 0d;
|
||||||
Integer expensePAmount9 = 0;
|
Double expensePAmount9 = 0d;
|
||||||
Integer balanceAmount9 = 0;
|
Double balanceAmount9 = 0d;
|
||||||
Double expenseRate9 = 0d;
|
Double expenseRate9 = 0d;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,15 @@
|
||||||
|
package com.dbnt.faisp.main.budget.model.result;
|
||||||
|
|
||||||
|
import lombok.Getter;
|
||||||
|
import lombok.Setter;
|
||||||
|
|
||||||
|
@Getter
|
||||||
|
@Setter
|
||||||
|
public class StatsDetailResult {
|
||||||
|
String organCd;
|
||||||
|
Double planAmount = 0d;
|
||||||
|
Double assignAmount = 0d;
|
||||||
|
Double expenseAmount = 0d;
|
||||||
|
Double balanceAmount = 0d;
|
||||||
|
Double rate = 0d;
|
||||||
|
}
|
||||||
|
|
@ -410,16 +410,11 @@ public class BudgetService {
|
||||||
return budgetMapper.callSpGetBudgetExpenseInfo(params);
|
return budgetMapper.callSpGetBudgetExpenseInfo(params);
|
||||||
}
|
}
|
||||||
|
|
||||||
public List<ExpenseResult> selectBudgetExpenseInfoList(UserInfo loginUser, BudgetDto.AssignSearchReqeust requestDto){
|
public List<ExpenseResult> selectBudgetExpenseInfoList(BudgetParams params){
|
||||||
BudgetParams params = new BudgetParams();
|
|
||||||
params.setYear(requestDto.getYear().toString());
|
|
||||||
params.setCode(requestDto.getCode());
|
|
||||||
params.setUser("admin");
|
|
||||||
params.setStDate(requestDto.getStDate());
|
|
||||||
params.setEdDate(requestDto.getEdDate());
|
|
||||||
List<ExpenseResult> expenseList = new ArrayList<>();
|
List<ExpenseResult> expenseList = new ArrayList<>();
|
||||||
List<BudgetName> budgetList = budgetMapper.selectBudgetInfoList(params);
|
List<BudgetName> budgetList = budgetMapper.selectBudgetInfoList(params);
|
||||||
List<ExpenseAmount> amountList = budgetMapper.selectBudgetExpenseAmountList(params);
|
List<ExpenseAmount> amountList = budgetMapper.selectBudgetExpenseAmountList(params);
|
||||||
|
Integer wonUnit = params.getWon();
|
||||||
for(BudgetName budget : budgetList){
|
for(BudgetName budget : budgetList){
|
||||||
ExpenseResult result = new ExpenseResult();
|
ExpenseResult result = new ExpenseResult();
|
||||||
result.setBudgetNameL1(budget.getBudgetNameL1());
|
result.setBudgetNameL1(budget.getBudgetNameL1());
|
||||||
|
|
@ -429,62 +424,62 @@ public class BudgetService {
|
||||||
result.setPlanAmount(budget.getPlanAmount());
|
result.setPlanAmount(budget.getPlanAmount());
|
||||||
for(ExpenseAmount amount : amountList){
|
for(ExpenseAmount amount : amountList){
|
||||||
if(result.getBudgetCodeL3().equals(amount.getBudgetCode())){
|
if(result.getBudgetCodeL3().equals(amount.getBudgetCode())){
|
||||||
result.setTotalAssignAmount(result.getTotalAssignAmount()+amount.getPeriodAssignAmount());
|
result.setTotalAssignAmount(result.getTotalAssignAmount()+(double)(amount.getPeriodAssignAmount()/wonUnit));
|
||||||
result.setExpenseTAmount(result.getExpenseTAmount()+amount.getExpenseAssignAmount());
|
result.setExpenseTAmount(result.getExpenseTAmount()+(double)(amount.getExpenseAssignAmount()/wonUnit));
|
||||||
result.setBalanceTAmount(result.getBalanceTAmount()+ amount.getBalanceAmount());
|
result.setBalanceTAmount(result.getBalanceTAmount()+ (double)(amount.getBalanceAmount()/wonUnit));
|
||||||
switch (amount.getOrderSeq()){
|
switch (amount.getOrderSeq()){
|
||||||
case 1:
|
case 1:
|
||||||
result.setPeriodAssignAmount1(amount.getPeriodAssignAmount());
|
result.setPeriodAssignAmount1((double)amount.getPeriodAssignAmount()/wonUnit);
|
||||||
result.setExpensePAmount1(amount.getExpenseAssignAmount());
|
result.setExpensePAmount1((double)amount.getExpenseAssignAmount()/wonUnit);
|
||||||
result.setBalanceAmount1(amount.getBalanceAmount());
|
result.setBalanceAmount1((double)amount.getBalanceAmount()/wonUnit);
|
||||||
result.setExpenseRate1(amount.getExpenseRate());
|
result.setExpenseRate1(amount.getExpenseRate());
|
||||||
break;
|
break;
|
||||||
case 2:
|
case 2:
|
||||||
result.setPeriodAssignAmount2(amount.getPeriodAssignAmount());
|
result.setPeriodAssignAmount2((double)amount.getPeriodAssignAmount()/wonUnit);
|
||||||
result.setExpensePAmount2(amount.getExpenseAssignAmount());
|
result.setExpensePAmount2((double)amount.getExpenseAssignAmount()/wonUnit);
|
||||||
result.setBalanceAmount2(amount.getBalanceAmount());
|
result.setBalanceAmount2((double)amount.getBalanceAmount()/wonUnit);
|
||||||
result.setExpenseRate2(amount.getExpenseRate());
|
result.setExpenseRate2(amount.getExpenseRate());
|
||||||
break;
|
break;
|
||||||
case 3:
|
case 3:
|
||||||
result.setPeriodAssignAmount3(amount.getPeriodAssignAmount());
|
result.setPeriodAssignAmount3((double)amount.getPeriodAssignAmount()/wonUnit);
|
||||||
result.setExpensePAmount3(amount.getExpenseAssignAmount());
|
result.setExpensePAmount3((double)amount.getExpenseAssignAmount()/wonUnit);
|
||||||
result.setBalanceAmount3(amount.getBalanceAmount());
|
result.setBalanceAmount3((double)amount.getBalanceAmount()/wonUnit);
|
||||||
result.setExpenseRate3(amount.getExpenseRate());
|
result.setExpenseRate3(amount.getExpenseRate());
|
||||||
break;
|
break;
|
||||||
case 4:
|
case 4:
|
||||||
result.setPeriodAssignAmount4(amount.getPeriodAssignAmount());
|
result.setPeriodAssignAmount4((double)amount.getPeriodAssignAmount()/wonUnit);
|
||||||
result.setExpensePAmount4(amount.getExpenseAssignAmount());
|
result.setExpensePAmount4((double)amount.getExpenseAssignAmount()/wonUnit);
|
||||||
result.setBalanceAmount4(amount.getBalanceAmount());
|
result.setBalanceAmount4((double)amount.getBalanceAmount()/wonUnit);
|
||||||
result.setExpenseRate4(amount.getExpenseRate());
|
result.setExpenseRate4(amount.getExpenseRate());
|
||||||
break;
|
break;
|
||||||
case 5:
|
case 5:
|
||||||
result.setPeriodAssignAmount5(amount.getPeriodAssignAmount());
|
result.setPeriodAssignAmount5((double)amount.getPeriodAssignAmount()/wonUnit);
|
||||||
result.setExpensePAmount5(amount.getExpenseAssignAmount());
|
result.setExpensePAmount5((double)amount.getExpenseAssignAmount()/wonUnit);
|
||||||
result.setBalanceAmount5(amount.getBalanceAmount());
|
result.setBalanceAmount5((double)amount.getBalanceAmount()/wonUnit);
|
||||||
result.setExpenseRate5(amount.getExpenseRate());
|
result.setExpenseRate5(amount.getExpenseRate());
|
||||||
break;
|
break;
|
||||||
case 6:
|
case 6:
|
||||||
result.setPeriodAssignAmount6(amount.getPeriodAssignAmount());
|
result.setPeriodAssignAmount6((double)amount.getPeriodAssignAmount()/wonUnit);
|
||||||
result.setExpensePAmount6(amount.getExpenseAssignAmount());
|
result.setExpensePAmount6((double)amount.getExpenseAssignAmount()/wonUnit);
|
||||||
result.setBalanceAmount6(amount.getBalanceAmount());
|
result.setBalanceAmount6((double)amount.getBalanceAmount()/wonUnit);
|
||||||
result.setExpenseRate6(amount.getExpenseRate());
|
result.setExpenseRate6(amount.getExpenseRate());
|
||||||
break;
|
break;
|
||||||
case 7:
|
case 7:
|
||||||
result.setPeriodAssignAmount7(amount.getPeriodAssignAmount());
|
result.setPeriodAssignAmount7((double)amount.getPeriodAssignAmount()/wonUnit);
|
||||||
result.setExpensePAmount7(amount.getExpenseAssignAmount());
|
result.setExpensePAmount7((double)amount.getExpenseAssignAmount()/wonUnit);
|
||||||
result.setBalanceAmount7(amount.getBalanceAmount());
|
result.setBalanceAmount7((double)amount.getBalanceAmount()/wonUnit);
|
||||||
result.setExpenseRate7(amount.getExpenseRate());
|
result.setExpenseRate7(amount.getExpenseRate());
|
||||||
break;
|
break;
|
||||||
case 8:
|
case 8:
|
||||||
result.setPeriodAssignAmount8(amount.getPeriodAssignAmount());
|
result.setPeriodAssignAmount8((double)amount.getPeriodAssignAmount()/wonUnit);
|
||||||
result.setExpensePAmount8(amount.getExpenseAssignAmount());
|
result.setExpensePAmount8((double)amount.getExpenseAssignAmount()/wonUnit);
|
||||||
result.setBalanceAmount8(amount.getBalanceAmount());
|
result.setBalanceAmount8((double)amount.getBalanceAmount()/wonUnit);
|
||||||
result.setExpenseRate8(amount.getExpenseRate());
|
result.setExpenseRate8(amount.getExpenseRate());
|
||||||
break;
|
break;
|
||||||
case 9:
|
case 9:
|
||||||
result.setPeriodAssignAmount9(amount.getPeriodAssignAmount());
|
result.setPeriodAssignAmount9((double)amount.getPeriodAssignAmount()/wonUnit);
|
||||||
result.setExpensePAmount9(amount.getExpenseAssignAmount());
|
result.setExpensePAmount9((double)amount.getExpenseAssignAmount()/wonUnit);
|
||||||
result.setBalanceAmount9(amount.getBalanceAmount());
|
result.setBalanceAmount9((double)amount.getBalanceAmount()/wonUnit);
|
||||||
result.setExpenseRate9(amount.getExpenseRate());
|
result.setExpenseRate9(amount.getExpenseRate());
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
@ -492,6 +487,9 @@ public class BudgetService {
|
||||||
}
|
}
|
||||||
expenseList.add(result);
|
expenseList.add(result);
|
||||||
}
|
}
|
||||||
|
for(ExpenseResult result : expenseList){
|
||||||
|
result.setTaRate(Math.round((result.getExpenseTAmount()/(result.getBalanceTAmount()+result.getExpenseTAmount()))*10000)/100.0);
|
||||||
|
}
|
||||||
return expenseList;
|
return expenseList;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -537,7 +535,7 @@ public class BudgetService {
|
||||||
// return budgetRepository.callSpGetbudgetStatOrg(requestDto.getYear(), requestDto.getCode(), "admin", java.sql.Date.valueOf(requestDto.getStDate()), java.sql.Date.valueOf(requestDto.getEdDate()), requestDto.getWon());
|
// return budgetRepository.callSpGetbudgetStatOrg(requestDto.getYear(), requestDto.getCode(), "admin", java.sql.Date.valueOf(requestDto.getStDate()), java.sql.Date.valueOf(requestDto.getEdDate()), requestDto.getWon());
|
||||||
|
|
||||||
BudgetParams params = new BudgetParams();
|
BudgetParams params = new BudgetParams();
|
||||||
params.setYear(requestDto.getYear());
|
params.setYear(requestDto.getYear().toString());
|
||||||
params.setCode(requestDto.getCode());
|
params.setCode(requestDto.getCode());
|
||||||
params.setUser("admin");
|
params.setUser("admin");
|
||||||
params.setStDate(requestDto.getStDate());
|
params.setStDate(requestDto.getStDate());
|
||||||
|
|
@ -555,7 +553,7 @@ public class BudgetService {
|
||||||
// return budgetRepository.callSpGetbudgetStatDetail(requestDto.getYear(), requestDto.getCode(), requestDto.getItem(), "admin", java.sql.Date.valueOf(requestDto.getStDate()), java.sql.Date.valueOf(requestDto.getEdDate()), requestDto.getWon());
|
// return budgetRepository.callSpGetbudgetStatDetail(requestDto.getYear(), requestDto.getCode(), requestDto.getItem(), "admin", java.sql.Date.valueOf(requestDto.getStDate()), java.sql.Date.valueOf(requestDto.getEdDate()), requestDto.getWon());
|
||||||
|
|
||||||
BudgetParams params = new BudgetParams();
|
BudgetParams params = new BudgetParams();
|
||||||
params.setYear(requestDto.getYear());
|
params.setYear(requestDto.getYear().toString());
|
||||||
params.setCode(requestDto.getCode());
|
params.setCode(requestDto.getCode());
|
||||||
params.setItem(requestDto.getItem());
|
params.setItem(requestDto.getItem());
|
||||||
params.setUser("admin");
|
params.setUser("admin");
|
||||||
|
|
@ -565,12 +563,33 @@ public class BudgetService {
|
||||||
return budgetMapper.callSpGetbudgetStatDetail(params);
|
return budgetMapper.callSpGetbudgetStatDetail(params);
|
||||||
}
|
}
|
||||||
|
|
||||||
public List<L3CodeResult> selectSpGetL3Code(UserInfo loginUser, String year){
|
public List<StatsDetailResult> selectStatDetailList(BudgetDto.StatsSearchReqeust requestDto){
|
||||||
|
BudgetParams params = new BudgetParams();
|
||||||
|
params.setYear(requestDto.getYear().toString());
|
||||||
|
params.setCode(requestDto.getCode());
|
||||||
|
params.setItem(requestDto.getItem());
|
||||||
|
params.setUser("admin");
|
||||||
|
params.setStDate(requestDto.getStDate());
|
||||||
|
params.setEdDate(requestDto.getEdDate());
|
||||||
|
params.setWon(requestDto.getWon());
|
||||||
|
List<StatsDetailResult> statsList = budgetMapper.selectStatDetailList(params);
|
||||||
|
Double wonUnit = params.getWon().doubleValue();
|
||||||
|
for(StatsDetailResult stat : statsList){
|
||||||
|
stat.setPlanAmount(stat.getPlanAmount()/wonUnit);
|
||||||
|
stat.setAssignAmount(stat.getAssignAmount()/wonUnit);
|
||||||
|
stat.setExpenseAmount(stat.getExpenseAmount()/wonUnit);
|
||||||
|
stat.setBalanceAmount(stat.getAssignAmount()-stat.getExpenseAmount());
|
||||||
|
stat.setRate((double)Math.round(stat.getExpenseAmount()/stat.getAssignAmount()*10000)/100);
|
||||||
|
}
|
||||||
|
return statsList;
|
||||||
|
}
|
||||||
|
|
||||||
|
public List<L3CodeResult> selectSpGetL3Code(UserInfo loginUser, Integer year){
|
||||||
|
|
||||||
// return budgetRepository.callSpGetBudgetCodeL3(year);
|
// return budgetRepository.callSpGetBudgetCodeL3(year);
|
||||||
|
|
||||||
BudgetParams params = new BudgetParams();
|
BudgetParams params = new BudgetParams();
|
||||||
params.setYear(year);
|
params.setYear(year.toString());
|
||||||
return budgetMapper.callSpGetBudgetCodeL3(params);
|
return budgetMapper.callSpGetBudgetCodeL3(params);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -77,6 +77,7 @@
|
||||||
<select id="callSpAddBudgetExpense" resultType="UpdateResult" parameterType="BudgetParams">
|
<select id="callSpAddBudgetExpense" resultType="UpdateResult" parameterType="BudgetParams">
|
||||||
call sp_add_budget_EXPENSE(#{year},#{code1},#{code2},#{code3}, #{org}, #{item} ,cast (#{amount} as bigint), #{dt}::date,'admin',NULL,NULL,NULL)
|
call sp_add_budget_EXPENSE(#{year},#{code1},#{code2},#{code3}, #{org}, #{item} ,cast (#{amount} as bigint), #{dt}::date,'admin',NULL,NULL,NULL)
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
<select id="callSpGetbudgetStatOrg" resultType="ExpenseResult" parameterType="BudgetParams">
|
<select id="callSpGetbudgetStatOrg" resultType="ExpenseResult" parameterType="BudgetParams">
|
||||||
select *
|
select *
|
||||||
from sp_get_budget_statistics_by_org(#{year},#{code},#{user},#{stDate}::date,#{edDate}::date,#{won})
|
from sp_get_budget_statistics_by_org(#{year},#{code},#{user},#{stDate}::date,#{edDate}::date,#{won})
|
||||||
|
|
@ -85,6 +86,7 @@
|
||||||
select *
|
select *
|
||||||
from sp_get_budget_statistics_by_item(#{year},#{code},#{item}, #{user},#{stDate}::date,#{edDate}::date,#{won})
|
from sp_get_budget_statistics_by_item(#{year},#{code},#{item}, #{user},#{stDate}::date,#{edDate}::date,#{won})
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
<select id="callSpGetBudgetCodeL3" resultType="L3CodeResult" parameterType="BudgetParams">
|
<select id="callSpGetBudgetCodeL3" resultType="L3CodeResult" parameterType="BudgetParams">
|
||||||
select *
|
select *
|
||||||
from sp_get_budget_code_l3(#{year},null,null,null)
|
from sp_get_budget_code_l3(#{year},null,null,null)
|
||||||
|
|
@ -138,7 +140,7 @@
|
||||||
) a
|
) a
|
||||||
inner join code_mgt b on a.organ_cd = b.item_cd
|
inner join code_mgt b on a.organ_cd = b.item_cd
|
||||||
order by b.order_num
|
order by b.order_num
|
||||||
) a
|
) a
|
||||||
) oc on total.l_org_code = oc.organ_cd
|
) oc on total.l_org_code = oc.organ_cd
|
||||||
order by order_seq, organ_cd, budget_code
|
order by order_seq, organ_cd, budget_code
|
||||||
</select>
|
</select>
|
||||||
|
|
@ -187,4 +189,45 @@
|
||||||
order by order_seq, organ_cd, budget_code
|
order by order_seq, organ_cd, budget_code
|
||||||
) a
|
) a
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
|
<select id="selectStatDetailList" resultType="StatsDetailResult" parameterType="BudgetParams">
|
||||||
|
select og.organ_cd, tba.assign_amount, tbe.expense_amount
|
||||||
|
from(
|
||||||
|
select (ROW_NUMBER() OVER()) AS order_seq, *
|
||||||
|
from (
|
||||||
|
select organ_cd
|
||||||
|
from (
|
||||||
|
select #{code} as organ_cd
|
||||||
|
union all
|
||||||
|
select organ_cd
|
||||||
|
from organ_config
|
||||||
|
where parent_organ = #{code}
|
||||||
|
) a
|
||||||
|
inner join code_mgt b on a.organ_cd = b.item_cd
|
||||||
|
order by b.order_num
|
||||||
|
) a
|
||||||
|
) og
|
||||||
|
left outer join
|
||||||
|
(
|
||||||
|
select l_org_code, sum(amount) as assign_amount
|
||||||
|
from tbl_budget_assign tba
|
||||||
|
where h_org_code = #{code}
|
||||||
|
and assign_date >= #{stDate}::date
|
||||||
|
and assign_date <= #{edDate}::date+1
|
||||||
|
and budget_code = #{item}
|
||||||
|
group by l_org_code
|
||||||
|
) tba
|
||||||
|
on og.organ_cd = tba.l_org_code
|
||||||
|
left outer join
|
||||||
|
(
|
||||||
|
select org_code, sum(amount) as expense_amount
|
||||||
|
from tbl_budget_expense tbe
|
||||||
|
where expense_date >= #{stDate}::date
|
||||||
|
and expense_date <= #{edDate}::date+1
|
||||||
|
and budget_code = #{item}
|
||||||
|
group by org_code
|
||||||
|
) tbe
|
||||||
|
on og.organ_cd = tbe.org_code
|
||||||
|
order by og.order_seq
|
||||||
|
</select>
|
||||||
</mapper>
|
</mapper>
|
||||||
|
|
@ -45,7 +45,7 @@ function statsSearch () {
|
||||||
|
|
||||||
contentFade("in");
|
contentFade("in");
|
||||||
//location.href="/budget/stats/detail?year="+$("#year").val() + "&stDate=" + $("#stDate").val() + "&edDate=" + $("#edDate").val() + "&code=" +$("#code").val() + "&won="+$("#won").val();
|
//location.href="/budget/stats/detail?year="+$("#year").val() + "&stDate=" + $("#stDate").val() + "&edDate=" + $("#edDate").val() + "&code=" +$("#code").val() + "&won="+$("#won").val();
|
||||||
location.href="/budget/stats/detail?year="+$("#year").val() + "&stDate=" + $("#stDate").val() + "&edDate=" + $("#edDate").val() + "&code=본청&won="+$("#won").val()+"&item="+$("#item").val();
|
location.href="/budget/stats/detail?year="+$("#year").val() + "&stDate=" + $("#stDate").val() + "&edDate=" + $("#edDate").val() + "&code="+$("#code").val()+"&won="+$("#won").val()+"&item="+$("#item").val();
|
||||||
}
|
}
|
||||||
|
|
||||||
$(document).on('click', '#deleteBtn', function (){
|
$(document).on('click', '#deleteBtn', function (){
|
||||||
|
|
|
||||||
|
|
@ -37,7 +37,6 @@
|
||||||
<div class="col-auto">
|
<div class="col-auto">
|
||||||
<th:block th:if="${loginOrgan eq 'OG001'}">
|
<th:block th:if="${loginOrgan eq 'OG001'}">
|
||||||
<select class="form-select form-select-sm" name="code" id="code">
|
<select class="form-select form-select-sm" name="code" id="code">
|
||||||
<option value="OG001">본청</option>
|
|
||||||
<option th:each="code : ${downOrgList}" th:value="${code?.orgCode}"
|
<option th:each="code : ${downOrgList}" th:value="${code?.orgCode}"
|
||||||
th:text="${code?.orgName}" th:selected="${searchParams?.code eq code.orgCode}">
|
th:text="${code?.orgName}" th:selected="${searchParams?.code eq code.orgCode}">
|
||||||
</option>
|
</option>
|
||||||
|
|
@ -72,12 +71,12 @@
|
||||||
<th rowspan="2">세부내역</th>
|
<th rowspan="2">세부내역</th>
|
||||||
<th rowspan="2">예산총액</th>
|
<th rowspan="2">예산총액</th>
|
||||||
<th rowspan="2">예산총배정액<br>(누적)</th>
|
<th rowspan="2">예산총배정액<br>(누적)</th>
|
||||||
<th:block th:each="orglist : ${downOrgList}">
|
<th:block th:each="orglist : ${downList}">
|
||||||
<th colspan="2" th:text="${orglist.orgName}"></th>
|
<th colspan="2" th:text="${orglist.orgName}"></th>
|
||||||
</th:block>
|
</th:block>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="table-secondary">
|
<tr class="table-secondary">
|
||||||
<th:block th:each="orglist : ${downOrgList}">
|
<th:block th:each="orglist : ${downList}">
|
||||||
<th>기간배정액</th>
|
<th>기간배정액</th>
|
||||||
<th>누적액</th>
|
<th>누적액</th>
|
||||||
</th:block>
|
</th:block>
|
||||||
|
|
@ -90,7 +89,7 @@
|
||||||
<td th:text="${info.budgetNameL3}"></td>
|
<td th:text="${info.budgetNameL3}"></td>
|
||||||
<td th:text="${#numbers.formatInteger(info.planAmount,1,'COMMA')}" class="text-end"></td>
|
<td th:text="${#numbers.formatInteger(info.planAmount,1,'COMMA')}" class="text-end"></td>
|
||||||
<td th:text="${#numbers.formatInteger(info.totalAssignAmount,1,'COMMA')}" class="text-end"></td>
|
<td th:text="${#numbers.formatInteger(info.totalAssignAmount,1,'COMMA')}" class="text-end"></td>
|
||||||
<th:block th:each="orglist, j : ${downOrgList}">
|
<th:block th:each="orglist, j : ${downList}">
|
||||||
<th:block th:if="${j.index} == '0'">
|
<th:block th:if="${j.index} == '0'">
|
||||||
<td th:text="${#numbers.formatInteger(info.periodAssignAmount1,1,'COMMA')}" class="text-end"></td>
|
<td th:text="${#numbers.formatInteger(info.periodAssignAmount1,1,'COMMA')}" class="text-end"></td>
|
||||||
<td th:text="${#numbers.formatInteger(info.sumAssignAmount1,1,'COMMA')}" class="text-end"></td>
|
<td th:text="${#numbers.formatInteger(info.sumAssignAmount1,1,'COMMA')}" class="text-end"></td>
|
||||||
|
|
|
||||||
|
|
@ -40,7 +40,6 @@
|
||||||
<div class="col-auto">
|
<div class="col-auto">
|
||||||
<th:block th:if="${loginOrgan eq 'OG001'}">
|
<th:block th:if="${loginOrgan eq 'OG001'}">
|
||||||
<select class="form-select form-select-sm" name="code" id="code">
|
<select class="form-select form-select-sm" name="code" id="code">
|
||||||
<option value="OG001">본청</option>
|
|
||||||
<option th:each="code : ${downOrgList}" th:value="${code?.orgCode}"
|
<option th:each="code : ${downOrgList}" th:value="${code?.orgCode}"
|
||||||
th:text="${code?.orgName}" th:selected="${searchParams?.code eq code.orgCode}">
|
th:text="${code?.orgName}" th:selected="${searchParams?.code eq code.orgCode}">
|
||||||
</option>
|
</option>
|
||||||
|
|
@ -74,14 +73,14 @@
|
||||||
<th rowspan="2">예산총액</th>
|
<th rowspan="2">예산총액</th>
|
||||||
<th rowspan="2">예산총배정액<br>(누적)</th>
|
<th rowspan="2">예산총배정액<br>(누적)</th>
|
||||||
<th colspan="2">집행액(총계)</th>
|
<th colspan="2">집행액(총계)</th>
|
||||||
<th:block th:each="org:${downOrgList}">
|
<th:block th:each="org:${downList}">
|
||||||
<th colspan="4" class="w-400px" th:text="${org.orgName}"></th>
|
<th colspan="4" class="w-400px" th:text="${org.orgName}"></th>
|
||||||
</th:block>
|
</th:block>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="table-secondary">
|
<tr class="table-secondary">
|
||||||
<th>지출총액</th>
|
<th>지출총액</th>
|
||||||
<th>보유잔액</th>
|
<th>보유잔액</th>
|
||||||
<th:block th:each="org : ${downOrgList}">
|
<th:block th:each="org : ${downList}">
|
||||||
<th class="w-100px">배정액</th>
|
<th class="w-100px">배정액</th>
|
||||||
<th class="w-100px">지출총액</th>
|
<th class="w-100px">지출총액</th>
|
||||||
<th class="w-100px">잔액</th>
|
<th class="w-100px">잔액</th>
|
||||||
|
|
@ -101,7 +100,7 @@
|
||||||
<td th:text="${#numbers.formatInteger(info.totalAssignAmount,1,'COMMA')}" class="text-end"></td>
|
<td th:text="${#numbers.formatInteger(info.totalAssignAmount,1,'COMMA')}" class="text-end"></td>
|
||||||
<td th:text="${#numbers.formatInteger(info.expenseTAmount,1,'COMMA')}" class="text-end"></td>
|
<td th:text="${#numbers.formatInteger(info.expenseTAmount,1,'COMMA')}" class="text-end"></td>
|
||||||
<td th:text="${#numbers.formatInteger(info.balanceTAmount,1,'COMMA')}" class="text-end"></td>
|
<td th:text="${#numbers.formatInteger(info.balanceTAmount,1,'COMMA')}" class="text-end"></td>
|
||||||
<th:block th:each="orglist, j : ${downOrgList}">
|
<th:block th:each="orglist, j : ${downList}">
|
||||||
<th:block th:if="${j.index} == '0'"><!--배정, 집행, 잔액, 률-->
|
<th:block th:if="${j.index} == '0'"><!--배정, 집행, 잔액, 률-->
|
||||||
<td th:text="${#numbers.formatInteger(info.periodAssignAmount1,1,'COMMA')}" class="text-end"></td>
|
<td th:text="${#numbers.formatInteger(info.periodAssignAmount1,1,'COMMA')}" class="text-end"></td>
|
||||||
<td th:text="${#numbers.formatInteger(info.expensePAmount1,1,'COMMA')}" class="text-end"></td>
|
<td th:text="${#numbers.formatInteger(info.expensePAmount1,1,'COMMA')}" class="text-end"></td>
|
||||||
|
|
|
||||||
|
|
@ -45,18 +45,30 @@
|
||||||
<div class="col-auto">
|
<div class="col-auto">
|
||||||
<div class="row justify-content-end">
|
<div class="row justify-content-end">
|
||||||
<div class="col-auto">
|
<div class="col-auto">
|
||||||
|
<th:block th:if="${loginOrgan eq 'OG001'}">
|
||||||
|
<select class="form-select form-select-sm" name="code" id="code">
|
||||||
|
<option th:each="code : ${downOrgList}" th:value="${code?.orgCode}"
|
||||||
|
th:text="${code?.orgName}" th:selected="${searchParams?.code eq code.orgCode}">
|
||||||
|
</option>
|
||||||
|
</select>
|
||||||
|
</th:block>
|
||||||
|
<th:block th:unless="${loginOrgan eq 'OG001'}">
|
||||||
|
<input type="hidden" name="code" id="code" th:value="${loginOrgan}">
|
||||||
|
</th:block>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-auto">
|
<div class="col-auto">
|
||||||
<select class="form-select form-select-sm" name="won" id="won">
|
<select class="form-select form-select-sm" name="won" id="won">
|
||||||
<option value="1" th:selected="${searchParams?.won eq '1'}">원</option>
|
<option value="1" th:selected="${searchParams?.won eq 1}">원</option>
|
||||||
<option value="2" th:selected="${searchParams?.won eq '2'}">백원</option>
|
<option value="100" th:selected="${searchParams?.won eq 100}">백원</option>
|
||||||
<option value="3" th:selected="${searchParams?.won eq '3'}">천원</option>
|
<option value="1000" th:selected="${searchParams?.won eq 1000}">천원</option>
|
||||||
<option value="4" th:selected="${searchParams?.won eq '4'}">만원</option>
|
<option value="10000" th:selected="${searchParams?.won eq 10000}">만원</option>
|
||||||
</select>
|
</select>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-auto">
|
<div class="col-auto">
|
||||||
<select class="form-select form-select-sm" name="year" id="year" onchange="changeYear()">
|
<select class="form-select form-select-sm" name="year" id="year" onchange="changeYear()">
|
||||||
<option th:each="info, i : ${yearList}" th:value="${info.year}" th:selected="${searchParams?.year eq info.year}" th:text="${info.year}">2023</option>
|
<th:block th:each="info, i : ${yearList}">
|
||||||
|
<option th:value="${info.year}" th:selected="${searchParams?.year eq info.year}" th:text="${info.year}">2023</option>
|
||||||
|
</th:block>
|
||||||
</select>
|
</select>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-auto">
|
<div class="col-auto">
|
||||||
|
|
@ -84,7 +96,7 @@
|
||||||
<tr class="table-secondary">
|
<tr class="table-secondary">
|
||||||
|
|
||||||
<th rowspan="2">재무관서</th>
|
<th rowspan="2">재무관서</th>
|
||||||
<th rowspan="2">예산총액</th>
|
<!--<th rowspan="2">예산총액</th>-->
|
||||||
<th rowspan="2">예산배정액<br/>(누적)</th>
|
<th rowspan="2">예산배정액<br/>(누적)</th>
|
||||||
<th rowspan="1" colspan="3">집행액(총계)</th>
|
<th rowspan="1" colspan="3">집행액(총계)</th>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
@ -97,12 +109,16 @@
|
||||||
</thead>
|
</thead>
|
||||||
<tbody class="table-group-divider" id="ResultRow">
|
<tbody class="table-group-divider" id="ResultRow">
|
||||||
<tr class="faRptTr" th:each="info, i : ${list}">
|
<tr class="faRptTr" th:each="info, i : ${list}">
|
||||||
<td th:text="${info.orgName}"></td>
|
<td>
|
||||||
<td th:text="${#numbers.formatInteger(info.planAmount,1,'COMMA')}"></td>
|
<th:block th:each="code:${session.commonCode.get('OG')}">
|
||||||
<td th:text="${#numbers.formatInteger(info.totalAssignAmount,1,'COMMA')}"></td>
|
<th:block th:if="${code.itemCd eq info.organCd}" th:text="${code.itemValue}"></th:block>
|
||||||
<td th:text="${#numbers.formatInteger(info.expenseTAmount,1,'COMMA')}"></td>
|
</th:block>
|
||||||
<td th:text="${#numbers.formatInteger(info.balanceTAmount,1,'COMMA')}"></td>
|
</td>
|
||||||
<td th:text="${#numbers.formatInteger(info.ExpenseTotalRate,1,'COMMA')}"></td>
|
<!--<td th:text="${#numbers.formatInteger(info.planAmount,1,'COMMA')}"></td>-->
|
||||||
|
<td th:text="${#numbers.formatInteger(info.assignAmount,1,'COMMA')}"></td>
|
||||||
|
<td th:text="${#numbers.formatInteger(info.expenseAmount,1,'COMMA')}"></td>
|
||||||
|
<td th:text="${#numbers.formatInteger(info.balanceAmount,1,'COMMA')}"></td>
|
||||||
|
<td th:text="${#strings.concat(info.rate,'%')}"></td>
|
||||||
</tr>
|
</tr>
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
|
|
|
||||||
|
|
@ -51,17 +51,23 @@
|
||||||
</div>
|
</div>
|
||||||
<div class="col-auto">
|
<div class="col-auto">
|
||||||
<select class="form-select form-select-sm" name="won" id="won">
|
<select class="form-select form-select-sm" name="won" id="won">
|
||||||
<option value="1" th:selected="${searchParams?.won eq '1'}">원</option>
|
<option value="1" th:selected="${searchParams?.won eq 1}">원</option>
|
||||||
<option value="2" th:selected="${searchParams?.won eq '2'}">백원</option>
|
<option value="100" th:selected="${searchParams?.won eq 100}">백원</option>
|
||||||
<option value="3" th:selected="${searchParams?.won eq '3'}">천원</option>
|
<option value="1000" th:selected="${searchParams?.won eq 1000}">천원</option>
|
||||||
<option value="4" th:selected="${searchParams?.won eq '4'}">만원</option>
|
<option value="10000" th:selected="${searchParams?.won eq 10000}">만원</option>
|
||||||
</select>
|
</select>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-auto">
|
<div class="col-auto">
|
||||||
<select class="form-select form-select-sm" name="code" id="code">
|
<th:block th:if="${loginOrgan eq 'OG001'}">
|
||||||
<option value="OG001" th:selected="${searchParams?.code eq 'OG001'}">본청</option>
|
<select class="form-select form-select-sm" name="code" id="code">
|
||||||
<option th:each="code, i : ${codeList}" th:value="${code?.orgCode}" th:text="${code?.orgName}" th:selected="${searchParams?.code eq code.orgCode}">2023</option>
|
<option th:each="code : ${downOrgList}" th:value="${code?.orgCode}"
|
||||||
</select>
|
th:text="${code?.orgName}" th:selected="${searchParams?.code eq code.orgCode}">
|
||||||
|
</option>
|
||||||
|
</select>
|
||||||
|
</th:block>
|
||||||
|
<th:block th:unless="${loginOrgan eq 'OG001'}">
|
||||||
|
<input type="hidden" name="code" id="code" th:value="${loginOrgan}">
|
||||||
|
</th:block>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-auto">
|
<div class="col-auto">
|
||||||
<div class="input-group w-auto input-daterange" id="dateSelectorDiv">
|
<div class="input-group w-auto input-daterange" id="dateSelectorDiv">
|
||||||
|
|
@ -77,23 +83,27 @@
|
||||||
</div>
|
</div>
|
||||||
</form>
|
</form>
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-12">
|
<div class="col-12 overflow-auto">
|
||||||
<table class="table table-sm table-bordered table-hover">
|
<table class="table table-sm table-bordered table-hover text-nowrap">
|
||||||
<thead>
|
<thead>
|
||||||
<tr class="table-secondary">
|
<tr class="table-secondary">
|
||||||
<th rowspan="2">사업명</th>
|
<th rowspan="2">사업명</th>
|
||||||
<th rowspan="2">구분</th>
|
<th rowspan="2">구분</th>
|
||||||
<th rowspan="2">세부내역</th>
|
<th rowspan="2">세부내역</th>
|
||||||
|
|
||||||
<th rowspan="2">예산총액</th>
|
<th rowspan="2">예산총액</th>
|
||||||
<th rowspan="2">예산총배정액<br/>(누적)</th>
|
<th rowspan="2">예산총배정액<br/>(누적)</th>
|
||||||
|
|
||||||
<th rowspan="1" colspan="3">집행액(총계)</th>
|
<th rowspan="1" colspan="3">집행액(총계)</th>
|
||||||
<th colspan="4" th:each="orglist : ${downOrgList}" th:text="${orglist.orgName}"></th>
|
<th:block th:each="orglist : ${downList}">
|
||||||
|
<th colspan="4" th:text="${orglist.orgName}"></th>
|
||||||
|
</th:block>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="table-secondary">
|
<tr class="table-secondary">
|
||||||
<th>지출총액</th>
|
<th>지출총액</th>
|
||||||
<th>보유잔액</th>
|
<th>보유잔액</th>
|
||||||
<th>진행률</th>
|
<th>진행률</th>
|
||||||
<th:block th:each="orglist : ${downOrgList}">
|
<th:block th:each="orglist : ${downList}">
|
||||||
<th>배정액</th>
|
<th>배정액</th>
|
||||||
<th>지출총액</th>
|
<th>지출총액</th>
|
||||||
<th>잔액</th>
|
<th>잔액</th>
|
||||||
|
|
@ -109,56 +119,58 @@
|
||||||
|
|
||||||
<td th:text="${#numbers.formatInteger(info.planAmount,1,'COMMA')}"></td>
|
<td th:text="${#numbers.formatInteger(info.planAmount,1,'COMMA')}"></td>
|
||||||
<td th:text="${#numbers.formatInteger(info.totalAssignAmount,1,'COMMA')}"></td>
|
<td th:text="${#numbers.formatInteger(info.totalAssignAmount,1,'COMMA')}"></td>
|
||||||
<td th:text="${info.expenseTAmount}"></td>
|
|
||||||
|
<td th:text="${#numbers.formatInteger(info.expenseTAmount,1,'COMMA')}"></td>
|
||||||
<td th:text="${#numbers.formatInteger(info.balanceTAmount,1,'COMMA')}"></td>
|
<td th:text="${#numbers.formatInteger(info.balanceTAmount,1,'COMMA')}"></td>
|
||||||
<th:block th:each="orglist, j : ${downOrgList}">
|
<td th:text="${#strings.concat(info.taRate, '%')}"></td>
|
||||||
|
<th:block th:each="orglist, j : ${downList}">
|
||||||
<th:block th:if="${j.index} == '0'">
|
<th:block th:if="${j.index} == '0'">
|
||||||
<td th:text="${#numbers.formatInteger(info.periodAssignAmount1,1,'COMMA')}" class="text-end"></td>
|
<td th:text="${#numbers.formatInteger(info.periodAssignAmount1,1,'COMMA')}" class="text-end"></td>
|
||||||
<td th:text="${#numbers.formatInteger(info.expensePAmount1,1,'COMMA')}" class="text-end"></td>
|
<td th:text="${#numbers.formatInteger(info.expensePAmount1,1,'COMMA')}" class="text-end"></td>
|
||||||
<td th:text="${#numbers.formatInteger(info.balanceAmount1,1,'COMMA')}" class="text-end">11</td>
|
<td th:text="${#numbers.formatInteger(info.balanceAmount1,1,'COMMA')}" class="text-end">11</td>
|
||||||
<td th:text="${#numbers.formatInteger(info.expenseRate1,1,'COMMA')}" class="text-end"></td>
|
<td th:text="${#strings.concat(info.expenseRate1,'%')}" class="text-end"></td>
|
||||||
</th:block>
|
</th:block>
|
||||||
<th:block th:if="${j.index} == '1'">
|
<th:block th:if="${j.index} == '1'">
|
||||||
<td th:text="${#numbers.formatInteger(info.periodAssignAmount2,1,'COMMA')}" class="text-end"></td>
|
<td th:text="${#numbers.formatInteger(info.periodAssignAmount2,1,'COMMA')}" class="text-end"></td>
|
||||||
<td th:text="${#numbers.formatInteger(info.expensePAmount2,1,'COMMA')}" class="text-end"></td>
|
<td th:text="${#numbers.formatInteger(info.expensePAmount2,1,'COMMA')}" class="text-end"></td>
|
||||||
<td th:text="${#numbers.formatInteger(info.balanceAmount2,1,'COMMA')}" class="text-end"></td>
|
<td th:text="${#numbers.formatInteger(info.balanceAmount2,1,'COMMA')}" class="text-end"></td>
|
||||||
<td th:text="${#numbers.formatInteger(info.expenseRate2,1,'COMMA')}" class="text-end"></td>
|
<td th:text="${#strings.concat(info.expenseRate2,'%')}" class="text-end"></td>
|
||||||
</th:block>
|
</th:block>
|
||||||
<th:block th:if="${j.index} == '2'">
|
<th:block th:if="${j.index} == '2'">
|
||||||
<td th:text="${#numbers.formatInteger(info.periodAssignAmount3,1,'COMMA')}" class="text-end"></td>
|
<td th:text="${#numbers.formatInteger(info.periodAssignAmount3,1,'COMMA')}" class="text-end"></td>
|
||||||
<td th:text="${#numbers.formatInteger(info.expensePAmount3,1,'COMMA')}" class="text-end"></td>
|
<td th:text="${#numbers.formatInteger(info.expensePAmount3,1,'COMMA')}" class="text-end"></td>
|
||||||
<td th:text="${#numbers.formatInteger(info.balanceAmount3,1,'COMMA')}" class="text-end"></td>
|
<td th:text="${#numbers.formatInteger(info.balanceAmount3,1,'COMMA')}" class="text-end"></td>
|
||||||
<td th:text="${#numbers.formatInteger(info.expenseRate3,1,'COMMA')}" class="text-end"></td>
|
<td th:text="${#strings.concat(info.expenseRate3,'%')}" class="text-end"></td>
|
||||||
</th:block>
|
</th:block>
|
||||||
<th:block th:if="${j.index} == '3'">
|
<th:block th:if="${j.index} == '3'">
|
||||||
<td th:text="${#numbers.formatInteger(info.periodAssignAmount4,1,'COMMA')}" class="text-end"></td>
|
<td th:text="${#numbers.formatInteger(info.periodAssignAmount4,1,'COMMA')}" class="text-end"></td>
|
||||||
<td th:text="${#numbers.formatInteger(info.expensePAmount4,1,'COMMA')}" class="text-end"></td>
|
<td th:text="${#numbers.formatInteger(info.expensePAmount4,1,'COMMA')}" class="text-end"></td>
|
||||||
<td th:text="${#numbers.formatInteger(info.balanceAmount4,1,'COMMA')}" class="text-end"></td>
|
<td th:text="${#numbers.formatInteger(info.balanceAmount4,1,'COMMA')}" class="text-end"></td>
|
||||||
<td th:text="${#numbers.formatInteger(info.expenseRate4,1,'COMMA')}" class="text-end"></td>
|
<td th:text="${#strings.concat(info.expenseRate4,'%')}" class="text-end"></td>
|
||||||
</th:block>
|
</th:block>
|
||||||
<th:block th:if="${j.index} == '4'">
|
<th:block th:if="${j.index} == '4'">
|
||||||
<td th:text="${#numbers.formatInteger(info.periodAssignAmount5,1,'COMMA')}" class="text-end"></td>
|
<td th:text="${#numbers.formatInteger(info.periodAssignAmount5,1,'COMMA')}" class="text-end"></td>
|
||||||
<td th:text="${#numbers.formatInteger(info.expensePAmount5,1,'COMMA')}" class="text-end"></td>
|
<td th:text="${#numbers.formatInteger(info.expensePAmount5,1,'COMMA')}" class="text-end"></td>
|
||||||
<td th:text="${#numbers.formatInteger(info.balanceAmount5,1,'COMMA')}" class="text-end"></td>
|
<td th:text="${#numbers.formatInteger(info.balanceAmount5,1,'COMMA')}" class="text-end"></td>
|
||||||
<td th:text="${#numbers.formatInteger(info.expenseRate5,1,'COMMA')}" class="text-end"></td>
|
<td th:text="${#strings.concat(info.expenseRate5,'%')}" class="text-end"></td>
|
||||||
</th:block>
|
</th:block>
|
||||||
<th:block th:if="${j.index} == '5'">
|
<th:block th:if="${j.index} == '5'">
|
||||||
<td th:text="${#numbers.formatInteger(info.periodAssignAmount6,1,'COMMA')}" class="text-end"></td>
|
<td th:text="${#numbers.formatInteger(info.periodAssignAmount6,1,'COMMA')}" class="text-end"></td>
|
||||||
<td th:text="${#numbers.formatInteger(info.expensePAmount6,1,'COMMA')}" class="text-end"></td>
|
<td th:text="${#numbers.formatInteger(info.expensePAmount6,1,'COMMA')}" class="text-end"></td>
|
||||||
<td th:text="${#numbers.formatInteger(info.balanceAmount6,1,'COMMA')}" class="text-end"></td>
|
<td th:text="${#numbers.formatInteger(info.balanceAmount6,1,'COMMA')}" class="text-end"></td>
|
||||||
<td th:text="${#numbers.formatInteger(info.expenseRate6,1,'COMMA')}" class="text-end"></td>
|
<td th:text="${#strings.concat(info.expenseRate6,'%')}" class="text-end"></td>
|
||||||
</th:block>
|
</th:block>
|
||||||
<th:block th:if="${j.index} == '6'">
|
<th:block th:if="${j.index} == '6'">
|
||||||
<td th:text="${#numbers.formatInteger(info.periodAssignAmount7,1,'COMMA')}" class="text-end"></td>
|
<td th:text="${#numbers.formatInteger(info.periodAssignAmount7,1,'COMMA')}" class="text-end"></td>
|
||||||
<td th:text="${#numbers.formatInteger(info.expensePAmount7,1,'COMMA')}" class="text-end"></td>
|
<td th:text="${#numbers.formatInteger(info.expensePAmount7,1,'COMMA')}" class="text-end"></td>
|
||||||
<td th:text="${#numbers.formatInteger(info.balanceAmount7,1,'COMMA')}" class="text-end"></td>
|
<td th:text="${#numbers.formatInteger(info.balanceAmount7,1,'COMMA')}" class="text-end"></td>
|
||||||
<td th:text="${#numbers.formatInteger(info.expenseRate7,1,'COMMA')}" class="text-end"></td>
|
<td th:text="${#strings.concat(info.expenseRate7,'%')}" class="text-end"></td>
|
||||||
</th:block>
|
</th:block>
|
||||||
<th:block th:if="${j.index} == '7'">
|
<th:block th:if="${j.index} == '7'">
|
||||||
<td th:text="${#numbers.formatInteger(info.periodAssignAmount8,1,'COMMA')}" class="text-end"></td>
|
<td th:text="${#numbers.formatInteger(info.periodAssignAmount8,1,'COMMA')}" class="text-end"></td>
|
||||||
<td th:text="${#numbers.formatInteger(info.expensePAmount8,1,'COMMA')}" class="text-end"></td>
|
<td th:text="${#numbers.formatInteger(info.expensePAmount8,1,'COMMA')}" class="text-end"></td>
|
||||||
<td th:text="${#numbers.formatInteger(info.balanceAmount8,1,'COMMA')}" class="text-end"></td>
|
<td th:text="${#numbers.formatInteger(info.balanceAmount8,1,'COMMA')}" class="text-end"></td>
|
||||||
<td th:text="${#numbers.formatInteger(info.expenseRate8,1,'COMMA')}" class="text-end"></td>
|
<td th:text="${#strings.concat(info.expenseRate8,'%')}" class="text-end"></td>
|
||||||
</th:block>
|
</th:block>
|
||||||
</th:block>
|
</th:block>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue