sowon4187 5 лет назад
Родитель
Сommit
52a7082f1e

+ 30 - 0
src/main/java/com/style24/front/biz/dao/TsfPlanningDao.java

@@ -382,4 +382,34 @@ public interface TsfPlanningDao {
 	 */
 	void deleteEntryReply(Plan plan);
 	
+	/**
+	 * 기획전/이벤트 댓글 이미지 저장
+	 *
+	 * @param Plan
+	 * @return 
+	 * @author sowon
+	 * @date 2021. 4. 13
+	 */
+	void saveEntryReplyAttach(Plan plan);
+	
+	/**
+	 * 기획전/이벤트 댓글 이미지 리스트
+	 *
+	 * @param Plan
+	 * @return Collection<Plan>
+	 * @author sowon
+	 * @date 2021. 4. 8
+	 */
+	Collection<Plan> getEntryReplyAttachList(Plan plan);
+	
+	/**
+	 * 기획전/이벤트 댓글 이미지 삭제
+	 *
+	 * @param Plan
+	 * @return 
+	 * @author sowon
+	 * @date 2021. 4. 13
+	 */
+	void deleteEntryReplyAttach(Plan plan);
+	
 }

+ 57 - 3
src/main/java/com/style24/front/biz/service/TsfPlanningService.java

@@ -1,14 +1,18 @@
 package com.style24.front.biz.service;
 
+import java.io.File;
 import java.util.Collection;
 import java.util.Iterator;
 import java.util.Map;
 
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.core.env.Environment;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
+import com.gagaframework.web.util.GagaDateUtil;
+import com.gagaframework.web.util.GagaFileUtil;
 import com.style24.front.biz.dao.TsfCommonDao;
 import com.style24.front.biz.dao.TsfPlanningDao;
 import com.style24.front.support.security.session.TsfSession;
@@ -38,6 +42,9 @@ public class TsfPlanningService {
 
 	@Autowired
 	private TsfCommonDao commonDao;
+	
+	@Autowired
+	private Environment env;
 
 	/**
 	 * 기획전 카테고리 목록
@@ -524,7 +531,7 @@ public class TsfPlanningService {
 
 
 	/**
-	 * 기획전/이벤트 댓글 저장
+	 * 기획전/이벤트 댓글,이미지 저장
 	 *
 	 * @param Plan
 	 * @return 
@@ -532,8 +539,42 @@ public class TsfPlanningService {
 	 * @date 2021. 4. 13
 	 */
 	public void saveEntryReply(Plan plan) {
-		plan.setCustNo(TsfSession.getInfo().getCustNo());
+		int custNo = TsfSession.getInfo().getCustNo();
+		plan.setCustNo(custNo);
 		planningDao.saveEntryReply(plan);
+		
+		//이미지등록
+		Plan filePlan = new Plan();
+		if(!StringUtils.isAllEmpty(plan.getMultiReplyOrgFile())) {
+			filePlan.setRegNo(custNo);
+			filePlan.setPlanEntrySq(plan.getPlanEntrySq());
+			//파일아이템 등록
+			String[] fileItemVal1 = plan.getMultiReplyOrgFile();
+			int ind = 1;
+			for (int j = 0; j < fileItemVal1.length; j++) {
+				String imgInd = String.valueOf(ind);
+				if (ind < 10) {
+					imgInd = "0" + imgInd;
+				}
+				String planUploadPath = env.getProperty("upload.default.target.path");
+				String yearMonth = GagaDateUtil.getToday().substring(0, 6);
+				planUploadPath = GagaFileUtil.getConcatenationPath(planUploadPath, "/reply");
+				File newFile = new File(GagaFileUtil.getConcatenationPath(planUploadPath, fileItemVal1[j]));
+				planUploadPath = GagaFileUtil.getConcatenationPath(planUploadPath, yearMonth);
+				String newFilename = "REPLY_" + GagaDateUtil.getTodayDateTime() + "_" + imgInd + "." + org.springframework.util.StringUtils.getFilenameExtension(fileItemVal1[j]);
+				File uniqueFile = GagaFileUtil.getUniqueFile(new File(GagaFileUtil.getConcatenationPath(planUploadPath, newFilename)));
+				// Rename a file
+				File path = new File(planUploadPath);
+				if (!path.exists()) {
+					path.mkdir();
+				}
+				newFile.renameTo(uniqueFile);
+				filePlan.setOrgFileNm("/reply/" + yearMonth + "/" + newFilename);
+				filePlan.setSysFileNm("/reply/" + yearMonth + "/" + newFilename);
+				planningDao.saveEntryReplyAttach(filePlan);
+				ind++;
+			}
+		}
 	}
 	
 	/**
@@ -549,7 +590,7 @@ public class TsfPlanningService {
 	}
 	
 	/**
-	 * 기획전/이벤트 댓글 삭제
+	 * 기획전/이벤트 댓글, 이미지 삭제
 	 *
 	 * @param Plan
 	 * @return 
@@ -558,5 +599,18 @@ public class TsfPlanningService {
 	 */
 	public void deleteEntryReply(Plan plan) {
 		planningDao.deleteEntryReply(plan);
+		planningDao.deleteEntryReplyAttach(plan);
+	}
+	
+	/**
+	 * 기획전/이벤트 댓글 이미지 리스트
+	 *
+	 * @param Plan
+	 * @return Collection<Plan>
+	 * @author sowon
+	 * @date 2021. 4. 8
+	 */
+	public Collection<Plan> getEntryReplyAttachList(Plan plan){
+		return planningDao.getEntryReplyAttachList(plan);
 	}
 }

