@@ -85,6 +85,8 @@ public interface BOGoodsMapper {
|
|||||||
public void updateBOGoodsAdditionDtl(BOGoodsAdditionVO vo);
|
public void updateBOGoodsAdditionDtl(BOGoodsAdditionVO vo);
|
||||||
// 일반 상품 > 추가정보 삭제
|
// 일반 상품 > 추가정보 삭제
|
||||||
public void deleteBOGoodsAddition(BOGoodsAdditionVO vo);
|
public void deleteBOGoodsAddition(BOGoodsAdditionVO vo);
|
||||||
|
// 사용자 - 검색 - 검색어 로그 저장
|
||||||
|
public int insertBOSrchwrdLog(BOGoodsVO vo);
|
||||||
// 사용자 - 검색 - 상품명 검색어 조회
|
// 사용자 - 검색 - 상품명 검색어 조회
|
||||||
public List<DataMap> selectBOSrchGoodsNm(BOGoodsVO vo);
|
public List<DataMap> selectBOSrchGoodsNm(BOGoodsVO vo);
|
||||||
// 일반 상품 > 일괄 업데이트
|
// 일반 상품 > 일괄 업데이트
|
||||||
|
|||||||
@@ -7,6 +7,7 @@ import com.wb.domainserver.domain.gcone.common.service.BOCommonService;
|
|||||||
import com.wb.domainserver.domain.gcone.goods.goods.mapper.BOGoodsMapper;
|
import com.wb.domainserver.domain.gcone.goods.goods.mapper.BOGoodsMapper;
|
||||||
import com.wb.domainserver.domain.gcone.goods.goods.vo.*;
|
import com.wb.domainserver.domain.gcone.goods.goods.vo.*;
|
||||||
import com.wb.domainserver.exception.WnbtRestException;
|
import com.wb.domainserver.exception.WnbtRestException;
|
||||||
|
import com.wb.domainserver.exception.code.ErrorCode;
|
||||||
import com.wb.domainserver.util.dataaccess.DataMap;
|
import com.wb.domainserver.util.dataaccess.DataMap;
|
||||||
import com.wb.domainserver.util.string.StringUtil;
|
import com.wb.domainserver.util.string.StringUtil;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
@@ -16,6 +17,7 @@ import org.springframework.beans.factory.annotation.Value;
|
|||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
import org.springframework.transaction.annotation.Transactional;
|
import org.springframework.transaction.annotation.Transactional;
|
||||||
import org.springframework.util.CollectionUtils;
|
import org.springframework.util.CollectionUtils;
|
||||||
|
import org.springframework.util.ObjectUtils;
|
||||||
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
import java.math.BigInteger;
|
import java.math.BigInteger;
|
||||||
@@ -1505,6 +1507,27 @@ public class BOGoodsService {
|
|||||||
return mapper.selectBOGoodsCategoryLink(vo);
|
return mapper.selectBOGoodsCategoryLink(vo);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 검색어 로그 저장
|
||||||
|
* @param vo
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
public DataMap insertBOSrchwrdLog(BOGoodsVO vo){
|
||||||
|
DataMap message = new DataMap();
|
||||||
|
|
||||||
|
try {
|
||||||
|
mapper.insertBOSrchwrdLog(vo);
|
||||||
|
|
||||||
|
message.put("result", "success");
|
||||||
|
} catch (WnbtRestException wre) {
|
||||||
|
throw new WnbtRestException(wre.getMessage());
|
||||||
|
} catch (Exception e) {
|
||||||
|
throw new WnbtRestException(ErrorCode.INTERNAL_SERVER_ERROR);
|
||||||
|
}
|
||||||
|
|
||||||
|
return message;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 상품명 검색어 조회
|
* 상품명 검색어 조회
|
||||||
* @param vo
|
* @param vo
|
||||||
|
|||||||
@@ -485,6 +485,10 @@ public class BOGoodsVO extends AbstractVO {
|
|||||||
private String srchType;
|
private String srchType;
|
||||||
/** 검색어 */
|
/** 검색어 */
|
||||||
private String srchStr;
|
private String srchStr;
|
||||||
|
/** 유입경로 */
|
||||||
|
private String conectUrl;
|
||||||
|
/** 유입경로 도메인 */
|
||||||
|
private String conectDomn;
|
||||||
/** 선택 삭제 */
|
/** 선택 삭제 */
|
||||||
private List<HashMap<String, Object>> delInnbArr;
|
private List<HashMap<String, Object>> delInnbArr;
|
||||||
/** 이미지 파일 업로드 */
|
/** 이미지 파일 업로드 */
|
||||||
|
|||||||
@@ -21,6 +21,7 @@ import com.wb.domainserver.domain.gcone.setup.dlvygrp.service.BODlvygrpService;
|
|||||||
import com.wb.domainserver.domain.gcone.setup.dlvygrp.vo.BODlvygrpVO;
|
import com.wb.domainserver.domain.gcone.setup.dlvygrp.vo.BODlvygrpVO;
|
||||||
import com.wb.domainserver.domain.gcone.setup.ordrmngr.service.BOOrdrMngrService;
|
import com.wb.domainserver.domain.gcone.setup.ordrmngr.service.BOOrdrMngrService;
|
||||||
import com.wb.domainserver.domain.gcone.setup.ordrmngr.vo.BOSetupOrdrVO;
|
import com.wb.domainserver.domain.gcone.setup.ordrmngr.vo.BOSetupOrdrVO;
|
||||||
|
import com.wb.domainserver.realm.util.UrlExtractor;
|
||||||
import com.wb.domainserver.response.ApiResponse;
|
import com.wb.domainserver.response.ApiResponse;
|
||||||
import com.wb.domainserver.response.WnbtResponse;
|
import com.wb.domainserver.response.WnbtResponse;
|
||||||
import com.wb.domainserver.response.WnbtResponseBody;
|
import com.wb.domainserver.response.WnbtResponseBody;
|
||||||
@@ -210,6 +211,42 @@ public class GoodsController {
|
|||||||
return Util.getDeviceType(request)+"/goods/GoodsSrchR";
|
return Util.getDeviceType(request)+"/goods/GoodsSrchR";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 검색어 로그 저장
|
||||||
|
* @param vo
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@Policy(AuthPolicy.PUBLIC)
|
||||||
|
@RequestMapping(value = "/insertSrchwrdLog", produces = MediaType.APPLICATION_JSON_VALUE)
|
||||||
|
public ResponseEntity<WnbtResponse> insertSrchwrdLog(HttpServletRequest request, BOGoodsVO vo) {
|
||||||
|
//사용자 정보 추출 및 적용
|
||||||
|
AnonymousUser user = MemberJwtContextHolder.getMemberInfo();
|
||||||
|
if("01".equals(user.getSysDvCd())){
|
||||||
|
vo.setSopmalCd(user.getSopmalCd());
|
||||||
|
vo.setMbrInnb(String.valueOf(user.getUserInnb()));
|
||||||
|
}
|
||||||
|
|
||||||
|
//요청 URL
|
||||||
|
String url = request.getRequestURI();
|
||||||
|
vo.setConectUrl(url);
|
||||||
|
//host 정보
|
||||||
|
String host = request.getHeader("X-Original-Host") != null ? request.getHeader("X-Original-Host") : UrlExtractor.getOriginalHost(request);
|
||||||
|
vo.setConectDomn(host);
|
||||||
|
|
||||||
|
DataMap message = service.insertBOSrchwrdLog(vo);
|
||||||
|
|
||||||
|
return ResponseEntity.ok(
|
||||||
|
WnbtResponse.builder()
|
||||||
|
.resBody(new WnbtResponseBody(message))
|
||||||
|
.build()
|
||||||
|
);
|
||||||
|
// return responseHandler.handleResponse(
|
||||||
|
// sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/goods/goods/selectBOSrchGoodsNm", vo),
|
||||||
|
// ReplyFromResrc::getReply
|
||||||
|
// );
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 상품명 검색어 조회
|
* 상품명 검색어 조회
|
||||||
* @param vo
|
* @param vo
|
||||||
|
|||||||
@@ -3609,6 +3609,23 @@
|
|||||||
]]>
|
]]>
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
|
<!-- 검색어 로그 저장 -->
|
||||||
|
<insert id="insertBOSrchwrdLog" parameterType="com.wb.domainserver.domain.gcone.goods.goods.vo.BOGoodsVO" >
|
||||||
|
INSERT INTO GC_SRCHWRD_LOG (
|
||||||
|
SRCHWRD,
|
||||||
|
MBR_INNB,
|
||||||
|
CONECT_DOMN,
|
||||||
|
CONECT_URL,
|
||||||
|
SRCH_DT
|
||||||
|
) VALUES (
|
||||||
|
#{srchStr},
|
||||||
|
#{mbrInnb},
|
||||||
|
#{conectDomn},
|
||||||
|
#{conectUrl},
|
||||||
|
SYSDATE()
|
||||||
|
)
|
||||||
|
</insert>
|
||||||
|
|
||||||
<!-- 사용자 - 검색 - 상품명 검색어 조회-->
|
<!-- 사용자 - 검색 - 상품명 검색어 조회-->
|
||||||
<select id="selectBOSrchGoodsNm" parameterType="com.wb.domainserver.domain.gcone.goods.goods.vo.BOGoodsVO" resultType="dataMap">
|
<select id="selectBOSrchGoodsNm" parameterType="com.wb.domainserver.domain.gcone.goods.goods.vo.BOGoodsVO" resultType="dataMap">
|
||||||
SELECT
|
SELECT
|
||||||
|
|||||||
@@ -1286,6 +1286,13 @@
|
|||||||
searches.shift(); // 6개를 초과하면 가장 오래된 검색어를 제거
|
searches.shift(); // 6개를 초과하면 가장 오래된 검색어를 제거
|
||||||
}
|
}
|
||||||
localStorage.setItem('recentSearches', JSON.stringify(searches));
|
localStorage.setItem('recentSearches', JSON.stringify(searches));
|
||||||
|
|
||||||
|
$.ajax({
|
||||||
|
type: 'post',
|
||||||
|
url: '<c:url value="/sopmal/goods/insertSrchwrdLog"/>',
|
||||||
|
data: { srchStr : param},
|
||||||
|
success: function () {}
|
||||||
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -513,6 +513,13 @@
|
|||||||
searches.shift(); // 6개를 초과하면 가장 오래된 검색어를 제거
|
searches.shift(); // 6개를 초과하면 가장 오래된 검색어를 제거
|
||||||
}
|
}
|
||||||
localStorage.setItem('recentSearches', JSON.stringify(searches));
|
localStorage.setItem('recentSearches', JSON.stringify(searches));
|
||||||
|
|
||||||
|
$.ajax({
|
||||||
|
type: 'post',
|
||||||
|
url: '<c:url value="/sopmal/goods/insertSrchwrdLog"/>',
|
||||||
|
data: { srchStr : param},
|
||||||
|
success: function () {}
|
||||||
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -119,7 +119,15 @@
|
|||||||
/* ********************************************************
|
/* ********************************************************
|
||||||
* 목록 조회
|
* 목록 조회
|
||||||
******************************************************** */
|
******************************************************** */
|
||||||
|
let onload = true;
|
||||||
const fn_select_list = function (pageIndex, pageUnit) {
|
const fn_select_list = function (pageIndex, pageUnit) {
|
||||||
|
if(!onload) {
|
||||||
|
let kwrd = $('#listForm input[name="kwrd"]').val();
|
||||||
|
if(kwrd)
|
||||||
|
saveSearch(kwrd);
|
||||||
|
}
|
||||||
|
onload = false;
|
||||||
|
|
||||||
let dataStr;
|
let dataStr;
|
||||||
if (!pageIndex) {
|
if (!pageIndex) {
|
||||||
$('#pageIndex').val(1);
|
$('#pageIndex').val(1);
|
||||||
|
|||||||
Reference in New Issue
Block a user