xodud1202 преди 5 години
родител
ревизия
1dea54196c

+ 3 - 3
style24.admin/src/main/java/com/style24/admin/biz/web/TsaGoodsController.java

@@ -2441,10 +2441,10 @@ public class TsaGoodsController extends TsaBaseController {
 	 */
 	@GetMapping("/freeGoods/popup/list/form")
 	@ResponseBody
-	public ModelAndView freeGoodsPopupListForm(GoodsSearch goodsSearch) {
+	public ModelAndView freeGoodsPopupListForm(FreeGoods freeGoodsSearch) {
 		ModelAndView mav = new ModelAndView();
-
-		mav.setViewName("goods/GoodsPopupListForm");
+		mav.addObject("param", freeGoodsSearch);
+		mav.setViewName("goods/FreeGoodsSearchForm");
 		return mav;
 	}
 

+ 0 - 2
style24.admin/src/main/java/com/style24/admin/biz/web/TsaMarketingController.java

@@ -121,9 +121,7 @@ public class TsaMarketingController extends TsaBaseController {
 		// 상품상태
 		String[] exceptCds = {"G008_00"};
 		mav.addObject("goodsStatList", rendererService.getCommonCodeList("G008", "Y", exceptCds));
-
 		mav.addObject("param", param);
-		log.info("CHECK PARAM.GBN >> " + param.getGbn());
 		mav.setViewName("marketing/FreeGoodsPromotionRegiForm");
 		return mav;
 	}

+ 11 - 11
style24.admin/src/main/java/com/style24/persistence/domain/FreeGoods.java

@@ -14,16 +14,16 @@ import lombok.Data;
 @Data
 public class FreeGoods extends TscBaseDomain {
 
-	private Integer productNo;	//사은품 상품 번호 - ProductNo(WMS)
-	private String productCode;	//ProductCode(WMS)
-	private String goodsNum;	//품번
-	private String brandCd;		//브랜드코드
-	private String goodsNm;		//상품명
-	private String useYn;		//사용여부
-	private String sysImgNm;	//시스템이미지
-	private String newSysImgNm;	//신규 시스템이미지
-
-	private String brandEnm;		//브랜드명
-
+	private Integer productNo;		//사은품 상품 번호 - ProductNo(WMS)
+	private String productCode;		//ProductCode(WMS)
+	private String goodsNum;		//품번
+	private String brandCd;			//브랜드코드
+	private String goodsNm;			//상품명
+	private String useYn;			//사용여부
+	private String sysImgNm;		//시스템이미지
+	private String newSysImgNm;		//신규 시스템이미지
 
+	private String searchTxt;		// 팝업 검색어
+	private String callbackFn;		// 팝업 리콜펑션명
+	private String brandEnm;		// 브랜드명
 }

+ 1 - 1
style24.admin/src/main/java/com/style24/persistence/domain/GoodsSearch.java

@@ -80,8 +80,8 @@ public class GoodsSearch extends TscBaseDomain {
 	private String alarmYn;
 	private String useYn;
 	private String noticeTitle;
-
 	private Integer rinbdInfoSq;
+	private String callbackFn;
 
 	@JsonFormat(with = JsonFormat.Feature.ACCEPT_SINGLE_VALUE_AS_ARRAY)
 	private String[] siteCd;

+ 2 - 2
style24.admin/src/main/java/com/style24/persistence/mybatis/shop/TsaGoods.xml

@@ -6,7 +6,7 @@
 	<select id="getItemkindList" parameterType="Itemkind" resultType="Itemkind">
 		/* TsaGoods.getItemkindList */
 		SELECT ITEMKIND_CD
-		     , ITEMKIND_NM
+		     , ITEMKIND_NMgetFreeGoodsList
 		     /* , ITEMKIND_ENM*/
 		     , NI_CLSF_CD
 		     , USE_YN
@@ -3770,5 +3770,5 @@
 		  , UPD_DT = NOW()
 		WHERE PRODUCT_NO = #{productNo}
 	</update>
-	
+	
 </mapper>

+ 32 - 27
style24.admin/src/main/webapp/WEB-INF/views/goods/FreeGoodsSearchForm.html

@@ -3,18 +3,18 @@
 	  xmlns:th="http://www.thymeleaf.org">
 <!--
  *******************************************************************************
- * @source  : SupplyCompanySearchForm.html
- * @desc    : 공급업체 목록 페이지
+ * @source  : FreeGoodsSearchForm.html
+ * @desc    : 사은품 조회 페이지
  *============================================================================
  * STYLE24
  * Copyright(C) 2020 TSIT, All rights reserved.
  *============================================================================
  * VER  DATE         AUTHOR      DESCRIPTION
  * ===  ===========  ==========  =============================================
- * 1.0  2020.12.23   xodud1202   최초 작성
+ * 1.0  2021.01.12   xodud1202   최초 작성
  *******************************************************************************
  -->
-<div class="modalPopup" data-width="500" id="popupCompanyList">
+<div class="modalPopup" data-width="850" id="popupFreeGoodsList">
 	<div class="panelStyle">
 		<!-- TITLE -->
 		<div class="panelTitle">
@@ -25,8 +25,7 @@
 
 		<!-- 검색 조건 -->
 		<div class="panelContent">
-			<form id="searchCompanyListForm" name="searchCompanyListForm" action="#" th:action="@{'/business/supply/company/list'}" onsubmit="$('#btnSearchCompanyList').trigger('click'); return false;">
-
+			<form id="searchCompanyListForm" name="searchCompanyListForm" action="#" th:action="@{'/goods/freeGoods/list'}" onsubmit="$('#btnSearchFreeGoodsList').trigger('click'); return false;">
 				<table class="frmStyle" aria-describedby="검색조건">
 					<colgroup>
 						<col style="width:15%;"/>
@@ -34,16 +33,18 @@
 					</colgroup>
 					<tbody>
 					<tr>
-						<th>공급업체명</th>
+						<th>검색어 지정</th>
 						<td>
-							<input type="text" name="searchTxt" th:value="${params.searchTxt}" maxlength="20" onkeypress="if (event.keyCode == 13) { $('#btnSearchCompanyList').trigger('click'); }"/>
+							<label class="rdoBtn"><input type="radio" name="search" value="searchProductNo" checked/>사은품코드</label>
+							<label class="rdoBtn"><input type="radio" name="search" value="searchGoodsNm"/>품번</label>
+							<textarea name="condition" style="height:75px;"></textarea>
 						</td>
 					</tr>
 					</tbody>
 				</table>
 				<ul class="panelBar">
 					<li class="center">
-						<button type="button" class="btn btn-base btn-lg" id="btnSearchCompanyList">조회</button>
+						<button type="button" class="btn btn-base btn-lg" id="btnSearchFreeGoodsList">조회</button>
 					</li>
 				</ul>
 			</form>
@@ -52,51 +53,55 @@
 
 		<!-- 리스트 영역 -->
 		<div class="panelContent">
-			<div id="gridComapanyPopupList" style="width: 100%; height: 470px" class="ag-theme-balham"></div>
+			<div id="freeGoodsSearchList" style="width: 100%; height: 470px" class="ag-theme-balham"></div>
 		</div>
 		<!-- //리스트 영역 -->
 
 		<!-- 버튼 배치 영역 -->
 		<ul class="panelBar">
 			<li class="right">
-				<button type="button" class="btn btn-info btn-lg" id="btnConfirmCompany">확인</button>
+				<button type="button" class="btn btn-info btn-lg" id="btnConfirmFreeGoods">확인</button>
 			</li>
 		</ul>
 	</div>
 
 	<script th:inline="javascript">
 		/*<![CDATA[*/
-		let columnCompanyPopupDefList = [
-			{width: 40, minWidth: 40, cellClass: 'text-center', headerCheckboxSelection: true, checkboxSelection: true, filter: false},
-			{headerName: "공급업체번호", field: "supplyCompCd", width: 120, cellClass: 'text-center'},
-			{headerName: "공급업체국문명", field: "supplyCompNm", width: 150, cellClass: 'text-center'},
-			{headerName: "입점상태", field: "supplyStatNm", width: 150, cellClass: 'text-center'}
+		let columnFreeGoodsPopupDefList = [
+			  {width: 40, minWidth: 40, cellClass: 'text-center', headerCheckboxSelection: true, checkboxSelection: true, filter: false}
+			, {headerName: "사은품코드", field: "productNo", width: 120, cellClass: 'text-center'}
+			, {headerName: "품번코드", field: "goodsNum", width: 150, cellClass: 'text-center'}
+			, {headerName: "사은품명", field: "goodsNm", width: 300, cellClass: 'text-center'}
+			, {headerName: "상태", field: "useYn", width: 50, cellClass: 'text-center'}
+			, {headerName: "잔여수량", field: "supplyStatNm", width: 150, cellClass: 'text-center'
+				,valueFormatter: function(params) { return '999'; }
+			}    <!-- 잔여 수량 해당 시점 기준 I/F 재고수량 표시 라고 되어있는데 맞는지 확인 필요함 -->
 		];
 
-		let gridOptionsCompanyPopupList = gagaAgGrid.getGridOptions(columnCompanyPopupDefList);
-		gridOptionsCompanyPopupList.rowSelection = "multiple";
+		let gridOptionsFreeGoodsPopupList = gagaAgGrid.getGridOptions(columnFreeGoodsPopupDefList);
+		gridOptionsFreeGoodsPopupList.rowSelection = "multiple";
 
 		// Row double click
-		gridOptionsCompanyPopupList.onRowDoubleClicked = function(event) {
-			$('#btnConfirmCompany').trigger('click');
+		gridOptionsFreeGoodsPopupList.onRowDoubleClicked = function(event) {
+			$('#popupFreeGoodsList #btnConfirmFreeGoods').trigger('click');
 		}
 
 		// 조회
-		$('#btnSearchCompanyList').on('click', function() {
+		$('#popupFreeGoodsList #btnSearchFreeGoodsList').on('click', function() {
 			// Fetch data
-			gagaAgGrid.fetch($('#searchCompanyListForm').prop('action'), gridOptionsCompanyPopupList, '#searchCompanyListForm');
+			gagaAgGrid.fetch($('#popupFreeGoodsList #searchCompanyListForm').prop('action'), gridOptionsFreeGoodsPopupList, '#searchCompanyListForm');
 		});
 
 		// 확인
-		$('#btnConfirmCompany').on('click', function() {
-			var selectedData = gagaAgGrid.selectedRowData(gridOptionsCompanyPopupList);
+		$('#popupFreeGoodsList #btnConfirmFreeGoods').on('click', function() {
+			var selectedData = gagaAgGrid.selectedRowData(gridOptionsFreeGoodsPopupList);
 
 			if (selectedData.length == 0) {
 				mcxDialog.alert('선택된 공급업체가 없습니다.');
 				return false;
 			}
 
-			var callbackFn = [[${params.callbackFn}]];
+			var callbackFn = [[${param.callbackFn}]];
 
 			var jsonData = JSON.stringify(selectedData);
 
@@ -112,13 +117,13 @@
 						}
 					}
 				}
-				uifnPopupClose('popupCompanyList');
+				uifnPopupClose('popupFreeGoodsList');
 			}
 		});
 
 		$(document).ready(function() {
 			// Create a agGrid
-			gagaAgGrid.createGrid('gridComapanyPopupList', gridOptionsCompanyPopupList);
+			gagaAgGrid.createGrid('freeGoodsSearchList', gridOptionsFreeGoodsPopupList);
 		});
 		/*]]>*/
 	</script>

+ 4 - 5
style24.admin/src/main/webapp/WEB-INF/views/marketing/FreeGoodsPromotionForm.html

@@ -16,19 +16,18 @@
  -->
 	<div id="main">
 		<!-- 메인타이틀 영역 -->
-		<div class="main-title">
-		</div>
+		<div class="main-title"></div>
 		<!-- //메인타이틀 영역 -->
 		
 		<!-- 메뉴 설명 -->
-		<div class="infoBox menu-desc">
-		</div>
+		<div class="infoBox menu-desc"></div>
+
 		<form id="searchForm" name="searchForm" action="#" th:action="@{'/marketing/freeGoodsPromotion/list'}">
 			<input type="hidden" id="searchGb" name="searchGb" />
 			<input type="hidden" id="imageViewYn" name="imageViewYn" />
 			<input type="hidden" id="goodsPriceYn" name="goodsPriceYn" value="Y"/> <!-- 즉시할인판매가 조회 -->
 
-				<!-- 패널 영역1 -->
+			<!-- 패널 영역1 -->
 			<div class="panelStyle" >
 				<!-- 검색조건 영역 -->
 				<!-- TITLE -->

+ 34 - 37
style24.admin/src/main/webapp/WEB-INF/views/marketing/FreeGoodsPromotionRegiForm.html

@@ -15,7 +15,7 @@
  *******************************************************************************
  -->
 <div class="modalPopup frGoodsPro" data-width="1100">
-	<div class="panelStyle" style="max-height:900px;overflow-y:scroll;">
+	<div class="panelStyle" style="max-height:700px;overflow-y:scroll;">
 		<div class="panelTitle">
 			<h2>사은품 프로모션 관리</h2>
 			<button type="button" class="close" onclick="fnFreeGoodsPromotionFormClose()"><i class="fa fa-times"></i></button>
@@ -100,7 +100,7 @@
 								<th>공급업체/브랜드</th>
 								<td>
 									<!-- 수정시 프로모션명 입력 : before -->
-									<div class="padding10 wid45">
+									<div class="padding10" style="display:inline-block;width:49%;">
 										<span>공급업체 설정</span>
 										<div class="padding10 inner-tb-solid">
 											<button type="button" class="btn btnRight btn-success btn-lg" id="btnAddCompany">업체 추가</button>
@@ -109,7 +109,7 @@
 											<div id="gridFGPromotionCompanyList" style="width:100%; height:200px;" class="ag-theme-balham"></div>
 										</div>
 									</div>
-									<div class="padding10 wid45">
+									<div class="padding10" style="display:inline-block;width:49%;">
 										<span>브랜드 설정</span>
 										<div class="padding10 inner-tb-solid">
 											<button type="button" class="btn btnRight btn-success btn-lg" id="btnAddBrand">브랜드 추가</button>
@@ -345,7 +345,7 @@
 	// 사은품 조건1 리스트 설정 (사은품 상품 만들어지면 만들어야함)
 	let columnFreeGoods1List = [
 		{width: 40, minWidth: 40, cellClass: 'text-center', headerCheckboxSelection: true, checkboxSelection: true, filter: false},
-		{headerName: "사은품 코드", field: "goodsCd", width: 120, cellClass: 'text-center'},
+		{headerName: "사은품 코드", field: "productNo", width: 120, cellClass: 'text-center'},
 		{headerName: "사은품명", field: "goodsNm", width: 150, cellClass: 'text-center'},
 		{headerName: "포인트액", field: "pointAmt" , width: 100, cellClass: 'text-center'
 			,editable: true
@@ -386,7 +386,7 @@
 	// 사은품 조건2 리스트 설정 (사은품 상품 만들어지면 만들어야함)
 	let columnFreeGoods2List = [
 		{width: 40, minWidth: 40, cellClass: 'text-center', headerCheckboxSelection: true, checkboxSelection: true, filter: false},
-		{headerName: "사은품 코드", field: "goodsCd", width: 120, cellClass: 'text-center'},
+		{headerName: "사은품 코드", field: "productNo", width: 120, cellClass: 'text-center'},
 		{headerName: "사은품명", field: "goodsNm", width: 150, cellClass: 'text-center'},
 		{headerName: "포인트액", field: "pointAmt" , width: 100, cellClass: 'text-center'
 			,editable: true
@@ -459,26 +459,26 @@
 		gagaAgGrid.createGrid("gridFreeGoods2List", gridOptionsFreeGoods2List);
 
 		if("C" == [[${param.gbn}]]) {
-			$("#btnExtmallPopup").hide();
-			$("#extmallCntArea").hide();
-			$("#extmallCnt").text(0);
-			$("#extmallIds").val("");
+			$("#freeGoodsPromotionForm #btnExtmallPopup").hide();
+			$("#freeGoodsPromotionForm #extmallCntArea").hide();
+			$("#freeGoodsPromotionForm #extmallCnt").text(0);
+			$("#freeGoodsPromotionForm #extmallIds").val("");
 		}
 
 		cfnCreateCalendar('#promotionTerms', 'freegoodsStdt', 'freegoodsEddt', true, '행사기간', 'X');
 	});
 
 	// 제휴몰 체크 상태 확인
-	$("#G011_20").on("click", function() {
+	$("#freeGoodsPromotionForm #G011_20").on("click", function() {
 		// 체크여부 확인 (선택되면 자동 checked 추가되는데, 추가되기 전 동작해서 반대로 지정)
-		if($("#G011_20").hasClass("checked")) {
-			$("#btnExtmallPopup").hide();
-			$("#extmallCntArea").hide();
-			$("#extmallCnt").text(0);
-			$("#extmallIds").val("");
+		if($("#freeGoodsPromotionForm #G011_20").hasClass("checked")) {
+			$("#freeGoodsPromotionForm #btnExtmallPopup").hide();
+			$("#freeGoodsPromotionForm #extmallCntArea").hide();
+			$("#freeGoodsPromotionForm #extmallCnt").text(0);
+			$("#freeGoodsPromotionForm #extmallIds").val("");
 		} else {
-			$("#btnExtmallPopup").show();
-			$("#extmallCntArea").show();
+			$("#freeGoodsPromotionForm #btnExtmallPopup").show();
+			$("#freeGoodsPromotionForm #extmallCntArea").show();
 		}
 	});
 
@@ -493,6 +493,7 @@
 	function fnSetSendGridListVal(gridListOption, key, inputId) {
 		let list = gagaAgGrid.getAllRowData(gridListOption);
 		let cds = [];
+		alert("aa / " + key);
 		for(let k = 0 ; k < list.length ; k++) {
 			cds.push(eval("list[k]." + key));
 		}
@@ -506,16 +507,12 @@
 		let resultList = [];											// 최종 상품 리스트
 		let gridListValue = gagaAgGrid.getAllRowData(gridListOption);	// 기존 리스트
 
-
 		// 기존 리스트 데이터 for
 		for(let i = 0 ; i < result.length ; i++) {
 			let addChk = true;					// 받아온 모든 데이터
 
 			// 받아온 data for
 			for(let j = 0 ; j < gridListValue.length ; j++) {
-				// 기존 데이터 push
-				// resultList.push(eval("gridListValue[j]." + key));
-
 				// 조회한 상품 중 동일하지 않은 데이터만 추가
 				if(eval("gridListValue[j]." + key) == eval("result[i]." + key)) {	addChk = false;	}		// 중복체크
 			}
@@ -525,7 +522,7 @@
 		}
 
 		// 사은품 추가는 5개까지만
-		if(key == "productCode") {
+		if(key == "productNo") {
 			let totalCnt = resultList.length + gridListValue.length;
 			if(totalCnt > 5) {
 				mcxDialog.alert("사은품은 최대 5개까지만 등록하실 수 있습니다.");
@@ -540,7 +537,7 @@
 	}
 
 	// 저장 버튼 클릭시
-	$('#btnFreegoodsPromotionSave').on('click', function() {
+	$('#freeGoodsPromotionForm #btnFreegoodsPromotionSave').on('click', function() {
 		// 각 ag-grid list 수량
 		let supplyCompCnt = gagaAgGrid.getAllRowData(gridOptionsFGCompanyList).length;
 		let brandCnt = gagaAgGrid.getAllRowData(gridOptionsFGBrandList).length;
@@ -551,7 +548,7 @@
 
 		if (!gagajf.validation('#freeGoodsPromotionForm')) {
 			return false;
-		};
+		}
 
 		if($('#freeGoodsPromotionForm input[name=freegiftNm]').val().length < 2) {
 			mcxDialog.alert("2자~30자 이상 프로모션명을 입력하세요.");
@@ -581,24 +578,24 @@
 		}
 
 		// 사은품조건1 의 수량 체크
-		if(freeGoods1Cnt > 2) {
-			mcxDialog.alert("사은품 조건1의 사은품은 최대 2개까지 등록가능합니다.");
+		if(freeGoods1Cnt > 5) {
+			mcxDialog.alert("사은품 조건1의 사은품은 최대 5개까지 등록가능합니다.");
 			return false;
 		}
 
 		// 사은품조건2의 수량 체크
-		if(freeGoods2Cnt > 2) {
+		if(freeGoods2Cnt > 5) {
 			mcxDialog.alert("사은품 조건2의 사은품은 최대 2개까지 등록가능합니다.");
 			return false;
 		}
 
 		// 각 리스트 데이터 세팅
 		if(supplyCompCnt > 0) { fnSetSendGridListVal(gridOptionsFGCompanyList, "supplyCompCd", "supplyCompCds"); }		// 공급업체 설정 데이터
-		if(brandCnt > 0) { fnSetSendGridListVal(gridOptionsFGBrandList, "brandCd", "brandCds"); }							// 브랜드 설정 데이터
-		if(applyGoodsCnt > 0) { fnSetSendGridListVal(gridOptionsFGApplyGoodsList, "goodsCd", "applyGoodsCds"); }			// 적용 상품 설정 데이터
+		if(brandCnt > 0) { fnSetSendGridListVal(gridOptionsFGBrandList, "brandCd", "brandCds"); }						// 브랜드 설정 데이터
+		if(applyGoodsCnt > 0) { fnSetSendGridListVal(gridOptionsFGApplyGoodsList, "goodsCd", "applyGoodsCds"); }		// 적용 상품 설정 데이터
 		if(exceptGoodsCnt > 0) { fnSetSendGridListVal(gridOptionsFGExceptGoodsList, "goodsCd", "exceptGoodsCds"); }		// 제외 상품 설정 데이터
-		if(freeGoods1Cnt > 0) { fnSetSendGridListVal(gridOptionsFreeGoods1List, "goodsCd", "freeGoods1Cds"); }			// 사은품 조건 1
-		if(freeGoods2Cnt > 0) { fnSetSendGridListVal(gridOptionsFreeGoods1List, "goodsCd", "freeGoods2Cds"); }			// 사은품 조건 1
+		if(freeGoods1Cnt > 0) { fnSetSendGridListVal(gridOptionsFreeGoods1List, "productNo", "freeGoods1Cds"); }			// 사은품 조건 1
+		if(freeGoods2Cnt > 0) { fnSetSendGridListVal(gridOptionsFreeGoods1List, "productNo", "freeGoods2Cds"); }			// 사은품 조건 2
 	});
 
 	// 공급업체 설정 / 업체 추가 콜백함수
@@ -619,18 +616,18 @@
 	};
 	// 사은품 조건1 상품 리스트 콜백함수
 	var fnSetPopupFreeGoods1Info = function(result) {
-		fnSetListInfo(result, gridOptionsFreeGoods1List, "goodsCd");
+		fnSetListInfo(result, gridOptionsFreeGoods1List, "productNo");
 	};
 	// 사은품 조건2 상품 리스트 콜백함수
 	var fnSetPopupFreeGoods2Info = function(result) {
-		fnSetListInfo(result, gridOptionsFreeGoods2List, "goodsCd");
+		fnSetListInfo(result, gridOptionsFreeGoods2List, "productNo");
 	};
 
 	// 제휴몰 list 콜백함수
 	function fnSetPopupExtmallInfo(result) {
 		let extmallIds = [];
-		if($("#extmallIds").val() != null && $("#extmallIds").val() != "") {
-			extmallIds = JSON.parse($("#extmallIds").val());
+		if($("#freeGoodsPromotionForm #extmallIds").val() != null && $("#freeGoodsPromotionForm #extmallIds").val() != "") {
+			extmallIds = JSON.parse($("#freeGoodsPromotionForm #extmallIds").val());
 		}
 
 		for(let i = 0 ; i < result.length ; i++) {
@@ -643,8 +640,8 @@
 		}
 
 		var jsonData = JSON.stringify(extmallIds);
-		$("#extmallIds").val(jsonData);
-		$("#extmallCnt").text(extmallIds.length);
+		$("#freeGoodsPromotionForm #extmallIds").val(jsonData);
+		$("#freeGoodsPromotionForm #extmallCnt").text(extmallIds.length);
 	}
 
 	// 제휴몰 선택 버튼 클릭시

+ 7 - 7
style24.admin/src/main/webapp/ux/js/admin.popup.js

@@ -310,18 +310,18 @@ var cfnOpenGoodsPopup = function(callbackfun) {
 /**
  * @type   : function
  * @access : public
- * @desc   : 품조회 팝업
+ * @desc   : 사은품조회 팝업
  * <pre>
- *     cfnOpenFreeGoodsPopup('goosCallbackFun');
+ *     cfnOpenFreeGoodsPopup('callbackfn');
  * </pre>
  * @param  : callbackfun - 콜백함수
- * @since  : 2021/01/10
+ * @since  : 2021/01/12
  * @author : xodud1202
  */
-var cfnOpenFreeGoodsPopup = function(callbackfun) {
+var cfnOpenFreeGoodsPopup = function(callbackFn) {
 	var actionUrl = "/goods/freeGoods/popup/list/form";
-	if (typeof(callbackfun) != 'undefined') actionUrl += "?callBackFun=" + callbackfun;
-
+	if (typeof(callbackFn) != 'undefined') actionUrl += "?callbackFn=" + callbackFn;
+	uifnPopupClose('popupFreeGoodsList');
 	cfnOpenModalPopup(actionUrl,'popupFreeGoodsList');
 }
 
@@ -728,7 +728,7 @@ var cfnOpenFreeGoodsPromotionSetPopup = function(gbn) {
  * @access : public
  * @desc   : 공급업체 조회 팝업
  * <pre>
- *     cfnOpenCompanyListPopup();
+ *     cfnOpenCompanyListPopup('callbackfn');
  * </pre>
  * @since  : 2020/12/23
  * @author : xodud1202