+ 19 - 0
src/main/java/com/style24/front/biz/web/TsfMypageController.java

@@ -1301,6 +1301,22 @@ public class TsfMypageController extends TsfBaseController {
 	 * @author sowon	
 	 * @since 2021. 03. 25
 	 */
+	@PostMapping("/review/create/form")
+	public ModelAndView mypageReviewCreateForm(Review review) {
+		ModelAndView mav = new ModelAndView();
+		
+		review.setCustNo(TsfSession.getInfo().getCustNo());
+		review.setSiteCd(TscConstants.Site.STYLE24.value());
+		
+		mav.addObject("reviewStat", review.getReviewStat());
+		mav.addObject("reviewInfo", reviewService.getReviewGoodsInfo(review));
+		
+		mav.setViewName(super.getDeviceViewName("mypage/MypageReviewCreateForm"));
+
+		return mav;
+	}
+	
+	/*
 	@GetMapping("/review/create/form/{ordNo}/{ordDtlNo}/{goodsCd}/{reviewStat}")
 	public ModelAndView mypageReviewCreateForm(@PathVariable(value = "ordNo") Integer ordNo, @PathVariable(value = "ordDtlNo") Integer ordDtlNo, @PathVariable(value = "goodsCd") String goodsCd, @PathVariable(value = "reviewStat") String reviewStat, Device device) {
 		Review review = new Review();
@@ -1321,6 +1337,9 @@ public class TsfMypageController extends TsfBaseController {
 		return mav;
 	}
 
+	*/
+	
+
 	/**
 	 * 마이페이지 리뷰 저장
 	 * @param review

+ 1 - 0
src/main/java/com/style24/front/biz/web/TsfPlanningController.java

@@ -260,6 +260,7 @@ public class TsfPlanningController extends TsfBaseController {
 		result.set("paging", plan);
 		result.set("replyList",planningService.getReplyList(plan));
 		result.set("replyCount",planningService.getEntryReplyCount(plan));
+		result.set("replyAttachList",planningService.getEntryReplyAttachList(plan));
 		return result;
 	}
 	

+ 7 - 2
src/main/java/com/style24/persistence/domain/Plan.java

@@ -123,7 +123,7 @@ public class Plan extends TscBaseDomain {
 	@JsonFormat(with = JsonFormat.Feature.ACCEPT_SINGLE_VALUE_AS_ARRAY)
 	private String[] answer;
 	@JsonFormat(with = JsonFormat.Feature.ACCEPT_SINGLE_VALUE_AS_ARRAY)
-	private String[] sysFileNm;
+	//private String[] sysFileNm;
 
 	//private Collection<TsaPlanQuestAnswer> planQuestAnswerList; // 고시항목
 
@@ -268,8 +268,13 @@ public class Plan extends TscBaseDomain {
 	private String entryVal7;			//참여값7
 	private String entryVal8;			//참여값8
 	private Integer planEntrySq;		//참여일련번호
+	private String orgFileNm;
+	private String sysFileNm;
 	
-	
+	@JsonFormat(with = JsonFormat.Feature.ACCEPT_SINGLE_VALUE_AS_ARRAY)
+	private String[] multiReplyOrgFile;			//댓글 이미지
+	@JsonFormat(with = JsonFormat.Feature.ACCEPT_SINGLE_VALUE_AS_ARRAY)
+	private String[] multiReplySysFile;			//댓글 이미지
 	
 	// Pagination
 	private TscPageRequest pageable;

+ 6 - 6
src/main/java/com/style24/persistence/mybatis/shop/TsfCoupon.xml

@@ -488,6 +488,9 @@
 												     , AVAIL_STDT 
 												     , AVAIL_EDDT 
 												     FROM TB_CUST_COUPON
+												     WHERE CUST_NO = #{custNo}
+					                                     AND USED_DT IS NULL
+					                                     AND NOW() BETWEEN AVAIL_STDT AND AVAIL_EDDT
 												GROUP BY 
 												       CUST_NO
 												     , CPN_ID
@@ -497,9 +500,6 @@
 											)A ON TC.CPN_ID = A.CPN_ID 
 				WHERE 1=1
 					AND TC.CPN_STAT = 'G232_11'  /*쿠폰 상태 - 진행*/
-					AND A.CUST_NO = #{custNo}
-					AND A.USED_DT IS NULL
-					AND NOW() BETWEEN A.AVAIL_STDT AND A.AVAIL_EDDT
 			)Z
 			UNION 
 			SELECT F.*
