diff --git a/src/main/java/com/interplug/qcast/biz/user/UserMapper.java b/src/main/java/com/interplug/qcast/biz/user/UserMapper.java
index 26ea7cb4..aa862d29 100644
--- a/src/main/java/com/interplug/qcast/biz/user/UserMapper.java
+++ b/src/main/java/com/interplug/qcast/biz/user/UserMapper.java
@@ -54,6 +54,24 @@ public interface UserMapper {
*/
int setUserSave(UserRequest userReqList) throws Exception;
+ /**
+ * 판매점의 정가가격 등록 여부 체크(2차점이상인 판매점만 해당)
+ *
+ * @param storeReq
+ * @return
+ * @throws Exception
+ */
+ int getStoreUnitPriceChk(StoreRequest storeReq) throws Exception;
+
+ /**
+ * 판매점의 정가가격 등록
+ *
+ * @param storeReq
+ * @return
+ * @throws Exception
+ */
+ int setStoreUnitPrice(StoreRequest storeReq) throws Exception;
+
/**
* 영업사원 삭제
*
diff --git a/src/main/java/com/interplug/qcast/biz/user/UserService.java b/src/main/java/com/interplug/qcast/biz/user/UserService.java
index 74bb9e32..dbad77a2 100644
--- a/src/main/java/com/interplug/qcast/biz/user/UserService.java
+++ b/src/main/java/com/interplug/qcast/biz/user/UserService.java
@@ -74,6 +74,14 @@ public class UserService {
userMapper.setStoreInfoSave(storeRequest);
userMapper.setStoreSapCdSave(storeRequest);
userMapper.setStoreNorthModuleSave(storeRequest);
+
+ // 2차점 이상인 판매점 신규 등록시 판매점에 정가 가격 추가
+ if ("1".equals(storeRequest.getSecondAgentFlg())) {
+ if (userMapper.getStoreUnitPriceChk(storeRequest) == 0) {
+ // 등록된 가격이 없는경우 정가 가격 등록
+ userMapper.setStoreUnitPrice(storeRequest);
+ }
+ }
} catch (Exception e) {
log.error(e.getMessage());
}
diff --git a/src/main/resources/mappers/user/userMapper.xml b/src/main/resources/mappers/user/userMapper.xml
index 3b81b23e..c6c201dc 100644
--- a/src/main/resources/mappers/user/userMapper.xml
+++ b/src/main/resources/mappers/user/userMapper.xml
@@ -87,8 +87,9 @@
, DISP_FAX = #{dispFax}
, DISP_MAIL = #{dispMail}
, SALE_STORE_LEVEL = #{saleStoreLevel}
+ , PRICE_PATTERN = (CASE WHEN ISNULL(PRICE_PATTERN, '') = '' AND #{secondAgentFlg} = '1' THEN '510' ELSE PRICE_PATTERN END)
, DEL_FLG = #{delFlg}
- , LAST_EDIT_DATETIME = #{lastEditDatetime}
+ , LAST_EDIT_DATETIME = GETDATE()
, LAST_EDIT_USER = #{lastEditUser}
WHEN NOT MATCHED THEN
INSERT (
@@ -107,6 +108,7 @@
, SECOND_AGENT_FLG
, FIRST_AGENT_ID
, PARENT_SALE_AGENT_ID
+ , PRICE_PATTERN
, OUTPUT_COMP_CLASS -- 출력 대비표 분류
, INDUSTRIAL_OUTPUT_COMP_CLASS -- 산업출력 대비표 출력
, FIXED_PRICE_FLG -- 정가 표시
@@ -143,6 +145,7 @@
, #{secondAgentFlg}
, #{firstAgentId}
, #{parentSaleAgentId}
+ , (CASE WHEN #{secondAgentFlg} = '1' THEN '510' ELSE NULL END)
, 0 -- 출력 대비표 분류
, 0 -- 산업출력 대비표 출력
, 0 -- 정가 표시
@@ -161,7 +164,7 @@
, #{registDatetime}
, 0
, 0 -- 적설
- , #{lastEditDatetime}
+ , GETDATE()
, #{lastEditUser}
);
@@ -175,7 +178,7 @@
WHEN MATCHED THEN
UPDATE SET
BIZ_NO = #{bizNo}
- , LAST_EDIT_DATETIME = (CASE WHEN #{lastEditDatetime} != '' THEN #{lastEditDatetime} ELSE #{registDatetime} END)
+ , LAST_EDIT_DATETIME = GETDATE()
WHEN NOT MATCHED THEN
INSERT (
SALE_STORE_ID
@@ -184,7 +187,7 @@
) VALUES (
#{saleStoreId}
, #{bizNo}
- , (CASE WHEN #{lastEditDatetime} != '' THEN #{lastEditDatetime} ELSE #{registDatetime} END)
+ , GETDATE()
);
@@ -207,7 +210,7 @@
, TEL = #{tel}
, FAX = #{fax}
, MAIL = #{mail}
- , LAST_EDIT_DATETIME = #{lastEditDatetime}
+ , LAST_EDIT_DATETIME = GETDATE()
, LAST_EDIT_USER = #{lastEditUser}
-- , GROUP_ID -- '70000' , '60000'
-- , MODULE_SELECT_GROUP_ID -- 모듈 선택 그룹 ('G1','GA' ,'G2')
@@ -226,6 +229,8 @@
, FAX
, MAIL
, GROUP_ID
+ , MODULE_SELECT_GROUP_ID
+ , VERSION_MANAGEMENT_ID
, DISP_COST_PRICE
, DISP_SELLING_PRICE
, REGIST_DATETIME
@@ -242,14 +247,47 @@
, #{fax}
, #{mail}
, #{groupId}
+ , 'G1' /* 일반 공개용 */
+ , 'hanbaiten' /* 일반 판매점 */
, 0
, 0
- , #{registDatetime}
- , #{lastEditDatetime}
+ , GETDATE()
+ , GETDATE()
, #{lastEditUser}
);
+
+
+
+ /* sqlid : com.interplug.qcast.user.setStoreUnitPrice */
+ INSERT INTO M_SALE_STORE_PRICE(
+ SALE_STORE_ID
+ , ITEM_ID
+ , COST_PRICE
+ , SALE_PRICE
+ , DISP_FLG
+ , LAST_EDIT_DATETIME
+ , LAST_EDIT_USER
+ )
+ SELECT #{saleStoreId}
+ , ITEM_ID
+ , COST_PRICE
+ , SALE_PRICE
+ , '1'
+ , GETDATE()
+ , #{lastEditUser}
+ FROM M_PRICE_PATTERN_MONEY
+ WHERE PRICE_PATTERN = '510'
+
+
/* sqlid : com.interplug.qcast.user.setStoreNorthModuleSave */
MERGE INTO M_SALES_STORE_NORTH_MODULE AS A