parent
735f7c9b35
commit
b2fccdd946
|
|
@ -90,15 +90,13 @@ public class BudgetController {
|
|||
//예산편성 - 항목변경
|
||||
@PutMapping("/budgeting/code")
|
||||
public ResultResponse<?> updateBudgeting(@AuthenticationPrincipal UserInfo loginUser, BudgetDto.BudgetingUpdateReqeust requestDto) {
|
||||
budgetService.updateBudgetingList(loginUser, requestDto);
|
||||
return new ResultResponse().successResponse(ResultResponseCode.SUCCESS);
|
||||
return new ResultResponse(budgetService.updateBudgetingList(loginUser, requestDto));
|
||||
}
|
||||
|
||||
//예산편성 - 항목삭제
|
||||
@DeleteMapping("/budgeting/code")
|
||||
public ResultResponse<?> deleteBudgeting(@AuthenticationPrincipal UserInfo loginUser, BudgetDto.BudgetingInsertReqeust requestDto) {
|
||||
budgetService.deleteBudgetingList(loginUser, requestDto);
|
||||
return new ResultResponse().successResponse(ResultResponseCode.SUCCESS);
|
||||
return new ResultResponse(budgetService.deleteBudgetingList(loginUser, requestDto));
|
||||
}
|
||||
|
||||
// 예산편성 - 예산편성 버튼(modal)
|
||||
|
|
|
|||
|
|
@ -12,9 +12,6 @@ public interface BudgetMapper {
|
|||
List<YearResult> callSpGetBudgetCodeYearList();
|
||||
UpdateResult callSpCopyBudgetItem(BudgetParams param);
|
||||
UpdateResult callBruteForceDeleteBudgetItem(BudgetParams param);
|
||||
UpdateResult callSpAddBudgetPlanCodeName(BudgetParams param);
|
||||
UpdateResult callSpUpdateBudgetPlanCodeName(BudgetParams param);
|
||||
UpdateResult callSpDeleteBudgetPlanCodeName(BudgetParams param);
|
||||
UpdateResult callSpUpdateBudgetPlanCodeItem(BudgetParams param);
|
||||
UpdateResult callSpDeleteBudgetPlan(BudgetParams param);
|
||||
List<AssignResult> callSpGetBudgetAssignInfo(BudgetParams param);
|
||||
|
|
@ -25,7 +22,6 @@ public interface BudgetMapper {
|
|||
List<ExpenseResult> callSpGetBudgetExpenseInfo(BudgetParams params);
|
||||
List<ExpenseInfoResult> callSpGetBudgetExpense(BudgetParams params);
|
||||
UpdateResult callSpAddBudgetExpense(BudgetParams params);
|
||||
List<ExpenseResult> callSpUpdateBudgetExpense(BudgetParams params);
|
||||
List<ExpenseResult> callSpGetbudgetStatOrg(BudgetParams params);
|
||||
List<StatsItemResult> callSpGetbudgetStatDetail(BudgetParams params);
|
||||
List<L3CodeResult> callSpGetBudgetCodeL3(BudgetParams params);
|
||||
|
|
|
|||
|
|
@ -7,5 +7,5 @@ import java.util.Optional;
|
|||
|
||||
public interface TblBudgetCodeL1Repository extends JpaRepository<TblBudgetCodeL1, String> {
|
||||
Optional<TblBudgetCodeL1> findByL1NameAndL1YearAndUseTag(String l1Name, String l1Year, String useTag);
|
||||
Optional<TblBudgetCodeL1> findTop1ByL1YearAndUseTagOrderByL1CodeDesc(String l1Year, String useTag);
|
||||
Optional<TblBudgetCodeL1> findTop1ByL1YearOrderByL1CodeDesc(String l1Year);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -8,5 +8,5 @@ import java.util.Optional;
|
|||
public interface TblBudgetCodeL2Repository extends JpaRepository<TblBudgetCodeL2, String> {
|
||||
Optional<TblBudgetCodeL2> findByL2NameAndL1CodeAndUseTag(String codeL2Name, String l1Code, String y);
|
||||
|
||||
Optional<TblBudgetCodeL2> findTop1ByL1CodeAndUseTagOrderByL2CodeDesc(String l1Code, String useTag);
|
||||
Optional<TblBudgetCodeL2> findTop1ByL1CodeOrderByL2CodeDesc(String l1Code);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@ import org.springframework.data.jpa.repository.JpaRepository;
|
|||
import java.util.Optional;
|
||||
|
||||
public interface TblBudgetCodeL3Repository extends JpaRepository<TblBudgetCodeL3, String> {
|
||||
Optional<TblBudgetCodeL3> findByL3NameAndL2CodeAndUseTag(String codeL3Name, String l2Code, String y);
|
||||
Optional<TblBudgetCodeL3> findByL3NameAndL2CodeAndUseTag(String codeL3Name, String l2Code, String useTag);
|
||||
|
||||
Optional<TblBudgetCodeL3> findTop1ByL2CodeAndUseTagOrderByL3CodeDesc(String l2Code, String y);
|
||||
Optional<TblBudgetCodeL3> findTop1ByL2CodeOrderByL3CodeDesc(String l2Code);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,9 +1,10 @@
|
|||
package com.dbnt.faisp.main.budget.repository;
|
||||
|
||||
import com.dbnt.faisp.main.budget.model.TblBudgetHistory;
|
||||
import com.dbnt.faisp.main.budget.model.TblBudgetPlan;
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
|
||||
public interface TblBudgetPlanRepository extends JpaRepository<TblBudgetPlan, Integer> {
|
||||
import java.util.Optional;
|
||||
|
||||
public interface TblBudgetPlanRepository extends JpaRepository<TblBudgetPlan, Integer> {
|
||||
Optional<TblBudgetPlan> findTop1ByBudgetCodeAndOrgCode(String budgetCode, String orgCode);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -117,7 +117,7 @@ public class BudgetService {
|
|||
|
||||
TblBudgetCodeL1 codeL1 = codeL1Repository.findByL1NameAndL1YearAndUseTag(codeL1Name, year, "Y").orElse(new TblBudgetCodeL1());
|
||||
if(codeL1.getL1Code() == null){
|
||||
TblBudgetCodeL1 lastL1Code = codeL1Repository.findTop1ByL1YearAndUseTagOrderByL1CodeDesc(year, "Y").orElse(null);
|
||||
TblBudgetCodeL1 lastL1Code = codeL1Repository.findTop1ByL1YearOrderByL1CodeDesc(year).orElse(null);
|
||||
String l1Code = makeCode(year.substring(2), lastL1Code==null?null:lastL1Code.getL1Code());
|
||||
Integer seqOrd = lastL1Code==null?1:(lastL1Code.getSeqOrd()+1);
|
||||
codeL1.setData(l1Code, codeL1Name, year, "Y", seqOrd, "항목추가", modiDate);
|
||||
|
|
@ -127,7 +127,7 @@ public class BudgetService {
|
|||
String l1Code = codeL1.getL1Code();
|
||||
TblBudgetCodeL2 codeL2 = codeL2Repository.findByL2NameAndL1CodeAndUseTag(codeL2Name, l1Code, "Y").orElse(new TblBudgetCodeL2());;
|
||||
if(codeL2.getL1Code() == null){
|
||||
TblBudgetCodeL2 lastL2Code = codeL2Repository.findTop1ByL1CodeAndUseTagOrderByL2CodeDesc(l1Code, "Y").orElse(null);
|
||||
TblBudgetCodeL2 lastL2Code = codeL2Repository.findTop1ByL1CodeOrderByL2CodeDesc(l1Code).orElse(null);
|
||||
String l2Code = makeCode(l1Code, lastL2Code==null?null: lastL2Code.getL2Code());
|
||||
Integer seqOrd = lastL2Code==null?1:(lastL2Code.getSeqOrd()+1);
|
||||
codeL2.setData(l2Code, codeL1Name, l1Code, "Y", seqOrd, "항목추가", modiDate);
|
||||
|
|
@ -137,7 +137,7 @@ public class BudgetService {
|
|||
String l2Code = codeL2.getL2Code();
|
||||
TblBudgetCodeL3 codeL3 = codeL3Repository.findByL3NameAndL2CodeAndUseTag(codeL3Name, l2Code, "Y").orElse(new TblBudgetCodeL3());;
|
||||
if(codeL3.getL3Code() == null){
|
||||
TblBudgetCodeL3 lastL3Code = codeL3Repository.findTop1ByL2CodeAndUseTagOrderByL3CodeDesc(l2Code, "Y").orElse(null);
|
||||
TblBudgetCodeL3 lastL3Code = codeL3Repository.findTop1ByL2CodeOrderByL3CodeDesc(l2Code).orElse(null);
|
||||
String l3Code = makeCode(l2Code, lastL3Code==null?null: lastL3Code.getL3Code());
|
||||
Integer seqOrd = lastL3Code==null?1:(lastL3Code.getSeqOrd()+1);
|
||||
codeL3.setData(l3Code, codeL3Name, l2Code, "Y", seqOrd, "항목추가", modiDate);
|
||||
|
|
@ -167,51 +167,69 @@ public class BudgetService {
|
|||
}
|
||||
|
||||
//예산편성 - 항목변경
|
||||
public void updateBudgetingList(UserInfo loginUser, BudgetDto.BudgetingUpdateReqeust requestDto){
|
||||
// UpdateResult result = budgetRepository.callSpUpdateBudgetPlanCodeName( requestDto.getYear(), requestDto.getPrevNameL1(), requestDto.getPrevNameL2(), requestDto.getPrevNameL3(),requestDto.getNameL1(),requestDto.getNameL2(),requestDto.getNameL3(), "OG001", "admin");
|
||||
BudgetParams params = new BudgetParams();
|
||||
params.setYear(requestDto.getYear());
|
||||
params.setCode1(requestDto.getNameL1());
|
||||
params.setCode2(requestDto.getNameL2());
|
||||
params.setCode3(requestDto.getNameL3());
|
||||
params.setNewCode1(requestDto.getPrevNameL1());
|
||||
params.setNewCode2(requestDto.getPrevNameL2());
|
||||
params.setNewCode3(requestDto.getPrevNameL3());
|
||||
params.setOrg("OG001");
|
||||
params.setId("admin");
|
||||
UpdateResult result = budgetMapper.callSpUpdateBudgetPlanCodeName(params);
|
||||
@Transactional
|
||||
public ResultResponseCode updateBudgetingList(UserInfo loginUser, BudgetDto.BudgetingUpdateReqeust requestDto){
|
||||
|
||||
if(result.getResultCode().equals("100")) {
|
||||
return;
|
||||
} else if (result.getResultCode().equals("91")) {
|
||||
throw new BaseException(ResultResponseCode.DUPLICATE_CODE);
|
||||
TblBudgetCodeL1 codeL1 = codeL1Repository.findByL1NameAndL1YearAndUseTag(requestDto.getPrevNameL1(), requestDto.getYear(), "Y").orElse(new TblBudgetCodeL1());
|
||||
TblBudgetCodeL2 codeL2 = codeL2Repository.findByL2NameAndL1CodeAndUseTag(requestDto.getPrevNameL2(), codeL1.getL1Code(), "Y").orElse(new TblBudgetCodeL2());
|
||||
TblBudgetCodeL3 codeL3 = codeL3Repository.findByL3NameAndL2CodeAndUseTag(requestDto.getPrevNameL3(), codeL2.getL2Code(), "Y").orElse(null);
|
||||
if(codeL3 == null){
|
||||
return ResultResponseCode.NOT_FOUND_CODE;
|
||||
}
|
||||
|
||||
if(!codeL3.getL3Name().equals(requestDto.getNameL3())){
|
||||
TblBudgetCodeL3 duplCodeChk = codeL3Repository.findByL3NameAndL2CodeAndUseTag(requestDto.getNameL3(), codeL2.getL2Code(), "Y").orElse(null);
|
||||
if(duplCodeChk!=null){
|
||||
return ResultResponseCode.DUPLICATE_CODE;
|
||||
}else{
|
||||
codeL3.setL3Name(requestDto.getNameL3());
|
||||
codeL3Repository.save(codeL3);
|
||||
}
|
||||
}
|
||||
if(!codeL2.getL2Name().equals(requestDto.getNameL2())){
|
||||
TblBudgetCodeL2 duplCodeChk = codeL2Repository.findByL2NameAndL1CodeAndUseTag(requestDto.getNameL2(), codeL1.getL1Code(), "Y").orElse(null);
|
||||
if(duplCodeChk!=null){
|
||||
return ResultResponseCode.DUPLICATE_CODE;
|
||||
}else{
|
||||
codeL2.setL2Name(requestDto.getNameL2());
|
||||
codeL2Repository.save(codeL2);
|
||||
}
|
||||
}
|
||||
if(!codeL1.getL1Name().equals(requestDto.getNameL1())){
|
||||
TblBudgetCodeL1 duplCodeChk = codeL1Repository.findByL1NameAndL1YearAndUseTag(requestDto.getNameL1(), requestDto.getYear(), "Y").orElse(null);
|
||||
if(duplCodeChk!=null){
|
||||
return ResultResponseCode.DUPLICATE_CODE;
|
||||
}else{
|
||||
codeL1.setL1Name(requestDto.getNameL1());
|
||||
codeL1Repository.save(codeL1);
|
||||
}
|
||||
}
|
||||
|
||||
return ResultResponseCode.SUCCESS;
|
||||
}
|
||||
|
||||
//예산편성 - 항목삭제
|
||||
public void deleteBudgetingList(UserInfo loginUser, BudgetDto.BudgetingInsertReqeust requestDto){
|
||||
// System.out.println(requestDto.getYear());
|
||||
// System.out.println(requestDto.getNameL1());
|
||||
// System.out.println(requestDto.getNameL2());
|
||||
// System.out.println(requestDto.getNameL3());
|
||||
UpdateResult result = budgetRepository.callSpDeleteBudgetPlanCodeName(requestDto.getYear(),requestDto.getNameL1(),requestDto.getNameL2(),requestDto.getNameL3(), "OG001", "admin");
|
||||
// BudgetParams params = new BudgetParams();
|
||||
// params.setYear(requestDto.getYear());
|
||||
// params.setCode1(requestDto.getNameL1());
|
||||
// params.setCode2(requestDto.getNameL2());
|
||||
// params.setCode3(requestDto.getNameL3());
|
||||
// params.setOrg("OG001");
|
||||
// params.setId("admin");
|
||||
// UpdateResult result = budgetMapper.callSpDeleteBudgetPlanCodeName(params);
|
||||
|
||||
// System.out.println(result.getErrorMessage());
|
||||
// System.out.println(result.getResultCode());
|
||||
// System.out.println(result.getResultCount());
|
||||
if(result.getResultCode().equals("100")) {
|
||||
return;
|
||||
} else {
|
||||
throw new BaseException(ResultResponseCode.DELETE_FOUND_VALUE);
|
||||
@Transactional
|
||||
public ResultResponseCode deleteBudgetingList(UserInfo loginUser, BudgetDto.BudgetingInsertReqeust requestDto){
|
||||
/*잔여 예산 확인*/
|
||||
TblBudgetCodeL1 codeL1 = codeL1Repository.findByL1NameAndL1YearAndUseTag(requestDto.getNameL1(), requestDto.getYear(), "Y").orElse(new TblBudgetCodeL1());
|
||||
TblBudgetCodeL2 codeL2 = codeL2Repository.findByL2NameAndL1CodeAndUseTag(requestDto.getNameL2(), codeL1.getL1Code(), "Y").orElse(new TblBudgetCodeL2());
|
||||
TblBudgetCodeL3 codeL3 = codeL3Repository.findByL3NameAndL2CodeAndUseTag(requestDto.getNameL3(), codeL2.getL2Code(), "Y").orElse(null);
|
||||
if(codeL3 == null){
|
||||
return ResultResponseCode.NOT_FOUND_CODE;
|
||||
}
|
||||
|
||||
TblBudgetPlan savedAmount = planRepository.findTop1ByBudgetCodeAndOrgCode(codeL3.getL3Code(), loginUser.getOgCd()).orElse(null);
|
||||
if(savedAmount==null){
|
||||
return ResultResponseCode.NOT_FOUND_CODE;
|
||||
}else if(savedAmount.getAmount()>0){
|
||||
return ResultResponseCode.DELETE_FOUND_VALUE;
|
||||
}else{
|
||||
codeL3.setUseTag("N");
|
||||
codeL3Repository.save(codeL3);
|
||||
}
|
||||
|
||||
return ResultResponseCode.SUCCESS;
|
||||
}
|
||||
|
||||
// 예산편성 - 예산편성 저장(modal)
|
||||
|
|
|
|||
|
|
@ -26,12 +26,6 @@
|
|||
<select id="callBruteForceDeleteBudgetItem" resultType="UpdateResult" parameterType="BudgetParams">
|
||||
call sp_brute_force_delete_budget_item(#{year}, #{id},NULL,NULL,NULL)
|
||||
</select>
|
||||
<select id="callSpUpdateBudgetPlanCodeName" resultType="UpdateResult" parameterType="BudgetParams">
|
||||
call sp_update_budget_plan_codename(#{year}, #{code1}, #{code2}, #{code3}, #{newCode1}, #{newCode2}, #{newCode3}, #{org},#{id},NULL,NULL,NULL)
|
||||
</select>
|
||||
<select id="callSpDeleteBudgetPlanCodeName" resultType="UpdateResult" parameterType="BudgetParams">
|
||||
call sp_delete_budget_plan_codename(#{year}, #{code1}, #{code2}, #{code3}, #{org},#{id},NULL,NULL,NULL)
|
||||
</select>
|
||||
<select id="callSpUpdateBudgetPlanCodeItem" resultType="UpdateResult" parameterType="BudgetParams">
|
||||
call sp_update_budget_plan_item (#{year}, #{code1}, #{code2}, #{code3}, #{amount}::int, #{org}, #{id},NULL, NULL, NULL)
|
||||
</select>
|
||||
|
|
@ -69,9 +63,6 @@
|
|||
<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)
|
||||
</select>
|
||||
<select id="callSpUpdateBudgetExpense" resultType="ExpenseResult" parameterType="BudgetParams">
|
||||
call sp_update_budget_expense(#{seq},#{item} ,#{amount}::int,NULL,NULL,NULL,NULL,NULL)
|
||||
</select>
|
||||
<select id="callSpGetbudgetStatOrg" resultType="ExpenseResult" parameterType="BudgetParams">
|
||||
select *
|
||||
from sp_get_budget_statistics_by_org(#{year},#{code},#{user},#{stDate}::date,#{edDate}::date,#{won})
|
||||
|
|
|
|||
|
|
@ -20,7 +20,7 @@ $(document).on('click', '#deleteBtn', function () {
|
|||
type: 'DELETE',
|
||||
data: params,
|
||||
url: "/budget/budgeting/code",
|
||||
beforeSend: function (xhr) {
|
||||
beforeSend: function (xhr){
|
||||
xhr.setRequestHeader($("[name='_csrf_header']").val(), $("[name='_csrf']").val());
|
||||
},
|
||||
success: function (data) {
|
||||
|
|
|
|||
Loading…
Reference in New Issue