@@ -556,6 +556,9 @@
 												     , AVAIL_STDT 
 												     , AVAIL_EDDT 
 												     FROM TB_CUST_COUPON
+												     WHERE CUST_NO = #{custNo}
+					                                   AND USED_DT IS NULL
+					                                   AND AVAIL_EDDT BETWEEN DATE_ADD(NOW(), INTERVAL -3 MONTH) AND AVAIL_EDDT
 												GROUP BY 
 												       CUST_NO
 												     , CPN_ID
@@ -565,9 +568,6 @@
 											)A ON TC.CPN_ID = A.CPN_ID 
 				WHERE 1=1
 					AND TC.CPN_STAT = 'G232_11'  /*쿠폰 상태 - 진행*/
-					AND A.CUST_NO = #{custNo}
-					AND A.USED_DT IS NULL
-					AND A.AVAIL_EDDT BETWEEN DATE_ADD(NOW(), INTERVAL -3 MONTH) AND A.AVAIL_EDDT
 			)F
 		)T
 		ORDER BY T.USER_YN DESC, T.AVAIL_EDDT

+ 42 - 3
src/main/java/com/style24/persistence/mybatis/shop/TsfPlanning.xml

@@ -1142,7 +1142,8 @@
 	<insert id="saveAttendEntry" parameterType="Plan">
 		/* TsfPlanning.saveAttendEntry */	
 		INSERT INTO TB_PLAN_ENTRY
