과거데이터 : API URL 수정,판매점&USER 테이블명 변경, 과거일자 기준일 추가
USER : 판매점&USER 동기화 API 추가
This commit is contained in:
parent
257a791e6a
commit
cf8c045c2b
@ -19,7 +19,7 @@ public class ExcelDownController {
|
||||
private final ExcelDownService excelDownService;
|
||||
|
||||
@Operation(description = "과거데이터_견적 엑셀다운로드 조회")
|
||||
@PostMapping("/quotExclDownData")
|
||||
@PostMapping("/quot-excl-down-data")
|
||||
@ResponseStatus(HttpStatus.OK)
|
||||
public QuotResponse quotExclDownData(@RequestBody QuotRequest quotRequest) {
|
||||
|
||||
@ -34,7 +34,7 @@ public class ExcelDownController {
|
||||
}
|
||||
|
||||
@Operation(description = "과거데이터_자연재해보상입력 엑셀다운로드 조회")
|
||||
@PostMapping("/ntrCtsCmpExclDownData")
|
||||
@PostMapping("/ntr-cts-cmp-excl-down-data")
|
||||
@ResponseStatus(HttpStatus.OK)
|
||||
public List<NtrCtsCmpResponse> ntrCtsCmpExclDownData(@RequestBody NtrCtsCmpRequest ntrCtsCmpRequest) {
|
||||
return excelDownService.selectNtrCtsCmpExclDownData(ntrCtsCmpRequest);
|
||||
|
||||
@ -8,6 +8,7 @@ import lombok.Setter;
|
||||
@Getter
|
||||
@Setter
|
||||
public class NtrCtsCmpRequest {
|
||||
private String sch_baseDt; /* 과거일자 기준일 */
|
||||
private String sch_dtType; /* 기간 구분 ( 자연재해보상통지일, 보증서발급일, 설치일 ) */
|
||||
private String sch_startDt; /* 시작일 */
|
||||
private String sch_endDt; /* 종료일 */
|
||||
|
||||
@ -9,6 +9,7 @@ import lombok.Setter;
|
||||
@Setter
|
||||
public class QuotRequest {
|
||||
private String langCd; /* 언어 */
|
||||
private String sch_baseDt; /* 과거일자 기준일 */
|
||||
private String sch_startDt; /* 시작일 */
|
||||
private String sch_endDt; /* 종료일 */
|
||||
private String sch_saleStoreId; /* 판매대리점Id */
|
||||
|
||||
@ -0,0 +1,49 @@
|
||||
package com.interplug.qcast.biz.user;
|
||||
|
||||
import com.interplug.qcast.biz.user.dto.StoreRequest;
|
||||
import com.interplug.qcast.biz.user.dto.UserRequest;
|
||||
import com.interplug.qcast.biz.user.dto.UserResponse;
|
||||
import io.swagger.v3.oas.annotations.Operation;
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.http.HttpStatus;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Slf4j
|
||||
@RestController
|
||||
@RequestMapping("/api/user")
|
||||
@RequiredArgsConstructor
|
||||
@Tag(name = "UserController", description = "User 관련 API")
|
||||
public class UserController {
|
||||
private final UserService userService;
|
||||
|
||||
@Operation(description = "판매점 정보를 등록/수정 한다.(동기화)")
|
||||
@PutMapping("/store-save")
|
||||
@ResponseStatus(HttpStatus.OK)
|
||||
public UserResponse setStoreInfo(@RequestBody StoreRequest storeReq) {
|
||||
UserResponse userResponse = new UserResponse();
|
||||
|
||||
int resultCnt = userService.setStoreSave(storeReq);
|
||||
|
||||
if (resultCnt > 0) userResponse.setCode("200");
|
||||
else userResponse.setCode("500");
|
||||
|
||||
return userResponse;
|
||||
}
|
||||
|
||||
@Operation(description = "user 정보를 등록/수정 한다.(동기화)")
|
||||
@PutMapping("/user-save")
|
||||
public UserResponse updateUserInfo(@RequestBody List<UserRequest> userReqList) {
|
||||
UserResponse userResponse = new UserResponse();
|
||||
|
||||
int resultCnt = userService.setUserSave(userReqList);
|
||||
|
||||
if (resultCnt > 0) userResponse.setCode("200");
|
||||
else userResponse.setCode("500");
|
||||
|
||||
return userResponse;
|
||||
}
|
||||
}
|
||||
13
src/main/java/com/interplug/qcast/biz/user/UserMapper.java
Normal file
13
src/main/java/com/interplug/qcast/biz/user/UserMapper.java
Normal file
@ -0,0 +1,13 @@
|
||||
package com.interplug.qcast.biz.user;
|
||||
|
||||
import com.interplug.qcast.biz.user.dto.StoreRequest;
|
||||
import com.interplug.qcast.biz.user.dto.UserRequest;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
|
||||
@Mapper
|
||||
public interface UserMapper {
|
||||
|
||||
int setStoreSave(StoreRequest storeReq);
|
||||
|
||||
int setUserSave(UserRequest userReqList);
|
||||
}
|
||||
29
src/main/java/com/interplug/qcast/biz/user/UserService.java
Normal file
29
src/main/java/com/interplug/qcast/biz/user/UserService.java
Normal file
@ -0,0 +1,29 @@
|
||||
package com.interplug.qcast.biz.user;
|
||||
|
||||
import com.interplug.qcast.biz.user.dto.StoreRequest;
|
||||
import com.interplug.qcast.biz.user.dto.UserRequest;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Service
|
||||
@RequiredArgsConstructor
|
||||
public class UserService {
|
||||
private final UserMapper userMapper;
|
||||
|
||||
public int setStoreSave(StoreRequest storeReq) {
|
||||
return userMapper.setStoreSave(storeReq);
|
||||
}
|
||||
|
||||
public int setUserSave(List<UserRequest> userReqList) {
|
||||
int resultCnt = 0;
|
||||
if (!userReqList.isEmpty()) {
|
||||
for (UserRequest userReq : userReqList) {
|
||||
resultCnt += userMapper.setUserSave(userReq);
|
||||
}
|
||||
}
|
||||
return resultCnt;
|
||||
}
|
||||
|
||||
}
|
||||
@ -0,0 +1,40 @@
|
||||
package com.interplug.qcast.biz.user.dto;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
public class StoreRequest {
|
||||
|
||||
private String saleStoreId;
|
||||
private String saleStoreName;
|
||||
private String saleStoreNameKana;
|
||||
private String zipNo;
|
||||
private String address;
|
||||
private String tel;
|
||||
private String fax;
|
||||
private String applicationDate;
|
||||
private String approvalDate;
|
||||
private String approveFlg;
|
||||
private String paymentTerms;
|
||||
private String firstAgentFlg;
|
||||
private String secondAgentFlg;
|
||||
private String firstAgentId;
|
||||
private String parentSaleAgentId;
|
||||
private String businessCharger;
|
||||
private String businessChargerCd;
|
||||
private String dispCompanyName;
|
||||
private String dispZipNo;
|
||||
private String dispAddress;
|
||||
private String dispTel;
|
||||
private String dispFax;
|
||||
private String dispMail;
|
||||
private String saleStoreLevel;
|
||||
private String delFlg;
|
||||
private String registDatetime;
|
||||
private String lastEditDatetime;
|
||||
private String lastEditUser;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
@ -0,0 +1,25 @@
|
||||
package com.interplug.qcast.biz.user.dto;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
public class UserRequest {
|
||||
|
||||
private String saleStoreId;
|
||||
private String userId;
|
||||
private String password;
|
||||
private String category;
|
||||
private String name;
|
||||
private String nameKana;
|
||||
private String mail;
|
||||
private String groupId;
|
||||
private String tel;
|
||||
private String fax;
|
||||
private String registDatetime;
|
||||
private String lastEditDatetime;
|
||||
private String lastEditUser;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
@ -0,0 +1,15 @@
|
||||
package com.interplug.qcast.biz.user.dto;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
public class UserResponse {
|
||||
|
||||
private String code;
|
||||
private String message;
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
@ -27,13 +27,13 @@
|
||||
, COALESCE(M.BUSINESS_TEAM, '') AS BUSINESS_TEAM /* 영업팀(판매점 등록) 営業チーム_販売店登録 */
|
||||
, (CASE WHEN UPPER(#{langCd}) = 'JA' THEN C1.CODE_JP
|
||||
ELSE C1.CODE_NM
|
||||
END) AS OBJECT_STATUS /* 주택구분 住宅区分 */
|
||||
END) AS OBJECT_STATUS /* 주택구분 住宅区分 */
|
||||
, CONVERT(varchar, B.MANAGER_LAST_EDIT_DATETIME, 120) AS MANAGER_LAST_EDIT_DATETIME /* 관리자 최종 갱신일시管理者最終更新日時 */
|
||||
, X.SALE_STORE_ID /* 최종갱신판매점ID 最終更新販売店ID */
|
||||
, A.LAST_EDIT_USER /* 최종갱신자 最終更新者 */
|
||||
, (CASE WHEN UPPER(#{langCd}) = 'JA' THEN C2.CODE_JP
|
||||
ELSE C2.CODE_NM
|
||||
END) AS ROF_TYP /* 지붕종류 屋根種類 */
|
||||
END) AS ROF_TYP /* 지붕종류 屋根種類 */
|
||||
, CASE WHEN A.DIFF_ROOF_ENABLED = 1 THEN A.ROOF_MATERIAL_ID_MULTI ELSE COALESCE((CASE WHEN UPPER(#{langCd}) = 'JA' THEN C3.CODE_JP
|
||||
ELSE C3.CODE_NM
|
||||
END), '') END AS ROOF_MATERIAL_NM /* 지붕재 屋根材 */
|
||||
@ -42,7 +42,7 @@
|
||||
, A.SNOWFALL /* 적설수준 積雪レベル */
|
||||
, (CASE WHEN UPPER(#{langCd}) = 'JA' THEN C4.CODE_JP
|
||||
ELSE C4.CODE_NM
|
||||
END) AS CNS_LVL /* 시공레벨 施工レベル */
|
||||
END) AS CNS_LVL /* 시공레벨 施工レベル */
|
||||
, U.HEIGHT /* 설치높이 設置高さ */
|
||||
, W.MENSODO AS CTND_CLSF /* 면조도구분 面粗度区分 */
|
||||
, V.CAPACITY AS ATH_CPC /* 인정용량 認定容量 */
|
||||
@ -138,7 +138,7 @@
|
||||
LEFT JOIN M_PREFECTURE E
|
||||
ON B.PREF_ID = E.PREF_ID
|
||||
<!-- LEFT JOIN T_GUARANTEE F ON A.OBJECT_NO = F.OBJECT_NO AND A.PLAN_NO = F.PLAN_NO -->
|
||||
LEFT JOIN M_CUST_SALES_STORE G
|
||||
LEFT JOIN M_SALES_STORE G
|
||||
ON B.SALE_STORE_ID = G.SALE_STORE_ID /*본인정보*/
|
||||
LEFT JOIN T_STATISTICS H
|
||||
ON A.OBJECT_NO = H.OBJECT_NO
|
||||
@ -172,13 +172,13 @@
|
||||
AND A.PLAN_NO = V.PLAN_NO
|
||||
LEFT JOIN T_MENSODO W
|
||||
ON A.OBJECT_NO = W.OBJECT_NO
|
||||
LEFT JOIN M_CUST_SALES_STORE_USER X
|
||||
LEFT JOIN M_USER X
|
||||
ON A.LAST_EDIT_USER = X.USER_ID
|
||||
LEFT JOIN M_CUST_SALES_STORE Y
|
||||
LEFT JOIN M_SALES_STORE Y
|
||||
ON G.FIRST_AGENT_ID = Y.SALE_STORE_ID /*1차점정보*/
|
||||
WHERE A.DEL_FLG = 0
|
||||
AND B.DEL_FLG = 0
|
||||
<!-- 과거일자 필수 넣기 -->
|
||||
AND B.ESTIMATE_DETAIL_CREATE_DATE >= #{sch_baseDt} /* 과거일자 기준일 */
|
||||
<if test="sch_startDt != null and sch_startDt != '' and sch_endDt != null and sch_endDt != ''"> <!-- 견적일 -->
|
||||
AND B.ESTIMATE_DETAIL_CREATE_DATE BETWEEN #{sch_startDt} and #{sch_endDt}
|
||||
</if>
|
||||
@ -225,7 +225,7 @@
|
||||
, D.FIRST_AGENT_FLG /* 一次代理店フラグ */
|
||||
-->
|
||||
FROM T_OBJECT C
|
||||
LEFT JOIN M_CUST_SALES_STORE D
|
||||
LEFT JOIN M_SALES_STORE D
|
||||
ON C.SALE_STORE_ID = D.SALE_STORE_ID
|
||||
LEFT JOIN T_PLAN B
|
||||
ON C.OBJECT_NO = B.OBJECT_NO
|
||||
@ -241,7 +241,7 @@
|
||||
LEFT JOIN M_BUSINESS_CHARGER G
|
||||
ON C.BUSINESS_CHARGER_CD = G.BUSINESS_CHARGER_CD
|
||||
AND G.DEL_FLG = 0
|
||||
LEFT JOIN M_CUST_SALES_STORE H
|
||||
LEFT JOIN M_SALES_STORE H
|
||||
ON D.FIRST_AGENT_ID = H.SALE_STORE_ID
|
||||
AND H.DEL_FLG = 0
|
||||
LEFT JOIN M_PREFECTURE I
|
||||
@ -255,7 +255,7 @@
|
||||
WHERE C.DEL_FLG = 0
|
||||
AND D.DEL_FLG = 0
|
||||
AND B.DEL_FLG = 0
|
||||
<!-- 과거일자 필수 넣기!!!!! -->
|
||||
AND C.ESTIMATE_DETAIL_CREATE_DATE >= #{sch_baseDt} /* 과거일자 기준일 */
|
||||
<if test="sch_startDt != null and sch_startDt != '' and sch_endDt != null and sch_endDt != ''"> <!-- 견적일 -->
|
||||
AND C.ESTIMATE_DETAIL_CREATE_DATE BETWEEN #{sch_startDt} and #{sch_endDt}
|
||||
</if>
|
||||
@ -349,7 +349,7 @@
|
||||
LEFT JOIN T_OBJECT D
|
||||
ON A.OBJECT_NO = D.OBJECT_NO
|
||||
WHERE D.DEL_FLG != 1
|
||||
<!-- 과거일자 기간 픽스 필요!!!!!! -->
|
||||
AND D.ESTIMATE_DETAIL_CREATE_DATE >= #{sch_baseDt} /* 과거일자 기준일 */
|
||||
<if test="sch_dtType != null and sch_dtType != ''">
|
||||
<if test="sch_startDt != null and sch_startDt != '' and sch_endDt != null and sch_endDt != ''">
|
||||
<choose>
|
||||
|
||||
175
src/main/resources/mappers/user/userMapper.xml
Normal file
175
src/main/resources/mappers/user/userMapper.xml
Normal file
@ -0,0 +1,175 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
|
||||
<mapper namespace="com.interplug.qcast.biz.user.UserMapper">
|
||||
<insert id="setStoreSave" parameterType="com.interplug.qcast.biz.user.dto.StoreRequest" >
|
||||
/* sqlid : com.interplug.qcast.user.setStoreSave */
|
||||
MERGE M_SALES_STORE AS A
|
||||
USING
|
||||
( SELECT #{saleStoreId} AS SALE_STORE_ID ) AS D
|
||||
ON (A.SALE_STORE_ID = D.SALE_STORE_ID
|
||||
)
|
||||
WHEN MATCHED THEN
|
||||
UPDATE SET
|
||||
SALE_STORE_NAME = #{saleStoreName}
|
||||
, SALE_STORE_NAME_KANA = #{saleStoreNameKana}
|
||||
, ZIP_NO = #{zipNo}
|
||||
, ADDRESS = #{address}
|
||||
, TEL = #{tel}
|
||||
, FAX = #{fax}
|
||||
, APPLICATION_DATE = #{applicationDate}
|
||||
, APPROVAL_DATE = #{approvalDate}
|
||||
, APPROVE_FLG = #{approveFlg}
|
||||
, PAYMENT_TERMS = #{paymentTerms}
|
||||
, FIRST_AGENT_FLG = #{firstAgentFlg}
|
||||
, SECOND_AGENT_FLG = #{secondAgentFlg}
|
||||
, FIRST_AGENT_ID = #{firstAgentId}
|
||||
, PARENT_SALE_AGENT_ID = #{parentSaleAgentId}
|
||||
, BUSINESS_CHARGER = #{businessCharger}
|
||||
, BUSINESS_CHARGER_CD = #{businessChargerCd}
|
||||
, DISP_COMPANY_NAME = #{dispCompanyName}
|
||||
, DISP_ZIP_NO = #{dispZipNo}
|
||||
, DISP_ADDRESS = #{dispAddress}
|
||||
, DISP_TEL = #{dispTel}
|
||||
, DISP_FAX = #{dispFax}
|
||||
, DISP_MAIL = #{dispMail}
|
||||
, SALE_STORE_LEVEL = #{saleStoreLevel}
|
||||
, DEL_FLG = #{delFlg}
|
||||
, LAST_EDIT_DATETIME = #{lastEditDatetime}
|
||||
, LAST_EDIT_USER = #{lastEditUser}
|
||||
WHEN NOT MATCHED THEN
|
||||
INSERT (
|
||||
SALE_STORE_ID
|
||||
, SALE_STORE_NAME
|
||||
, SALE_STORE_NAME_KANA
|
||||
, ZIP_NO
|
||||
, ADDRESS
|
||||
, TEL
|
||||
, FAX
|
||||
, APPLICATION_DATE
|
||||
, APPROVAL_DATE
|
||||
, APPROVE_FLG
|
||||
, PAYMENT_TERMS
|
||||
, FIRST_AGENT_FLG
|
||||
, SECOND_AGENT_FLG
|
||||
, FIRST_AGENT_ID
|
||||
, PARENT_SALE_AGENT_ID
|
||||
, OUTPUT_COMP_CLASS -- 출력 대비표 분류
|
||||
, INDUSTRIAL_OUTPUT_COMP_CLASS -- 산업출력 대비표 출력
|
||||
, FIXED_PRICE_FLG -- 정가 표시
|
||||
, QCELLS_FLG -- 패널선택
|
||||
, HANWFA_FLG -- 패널선택
|
||||
, OUT_STANDARD_FLG -- 비표준대응
|
||||
, BUSINESS_CHARGER
|
||||
, BUSINESS_CHARGER_CD
|
||||
, DISP_COMPANY_NAME
|
||||
, DISP_ZIP_NO
|
||||
, DISP_ADDRESS
|
||||
, DISP_TEL
|
||||
, DISP_FAX
|
||||
, DISP_MAIL
|
||||
, SALE_STORE_LEVEL
|
||||
, REGIST_DATETIME
|
||||
, DEL_FLG
|
||||
, SNOWFALL_FLG -- 적설
|
||||
, LAST_EDIT_DATETIME
|
||||
, LAST_EDIT_USER
|
||||
) VALUES (
|
||||
#{saleStoreId}
|
||||
, #{saleStoreName}
|
||||
, #{saleStoreNameKana}
|
||||
, #{zipNo}
|
||||
, #{address}
|
||||
, #{tel}
|
||||
, #{fax}
|
||||
, #{applicationDate}
|
||||
, #{approvalDate}
|
||||
, #{approveFlg}
|
||||
, #{paymentTerms}
|
||||
, #{firstAgentFlg}
|
||||
, #{secondAgentFlg}
|
||||
, #{firstAgentId}
|
||||
, #{parentSaleAgentId}
|
||||
, 0 -- 출력 대비표 분류
|
||||
, 0 -- 산업출력 대비표 출력
|
||||
, 0 -- 정가 표시
|
||||
, 0 -- 패널선택
|
||||
, 0 -- 패널선택
|
||||
, 0 -- 비표준대응
|
||||
, #{businessCharger}
|
||||
, #{businessChargerCd}
|
||||
, #{dispCompanyName}
|
||||
, #{dispZipNo}
|
||||
, #{dispAddress}
|
||||
, #{dispTel}
|
||||
, #{dispFax}
|
||||
, #{dispMail}
|
||||
, #{saleStoreLevel}
|
||||
, #{registDatetime}
|
||||
, 0
|
||||
, 0 -- 적설
|
||||
, #{lastEditDatetime}
|
||||
, #{lastEditUser}
|
||||
);
|
||||
</insert>
|
||||
|
||||
|
||||
<insert id="setUserSave" parameterType="com.interplug.qcast.biz.user.dto.UserRequest" >
|
||||
/* sqlid : com.interplug.qcast.user.setUserSave */
|
||||
MERGE M_USER AS A
|
||||
USING
|
||||
( SELECT #{userId} AS USER_ID ) AS D
|
||||
ON (A.USER_ID = D.USER_ID
|
||||
)
|
||||
WHEN MATCHED THEN
|
||||
UPDATE SET
|
||||
SALE_STORE_ID = #{saleStoreId}
|
||||
, CATEGORY = #{category}
|
||||
, NAME = #{name}
|
||||
, NAME_KANA = #{nameKana}
|
||||
, TEL = #{tel}
|
||||
, FAX = #{fax}
|
||||
, MAIL = #{mail}
|
||||
, LAST_EDIT_DATETIME = #{lastEditDatetime}
|
||||
, LAST_EDIT_USER = #{lastEditUser}
|
||||
-- , GROUP_ID -- '70000' , '60000'
|
||||
-- , MODULE_SELECT_GROUP_ID -- 모듈 선택 그룹 ('G1','GA' ,'G2')
|
||||
-- , VERSION_MANAGEMENT_ID -- 관리ID ('hanbaiten', 'hanwha_eigyo')
|
||||
-- , DISP_COST_PRICE -- 구매 값 표시
|
||||
-- , DISP_SELLING_PRICE -- 판매 가격 표시
|
||||
WHEN NOT MATCHED THEN
|
||||
INSERT (
|
||||
USER_ID
|
||||
, SALE_STORE_ID
|
||||
, PASSWORD
|
||||
, CATEGORY
|
||||
, NAME
|
||||
, NAME_KANA
|
||||
, TEL
|
||||
, FAX
|
||||
, MAIL
|
||||
, GROUP_ID
|
||||
, DISP_COST_PRICE
|
||||
, DISP_SELLING_PRICE
|
||||
, REGIST_DATETIME
|
||||
, LAST_EDIT_DATETIME
|
||||
, LAST_EDIT_USER
|
||||
) VALUES (
|
||||
#{userId}
|
||||
, #{saleStoreId}
|
||||
, #{userId}
|
||||
, #{category}
|
||||
, #{name}
|
||||
, #{nameKana}
|
||||
, #{tel}
|
||||
, #{fax}
|
||||
, #{mail}
|
||||
, #{groupId}
|
||||
, 0
|
||||
, 0
|
||||
, #{registDatetime}
|
||||
, #{lastEditDatetime}
|
||||
, #{lastEditUser}
|
||||
);
|
||||
</insert>
|
||||
</mapper>
|
||||
Loading…
x
Reference in New Issue
Block a user