-		        (PLAN_SQ
+		        ( 
+		        , PLAN_SQ
 		        , ENTRY_CUST_NO
 		        , ENTRY_DT
 		        , ENTRY_VAL1
@@ -1234,10 +1235,10 @@
 		<include refid="selectForPagingFooter"/>
 	</select>
 	
-	<insert id="saveEntryReply" parameterType="Plan">
+	<insert id="saveEntryReply" parameterType="Plan" useGeneratedKeys="true" keyProperty="planEntrySq">
 		/* TsfPlanning.saveEntryReply */	
 		INSERT INTO TB_PLAN_ENTRY
-		(
+		( 
 		  PLAN_SQ
 		, ENTRY_CUST_NO
 		, ENTRY_DT
@@ -1288,4 +1289,42 @@
 		WHERE PLAN_ENTRY_SQ = #{planEntrySq}		
 	</delete>
 	
+	<insert id="saveEntryReplyAttach" parameterType="Plan">
+		/* TsfPlanning.saveEntryReplyAttach */	
+		INSERT INTO TB_PLAN_ENTRY_ATTACH
+		(
+		   PLAN_ENTRY_SQ
+		 , ORG_FILE_NM
+		 , SYS_FILE_NM
+		 , REG_NO
+		 , REG_DT
+		 )
+		VALUES
+		(
+		  #{planEntrySq}
+		, #{orgFileNm}
+		, #{sysFileNm}
+		, #{regNo}
+		, CURRENT_TIMESTAMP
+		)
+	</insert>
+	
+	<select id="getEntryReplyAttachList" resultType="Plan" parameterType="Plan">
+		/* TsfPlanning.getEntryReplyAttach */	
+		SELECT PEA.PLAN_ENTRY_SQ
+		      ,PEA.ORG_FILE_NM 
+		      ,PEA.SYS_FILE_NM 
+		FROM TB_PLAN_ENTRY PE INNER JOIN TB_PLAN_ENTRY_ATTACH PEA 
+		                                    ON PE.PLAN_ENTRY_SQ = PEA.PLAN_ENTRY_SQ 
+		WHERE 1=1
+		   AND PE.PLAN_SQ = #{planSq}
+	</select>
+	
+	<delete id="deleteEntryReplyAttach" parameterType="Plan">
+		/* TsfPlanning.deleteEntryReplyAttach */	
+		DELETE 
+		FROM TB_PLAN_ENTRY_ATTACH
+		WHERE PLAN_ENTRY_SQ= #{planEntrySq}
+	</delete>
+	
 </mapper>

+ 6 - 0
src/main/java/com/style24/persistence/mybatis/shop/TsfReview.xml

@@ -336,6 +336,7 @@
 	<!-- 마이페이지 작성가능한 리뷰 -->
 	<select id="getCompleteReviewList" parameterType="Review" resultType="Review">
 		/* TsfReivew.getCompleteReviewList */
+		<include refid="selectForPagingHeader"/>
 		SELECT GROUP_CONCAT(Z.ITEM_NM ORDER BY Z.ORD_DTL_ITEM_SQ SEPARATOR '!@!') AS ITEM_NM
 		     , GROUP_CONCAT(Z.COLOR_NM ORDER BY Z.ORD_DTL_ITEM_SQ) AS COLOR_NM
 		     , GROUP_CONCAT(Z.OPT_CD1 ORDER BY Z.ORD_DTL_ITEM_SQ) AS OPT_CD1
@@ -376,6 +377,7 @@
 		   	 , Z.ITEMKIND_CD 
              , Z.SIZE_GB 
              , Z.REMAIN_DT
+             , RANK() OVER(ORDER BY Z.PAY_DT DESC) AS RNUM
 		  FROM (SELECT O.ORD_NO
 					 , DATE_FORMAT(O.ORD_DT, '%Y.%m.%d') AS ORD_DT
 					 , DATE_FORMAT(O.PAY_DT, '%Y-%m-%d') AS PAY_DT 
@@ -455,6 +457,7 @@
 				, Z.SUPPLY_COMP_CD, Z.DELV_FEE_CD, Z.SHOT_DELV_YN, Z.CHANGEABLE_YN, Z.SELF_GOODS_YN, Z.BRAND_NM, Z.BRAND_ENM, Z.ORD_DTL_STAT_NM
 				, Z.ORD_REQ_CHG_QTY, Z.ORD_CAN_CHG_QTY
 		ORDER BY Z.ORD_NO DESC, Z.ORD_DTL_STAT, Z.SELF_GOODS_YN DESC, Z.SHOT_DELV_YN DESC, Z.SUPPLY_COMP_CD
+		<include refid="selectForPagingFooter"/>
 	</select>
 	
 	<!-- 마이페이지 리뷰작성 상품데이타 -->
@@ -815,6 +818,7 @@
 	
 	<select id="getAlreadyReviewList" parameterType="Review" resultType="Goods">
 		/* TsfReivew.getAlreadyReviewList */
+		<include refid="selectForPagingHeader"/>
 		SELECT F.*
 			  , (SELECT MAX(SYS_IMG_NM) FROM TB_GOODS_IMG  WHERE GOODS_CD = F.GOODS_CD AND COLOR_CD = F.MAIN_COLOR_CD AND DEFAULT_IMG_YN = 'Y' ) AS SYS_IMG_NM
 		FROM
@@ -890,6 +894,7 @@
 			      ,R.ADM_RPL_REG_NO
 			      ,DATE_FORMAT(R.ADM_RPL_DT , '%Y-%m-%d %H:%i:%s') AS ADM_RPL_DT
 			      ,DATEDIFF( DATE_ADD(O.PAY_DT,INTERVAL 90 DAY),NOW()) AS REMAIN_DT -- 남은시간
+			      , RANK() OVER(ORDER BY O.PAY_DT DESC) AS RNUM
 			FROM TB_ORDER O INNER JOIN TB_ORDER_DETAIL OD ON O.ORD_NO = OD.ORD_NO 
 			                INNER JOIN TB_ORDER_DETAIL_ITEM ODI ON OD.ORD_DTL_NO = ODI.ORD_DTL_NO 
 			                  					 AND OD.ORD_DTL_NO = ODI.ORD_DTL_NO
@@ -927,6 +932,7 @@
 			      ,B.BRAND_ENM 
 		)F
 		ORDER BY F.PAY_DT DESC
+		<include refid="selectForPagingFooter"/>
 	</select>
 	
 	<select id="getReviewAttach" parameterType="Review" resultType="Review">

+ 6 - 0
src/main/webapp/WEB-INF/views/web/common/layout/MypageLayoutWeb.html

@@ -30,6 +30,12 @@
 		<!-- CONTENT AREA -->
 		<th:block layout:fragment="content"></th:block>
 		<!-- // CONTENT AREA -->
+		<form id="createReview" name="createReview" th:action="@{'/mypage/review/create/form'}" th:method="post">
+			<input type="hidden" name="ordNo"/>
+			<input type="hidden" name="ordDtlNo"/>
+			<input type="hidden" name="goodsCd"/>
+			<input type="hidden" name="reviewStat"/>
+		</form>
 	</div>
 </div>
 

+ 8 - 1
src/main/webapp/WEB-INF/views/web/mypage/MypageReviewFormWeb.html

@@ -412,7 +412,14 @@
 		let ordDtlNo = obj2;
 		let goodsCd = obj3;
 		let reviewStat = 'u';
-		cfnGoToPage(_PAGE_MYPAGE_CREATE_REVIEW + ordNo +'/'+ordDtlNo+'/'+goodsCd+'/'+reviewStat);
+		
+		$('#createReview input[name=ordNo]').val(ordNo);
+		$('#createReview input[name=ordDtlNo]').val(ordDtlNo);
+		$('#createReview input[name=goodsCd]').val(goodsCd);
+		$('#createReview input[name=reviewStat]').val(reviewStat);
+		
+		document.createReview.submit();
+		// cfnGoToPage(_PAGE_MYPAGE_CREATE_REVIEW + ordNo +'/'+ordDtlNo+'/'+goodsCd+'/'+reviewStat);
 	}
 	</script>
 	</th:block>

+ 32 - 24
src/main/webapp/WEB-INF/views/web/planning/PlanningDetailFormWeb.html

@@ -126,12 +126,8 @@
 								<div class="cmt_thumb">
 									<div class="form_field">
 										<div class="imgUpload">
-											<label for="fileAdd" class="fileAdd">업로드</label>
-											<input type="file" id="fileAdd" name="files" />
-											<th:block th:each="num: ${#numbers.sequence(1,10)}">
-											<input type="hidden" th:id="${'orgFileNm' + num}" name="orgFileNm" >
-											<input type="hidden" th:id="${'sysFileNm' + num}" name="sysFileNm">
-											</th:block>
+											<label for="fileAdd" class="fileAdd" id="fileAdd_reply">업로드</label>
+											<input type="file" id="fileAdd" name="files"/>
 										</div>
 									</div>
 								</div>
@@ -288,6 +284,7 @@ let goods4 = [[${goods4Info}]];
 let template =[[${templateOrd}]];
 let replyList = [[${replyList}]];
 let replyCount = [[${replyCount}]];
+let replyAttachList = [[${replyAttachList}]];
 let _mall = [[${@environment.getProperty('domain.front')}]];
 let goodsView =[[${@environment.getProperty('upload.goods.view')}]]
 let imgUrl=[[${@environment.getProperty('upload.image.view')}]];
@@ -773,7 +770,14 @@ var fnSearchCallback = function (result) {
 				 html += '		</div>';
 				 html += '		<div class="cmt_cont">';
 				 html += '			<div class="img_wrap clear">';
-				// html += '				<span class="pics"><img class="picsThumbs" src="/images/pc/thumb/ev_list_img01.jpg" alt="썸네일"></span>';
+				 if (result.replyAttachList.length>0) {
+					for (var i = 0; i < result.replyAttachList.length; i++) {
+						if(result.replyAttachList[i].planEntrySq == item.planEntrySq){
+							html += '				<span class="pics"><img class="picsThumbs" src="'+ imgUrl +'/'+result.replyAttachList[i].sysFileNm +'"></span>';
+						}
+					}	
+				 }
+				
 				 html += '			</div>';
 				 html += '			<p>'+item.entryVal1+'</p>';
 				 if (item.entryCustNo == result.custNo) {
@@ -819,12 +823,11 @@ var fnDelReply = function(obj) {
 }
 $('#fileAdd').on('change', function() { fnChooseFile(this); });
 
-var fnChooseFile = function(obj,fileNo) {
-	console.log($(".pics").length);
+var fnChooseFile = function(obj) {
+	var picLength = $(".pics").length;
+	
 	// multiple 속성이 있으면 files에는 다수의 객체가 할당됨
 	var file = obj.files[0];
-	
-	
 
 	if (!gagajf.isNull(file.name)) {
 		var extension = "\.(jpg|jpeg|png)$";
@@ -833,13 +836,11 @@ var fnChooseFile = function(obj,fileNo) {
 				sureBtnText: "확인",
 				sureBtnClick: function() {
 					$(obj).parent('.imgUpload').find('.removes').trigger('click');
-					console.log('file.size1', file.size);
 				}
 			});
 			return false;
 		}
 	}
-	console.log('file.size2', file.size);
 	// 이거 왜 안먹히지 
 	if (!gagajf.isNull(file.size) && Number(file.size) > (10 * 1000000)) {
 		mcxDialog.alertC('이미지는 최대 10MB 이하 파일만 가능합니다.', {
@@ -856,15 +857,16 @@ var fnChooseFile = function(obj,fileNo) {
 			, file
 			, function(result) {
 				// 업로드한 파일명 설정
-				$('#orgFileNm' + fileNo).val(result.oldFileName);
-				$('#sysFileNm' + fileNo).val(result.newFileName);
+				$(".pics").children().eq(0).append("<input type='hidden' name='orgFileNm' id='orgFileNm"+(picLength+1)+"' value='"+result.oldFileName+"'>");
+				$(".pics").children().eq(0).append("<input type='hidden' name='sysFileNm' id='sysFileNm"+(picLength+1)+"' value='"+result.newFileName+"'>");
 			}
 	); 
 }
 
-
 // 댓글 등록 버튼 클릭 시 
 var fnReplySave = function() {
+	var fileLength = $("input[name='sysFileNm']").length;
+
 	var content = $('#replyText').val();
 	if (content.length < 2){
 		mcxDialog.alert("최소 2자 이상 입력해주세요.");
@@ -878,8 +880,17 @@ var fnReplySave = function() {
 		return;
 	}
 	
+	//파일관련 데이터 담기
+	var multiReplyOrgFile = [];
+	var multiReplySysFile = [];
+	for (var i = 0; i < fileLength; i++) {
+		multiReplyOrgFile.push($(".pics").eq(i).find('input[name="orgFileNm"]').val());
+		multiReplySysFile.push($(".pics").eq(i).find('input[name="sysFileNm"]').val());
+	}
 	data = {entryVal1 : content,
-			planSq : plan.planSq};
+			planSq : plan.planSq,
+			multiReplyOrgFile : multiReplyOrgFile,
+			multiReplySysFile : multiReplySysFile};
 	var jsonData = JSON.stringify(data);
 
 	mcxDialog.confirm("댓글을 등록 하시겠습니까?", {
@@ -896,6 +907,8 @@ var fnReplySave = function() {
 }
 
 
+
+
 $(document).ready( function() {
 	ajaxReplyList();
 	//공유 버튼 토글 
@@ -1017,10 +1030,6 @@ $(document).ready( function() {
 		}
 		
 		var maxFileLength = 10; /* 최대 파일 갯수를 입력해 주세요 */
-		var imgFiles=$('.imgUpload .pics');
-		if (imgFiles.length == 10) {
-			$('#fileAdd').hide();
-		}
 		if (imgFiles.length >= maxFileLength) {
 			alert('이미지는 최대' + maxFileLength +'장 까지 첨부 가능합니다.');
 			$('#fileAdd').attr("disabled",true);
@@ -1041,9 +1050,8 @@ $(document).ready( function() {
 	});
 	
 	//팝업 - 댓글 이미지 슬라이드
-	$(document).on('click','.cmt_cont .img_wrap .pics',function(e){
+	 $(document).on('click','.cmt_cont .img_wrap .pics',function(e){
 		$("#thumbImgPop .swiper-wrapper").empty();
-
 		var popSlideIndex = $(this).index();
 		contactPopSwiper.slideTo(popSlideIndex);
 		contactPopSwiper.update();
@@ -1060,7 +1068,7 @@ $(document).ready( function() {
 		$('#thumbImgPop').modal("show");
 		
 		return false;
-	});        
+	});         
 	
 	 /* SLIDE - 댓글 이미지 팝업 */
 	var contactPopSwiper = new Swiper('.thumb_img_pop .swiper-container', {

+ 10 - 5
src/main/webapp/biz/mypage.js

@@ -352,9 +352,14 @@ var cfnGetTextLength = function(obj, maxLen, dpLoc) {
 // 리뷰작성 페이지 이동
 var fnReviewCreate = function(obj1,obj2,obj3) {
 	let ordNo = obj1;
-	let ordDtlNo = obj2;
-	let goodsCd = obj3;
-	let reviewStat = 'c';
-	
-	cfnGoToPage(_PAGE_MYPAGE_CREATE_REVIEW + ordNo +'/'+ordDtlNo+'/'+goodsCd+'/'+reviewStat);
+		let ordDtlNo = obj2;
+		let goodsCd = obj3;
+		let reviewStat = 'c';
+		
+		$('#createReview input[name=ordNo]').val(ordNo);
+		$('#createReview input[name=ordDtlNo]').val(ordDtlNo);
+		$('#createReview input[name=goodsCd]').val(goodsCd);
+		$('#createReview input[name=reviewStat]').val(reviewStat);
+		
+		document.createReview.submit();
 }