PlanTemplatePopupForm.html 98 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319
  1. <!DOCTYPE html>
  2. <html lang="ko"
  3. xmlns:th="http://www.thymeleaf.org">
  4. <!--
  5. *******************************************************************************
  6. * @source : PlanCornerCopyForm.html
  7. * @desc : 기획전 템플릿 화면 Page
  8. *============================================================================
  9. * SISUN
  10. * Copyright(C) 2020 TSIT, All rights reserved.
  11. *============================================================================
  12. * VER DATE AUTHOR DESCRIPTION
  13. * === =========== ========== =============================================
  14. * 1.0 2021.02.18 sowon 최초 작성
  15. *******************************************************************************
  16. -->
  17. <div class="modalPopup" data-width="1200" data-height="730" id="popupPlanTemplate">
  18. <div class="panelStyle" style="height: 750px;">
  19. <div class="panelTitle">
  20. <strong>기획전 템플릿</strong>
  21. <button type="button" class="close" onclick="uifnPopupClose('popupPlanTemplate')">
  22. <i class="fa fa-times"></i>
  23. </button>
  24. </div>
  25. <form id="planTemplateForm" name="planTemplateForm" action="#" th:method="post">
  26. <input type="hidden" name="planSq" th:value="*{planSq}"/>
  27. <input type="hidden" name="mode" th:value="*{mode}"/>
  28. <input type="hidden" name="rePlanContSq">
  29. <input type="hidden" name="cuPlanContSq">
  30. <input type="hidden" name="filePlanContSq">
  31. <input type="hidden" name="noticePlanContSq">
  32. <input type="hidden" name="goodsPlanContSq1">
  33. <input type="hidden" name="goodsPlanContSq2">
  34. <input type="hidden" name="goodsPlanContSq3">
  35. <input type="hidden" name="goodsPlanContSq4">
  36. <input type="hidden" name="goodsPlanContSq5">
  37. <input type="hidden" name="goodsPlanContSq6">
  38. <input type="hidden" name="goodsPlanContSq7">
  39. <input type="hidden" name="goodsPlanContSq8">
  40. <input type="hidden" name="goodsPlanContSq9">
  41. <input type="hidden" name="goodsPlanContSq10">
  42. <div class="cardArea" style="height: 700px; margin: 3px;">
  43. <div class="panelContent">
  44. <div class="panelStyle" style="margin: unset;">
  45. <!-- TITLE -->
  46. <div class="panelTitle">
  47. <h2>리뷰 조회</h2>
  48. <span class="panelControl"> <i
  49. class="fa inner-fa-chevron-up"></i> <!-- 열림/닫힘 화살표 -->
  50. </span>
  51. </div>
  52. <!-- //TITLE -->
  53. <div class="inner-panelContent">
  54. <div class="panelContent">
  55. <table class="frmStyle">
  56. <colgroup>
  57. <col width="10%" />
  58. <col width="90%" />
  59. </colgroup>
  60. <tr>
  61. <th>리뷰<br/>[전시여부<label class="chkBox"><input type="checkbox" name="reDispYn" onclick="fnAttachYnClick('reDispYn')" value="Y" checked/></label>]</th>
  62. <td>
  63. <table class="frmStyle">
  64. <tr>
  65. <th>리뷰 타이틀</th>
  66. <td><input type="text" name="reTitle" class="w300 aL"/>
  67. </td>
  68. </tr>
  69. <tr>
  70. <th>전시순서</th>
  71. <td><input type="text" name="reDispOrd" class="w100 aL" data-valid-type="numeric"></td>
  72. </tr>
  73. </table>
  74. <div class="padding10">
  75. <span class="buttonSpan">
  76. <button type="button" class="btn btnRight btn-success btn-lg" onclick="cfnOpenGoodsPopup('reviewGoodsList')">상품 조회</button>
  77. <button type="button" class="btn btnRight btn-success btn-lg" id="btnReviewDelete">행 삭제</button>
  78. </span> <br />
  79. <div id="gridListPlanReview" style="width: 100%; height: 200px;" class="ag-theme-balham"></div>
  80. </div>
  81. </td>
  82. </tr>
  83. </table>
  84. </div>
  85. </div>
  86. </div>
  87. </div>
  88. <div class="panelContent">
  89. <div class="panelStyle" style="margin: unset;">
  90. <!-- TITLE -->
  91. <div class="panelTitle">
  92. <h2>쿠폰 조회</h2>
  93. <span class="panelControl"> <i
  94. class="fa inner-fa-chevron-up"></i> <!-- 열림/닫힘 화살표 -->
  95. </span>
  96. </div>
  97. <!-- //TITLE -->
  98. <div class="inner-panelContent">
  99. <div class="panelContent">
  100. <table class="frmStyle">
  101. <colgroup>
  102. <col width="10%" />
  103. <col width="90%" />
  104. </colgroup>
  105. <tr>
  106. <th>쿠폰<br/>[전시여부<label class="chkBox"><input type="checkbox" name="cuDispYn" id="cuDispYn" value="Y" checked/></label>]</th>
  107. <td>
  108. <table class="frmStyle">
  109. <tr>
  110. <th>쿠폰 타이틀</th>
  111. <td><input type="text" name="cuTitle" class="w300 aL">
  112. </td>
  113. </tr>
  114. <tr>
  115. <th>전시순서</th>
  116. <td><input type="text" name="cuDispOrd" class="w100 aL" data-valid-type="numeric"></td>
  117. </tr>
  118. <tr>
  119. <th>쿠폰 유의사항</th>
  120. <td colspan="5">
  121. <div id="registeredFile"></div>
  122. <div style="display: block">
  123. <select name="couponCnt" id="couponCnt">
  124. <th:block th:each="num: ${#numbers.sequence(1,10)}">
  125. <option th:value="${num}" th:text="${num}"></option>
  126. </th:block>
  127. </select>* 쿠폰 유의사항 개수 선택(10개까지 가능)
  128. </div>
  129. <th:block th:each="num: ${#numbers.sequence(1,10)}">
  130. <div>
  131. <table>
  132. <tr th:id="${'coupon'+num}">
  133. <th th:text="${'유의사항' + num}"></th>
  134. <td>
  135. <input type="text" th:id="${'cpnNote' + (num-1)}" th:name="${'cpnNote' + (num-1)}" class="w300 aL">
  136. </td>
  137. </tr>
  138. </table>
  139. </div>
  140. </th:block>
  141. </td>
  142. </tr>
  143. </table>
  144. <div class="padding10">
  145. <span class="buttonSpan">
  146. <button type="button" class="btn btnRight btn-success btn-lg" onclick="fnAddCoupone()">쿠폰 추가</button>
  147. </span> <br />
  148. <table class="frmStyle" id="couponTable">
  149. </table>
  150. </div>
  151. </td>
  152. </tr>
  153. </table>
  154. </div>
  155. </div>
  156. </div>
  157. </div>
  158. <div class="panelContent">
  159. <div class="panelStyle" style="margin: unset;">
  160. <!-- TITLE -->
  161. <div class="panelTitle">
  162. <h2>이미지 첨부</h2>
  163. <span class="panelControl"> <i
  164. class="fa inner-fa-chevron-up"></i> <!-- 열림/닫힘 화살표 -->
  165. </span>
  166. </div>
  167. <!-- //TITLE -->
  168. <div class="inner-panelContent">
  169. <div class="panelContent">
  170. <table class="frmStyle">
  171. <colgroup>
  172. <col width="10%" />
  173. <col width="90%" />
  174. </colgroup>
  175. <tr>
  176. <th>이미지 첨부<br/>[전시여부<label class="chkBox"><input type="checkbox" name="fileDispYn" value="Y" checked/></label>]</th>
  177. <td colspan="5">
  178. <div id="registeredFile"></div>
  179. <div style="display: block">
  180. <select name="fileCnt" id="fileCnt">
  181. <th:block th:each="num: ${#numbers.sequence(1,10)}">
  182. <option th:value="${num}" th:text="${num}"></option>
  183. </th:block>
  184. </select>* 이미지 개수 선택(10개까지 가능)
  185. </div>
  186. <th:block th:each="num: ${#numbers.sequence(1,10)}">
  187. <div>
  188. <div class="uFile w500">
  189. <input type="file" th:id="${'file' + num}" th:name="${'file' + num}" class="uFileInput w500" accept="image/*"/>
  190. <label th:id="${'file_' + num}" th:for="${'file' + num}" class="uFileLabel">파일선택</label>
  191. <input type="hidden" name="fileItemVal" th:id="${'fileItemVal' + num}" />
  192. <input type="hidden" name="sysFileNms" th:id="${'sysFileNm' + num}" />
  193. <input type="text" th:name="${'linkUrl' + num}" class="w300 aL">
  194. </div>
  195. <br />
  196. <table>
  197. <tr>
  198. <th>클릭시 페이지창</th>
  199. <td>
  200. <label class="rdoBtn"><input type="radio" th:name="${'fileLinkOpenGb' + num}" value="M" checked/>현재창</label>
  201. <label class="rdoBtn"><input type="radio" th:name="${'fileLinkOpenGb' + num}" value="N" />새창</label>
  202. </td>
  203. </tr>
  204. <tr>
  205. <th>상품 링크</th>
  206. <td><input type="text" th:name="${'fileLinkUrl' + num}" class="w300 aL">
  207. </td>
  208. </tr>
  209. </table>
  210. </div>
  211. </th:block>
  212. </td>
  213. <th>전시순서</th>
  214. <td><input type="text" name="fileDispOrd" class="w100 aL" data-valid-type="numeric"></td>
  215. </tr>
  216. </table>
  217. </div>
  218. </div>
  219. </div>
  220. </div>
  221. <div class="panelContent">
  222. <div class="panelStyle" style="margin: unset;">
  223. <!-- TITLE -->
  224. <div class="panelTitle">
  225. <h2>유의사항</h2>
  226. <span class="panelControl"> <i
  227. class="fa inner-fa-chevron-up"></i> <!-- 열림/닫힘 화살표 -->
  228. </span>
  229. </div>
  230. <!-- //TITLE -->
  231. <div class="inner-panelContent">
  232. <div class="panelContent">
  233. <table class="frmStyle">
  234. <colgroup>
  235. <col width="10%" />
  236. <col width="90%" />
  237. </colgroup>
  238. <tr>
  239. <th>유의사항<br/>[전시여부<label class="chkBox"><input type="checkbox" name="noticeDispYn" value="Y" checked/></label>]</th>
  240. <td colspan="5">
  241. <div id="registeredFile"></div>
  242. <div style="display: block">
  243. <select name="noticeCnt" id="noticeCnt">
  244. <th:block th:each="num: ${#numbers.sequence(1,10)}">
  245. <option th:value="${num}" th:text="${num}"></option>
  246. </th:block>
  247. </select>* 유의사항 개수 선택(10개까지 가능)
  248. </div>
  249. <th:block th:each="num: ${#numbers.sequence(1,10)}">
  250. <div>
  251. <table>
  252. <tr th:id="${'notice'+num}">
  253. <th th:text="${'유의사항' + num}"></th>
  254. <td><input type="text" th:id="${'noticeItemVal' + num}" th:name="${'noticeItemVal' + num}" class="w300 aL">
  255. </td>
  256. </tr>
  257. </table>
  258. </div>
  259. </th:block>
  260. </td>
  261. <th>전시순서</th>
  262. <td><input type="text" name="noticeDispOrd" class="w100 aL" data-valid-type="numeric"></td>
  263. </tr>
  264. </table>
  265. </div>
  266. </div>
  267. </div>
  268. </div>
  269. <div class="panelContent">
  270. <div class="panelStyle" style="margin: unset;">
  271. <!-- TITLE -->
  272. <div class="panelTitle">
  273. <h2>HTML [상단]</h2>
  274. <span class="panelControl"> <i
  275. class="fa inner-fa-chevron-up"></i> <!-- 열림/닫힘 화살표 -->
  276. </span>
  277. </div>
  278. <!-- //TITLE -->
  279. <div class="inner-panelContent">
  280. <div class="panelContent">
  281. <table class="frmStyle">
  282. <colgroup>
  283. <col width="10%" />
  284. <col width="90%" />
  285. </colgroup>
  286. <tr>
  287. <th>[전시여부<label class="chkBox"><input type="checkbox" name="topFsrcDispYn" value="Y" checked/></label>]</th>
  288. <!-- <td><input type="text" name ="topFsrcDispOrd" value="" class="w100 aR" data-valid-type="numeric"></td> -->
  289. </tr>
  290. <tr>
  291. <th>웹용소스</th>
  292. <td colspan="5">
  293. <div style="margin-top: 5px;">
  294. <textarea class="textareaR4 summernote" name="fsrcPcTop" id="fsrcPcTop" rows="15" cols="95" style="width: 1280px;"></textarea>
  295. </div>
  296. </td>
  297. </tr>
  298. <tr>
  299. <th>모바일용소스</th>
  300. <td colspan="5">
  301. <div style="margin-top: 5px;">
  302. <textarea class="textareaR4 summernote" name="fsrcMobileTop" id="fsrcMobileTop" rows="15" cols="95" style="width: 1280px;"></textarea>
  303. </div>
  304. </td>
  305. </tr>
  306. </table>
  307. </div>
  308. </div>
  309. </div>
  310. </div>
  311. <div class="panelContent">
  312. <div class="panelStyle" style="margin: unset;">
  313. <!-- TITLE -->
  314. <div class="panelTitle">
  315. <h2>HTML [하단]</h2>
  316. <span class="panelControl"> <i
  317. class="fa inner-fa-chevron-up"></i> <!-- 열림/닫힘 화살표 -->
  318. </span>
  319. </div>
  320. <!-- //TITLE -->
  321. <div class="inner-panelContent">
  322. <div class="panelContent">
  323. <table class="frmStyle">
  324. <colgroup>
  325. <col width="10%" />
  326. <col width="90%" />
  327. </colgroup>
  328. <tr>
  329. <th>[전시여부<label class="chkBox"><input type="checkbox" name="btmFsrcDispYn" value="Y" checked/></label>]</th>
  330. <!-- <td><input type="text" name ="btmFsrcDispOrd" value="" class="w100 aR" data-valid-type="numeric"></td> -->
  331. </tr>
  332. <tr>
  333. <th>웹용소스</th>
  334. <td colspan="5">
  335. <div style="margin-top: 5px;">
  336. <textarea class="textareaR4 summernote" name="fsrcPcBtm" id="fsrcPcBtm" rows="15" cols="95" style="width: 1280px;"></textarea>
  337. </div>
  338. </td>
  339. </tr>
  340. <tr>
  341. <th>모바일용소스</th>
  342. <td colspan="5">
  343. <div style="margin-top: 5px;">
  344. <textarea class="textareaR4 summernote" name="fsrcMobileBtm" id="fsrcMobileBtm" rows="15" cols="95" style="width: 1280px;"></textarea>
  345. </div>
  346. </td>
  347. </tr>
  348. </table>
  349. </div>
  350. </div>
  351. </div>
  352. </div>
  353. <!-- 팝업창 하단부분 시작 -->
  354. <div class="panelStyle" style="margin: unset;">
  355. <!-- TITLE -->
  356. <div class="panelTitle">
  357. <h2>상품 등록</h2>
  358. <span class="panelControl"> <i
  359. class="fa inner-fa-chevron-up"></i> <!-- 열림/닫힘 화살표 -->
  360. </span>
  361. </div>
  362. <!-- //상품 전시 설정 -->
  363. <div class="inner-panelContent">
  364. <div class="panelContent">
  365. <ul class="panelBar">
  366. <li class="left">
  367. <p>최대 10개 까지 상품을 추가하실 수 있습니다.</p>
  368. </li>
  369. <li class="right">
  370. <button type="button" class="btn btnRight btn-success btn-lg" id="btnAddGrid">구분추가하기</button>
  371. </li>
  372. </ul>
  373. <!-- 구분 1 -->
  374. <div class="inner-panelContent" id="btnAddGridNum1"
  375. style="display: none;">
  376. <input type="hidden" name="btnAddGridNum1UseYn" value="Y">
  377. <input type="hidden" name="mailtcSq">
  378. <div class="panelContent">
  379. <table class="frmStyle">
  380. <colgroup>
  381. <col width="10%" />
  382. <col width="90%" />
  383. </colgroup>
  384. <tr>
  385. <th>상품 구분 1<br/>[전시여부<label class="chkBox" style="padding-left: 0px;"><input type="checkbox" name="goodsDispYn1" value="Y" checked/></label>]<br>
  386. <button type="button" class="btn btn-danger btn-lg" id="" onclick="btnDeleteGridNum1('gridOptions_c1');">구분 삭제</button>
  387. </th>
  388. <td>
  389. <div class="">
  390. <table class="frmStyle">
  391. <tr>
  392. <th>상품 노출 기준</th>
  393. <td>
  394. <label class="rdoBtn"><input type="radio" name="goodsType1" value="G082_50" checked="checked"/>1개</label>
  395. <label class="rdoBtn"><input type="radio" name="goodsType1" value="G082_51" />2개</label>
  396. <label class="rdoBtn"><input type="radio" name="goodsType1" value="G082_52" />4개</label>
  397. </td>
  398. </tr>
  399. <tr>
  400. <th>상품 타이틀</th>
  401. <td><input type="text" name="goodsTitle1" class="w300 aL">
  402. </td>
  403. </tr>
  404. <tr>
  405. <th>클릭시 페이지창</th>
  406. <td>
  407. <label class="rdoBtn"><input type="radio" name="linkOpenGb1" value="M" checked="checked"/>현재창</label>
  408. <label class="rdoBtn"><input type="radio" name="linkOpenGb1" value="N" />새창</label>
  409. </td>
  410. </tr>
  411. <tr>
  412. <th>상품 링크</th>
  413. <td><input type="text" name="goodsUrl1" class="w300 aL">
  414. </td>
  415. </tr>
  416. <tr>
  417. <th>전시 순서</th>
  418. <td><input type="text" name="goodsDispOrd1" class="w300 aL" data-valid-type="numeric">
  419. </td>
  420. </tr>
  421. </table>
  422. <ul class="panelBar">
  423. <li class="left">
  424. <button type="button" class="btn btnRight btn-success btn-lg" onclick="fnOpenGoodsPopup('gridOptions_p1');">상품 조회</button>
  425. <button type="button" class="btn btnRight btn-success btn-lg" onclick="fnGoodsDeleteRow('gridOptions_p1');">행 삭제</button>
  426. </li>
  427. </ul>
  428. <!-- Agrid -->
  429. <div id="gridTempGbList1" style="width: 100%; height: 200px;" class="ag-theme-balham"></div>
  430. </div>
  431. </td>
  432. </tr>
  433. </table>
  434. </div>
  435. </div>
  436. <!-- 구분 1 -->
  437. <!-- 구분2 -->
  438. <div class="inner-panelContent" id="btnAddGridNum2"
  439. style="display: none;">
  440. <input type="hidden" name="btnAddGridNum2UseYn" value="Y">
  441. <div class="panelContent">
  442. <table class="frmStyle">
  443. <colgroup>
  444. <col width="10%" />
  445. <col width="90%" />
  446. </colgroup>
  447. <tr>
  448. <th>상품 구분 2<br/>[전시여부<label class="chkBox" style="padding-left: 0px;"><input type="checkbox" name="goodsDispYn2" value="Y" checked/></label>]<br>
  449. <br>
  450. <button type="button" class="btn btn-danger btn-lg" id=""
  451. onclick="btnDeleteGridNum2('gridOptions_c2');">구분 삭제</button>
  452. </th>
  453. <td>
  454. <div class="">
  455. <table class="frmStyle">
  456. <tr>
  457. <th>상품 노출 기준</th>
  458. <td>
  459. <label class="rdoBtn"><input type="radio" name="goodsType2" value="G082_50" checked="checked"/>1개</label>
  460. <label class="rdoBtn"><input type="radio" name="goodsType2" value="G082_51" />2개</label>
  461. <label class="rdoBtn"><input type="radio" name="goodsType2" value="G082_52" />4개</label>
  462. </td>
  463. </tr>
  464. <tr>
  465. <th>상품 타이틀</th>
  466. <td><input type="text" name="goodsTitle2" class="w300 aL">
  467. </td>
  468. </tr>
  469. <tr>
  470. <th>클릭시 페이지창</th>
  471. <td>
  472. <label class="rdoBtn"><input type="radio" name="linkOpenGb2" value="M" checked="checked"/>현재창</label>
  473. <label class="rdoBtn"><input type="radio" name="linkOpenGb2" value="N" />새창</label>
  474. </td>
  475. </tr>
  476. <tr>
  477. <th>상품 링크</th>
  478. <td><input type="text" name="goodsUrl2" class="w300 aL">
  479. </td>
  480. </tr>
  481. <tr>
  482. <th>전시 순서</th>
  483. <td><input type="text" name="goodsDispOrd2" class="w300 aL" data-valid-type="numeric">
  484. </td>
  485. </tr>
  486. </table>
  487. <ul class="panelBar">
  488. <li class="left">
  489. <button type="button" class="btn btnRight btn-success btn-lg" onclick="fnOpenGoodsPopup('gridOptions_p2');">상품 조회</button>
  490. <button type="button" class="btn btnRight btn-success btn-lg" onclick="fnGoodsDeleteRow('gridOptions_p2');">행 삭제</button>
  491. </li>
  492. </ul>
  493. <!-- Agrid -->
  494. <div id="gridTempGbList2" style="width: 100%; height: 200px;" class="ag-theme-balham"></div>
  495. </div>
  496. </td>
  497. </tr>
  498. </table>
  499. </div>
  500. </div>
  501. <!-- 구분2 -->
  502. <!-- 구분3 -->
  503. <div class="inner-panelContent" id="btnAddGridNum3"
  504. style="display: none;">
  505. <input type="hidden" name="btnAddGridNum3UseYn" value="Y">
  506. <div class="panelContent">
  507. <table class="frmStyle">
  508. <colgroup>
  509. <col width="10%" />
  510. <col width="90%" />
  511. </colgroup>
  512. <tr>
  513. <th>상품 구분 3<br/>[전시여부<label class="chkBox" style="padding-left: 0px;"><input type="checkbox" name="goodsDispYn3" value="Y" checked/></label>]<br>
  514. <br>
  515. <button type="button" class="btn btn-danger btn-lg" id=""
  516. onclick="btnDeleteGridNum3('gridOptions_c3');">구분
  517. 삭제</button>
  518. </th>
  519. <td>
  520. <div class="">
  521. <table class="frmStyle">
  522. <tr>
  523. <th>상품 노출 기준</th>
  524. <td>
  525. <label class="rdoBtn"><input type="radio" name="goodsType3" value="G082_50" checked="checked"/>1개</label>
  526. <label class="rdoBtn"><input type="radio" name="goodsType3" value="G082_51" />2개</label>
  527. <label class="rdoBtn"><input type="radio" name="goodsType3" value="G082_52" />4개</label>
  528. </td>
  529. </tr>
  530. <tr>
  531. <th>상품 타이틀</th>
  532. <td><input type="text" name="goodsTitle3" class="w300 aL">
  533. </td>
  534. </tr>
  535. <tr>
  536. <th>클릭시 페이지창</th>
  537. <td>
  538. <label class="rdoBtn"><input type="radio" name="linkOpenGb3" value="M" checked="checked"/>현재창</label>
  539. <label class="rdoBtn"><input type="radio" name="linkOpenGb3" value="N" />새창</label>
  540. </td>
  541. </tr>
  542. <tr>
  543. <th>상품 링크</th>
  544. <td><input type="text" name="goodsUrl3" class="w300 aL">
  545. </td>
  546. </tr>
  547. <tr>
  548. <th>전시 순서</th>
  549. <td><input type="text" name="goodsDispOrd3" class="w300 aL" data-valid-type="numeric">
  550. </td>
  551. </tr>
  552. </table>
  553. <ul class="panelBar">
  554. <li class="left">
  555. <button type="button" class="btn btnRight btn-success btn-lg" onclick="fnOpenGoodsPopup('gridOptions_p3');">상품 조회</button>
  556. <button type="button" class="btn btnRight btn-success btn-lg" onclick="fnGoodsDeleteRow('gridOptions_p3');">행 삭제</button>
  557. </li>
  558. </ul>
  559. <!-- Agrid -->
  560. <div id="gridTempGbList3" style="width: 100%; height: 200px;" class="ag-theme-balham"></div>
  561. </div>
  562. </td>
  563. </tr>
  564. </table>
  565. </div>
  566. </div>
  567. <!-- 구분3 -->
  568. <!-- 구분4 -->
  569. <div class="inner-panelContent" id="btnAddGridNum4"
  570. style="display: none;">
  571. <input type="hidden" name="btnAddGridNum4UseYn" value="Y">
  572. <div class="panelContent">
  573. <table class="frmStyle">
  574. <colgroup>
  575. <col width="10%" />
  576. <col width="90%" />
  577. </colgroup>
  578. <tr>
  579. <th>상품 구분 4<br/>[전시여부<label class="chkBox" style="padding-left: 0px;"><input type="checkbox" name="goodsDispYn4" value="Y" checked/></label>]<br>
  580. <br>
  581. <button type="button" class="btn btn-danger btn-lg" id=""
  582. onclick="btnDeleteGridNum4('gridOptions_c4');">구분
  583. 삭제</button>
  584. </th>
  585. <td>
  586. <div class="">
  587. <table class="frmStyle">
  588. <tr>
  589. <th>상품 노출 기준</th>
  590. <td>
  591. <label class="rdoBtn"><input type="radio" name="goodsType4" value="G082_50" checked="checked"/>1개</label>
  592. <label class="rdoBtn"><input type="radio" name="goodsType4" value="G082_51" />2개</label>
  593. <label class="rdoBtn"><input type="radio" name="goodsType4" value="G082_52" />4개</label>
  594. </td>
  595. </tr>
  596. <tr>
  597. <th>상품 타이틀</th>
  598. <td><input type="text" name="goodsTitle4" class="w300 aL">
  599. </td>
  600. </tr>
  601. <tr>
  602. <th>클릭시 페이지창</th>
  603. <td>
  604. <label class="rdoBtn"><input type="radio" name="linkOpenGb4" value="M" checked="checked"/>현재창</label>
  605. <label class="rdoBtn"><input type="radio" name="linkOpenGb4" value="N" />새창</label>
  606. </td>
  607. </tr>
  608. <tr>
  609. <th>상품 링크</th>
  610. <td><input type="text" name="goodsUrl4" class="w300 aL">
  611. </td>
  612. </tr>
  613. <tr>
  614. <th>전시 순서</th>
  615. <td><input type="text" name="goodsDispOrd4" class="w300 aL" data-valid-type="numeric">
  616. </td>
  617. </tr>
  618. </table>
  619. <ul class="panelBar">
  620. <li class="left">
  621. <button type="button" class="btn btnRight btn-success btn-lg" onclick="fnOpenGoodsPopup('gridOptions_p4');">상품 조회</button>
  622. <button type="button" class="btn btnRight btn-success btn-lg" onclick="fnGoodsDeleteRow('gridOptions_p4');">행 삭제</button>
  623. </li>
  624. </ul>
  625. <!-- Agrid -->
  626. <div id="gridTempGbList4" style="width: 100%; height: 200px;" class="ag-theme-balham"></div>
  627. </div>
  628. </td>
  629. </tr>
  630. </table>
  631. </div>
  632. </div>
  633. <!-- 구분4 -->
  634. <!-- 구분5 -->
  635. <div class="inner-panelContent" id="btnAddGridNum5"
  636. style="display: none;">
  637. <input type="hidden" name="btnAddGridNum5UseYn" value="Y">
  638. <div class="panelContent">
  639. <table class="frmStyle">
  640. <colgroup>
  641. <col width="10%" />
  642. <col width="90%" />
  643. </colgroup>
  644. <tr>
  645. <th>상품 구분 5<br/>[전시여부<label class="chkBox" style="padding-left: 0px;"><input type="checkbox" name="goodsDispYn5" value="Y" checked/></label>]<br>
  646. <br>
  647. <button type="button" class="btn btn-danger btn-lg" id=""
  648. onclick="btnDeleteGridNum5('gridOptions_c5');">구분
  649. 삭제</button>
  650. </th>
  651. <td>
  652. <div class="">
  653. <table class="frmStyle">
  654. <tr>
  655. <th>상품 노출 기준</th>
  656. <td>
  657. <label class="rdoBtn"><input type="radio" name="goodsType5" value="G082_50" checked="checked"/>1개</label>
  658. <label class="rdoBtn"><input type="radio" name="goodsType5" value="G082_51" />2개</label>
  659. <label class="rdoBtn"><input type="radio" name="goodsType5" value="G082_52" />4개</label>
  660. </td>
  661. </tr>
  662. <tr>
  663. <th>상품 타이틀</th>
  664. <td><input type="text" name="goodsTitle5" class="w300 aL">
  665. </td>
  666. </tr>
  667. <tr>
  668. <th>클릭시 페이지창</th>
  669. <td>
  670. <label class="rdoBtn"><input type="radio" name="linkOpenGb5" value="M" checked="checked"/>현재창</label>
  671. <label class="rdoBtn"><input type="radio" name="linkOpenGb5" value="N" />새창</label>
  672. </td>
  673. </tr>
  674. <tr>
  675. <th>상품 링크</th>
  676. <td><input type="text" name="goodsUrl5" class="w300 aL">
  677. </td>
  678. </tr>
  679. <tr>
  680. <th>전시 순서</th>
  681. <td><input type="text" name="goodsDispOrd5" class="w300 aL" data-valid-type="numeric">
  682. </td>
  683. </tr>
  684. </table>
  685. <ul class="panelBar">
  686. <li class="left">
  687. <button type="button" class="btn btnRight btn-success btn-lg" onclick="fnOpenGoodsPopup('gridOptions_p5');">상품 조회</button>
  688. <button type="button" class="btn btnRight btn-success btn-lg" onclick="fnGoodsDeleteRow('gridOptions_p5');">행 삭제</button>
  689. </li>
  690. </ul>
  691. <!-- Agrid -->
  692. <div id="gridTempGbList5" style="width: 100%; height: 200px;" class="ag-theme-balham"></div>
  693. </div>
  694. </td>
  695. </tr>
  696. </table>
  697. </div>
  698. </div>
  699. <!-- 구분5 -->
  700. <!-- 구분6 -->
  701. <div class="inner-panelContent" id="btnAddGridNum6"
  702. style="display: none;">
  703. <input type="hidden" name="btnAddGridNum6UseYn" value="Y">
  704. <div class="panelContent">
  705. <table class="frmStyle">
  706. <colgroup>
  707. <col width="10%" />
  708. <col width="90%" />
  709. </colgroup>
  710. <tr>
  711. <th>상품 구분 6<br/>[전시여부<label class="chkBox" style="padding-left: 0px;"><input type="checkbox" name="goodsDispYn6" value="Y" checked/></label>]<br>
  712. <br>
  713. <button type="button" class="btn btn-danger btn-lg" id=""
  714. onclick="btnDeleteGridNum6('gridOptions_c6');">구분
  715. 삭제</button>
  716. </th>
  717. <td>
  718. <div class="">
  719. <table class="frmStyle">
  720. <tr>
  721. <th>상품 노출 기준</th>
  722. <td>
  723. <label class="rdoBtn"><input type="radio" name="goodsType6" value="G082_50" checked="checked"/>1개</label>
  724. <label class="rdoBtn"><input type="radio" name="goodsType6" value="G082_51" />2개</label>
  725. <label class="rdoBtn"><input type="radio" name="goodsType6" value="G082_52" />4개</label>
  726. </td>
  727. </tr>
  728. <tr>
  729. <th>상품 타이틀</th>
  730. <td><input type="text" name="goodsTitle6" class="w300 aL">
  731. </td>
  732. </tr>
  733. <tr>
  734. <th>클릭시 페이지창</th>
  735. <td>
  736. <label class="rdoBtn"><input type="radio" name="linkOpenGb6" value="M" checked="checked"/>현재창</label>
  737. <label class="rdoBtn"><input type="radio" name="linkOpenGb6" value="N" />새창</label>
  738. </td>
  739. </tr>
  740. <tr>
  741. <th>상품 링크</th>
  742. <td><input type="text" name="goodsUrl6" class="w300 aL">
  743. </td>
  744. </tr>
  745. <tr>
  746. <th>전시 순서</th>
  747. <td><input type="text" name="goodsDispOrd6" class="w300 aL" data-valid-type="numeric">
  748. </td>
  749. </tr>
  750. </table>
  751. <ul class="panelBar">
  752. <li class="left">
  753. <button type="button" class="btn btnRight btn-success btn-lg" onclick="fnOpenGoodsPopup('gridOptions_p6');">상품 조회</button>
  754. <button type="button" class="btn btnRight btn-success btn-lg" onclick="fnGoodsDeleteRow('gridOptions_p6');">행 삭제</button>
  755. </li>
  756. </ul>
  757. <!-- Agrid -->
  758. <div id="gridTempGbList6" style="width: 100%; height: 200px;" class="ag-theme-balham"></div>
  759. </div>
  760. </td>
  761. </tr>
  762. </table>
  763. </div>
  764. </div>
  765. <!-- 구분6 -->
  766. <!-- 구분7 -->
  767. <div class="inner-panelContent" id="btnAddGridNum7"
  768. style="display: none;">
  769. <input type="hidden" name="btnAddGridNum7UseYn" value="Y">
  770. <div class="panelContent">
  771. <table class="frmStyle">
  772. <colgroup>
  773. <col width="10%" />
  774. <col width="90%" />
  775. </colgroup>
  776. <tr>
  777. <th>상품 구분 7<br/>[전시여부<label class="chkBox" style="padding-left: 0px;"><input type="checkbox" name="goodsDispYn7" value="Y" checked/></label>]<br>
  778. <br>
  779. <button type="button" class="btn btn-danger btn-lg" id=""
  780. onclick="btnDeleteGridNum7('gridOptions_c7');">구분
  781. 삭제</button>
  782. </th>
  783. <td>
  784. <div class="">
  785. <table class="frmStyle">
  786. <tr>
  787. <th>상품 노출 기준</th>
  788. <td>
  789. <label class="rdoBtn"><input type="radio" name="goodsType7" value="G082_50" checked="checked"/>1개</label>
  790. <label class="rdoBtn"><input type="radio" name="goodsType7" value="G082_51" />2개</label>
  791. <label class="rdoBtn"><input type="radio" name="goodsType7" value="G082_52" />4개</label>
  792. </td>
  793. </tr>
  794. <tr>
  795. <th>상품 타이틀</th>
  796. <td><input type="text" name="goodsTitle7" class="w300 aL">
  797. </td>
  798. </tr>
  799. <tr>
  800. <th>클릭시 페이지창</th>
  801. <td>
  802. <label class="rdoBtn"><input type="radio" name="linkOpenGb7" value="M" checked="checked"/>현재창</label>
  803. <label class="rdoBtn"><input type="radio" name="linkOpenGb7" value="N" />새창</label>
  804. </td>
  805. </tr>
  806. <tr>
  807. <th>상품 링크</th>
  808. <td><input type="text" name="goodsUrl7" class="w300 aL">
  809. </td>
  810. </tr>
  811. <tr>
  812. <th>전시 순서</th>
  813. <td><input type="text" name="goodsDispOrd7" class="w300 aL" data-valid-type="numeric">
  814. </td>
  815. </tr>
  816. </table>
  817. <ul class="panelBar">
  818. <li class="left">
  819. <button type="button" class="btn btnRight btn-success btn-lg" onclick="fnOpenGoodsPopup('gridOptions_p7');">상품 조회</button>
  820. <button type="button" class="btn btnRight btn-success btn-lg" onclick="fnGoodsDeleteRow('gridOptions_p7');">행 삭제</button>
  821. </li>
  822. </ul>
  823. <!-- Agrid -->
  824. <div id="gridTempGbList7" style="width: 100%; height: 200px;" class="ag-theme-balham"></div>
  825. </div>
  826. </td>
  827. </tr>
  828. </table>
  829. </div>
  830. </div>
  831. <!-- 구분7 -->
  832. <!-- 구분8 -->
  833. <div class="inner-panelContent" id="btnAddGridNum8"
  834. style="display: none;">
  835. <input type="hidden" name="btnAddGridNum8UseYn" value="Y">
  836. <div class="panelContent">
  837. <table class="frmStyle">
  838. <colgroup>
  839. <col width="10%" />
  840. <col width="90%" />
  841. </colgroup>
  842. <tr>
  843. <th>상품 구분 8<br/>[전시여부<label class="chkBox" style="padding-left: 0px;"><input type="checkbox" name="goodsDispYn8" value="Y" checked/></label>]<br>
  844. <br>
  845. <button type="button" class="btn btn-danger btn-lg" id=""
  846. onclick="btnDeleteGridNum8('gridOptions_c8');">구분
  847. 삭제</button>
  848. </th>
  849. <td>
  850. <div class="">
  851. <table class="frmStyle">
  852. <tr>
  853. <th>상품 노출 기준</th>
  854. <td>
  855. <label class="rdoBtn"><input type="radio" name="goodsType8" value="G082_50" checked="checked"/>1개</label>
  856. <label class="rdoBtn"><input type="radio" name="goodsType8" value="G082_51" />2개</label>
  857. <label class="rdoBtn"><input type="radio" name="goodsType8" value="G082_52" />4개</label>
  858. </td>
  859. </tr>
  860. <tr>
  861. <th>상품 타이틀</th>
  862. <td><input type="text" name="goodsTitle8" class="w300 aL">
  863. </td>
  864. </tr>
  865. <tr>
  866. <th>클릭시 페이지창</th>
  867. <td>
  868. <label class="rdoBtn"><input type="radio" name="linkOpenGb8" value="M" checked="checked"/>현재창</label>
  869. <label class="rdoBtn"><input type="radio" name="linkOpenGb8" value="N" />새창</label>
  870. </td>
  871. </tr>
  872. <tr>
  873. <th>상품 링크</th>
  874. <td><input type="text" name="goodsUrl8" class="w300 aL">
  875. </td>
  876. </tr>
  877. <tr>
  878. <th>전시 순서</th>
  879. <td><input type="text" name="goodsDispOrd8" class="w300 aL" data-valid-type="numeric">
  880. </td>
  881. </tr>
  882. </table>
  883. <ul class="panelBar">
  884. <li class="left">
  885. <button type="button" class="btn btnRight btn-success btn-lg" onclick="fnOpenGoodsPopup('gridOptions_p8');">상품 조회</button>
  886. <button type="button" class="btn btnRight btn-success btn-lg" onclick="fnGoodsDeleteRow('gridOptions_p8');">행 삭제</button>
  887. </li>
  888. </ul>
  889. <!-- Agrid -->
  890. <div id="gridTempGbList8" style="width: 100%; height: 200px;" class="ag-theme-balham"></div>
  891. </div>
  892. </td>
  893. </tr>
  894. </table>
  895. </div>
  896. </div>
  897. <!-- 구분8 -->
  898. <!-- 구분9 -->
  899. <div class="inner-panelContent" id="btnAddGridNum9"
  900. style="display: none;">
  901. <input type="hidden" name="btnAddGridNum9UseYn" value="Y">
  902. <div class="panelContent">
  903. <table class="frmStyle">
  904. <colgroup>
  905. <col width="10%" />
  906. <col width="90%" />
  907. </colgroup>
  908. <tr>
  909. <th>상품 구분 9<br/>[전시여부<label class="chkBox" style="padding-left: 0px;"><input type="checkbox" name="goodsDispYn9" value="Y" checked/></label>]<br>
  910. <br>
  911. <button type="button" class="btn btn-danger btn-lg" id=""
  912. onclick="btnDeleteGridNum9('gridOptions_c9');">구분
  913. 삭제</button>
  914. </th>
  915. <td>
  916. <div class="">
  917. <table class="frmStyle">
  918. <tr>
  919. <th>상품 노출 기준</th>
  920. <td>
  921. <label class="rdoBtn"><input type="radio" name="goodsType9" value="G082_50" checked="checked"/>1개</label>
  922. <label class="rdoBtn"><input type="radio" name="goodsType9" value="G082_51" />2개</label>
  923. <label class="rdoBtn"><input type="radio" name="goodsType9" value="G082_52" />4개</label>
  924. </td>
  925. </tr>
  926. <tr>
  927. <th>상품 타이틀</th>
  928. <td><input type="text" name="goodsTitle9" class="w300 aL">
  929. </td>
  930. </tr>
  931. <tr>
  932. <th>클릭시 페이지창</th>
  933. <td>
  934. <label class="rdoBtn"><input type="radio" name="linkOpenGb9" value="M" checked="checked"/>현재창</label>
  935. <label class="rdoBtn"><input type="radio" name="linkOpenGb9" value="N" />새창</label>
  936. </td>
  937. </tr>
  938. <tr>
  939. <th>상품 링크</th>
  940. <td><input type="text" name="goodsUrl9" class="w300 aL">
  941. </td>
  942. </tr>
  943. <tr>
  944. <th>전시 순서</th>
  945. <td><input type="text" name="goodsDispOrd9" class="w300 aL" data-valid-type="numeric">
  946. </td>
  947. </tr>
  948. </table>
  949. <ul class="panelBar">
  950. <li class="left">
  951. <button type="button" class="btn btnRight btn-success btn-lg" onclick="fnOpenGoodsPopup('gridOptions_p9');">상품 조회</button>
  952. <button type="button" class="btn btnRight btn-success btn-lg" onclick="fnGoodsDeleteRow('gridOptions_p9');">행 삭제</button>
  953. </li>
  954. </ul>
  955. <!-- Agrid -->
  956. <div id="gridTempGbList9" style="width: 100%; height: 200px;" class="ag-theme-balham"></div>
  957. </div>
  958. </td>
  959. </tr>
  960. </table>
  961. </div>
  962. </div>
  963. <!-- 구분9 -->
  964. <!-- 구분10 -->
  965. <div class="inner-panelContent" id="btnAddGridNum10"
  966. style="display: none;">
  967. <input type="hidden" name="btnAddGridNum10UseYn" value="Y">
  968. <div class="panelContent">
  969. <table class="frmStyle">
  970. <colgroup>
  971. <col width="10%" />
  972. <col width="90%" />
  973. </colgroup>
  974. <tr>
  975. <th>상품 구분 10<br/>[전시여부<label class="chkBox" style="padding-left: 0px;"><input type="checkbox" name="goodsDispYn10" value="Y" checked/></label>]<br>
  976. <br>
  977. <button type="button" class="btn btn-danger btn-lg" id=""
  978. onclick="btnDeleteGridNum10('gridOptions_c10');">구분
  979. 삭제</button>
  980. </th>
  981. <td>
  982. <div class="">
  983. <table class="frmStyle">
  984. <tr>
  985. <th>상품 노출 기준</th>
  986. <td>
  987. <label class="rdoBtn"><input type="radio" name="goodsType10" value="G082_50" checked="checked"/>1개</label>
  988. <label class="rdoBtn"><input type="radio" name="goodsType10" value="G082_51" />2개</label>
  989. <label class="rdoBtn"><input type="radio" name="goodsType10" value="G082_52" />4개</label>
  990. </td>
  991. </tr>
  992. <tr>
  993. <th>상품 타이틀</th>
  994. <td><input type="text" name="goodsTitle10" class="w300 aL">
  995. </td>
  996. </tr>
  997. <tr>
  998. <th>클릭시 페이지창</th>
  999. <td>
  1000. <label class="rdoBtn"><input type="radio" name="linkOpenGb10" value="M" checked="checked"/>현재창</label>
  1001. <label class="rdoBtn"><input type="radio" name="linkOpenGb10" value="N" />새창</label>
  1002. </td>
  1003. </tr>
  1004. <tr>
  1005. <th>상품 링크</th>
  1006. <td><input type="text" name="goodsUrl10" class="w300 aL">
  1007. </td>
  1008. </tr>
  1009. <tr>
  1010. <th>전시 순서</th>
  1011. <td><input type="text" name="goodsDispOrd10" class="w300 aL" data-valid-type="numeric">
  1012. </td>
  1013. </tr>
  1014. </table>
  1015. <ul class="panelBar">
  1016. <li class="left">
  1017. <button type="button" class="btn btnRight btn-success btn-lg" onclick="fnOpenGoodsPopup('gridOptions_p10');">상품 조회</button>
  1018. <button type="button" class="btn btnRight btn-success btn-lg" onclick="fnGoodsDeleteRow('gridOptions_p10');">행 삭제</button>
  1019. </li>
  1020. </ul>
  1021. <!-- Agrid -->
  1022. <div id="gridTempGbList10" style="width: 100%; height: 200px;" class="ag-theme-balham"></div>
  1023. </div>
  1024. </td>
  1025. </tr>
  1026. </table>
  1027. </div>
  1028. </div>
  1029. <!-- 구분10 -->
  1030. </div>
  1031. <!-- panelContent -->
  1032. </div>
  1033. <!-- end of inner-panelContent -->
  1034. </div>
  1035. </div>
  1036. <br><br>
  1037. <!-- 버튼 배치 영역 -->
  1038. <ul class="panelBar">
  1039. <li class="right">
  1040. <button type="button" class="btn btn-danger btn-lg"
  1041. id="btndeleteTemplate">닫기</button>
  1042. <button type="button" class="btn btn-info btn-lg"
  1043. id="btnSaveTemplate">저장</button>
  1044. </li>
  1045. </ul>
  1046. <!-- //버튼 배치 영역 -->
  1047. </form>
  1048. </div>
  1049. </div>
  1050. <script type="text/javascript" src="/ux/plugins/summernote/summernote.js?v=2020103001"></script>
  1051. <script type="text/javascript" src="/ux/plugins/gaga/gaga.summernote.js?v=2021053101"></script>
  1052. <script th:inline="javascript">
  1053. /*<![CDATA[*/
  1054. let AddgridRow;
  1055. let goodsStatList = gagajf.convertToArray([[${goodsStatList}]]);
  1056. let reviewList = [[${reviewList}]];
  1057. let couponList = [[${couponList}]];
  1058. let couponNotice = [[${couponNotice}]];
  1059. let fileList = [[${fileList}]];
  1060. let noticeList = [[${noticeList}]];
  1061. let fsrcListTop = [[${fsrcListTop}]];
  1062. let fsrcListBtm = [[${fsrcListBtm}]];
  1063. let goodsList = [[${goodsList}]];
  1064. let goodsDetailList1 = [[${goodsDetailList1}]];
  1065. let goodsDetailList2 = [[${goodsDetailList2}]];
  1066. let goodsDetailList3 = [[${goodsDetailList3}]];
  1067. let goodsDetailList4 = [[${goodsDetailList4}]];
  1068. let goodsDetailList5 = [[${goodsDetailList5}]];
  1069. let goodsDetailList6 = [[${goodsDetailList6}]];
  1070. let goodsDetailList7 = [[${goodsDetailList7}]];
  1071. let goodsDetailList8 = [[${goodsDetailList8}]];
  1072. let goodsDetailList9 = [[${goodsDetailList9}]];
  1073. let goodsDetailList10 = [[${goodsDetailList10}]];
  1074. let mode = [[${mode}]];
  1075. // 리뷰 리스트 설정
  1076. var columnReviewList = [
  1077. {width: 40, minWidth: 40, cellClass: 'text-center', headerCheckboxSelection: true, checkboxSelection: true, filter: false},
  1078. {headerName: "상품ID", field: "reItemVal", width: 110, cellClass: 'text-center'},
  1079. {headerName: "상품명", field: "reItemNm", width: 200, cellClass: 'text-center'},
  1080. {headerName: "시작일" , field:'startSearchDate' , width:110, cellClass: 'text-center',
  1081. cellEditor: 'datePicker',
  1082. cellEditorParams: { maxlength: 10, required: true },
  1083. },
  1084. {headerName: "시작시간" , field:'startSearchTime' , width:150, cellClass: 'text-center',
  1085. cellEditor: 'dateTimer',
  1086. cellEditorParams: { maxlength: 8, required: true },
  1087. },
  1088. {headerName: "종료일" , field:'endSearchDate' , width:110, cellClass: 'text-center',
  1089. cellEditor: 'datePicker',
  1090. cellEditorParams: { maxlength: 10, required: true }
  1091. },
  1092. {headerName: "종료시간" , field:'endSearchTime' , width:150, cellClass: 'text-center',
  1093. cellEditor: 'dateTimer',
  1094. cellEditorParams: { maxlength: 8, required: true },
  1095. },
  1096. ];
  1097. //상품 전시 그리드 그리기
  1098. var columnDefs = [
  1099. {width: 40, minWidth: 40, cellClass: 'text-center', headerCheckboxSelection: true, checkboxSelection: true, filter: false},
  1100. {headerName: "상품 ID", field: "goodsItemVal" , width: 120, cellClass: 'text-center'},
  1101. {headerName: "브랜드명", field: "brandEnm" , width: 200, cellClass: 'text-center'},
  1102. {headerName: "상품명", field: "goodsNm" , width: 200, cellClass: 'text-center'},
  1103. {headerName: "판매상태", field: "goodsStat" , width: 100, cellClass: 'text-center'
  1104. ,cellEditorParams: { values: gagaAgGrid.extractValues(goodsStatList) },
  1105. valueFormatter: function (params) { return gagaAgGrid.lookupValue(goodsStatList, params.value); },
  1106. valueParser: function (params) { return gagaAgGrid.lookupKey(goodsStatList, params.newValue); }
  1107. },
  1108. {headerName: "정상가", field: "listPrice" , width: 120, cellClass: 'text-center'
  1109. , valueFormatter: function(params) { return params.value.addComma(); }
  1110. },
  1111. {headerName: "판매가", field: "currPrice" , width: 120, cellClass: 'text-center'
  1112. , valueFormatter: function(params) { return params.value.addComma(); }
  1113. },
  1114. ]
  1115. // Add on options
  1116. var gridOptions_p1 = gagaAgGrid.getGridOptions(columnDefs);
  1117. var gridOptions_p2 = gagaAgGrid.getGridOptions(columnDefs);
  1118. var gridOptions_p3 = gagaAgGrid.getGridOptions(columnDefs);
  1119. var gridOptions_p4 = gagaAgGrid.getGridOptions(columnDefs);
  1120. var gridOptions_p5 = gagaAgGrid.getGridOptions(columnDefs);
  1121. var gridOptions_p6 = gagaAgGrid.getGridOptions(columnDefs);
  1122. var gridOptions_p7 = gagaAgGrid.getGridOptions(columnDefs);
  1123. var gridOptions_p8 = gagaAgGrid.getGridOptions(columnDefs);
  1124. var gridOptions_p9 = gagaAgGrid.getGridOptions(columnDefs);
  1125. var gridOptions_p10 = gagaAgGrid.getGridOptions(columnDefs);
  1126. // 표시순번 수정가능
  1127. gridOptions_p1.defaultColDef.editable = true;
  1128. gridOptions_p2.defaultColDef.editable = true;
  1129. gridOptions_p3.defaultColDef.editable = true;
  1130. gridOptions_p4.defaultColDef.editable = true;
  1131. gridOptions_p5.defaultColDef.editable = true;
  1132. gridOptions_p6.defaultColDef.editable = true;
  1133. gridOptions_p7.defaultColDef.editable = true;
  1134. gridOptions_p8.defaultColDef.editable = true;
  1135. gridOptions_p9.defaultColDef.editable = true;
  1136. gridOptions_p10.defaultColDef.editable = true;
  1137. gridOptions_p1.suppressRowClickSelection = true;
  1138. gridOptions_p2.suppressRowClickSelection = true;
  1139. gridOptions_p3.suppressRowClickSelection = true;
  1140. gridOptions_p4.suppressRowClickSelection = true;
  1141. gridOptions_p5.suppressRowClickSelection = true;
  1142. gridOptions_p6.suppressRowClickSelection = true;
  1143. gridOptions_p7.suppressRowClickSelection = true;
  1144. gridOptions_p8.suppressRowClickSelection = true;
  1145. gridOptions_p9.suppressRowClickSelection = true;
  1146. gridOptions_p10.suppressRowClickSelection = true;
  1147. // 상품 중복선택
  1148. gridOptions_p2.rowSelection = 'multiple';
  1149. gridOptions_p1.rowSelection = 'multiple';
  1150. gridOptions_p3.rowSelection = 'multiple';
  1151. gridOptions_p4.rowSelection = 'multiple';
  1152. gridOptions_p5.rowSelection = 'multiple';
  1153. gridOptions_p6.rowSelection = 'multiple';
  1154. gridOptions_p7.rowSelection = 'multiple';
  1155. gridOptions_p8.rowSelection = 'multiple';
  1156. gridOptions_p9.rowSelection = 'multiple';
  1157. gridOptions_p10.rowSelection = 'multiple';
  1158. // 리뷰 그리드 설정
  1159. var gridOptionsPlanReviewList = gagaAgGrid.getGridOptions(columnReviewList);
  1160. gridOptionsPlanReviewList.stopEditingWhenGridLosesFocus = true;
  1161. gridOptionsPlanReviewList.defaultColDef.editable = true;
  1162. gridOptionsPlanReviewList.rowSelection = "multiple";
  1163. gridOptionsPlanReviewList.suppressRowClickSelection = true;
  1164. //팝업창 닫기버튼
  1165. $('#btndeleteTemplate').on('click', function() {
  1166. mcxDialog.confirm("창을 닫으시겠습니까?<br>닫은 내용은 복원하실 수 없습니다.", {
  1167. cancelBtnText: "취소",
  1168. sureBtnText: "확인",
  1169. sureBtnClick: function() {
  1170. uifnPopupClose('popupPlanTemplate');
  1171. }
  1172. });
  1173. });
  1174. // 상품 구분 추가 버튼 추가 버튼 표시는 1~5까지 순서대로 표시
  1175. $('#btnAddGrid').on('click', function(){
  1176. if($('#btnAddGridNum1').css('display') == 'none'){
  1177. $('#btnAddGridNum1').show();
  1178. }else if($('#btnAddGridNum2').css('display') == 'none' && $('#btnAddGridNum1').css('display') != 'none'){
  1179. $('#btnAddGridNum2').show();
  1180. }else if($('#btnAddGridNum3').css('display') == 'none' && $('#btnAddGridNum2').css('display') != 'none'){
  1181. $('#btnAddGridNum3').show();
  1182. }else if($('#btnAddGridNum4').css('display') == 'none' && $('#btnAddGridNum3').css('display') != 'none'){
  1183. $('#btnAddGridNum4').show();
  1184. }else if($('#btnAddGridNum5').css('display') == 'none' && $('#btnAddGridNum4').css('display') != 'none'){
  1185. $('#btnAddGridNum5').show();
  1186. }else if($('#btnAddGridNum6').css('display') == 'none' && $('#btnAddGridNum5').css('display') != 'none'){
  1187. $('#btnAddGridNum6').show();
  1188. }else if($('#btnAddGridNum7').css('display') == 'none' && $('#btnAddGridNum6').css('display') != 'none'){
  1189. $('#btnAddGridNum7').show();
  1190. }else if($('#btnAddGridNum8').css('display') == 'none' && $('#btnAddGridNum7').css('display') != 'none'){
  1191. $('#btnAddGridNum8').show();
  1192. }else if($('#btnAddGridNum9').css('display') == 'none' && $('#btnAddGridNum8').css('display') != 'none'){
  1193. $('#btnAddGridNum9').show();
  1194. }else if($('#btnAddGridNum10').css('display') == 'none' && $('#btnAddGridNum9').css('display') != 'none'){
  1195. $('#btnAddGridNum10').show();
  1196. }else if($('#btnAddGridNum10').css('display') != 'none'){
  1197. mcxDialog.alertC("구분자는 최대 10개까지 등록가능합니다.", {
  1198. sureBtnText: "확인"
  1199. });
  1200. return false;
  1201. }
  1202. });
  1203. // 상품추가
  1204. var fnFetchPlanGoods = function(goodsData) {
  1205. for(let i = 0 ; i < goodsData.length ; i++) {
  1206. let addChk = true, gridListValue = gagaAgGrid.getAllRowData(AddgridRow); // 받아온 모든 데이터
  1207. // 받아온 data for
  1208. for(let j = 0 ; j < gridListValue.length ; j++) {
  1209. // 동일한 data는 추가하지 않음
  1210. if(gridListValue[j].goodsItemVal == goodsData[i].goodsCd) { addChk = false; } // 중복체크
  1211. }
  1212. // 중복되지 않은 데이터 리스트에 추가
  1213. if(addChk) {
  1214. gagaAgGrid.addRowData(AddgridRow, {
  1215. "goodsItemVal":goodsData[i].goodsCd
  1216. ,"brandEnm":goodsData[i].brandEnm
  1217. ,"goodsNm":goodsData[i].goodsNm
  1218. ,"goodsStat":goodsData[i].goodsStat
  1219. ,"listPrice":goodsData[i].listPrice
  1220. ,"currPrice":goodsData[i].currPrice
  1221. });
  1222. }
  1223. }
  1224. uifnPopupClose("popupGoods");
  1225. }
  1226. // 버튼별 상품추가 팝업
  1227. var fnOpenGoodsPopup = function(param) {
  1228. switch (param){
  1229. case 'gridOptions_p1':
  1230. AddgridRow = gridOptions_p1;
  1231. break;
  1232. case 'gridOptions_p2' :
  1233. AddgridRow = gridOptions_p2;
  1234. break;
  1235. case 'gridOptions_p3' :
  1236. AddgridRow = gridOptions_p3;
  1237. break;
  1238. case 'gridOptions_p4' :
  1239. AddgridRow = gridOptions_p4;
  1240. break;
  1241. case 'gridOptions_p5' :
  1242. AddgridRow = gridOptions_p5;
  1243. break;
  1244. case 'gridOptions_p6' :
  1245. AddgridRow = gridOptions_p6;
  1246. break;
  1247. case 'gridOptions_p7' :
  1248. AddgridRow = gridOptions_p7;
  1249. break;
  1250. case 'gridOptions_p8' :
  1251. AddgridRow = gridOptions_p8;
  1252. break;
  1253. case 'gridOptions_p9' :
  1254. AddgridRow = gridOptions_p9;
  1255. break;
  1256. case 'gridOptions_p10' :
  1257. AddgridRow = gridOptions_p10;
  1258. break;
  1259. }
  1260. cfnOpenGoodsPopup('fnFetchPlanGoods');
  1261. }
  1262. // 상품 삭제
  1263. var fnGoodsDeleteRow = function(param) {
  1264. switch (param){
  1265. case 'gridOptions_p1':
  1266. AddgridRow = gridOptions_p1;
  1267. break;
  1268. case 'gridOptions_p2' :
  1269. AddgridRow = gridOptions_p2;
  1270. break;
  1271. case 'gridOptions_p3' :
  1272. AddgridRow = gridOptions_p3;
  1273. break;
  1274. case 'gridOptions_p4' :
  1275. AddgridRow = gridOptions_p4;
  1276. break;
  1277. case 'gridOptions_p5' :
  1278. AddgridRow = gridOptions_p5;
  1279. break;
  1280. case 'gridOptions_p6' :
  1281. AddgridRow = gridOptions_p6;
  1282. break;
  1283. case 'gridOptions_p7' :
  1284. AddgridRow = gridOptions_p7;
  1285. break;
  1286. case 'gridOptions_p8' :
  1287. AddgridRow = gridOptions_p8;
  1288. break;
  1289. case 'gridOptions_p9' :
  1290. AddgridRow = gridOptions_p9;
  1291. break;
  1292. case 'gridOptions_p10' :
  1293. AddgridRow = gridOptions_p10;
  1294. break;
  1295. }
  1296. var selectedData = gagaAgGrid.selectedRowData(AddgridRow);
  1297. if (selectedData.length == 0) {
  1298. mcxDialog.alert('선택된 행이 없습니다.');
  1299. return false;
  1300. }
  1301. //화면에서 삭제
  1302. gagaAgGrid.removeRowData(AddgridRow, false);
  1303. }
  1304. // 상품 구분 삭제 버튼 삭제는 해당 하는 폼이 삭제
  1305. function btnDeleteGridNum1(param){
  1306. if($('#btnAddGridNum1').css('display') !='none'){
  1307. $('#btnAddGridNum1').hide();
  1308. var deleteData = [];
  1309. var data = {};
  1310. data.planContSq = $('#planTemplateForm input[name=goodsPlanContSq1]').val();
  1311. deleteData.push(data);
  1312. var jsonData = JSON.stringify(deleteData);
  1313. gagajf.ajaxJsonSubmit('marketing/planning/detail/template/goods/delete', jsonData);
  1314. $("#planTemplateForm input[name=goodsTitle1]").val('');
  1315. $("#planTemplateForm input[name=goodsUrl1]").val('');
  1316. $("#planTemplateForm input[name=goodsDispOrd1]").val('');
  1317. gridOptions_p1.api.updateRowData({remove:gagaAgGrid.getAllRowData(gridOptions_p1)});
  1318. }
  1319. }
  1320. function btnDeleteGridNum2(param){
  1321. if($('#btnAddGridNum2').css('display') !='none'){
  1322. $('#btnAddGridNum2').hide();
  1323. var deleteData = [];
  1324. var data = {};
  1325. data.planContSq = $('#planTemplateForm input[name=goodsPlanContSq2]').val();
  1326. deleteData.push(data);
  1327. var jsonData = JSON.stringify(deleteData);
  1328. gagajf.ajaxJsonSubmit('marketing/planning/detail/template/goods/delete', jsonData);
  1329. $("#planTemplateForm input[name=goodsTitle2]").val('');
  1330. $("#planTemplateForm input[name=goodsUrl2]").val('');
  1331. $("#planTemplateForm input[name=goodsDispOrd2]").val('');
  1332. gridOptions_p2.api.updateRowData({remove:gagaAgGrid.getAllRowData(gridOptions_p2)});
  1333. }
  1334. }
  1335. function btnDeleteGridNum3(param){
  1336. if ($('#btnAddGridNum3').css('display') !='none'){
  1337. $('#btnAddGridNum3').hide();
  1338. var deleteData = [];
  1339. var data = {};
  1340. data.planContSq = $('#planTemplateForm input[name=goodsPlanContSq3]').val();
  1341. deleteData.push(data);
  1342. var jsonData = JSON.stringify(deleteData);
  1343. gagajf.ajaxJsonSubmit('marketing/planning/detail/template/goods/delete', jsonData);
  1344. $("#planTemplateForm input[name=goodsTitle3]").val('');
  1345. $("#planTemplateForm input[name=goodsUrl3]").val('');
  1346. $("#planTemplateForm input[name=goodsDispOrd3]").val('');
  1347. gridOptions_p3.api.updateRowData({remove:gagaAgGrid.getAllRowData(gridOptions_p3)});
  1348. }
  1349. }
  1350. function btnDeleteGridNum4(param){
  1351. if ($('#btnAddGridNum4').css('display') !='none'){
  1352. $('#btnAddGridNum4').hide();
  1353. var deleteData = [];
  1354. var data = {};
  1355. data.planContSq = $('#planTemplateForm input[name=goodsPlanContSq4]').val();
  1356. deleteData.push(data);
  1357. var jsonData = JSON.stringify(deleteData);
  1358. gagajf.ajaxJsonSubmit('marketing/planning/detail/template/goods/delete', jsonData);
  1359. $("#planTemplateForm input[name=goodsTitle4]").val('');
  1360. $("#planTemplateForm input[name=goodsUrl4]").val('');
  1361. $("#planTemplateForm input[name=goodsDispOrd4]").val('');
  1362. gridOptions_p4.api.updateRowData({remove:gagaAgGrid.getAllRowData(gridOptions_p4)});
  1363. }
  1364. }
  1365. function btnDeleteGridNum5(param){
  1366. if ($('#btnAddGridNum5').css('display') !='none'){
  1367. $('#btnAddGridNum5').hide();
  1368. var deleteData = [];
  1369. var data = {};
  1370. data.planContSq = $('#planTemplateForm input[name=goodsPlanContSq5]').val();
  1371. deleteData.push(data);
  1372. var jsonData = JSON.stringify(deleteData);
  1373. gagajf.ajaxJsonSubmit('marketing/planning/detail/template/goods/delete', jsonData);
  1374. $("#planTemplateForm input[name=goodsTitle5]").val('');
  1375. $("#planTemplateForm input[name=goodsUrl5]").val('');
  1376. $("#planTemplateForm input[name=goodsDispOrd5]").val('');
  1377. gridOptions_p5.api.updateRowData({remove:gagaAgGrid.getAllRowData(gridOptions_p5)});
  1378. }
  1379. }
  1380. function btnDeleteGridNum6(param){
  1381. if ($('#btnAddGridNum6').css('display') !='none'){
  1382. $('#btnAddGridNum6').hide();
  1383. var deleteData = [];
  1384. var data = {};
  1385. data.planContSq = $('#planTemplateForm input[name=goodsPlanContSq6]').val();
  1386. deleteData.push(data);
  1387. var jsonData = JSON.stringify(deleteData);
  1388. gagajf.ajaxJsonSubmit('marketing/planning/detail/template/goods/delete', jsonData);
  1389. $("#planTemplateForm input[name=goodsTitle6]").val('');
  1390. $("#planTemplateForm input[name=goodsUrl6]").val('');
  1391. $("#planTemplateForm input[name=goodsDispOrd6]").val('');
  1392. gridOptions_p6.api.updateRowData({remove:gagaAgGrid.getAllRowData(gridOptions_p6)});
  1393. }
  1394. }
  1395. function btnDeleteGridNum7(param){
  1396. if ($('#btnAddGridNum7').css('display') !='none'){
  1397. $('#btnAddGridNum7').hide();
  1398. var deleteData = [];
  1399. var data = {};
  1400. data.planContSq = $('#planTemplateForm input[name=goodsPlanContSq7]').val();
  1401. deleteData.push(data);
  1402. var jsonData = JSON.stringify(deleteData);
  1403. gagajf.ajaxJsonSubmit('marketing/planning/detail/template/goods/delete', jsonData);
  1404. $("#planTemplateForm input[name=goodsTitle7]").val('');
  1405. $("#planTemplateForm input[name=goodsUrl7]").val('');
  1406. $("#planTemplateForm input[name=goodsDispOrd7]").val('');
  1407. gridOptions_p7.api.updateRowData({remove:gagaAgGrid.getAllRowData(gridOptions_p7)});
  1408. }
  1409. }
  1410. function btnDeleteGridNum8(param){
  1411. if ($('#btnAddGridNum8').css('display') !='none'){
  1412. $('#btnAddGridNum8').hide();
  1413. var deleteData = [];
  1414. var data = {};
  1415. data.planContSq = $('#planTemplateForm input[name=goodsPlanContSq8]').val();
  1416. deleteData.push(data);
  1417. var jsonData = JSON.stringify(deleteData);
  1418. gagajf.ajaxJsonSubmit('marketing/planning/detail/template/goods/delete', jsonData);
  1419. $("#planTemplateForm input[name=goodsTitle8]").val('');
  1420. $("#planTemplateForm input[name=goodsUrl8]").val('');
  1421. $("#planTemplateForm input[name=goodsDispOrd8]").val('');
  1422. gridOptions_p8.api.updateRowData({remove:gagaAgGrid.getAllRowData(gridOptions_p8)});
  1423. }
  1424. }
  1425. function btnDeleteGridNum9(param){
  1426. if ($('#btnAddGridNum9').css('display') !='none'){
  1427. $('#btnAddGridNum9').hide();
  1428. var deleteData = [];
  1429. var data = {};
  1430. data.planContSq = $('#planTemplateForm input[name=goodsPlanContSq9]').val();
  1431. deleteData.push(data);
  1432. var jsonData = JSON.stringify(deleteData);
  1433. gagajf.ajaxJsonSubmit('marketing/planning/detail/template/goods/delete', jsonData);
  1434. $("#planTemplateForm input[name=goodsTitle9]").val('');
  1435. $("#planTemplateForm input[name=goodsUrl9]").val('');
  1436. $("#planTemplateForm input[name=goodsDispOrd9]").val('');
  1437. gridOptions_p9.api.updateRowData({remove:gagaAgGrid.getAllRowData(gridOptions_p9)});
  1438. }
  1439. }
  1440. function btnDeleteGridNum10(param){
  1441. if ($('#btnAddGridNum10').css('display') !='none'){
  1442. $('#btnAddGridNum10').hide();
  1443. var deleteData = [];
  1444. var data = {};
  1445. data.planContSq = $('#planTemplateForm input[name=goodsPlanContSq10]').val();
  1446. deleteData.push(data);
  1447. var jsonData = JSON.stringify(deleteData);
  1448. gagajf.ajaxJsonSubmit('marketing/planning/detail/template/goods/delete', jsonData);
  1449. $("#planTemplateForm input[name=goodsTitle10]").val('');
  1450. $("#planTemplateForm input[name=goodsUrl10]").val('');
  1451. $("#planTemplateForm input[name=goodsDispOrd10]").val('');
  1452. gridOptions_p10.api.updateRowData({remove:gagaAgGrid.getAllRowData(gridOptions_p10)});
  1453. }
  1454. }
  1455. // 첨부파일 개수 선택시
  1456. $("#fileCnt").on("change", function() {
  1457. for (var i = 1; i <= 10; i++) {
  1458. $('#file' + i).parent().parent().show();
  1459. }
  1460. var fileCnt = $(this).val();
  1461. for (var i = 10; i > fileCnt; i--) {
  1462. $('#file' + i).parent().parent().hide();
  1463. }
  1464. });
  1465. // 유의사항 개수 선택시
  1466. $("#noticeCnt").on("change", function() {
  1467. for (var i = 1; i <= 10; i++) {
  1468. $('#notice' + i).parent().parent().parent().show();
  1469. }
  1470. var noticeCnt = $(this).val();
  1471. for (var i = 10; i > noticeCnt; i--) {
  1472. $('#notice' + i).parent().parent().parent().hide();
  1473. }
  1474. });
  1475. // 쿠폰 개수 선택시
  1476. $("#couponCnt").on("change", function() {
  1477. for (var i = 1; i <= 10; i++) {
  1478. $('#coupon' + i).parent().parent().show();
  1479. }
  1480. var couponCnt = $(this).val();
  1481. for (var i = 10; i > couponCnt; i--) {
  1482. $('#coupon' + i).parent().parent().hide();
  1483. }
  1484. });
  1485. // 파일첨부 선택 시
  1486. $('#file1').on('change', function() { fnChooseFile(this, 1); });
  1487. $('#file2').on('change', function() { fnChooseFile(this, 2); });
  1488. $('#file3').on('change', function() { fnChooseFile(this, 3); });
  1489. $('#file4').on('change', function() { fnChooseFile(this, 4); });
  1490. $('#file5').on('change', function() { fnChooseFile(this, 5); });
  1491. $('#file6').on('change', function() { fnChooseFile(this, 6); });
  1492. $('#file7').on('change', function() { fnChooseFile(this, 7); });
  1493. $('#file8').on('change', function() { fnChooseFile(this, 8); });
  1494. $('#file9').on('change', function() { fnChooseFile(this, 9); });
  1495. $('#file10').on('change', function() { fnChooseFile(this, 10); });
  1496. var fnChooseFile = function(obj, fileNo) {
  1497. // multiple 속성이 있으면 files에는 다수의 객체가 할당됨
  1498. var file = obj.files[0];
  1499. // 파일 업로드
  1500. gagajf.ajaxFileUpload('/common/file/upload?subDir=/planning'
  1501. , file
  1502. , function(result) {
  1503. // 업로드한 파일명 설정
  1504. $('#fileItemVal' + fileNo).val(result.oldFileName);
  1505. $('#sysFileNm' + fileNo).val(result.newFileName);
  1506. }
  1507. );
  1508. }
  1509. // 리뷰상품 추가 콜백 함수
  1510. var reviewGoodsList = function (result) {
  1511. // 기존 리스트 데이터 for
  1512. for(let i = 0 ; i < result.length ; i++) {
  1513. let addChk = true, gridListValue = gagaAgGrid.getAllRowData(gridOptionsPlanReviewList); // 받아온 모든 데이터
  1514. // 받아온 data for
  1515. for(let j = 0 ; j < gridListValue.length ; j++) {
  1516. // 동일한 data는 추가하지 않음
  1517. if(gridListValue[j].reItemVal == result[i].goodsCd) { addChk = false; } // 중복체크
  1518. }
  1519. // 중복되지 않은 데이터 리스트에 추가
  1520. if(addChk) {
  1521. gagaAgGrid.addRowData(gridOptionsPlanReviewList, {"reItemVal":result[i].goodsCd , "reItemNm":result[i].goodsNm, "startSearchDate": _today, "startSearchTime": '00:00:00', "endSearchDate":_today, endSearchTime: '23:59:59' });
  1522. }
  1523. }
  1524. uifnPopupClose("popupGoods");
  1525. }
  1526. // 리뷰 선택삭제 버튼 클릭시
  1527. $('#btnReviewDelete').on('click', function() {
  1528. gridOptionsPlanReviewList.api.updateRowData({remove:gagaAgGrid.selectedRowData(gridOptionsPlanReviewList)});
  1529. });
  1530. // 쿠폰조회 팝업
  1531. var fnOpenCouponRetrievePopup = function(strReturnCode, strReturnName) {
  1532. var oParam = new Object();
  1533. oParam.returnCode = strReturnCode;
  1534. oParam.returnName = strReturnName;
  1535. cfnOpenCouponRetrievePopup($(strReturnName).val(), oParam);
  1536. }
  1537. // 쿠폰 추가
  1538. var fnAddCoupone = function() {
  1539. var len = $('#planTemplateForm').find('#couponTable tr').length;
  1540. var html = '<tr>';
  1541. html += '<td colspan="3">';
  1542. html += '<input type="text" class="w300" id="cuItemNm" name="cuItemNm'+(len+1)+'"/>';
  1543. html += '<button type="button" class="btn icn" id="couponPlusBtn'+(len+1)+'"><i class="fa fa-search cpn" aria-hidden="true"></i></button>';
  1544. html += '<input id="cuItemVal" name="cuItemVal'+(len+1)+'" type="text" class="w100" maxlength="20" readonly="readonly"/>';
  1545. html += '<button type="button" class="btn icn" id="deleteCoupon'+(len+1)+'"><i class="fa fa-eraser" aria-hidden="true"></i></button>';
  1546. html += '</td>';
  1547. html += '</tr>';
  1548. $("#couponTable").append(html);
  1549. $('#couponPlusBtn'+(len+1)).attr("onclick","fnOpenCouponRetrievePopup('input[name=cuItemVal"+(len+1)+"]', 'input[name=cuItemNm"+(len+1)+"]');")
  1550. $('#deleteCoupon'+(len+1)).attr("onclick","deleteRowCoupon("+(len+1)+")");
  1551. }
  1552. //삭제 버튼
  1553. var deleteRowCoupon = function(len) {
  1554. var cnt = len;
  1555. var html = $("#deleteCoupon"+len).closest('tr');
  1556. html.remove(); //tr 테그 삭제
  1557. }
  1558. // 팝업창 저장
  1559. $('#btnSaveTemplate').on('click', function() {
  1560. // 리뷰관련 데이터 담기
  1561. let allReviewData = gagaAgGrid.getAllRowData(gridOptionsPlanReviewList);
  1562. var multiPlanReview = [];
  1563. $.each(allReviewData, function(idx, item) {
  1564. multiPlanReview.push(item.reItemVal);
  1565. });
  1566. var multiPlanReviewStartD = [];
  1567. $.each(allReviewData, function(idx, item) {
  1568. multiPlanReviewStartD.push(item.startSearchDate);
  1569. });
  1570. var multiPlanReviewStartT = [];
  1571. $.each(allReviewData, function(idx, item) {
  1572. multiPlanReviewStartT.push(item.startSearchTime);
  1573. });
  1574. var multiPlanReviewEndD = [];
  1575. $.each(allReviewData, function(idx, item) {
  1576. multiPlanReviewEndD.push(item.endSearchDate);
  1577. });
  1578. var multiPlanReviewEndT = [];
  1579. $.each(allReviewData, function(idx, item) {
  1580. multiPlanReviewEndT.push(item.endSearchTime);
  1581. });
  1582. // 쿠폰관련 데이터 담기
  1583. var multiPlanCoupon = [];
  1584. var len = $('#planTemplateForm').find('#couponTable tr').length;
  1585. for (var i = 0; i < len; i++) {
  1586. multiPlanCoupon.push($('#planTemplateForm').find('#couponTable tr').children().eq(i).find("#cuItemVal").val());
  1587. }
  1588. //파일관련 데이터 담기
  1589. var multiPlanFile = [];
  1590. var multiPlanFile2 = [];
  1591. var multiPlanFile3 = [];
  1592. var count = $("#planTemplateForm select[name=fileCnt]").val();
  1593. for (var i = 0; i < count; i++) {
  1594. if($('#fileItemVal'+(i+1)).val() == '' || typeof $('#fileItemVal'+(i+1)).val() == 'undeifined'){
  1595. false;
  1596. }else{
  1597. multiPlanFile.push($('#fileItemVal'+(i+1)).val());
  1598. multiPlanFile2.push($('#planTemplateForm input[name=fileLinkUrl'+(i+1)+']').val());
  1599. multiPlanFile3.push($('#planTemplateForm input:radio[name=fileLinkOpenGb'+(i+1)+']:checked').val());
  1600. }
  1601. }
  1602. //유의사항관련 데이터 담기
  1603. var multiPlanNotice = [];
  1604. var count = $("#planTemplateForm select[name=noticeCnt]").val();
  1605. for (var i = 0; i < count; i++) {
  1606. if($('#noticeItemVal'+(i+1)).val() == '' || typeof $('#noticeItemVal'+(i+1)).val() == 'undeifined'){
  1607. false;
  1608. }else{
  1609. multiPlanNotice.push($('#noticeItemVal'+(i+1)).val());
  1610. }
  1611. }
  1612. //쿠폰 유의사항관련 데이터 담기
  1613. var multiPlanCouponNotice = [];
  1614. var count = $("#planTemplateForm select[name=couponCnt]").val();
  1615. for (var i = 0; i < count; i++) {
  1616. if($('#cpnNote'+i).val() == '' || typeof $('#cpnNote'+i).val() == 'undeifined'){
  1617. false;
  1618. }else{
  1619. multiPlanCouponNotice.push($('#cpnNote'+i).val());
  1620. }
  1621. }
  1622. // 상품 등록
  1623. let arrayData1 = gagaAgGrid.getAllRowData(gridOptions_p1)
  1624. let arrayData2 = gagaAgGrid.getAllRowData(gridOptions_p2)
  1625. let arrayData3 = gagaAgGrid.getAllRowData(gridOptions_p3)
  1626. let arrayData4 = gagaAgGrid.getAllRowData(gridOptions_p4)
  1627. let arrayData5 = gagaAgGrid.getAllRowData(gridOptions_p5)
  1628. let arrayData6 = gagaAgGrid.getAllRowData(gridOptions_p6)
  1629. let arrayData7 = gagaAgGrid.getAllRowData(gridOptions_p7)
  1630. let arrayData8 = gagaAgGrid.getAllRowData(gridOptions_p8)
  1631. let arrayData9 = gagaAgGrid.getAllRowData(gridOptions_p9)
  1632. let arrayData10 = gagaAgGrid.getAllRowData(gridOptions_p10)
  1633. let goodsTemp1 = {};
  1634. let goodsTemp2 = {};
  1635. let goodsTemp3 = {};
  1636. let goodsTemp4 = {};
  1637. let goodsTemp5 = {};
  1638. let goodsTemp6 = {};
  1639. let goodsTemp7 = {};
  1640. let goodsTemp8 = {};
  1641. let goodsTemp9 = {};
  1642. let goodsTemp10 = {};
  1643. goodsTemp1.goodsTitle = $('#planTemplateForm input[name=goodsTitle1]').val();
  1644. goodsTemp1.goodsUrl = $('#planTemplateForm input[name=goodsUrl1]').val();
  1645. goodsTemp1.goodsType = $('#planTemplateForm input:radio[name=goodsType1]:checked').val();
  1646. goodsTemp1.goodsLinkOpenGb = $('#planTemplateForm input[name=linkOpenGb1]:checked').val();
  1647. goodsTemp1.goodsDispOrd = $('#planTemplateForm input[name=goodsDispOrd1]').val();
  1648. goodsTemp1.goodsDispYn = $('#planTemplateForm input:checkbox[name=goodsDispYn1]').val();
  1649. goodsTemp1.goodsPlanContSq = $('#planTemplateForm input[name=goodsPlanContSq1]').val();
  1650. goodsTemp2.goodsTitle = $('#planTemplateForm input[name=goodsTitle2]').val();
  1651. goodsTemp2.goodsUrl = $('#planTemplateForm input[name=goodsUrl2]').val();
  1652. goodsTemp2.goodsType = $('#planTemplateForm input:radio[name=goodsType2]:checked').val();
  1653. goodsTemp2.goodsLinkOpenGb = $('#planTemplateForm input:radio[name=linkOpenGb2]:checked').val();
  1654. goodsTemp2.goodsDispOrd = $('#planTemplateForm input[name=goodsDispOrd2]').val();
  1655. goodsTemp2.goodsDispYn = $('#planTemplateForm input:checkbox[name=goodsDispYn2]').val();
  1656. goodsTemp2.goodsPlanContSq = $('#planTemplateForm input[name=goodsPlanContSq2]').val();
  1657. goodsTemp3.goodsTitle = $('#planTemplateForm input[name=goodsTitle3]').val();
  1658. goodsTemp3.goodsUrl = $('#planTemplateForm input[name=goodsUrl3]').val();
  1659. goodsTemp3.goodsType = $('#planTemplateForm input:radio[name=goodsType3]:checked').val();
  1660. goodsTemp3.goodsLinkOpenGb = $('#planTemplateForm input:radio[name=linkOpenGb3]:checked').val();
  1661. goodsTemp3.goodsDispOrd = $('#planTemplateForm input[name=goodsDispOrd3]').val();
  1662. goodsTemp3.goodsDispYn = $('#planTemplateForm input:checkbox[name=goodsDispYn3]').val();
  1663. goodsTemp3.goodsPlanContSq = $('#planTemplateForm input[name=goodsPlanContSq3]').val();
  1664. goodsTemp4.goodsTitle = $('#planTemplateForm input[name=goodsTitle4]').val();
  1665. goodsTemp4.goodsUrl = $('#planTemplateForm input[name=goodsUrl4]').val();
  1666. goodsTemp4.goodsType = $('#planTemplateForm input:radio[name=goodsType4]:checked').val();
  1667. goodsTemp4.goodsLinkOpenGb = $('#planTemplateForm input:radio[name=linkOpenGb4]:checked').val();
  1668. goodsTemp4.goodsDispOrd = $('#planTemplateForm input[name=goodsDispOrd4]').val();
  1669. goodsTemp4.goodsDispYn = $('#planTemplateForm input:checkbox[name=goodsDispYn4]').val();
  1670. goodsTemp4.goodsPlanContSq = $('#planTemplateForm input[name=goodsPlanContSq4]').val();
  1671. goodsTemp5.goodsTitle = $('#planTemplateForm input[name=goodsTitle5]').val();
  1672. goodsTemp5.goodsUrl = $('#planTemplateForm input[name=goodsUrl5]').val();
  1673. goodsTemp5.goodsType = $('#planTemplateForm input:radio[name=goodsType5]:checked').val();
  1674. goodsTemp5.goodsLinkOpenGb = $('#planTemplateForm input:radio[name=linkOpenGb5]:checked').val();
  1675. goodsTemp5.goodsDispOrd = $('#planTemplateForm input[name=goodsDispOrd5]').val();
  1676. goodsTemp5.goodsDispYn = $('#planTemplateForm input:checkbox[name=goodsDispYn5]').val();
  1677. goodsTemp5.goodsPlanContSq = $('#planTemplateForm input[name=goodsPlanContSq5]').val();
  1678. goodsTemp6.goodsTitle = $('#planTemplateForm input[name=goodsTitle6]').val();
  1679. goodsTemp6.goodsUrl = $('#planTemplateForm input[name=goodsUrl6]').val();
  1680. goodsTemp6.goodsType = $('#planTemplateForm input:radio[name=goodsType6]:checked').val();
  1681. goodsTemp6.goodsLinkOpenGb = $('#planTemplateForm input:radio[name=linkOpenGb6]:checked').val();
  1682. goodsTemp6.goodsDispOrd = $('#planTemplateForm input[name=goodsDispOrd6]').val();
  1683. goodsTemp6.goodsDispYn = $('#planTemplateForm input:checkbox[name=goodsDispYn6]').val();
  1684. goodsTemp6.goodsPlanContSq = $('#planTemplateForm input[name=goodsPlanContSq6]').val();
  1685. goodsTemp7.goodsTitle = $('#planTemplateForm input[name=goodsTitle7]').val();
  1686. goodsTemp7.goodsUrl = $('#planTemplateForm input[name=goodsUrl7]').val();
  1687. goodsTemp7.goodsType = $('#planTemplateForm input:radio[name=goodsType7]:checked').val();
  1688. goodsTemp7.goodsLinkOpenGb = $('#planTemplateForm input:radio[name=linkOpenGb7]:checked').val();
  1689. goodsTemp7.goodsDispOrd = $('#planTemplateForm input[name=goodsDispOrd7]').val();
  1690. goodsTemp7.goodsDispYn = $('#planTemplateForm input:checkbox[name=goodsDispYn7]').val();
  1691. goodsTemp7.goodsPlanContSq = $('#planTemplateForm input[name=goodsPlanContSq7]').val();
  1692. goodsTemp8.goodsTitle = $('#planTemplateForm input[name=goodsTitle8]').val();
  1693. goodsTemp8.goodsUrl = $('#planTemplateForm input[name=goodsUrl8]').val();
  1694. goodsTemp8.goodsType = $('#planTemplateForm input:radio[name=goodsType8]:checked').val();
  1695. goodsTemp8.goodsLinkOpenGb = $('#planTemplateForm input:radio[name=linkOpenGb8]:checked').val();
  1696. goodsTemp8.goodsDispOrd = $('#planTemplateForm input[name=goodsDispOrd8]').val();
  1697. goodsTemp8.goodsDispYn = $('#planTemplateForm input:checkbox[name=goodsDispYn8]').val();
  1698. goodsTemp8.goodsPlanContSq = $('#planTemplateForm input[name=goodsPlanContSq8]').val();
  1699. goodsTemp9.goodsTitle = $('#planTemplateForm input[name=goodsTitle9]').val();
  1700. goodsTemp9.goodsUrl = $('#planTemplateForm input[name=goodsUrl9]').val();
  1701. goodsTemp9.goodsType = $('#planTemplateForm input:radio[name=goodsType9]:checked').val();
  1702. goodsTemp9.goodsLinkOpenGb = $('#planTemplateForm input:radio[name=linkOpenGb9]:checked').val();
  1703. goodsTemp9.goodsDispOrd = $('#planTemplateForm input[name=goodsDispOrd9]').val();
  1704. goodsTemp9.goodsDispYn = $('#planTemplateForm input:checkbox[name=goodsDispYn9]').val();
  1705. goodsTemp9.goodsPlanContSq = $('#planTemplateForm input[name=goodsPlanContSq9]').val();
  1706. goodsTemp10.goodsTitle = $('#planTemplateForm input[name=goodsTitle10]').val();
  1707. goodsTemp10.goodsUrl = $('#planTemplateForm input[name=goodsUrl10]').val();
  1708. goodsTemp10.goodsType = $('#planTemplateForm input:radio[name=goodsType10]:checked').val();
  1709. goodsTemp10.goodsLinkOpenGb = $('#planTemplateForm input:radio[name=linkOpenGb10]:checked').val();
  1710. goodsTemp10.goodsDispOrd = $('#planTemplateForm input[name=goodsDispOrd10]').val();
  1711. goodsTemp10.goodsDispYn = $('#planTemplateForm input:checkbox[name=goodsDispYn10]').val();
  1712. goodsTemp10.goodsPlanContSq = $('#planTemplateForm input[name=goodsPlanContSq10]').val();
  1713. mcxDialog.confirm('기획전 템플릿을 등록 하시겠습니까?', {
  1714. cancelBtnText: "취소",
  1715. sureBtnText: "확인",
  1716. sureBtnClick: function() {
  1717. let data = {
  1718. multiPlanReview : multiPlanReview
  1719. ,allReviewData : allReviewData
  1720. ,multiPlanReviewStartD : multiPlanReviewStartD
  1721. ,multiPlanReviewStartT : multiPlanReviewStartT
  1722. ,multiPlanReviewEndD : multiPlanReviewEndD
  1723. ,multiPlanReviewEndT : multiPlanReviewEndT
  1724. ,reTitle : $('#planTemplateForm input[name=reTitle]').val()
  1725. ,reDispOrd : $('#planTemplateForm input[name=reDispOrd]').val()
  1726. ,rePlanContSq : $('#planTemplateForm input[name=rePlanContSq]').val()
  1727. ,reDispYn : $('#planTemplateForm input:checkbox[name=reDispYn]').val()
  1728. ,mode : $('#planTemplateForm input[name=mode]').val()
  1729. ,planSq : $('#planTemplateForm input[name=planSq]').val()
  1730. ,multiPlanCoupon : multiPlanCoupon
  1731. ,cuTitle : $('#planTemplateForm input[name=cuTitle]').val()
  1732. ,cuDispOrd : $('#planTemplateForm input[name=cuDispOrd]').val()
  1733. ,cuPlanContSq : $('#planTemplateForm input[name=cuPlanContSq]').val()
  1734. ,cuDispYn : $('#planTemplateForm input:checkbox[name=cuDispYn]').val()
  1735. ,multiPlanCouponNotice : multiPlanCouponNotice
  1736. ,multiPlanFile : multiPlanFile
  1737. ,multiPlanFile2 : multiPlanFile2
  1738. ,multiPlanFile3 : multiPlanFile3
  1739. ,fileDispYn : $('#planTemplateForm input:checkbox[name=fileDispYn]').val()
  1740. ,fileDispOrd : $('#planTemplateForm input[name=fileDispOrd]').val()
  1741. ,filePlanContSq : $('#planTemplateForm input[name=filePlanContSq]').val()
  1742. ,multiPlanNotice : multiPlanNotice
  1743. ,noticeDispYn : $('#planTemplateForm input:checkbox[name=noticeDispYn]').val()
  1744. ,noticeDispOrd : $('#planTemplateForm input[name=noticeDispOrd]').val()
  1745. ,noticePlanContSq : $('#planTemplateForm input[name=noticePlanContSq]').val()
  1746. ,topFsrcDispYn : $('#planTemplateForm input:checkbox[name=topFsrcDispYn]').val()
  1747. ,btmFsrcDispYn : $('#planTemplateForm input:checkbox[name=btmFsrcDispYn]').val()
  1748. ,topFsrcDispOrd: $('#planTemplateForm input[name=topFsrcDispOrd]').val()
  1749. ,btmFsrcDispOrd : $('#planTemplateForm input[name=btmFsrcDispOrd]').val()
  1750. ,fsrcPcTop : $('#planTemplateForm textarea[name=fsrcPcTop]').val()
  1751. ,fsrcMobileTop: $('#planTemplateForm textarea[name=fsrcMobileTop]').val()
  1752. ,fsrcPcBtm: $('#planTemplateForm textarea[name=fsrcPcBtm]').val()
  1753. ,fsrcMobileBtm : $('#planTemplateForm textarea[name=fsrcMobileBtm]').val()
  1754. ,multiPlanGoodsContent1 : goodsTemp1
  1755. ,multiPlanGoodsContent2 : goodsTemp2
  1756. ,multiPlanGoodsContent3 : goodsTemp3
  1757. ,multiPlanGoodsContent4 : goodsTemp4
  1758. ,multiPlanGoodsContent5 : goodsTemp5
  1759. ,multiPlanGoodsContent6 : goodsTemp6
  1760. ,multiPlanGoodsContent7 : goodsTemp7
  1761. ,multiPlanGoodsContent8 : goodsTemp8
  1762. ,multiPlanGoodsContent9 : goodsTemp9
  1763. ,multiPlanGoodsContent10 : goodsTemp10
  1764. ,multiPlanGoodsContentVal1 : arrayData1
  1765. ,multiPlanGoodsContentVal2 : arrayData2
  1766. ,multiPlanGoodsContentVal3 : arrayData3
  1767. ,multiPlanGoodsContentVal4 : arrayData4
  1768. ,multiPlanGoodsContentVal5 : arrayData5
  1769. ,multiPlanGoodsContentVal6 : arrayData6
  1770. ,multiPlanGoodsContentVal7 : arrayData7
  1771. ,multiPlanGoodsContentVal8 : arrayData8
  1772. ,multiPlanGoodsContentVal9 : arrayData9
  1773. ,multiPlanGoodsContentVal10 : arrayData10
  1774. }
  1775. var jsonData = JSON.stringify(data);
  1776. gagajf.ajaxJsonSubmit('/marketing/planning/detail/template/save', jsonData, fnDetailFormSearch);
  1777. }
  1778. });
  1779. });
  1780. // 템플릿 등록 후 콜백
  1781. var fnDetailFormSearch = function() {
  1782. uifnPopupClose('popupPlanTemplate');
  1783. }
  1784. // 첨부파일 삭제
  1785. var fnDeleteFile = function(obj, planSq, planContItemSq, fileItemVal) {
  1786. mcxDialog.confirm('정말 삭제하시겠습니까?', {
  1787. cancelBtnText: "취소",
  1788. sureBtnText: "확인",
  1789. sureBtnClick: function(){
  1790. var params = new Object();
  1791. params.planSq = planSq;
  1792. params.planContItemSq = planContItemSq;
  1793. params.fileItemVal = fileItemVal;
  1794. var jsonData = JSON.stringify(params);
  1795. gagajf.ajaxJsonSubmit('/marketing/planning/detail/template/file/delete', jsonData, function() {
  1796. $(obj).parent().remove();
  1797. });
  1798. }
  1799. });
  1800. }
  1801. $(document).ready(function() {
  1802. //gagaSn.setContents('#fsrcPcBtm', '');
  1803. //gagaSn.setContents('#fsrcMobileBtm', '');
  1804. //gagaSn.setContents('#fsrcPcTop', '');
  1805. //gagaSn.setContents('#fsrcMobileTop', '');
  1806. //gagaSn.setContents('#note', '');
  1807. var snOptions1 = gagaSn.getToolbarOptions('media');
  1808. var snOptions2 = gagaSn.getToolbarOptions('media');
  1809. var snOptions3 = gagaSn.getToolbarOptions('media');
  1810. var snOptions4 = gagaSn.getToolbarOptions('media');
  1811. // 썸머노트 그리기
  1812. gagaSn.createSummernote(snOptions1, '#fsrcPcTop');
  1813. gagaSn.createSummernote(snOptions2, '#fsrcMobileTop');
  1814. gagaSn.createSummernote(snOptions3, '#fsrcPcBtm');
  1815. gagaSn.createSummernote(snOptions4, '#fsrcMobileBtm');
  1816. // 그리드 그리기
  1817. gagaAgGrid.createGrid("gridListPlanReview", gridOptionsPlanReviewList);
  1818. gagaAgGrid.createGrid("gridTempGbList1", gridOptions_p1);
  1819. gagaAgGrid.createGrid("gridTempGbList2", gridOptions_p2);
  1820. gagaAgGrid.createGrid("gridTempGbList3", gridOptions_p3);
  1821. gagaAgGrid.createGrid("gridTempGbList4", gridOptions_p4);
  1822. gagaAgGrid.createGrid("gridTempGbList5", gridOptions_p5);
  1823. gagaAgGrid.createGrid("gridTempGbList6", gridOptions_p6);
  1824. gagaAgGrid.createGrid("gridTempGbList7", gridOptions_p7);
  1825. gagaAgGrid.createGrid("gridTempGbList8", gridOptions_p8);
  1826. gagaAgGrid.createGrid("gridTempGbList9", gridOptions_p9);
  1827. gagaAgGrid.createGrid("gridTempGbList10", gridOptions_p10);
  1828. $("input:checkbox[name=reDispYn]").change(function() {
  1829. if($("input:checkbox[name=reDispYn]").is(":checked")){
  1830. $("input:checkbox[name=reDispYn]").val('Y');
  1831. }else{
  1832. $("input:checkbox[name=reDispYn]").val('N');
  1833. }
  1834. })
  1835. $("input:checkbox[name=cuDispYn]").change(function() {
  1836. if($("input:checkbox[name=cuDispYn]").is(":checked")){
  1837. $("input:checkbox[name=cuDispYn]").val('Y');
  1838. }else{
  1839. $("input:checkbox[name=cuDispYn]").val('N');
  1840. }
  1841. })
  1842. $("input:checkbox[name=fileDispYn]").change(function() {
  1843. if($("input:checkbox[name=fileDispYn]").is(":checked")){
  1844. $("input:checkbox[name=fileDispYn]").val('Y');
  1845. }else{
  1846. $("input:checkbox[name=fileDispYn]").val('N');
  1847. }
  1848. })
  1849. $("input:checkbox[name=noticeDispYn]").change(function() {
  1850. if($("input:checkbox[name=noticeDispYn]").is(":checked")){
  1851. $("input:checkbox[name=noticeDispYn]").val('Y');
  1852. }else{
  1853. $("input:checkbox[name=noticeDispYn]").val('N');
  1854. }
  1855. })
  1856. $("input:checkbox[name=topFsrcDispYn]").change(function() {
  1857. if($("input:checkbox[name=topFsrcDispYn]").is(":checked")){
  1858. $("input:checkbox[name=topFsrcDispYn]").val('Y');
  1859. }else{
  1860. $("input:checkbox[name=topFsrcDispYn]").val('N');
  1861. }
  1862. })
  1863. $("input:checkbox[name=btmFsrcDispYn]").change(function() {
  1864. if($("input:checkbox[name=btmFsrcDispYn]").is(":checked")){
  1865. $("input:checkbox[name=btmFsrcDispYn]").val('Y');
  1866. }else{
  1867. $("input:checkbox[name=btmFsrcDispYn]").val('N');
  1868. }
  1869. })
  1870. $("input:checkbox[name=goodsDispYn1]").change(function() {
  1871. if($("input:checkbox[name=goodsDispYn1]").is(":checked")){
  1872. $("input:checkbox[name=goodsDispYn1]").val('Y');
  1873. }else{
  1874. $("input:checkbox[name=goodsDispYn1]").val('N');
  1875. }
  1876. })
  1877. $("input:checkbox[name=goodsDispYn2]").change(function() {
  1878. if($("input:checkbox[name=goodsDispYn2]").is(":checked")){
  1879. $("input:checkbox[name=goodsDispYn2]").val('Y');
  1880. }else{
  1881. $("input:checkbox[name=goodsDispYn2]").val('N');
  1882. }
  1883. })
  1884. $("input:checkbox[name=goodsDispYn3]").change(function() {
  1885. if($("input:checkbox[name=goodsDispYn3]").is(":checked")){
  1886. $("input:checkbox[name=goodsDispYn3]").val('Y');
  1887. }else{
  1888. $("input:checkbox[name=goodsDispYn3]").val('N');
  1889. }
  1890. })
  1891. $("input:checkbox[name=goodsDispYn4]").change(function() {
  1892. if($("input:checkbox[name=goodsDispYn4]").is(":checked")){
  1893. $("input:checkbox[name=goodsDispYn4]").val('Y');
  1894. }else{
  1895. $("input:checkbox[name=goodsDispYn4]").val('N');
  1896. }
  1897. })
  1898. $("input:checkbox[name=goodsDispYn5]").change(function() {
  1899. if($("input:checkbox[name=goodsDispYn5]").is(":checked")){
  1900. $("input:checkbox[name=goodsDispYn5]").val('Y');
  1901. }else{
  1902. $("input:checkbox[name=goodsDispYn5]").val('N');
  1903. }
  1904. })
  1905. $("input:checkbox[name=goodsDispYn6]").change(function() {
  1906. if($("input:checkbox[name=goodsDispYn6]").is(":checked")){
  1907. $("input:checkbox[name=goodsDispYn6]").val('Y');
  1908. }else{
  1909. $("input:checkbox[name=goodsDispYn6]").val('N');
  1910. }
  1911. })
  1912. $("input:checkbox[name=goodsDispYn7]").change(function() {
  1913. if($("input:checkbox[name=goodsDispYn7]").is(":checked")){
  1914. $("input:checkbox[name=goodsDispYn7]").val('Y');
  1915. }else{
  1916. $("input:checkbox[name=goodsDispYn7]").val('N');
  1917. }
  1918. })
  1919. $("input:checkbox[name=goodsDispYn8]").change(function() {
  1920. if($("input:checkbox[name=goodsDispYn8]").is(":checked")){
  1921. $("input:checkbox[name=goodsDispYn8]").val('Y');
  1922. }else{
  1923. $("input:checkbox[name=goodsDispYn8]").val('N');
  1924. }
  1925. })
  1926. $("input:checkbox[name=goodsDispYn9]").change(function() {
  1927. if($("input:checkbox[name=goodsDispYn9]").is(":checked")){
  1928. $("input:checkbox[name=goodsDispYn9]").val('Y');
  1929. }else{
  1930. $("input:checkbox[name=goodsDispYn9]").val('N');
  1931. }
  1932. })
  1933. $("input:checkbox[name=goodsDispYn10]").change(function() {
  1934. if($("input:checkbox[name=goodsDispYn10]").is(":checked")){
  1935. $("input:checkbox[name=goodsDispYn10]").val('Y');
  1936. }else{
  1937. $("input:checkbox[name=goodsDispYn10]").val('N');
  1938. }
  1939. })
  1940. if(mode == 'U'){
  1941. if(typeof reviewList[0] != 'undefined'){
  1942. // 리뷰
  1943. $('#planTemplateForm input[name=reTitle]').val(reviewList[0].title);
  1944. $('#planTemplateForm input[name=reDispOrd]').val(reviewList[0].dispOrd);
  1945. $('#planTemplateForm input[name=rePlanContSq]').val(reviewList[0].planContSq);
  1946. if (reviewList[0].dispYn == 'Y') {
  1947. $('#planTemplateForm input:checkbox[name="reDispYn"]').prop('checked', true);
  1948. }
  1949. if(typeof reviewList[0].reItemVal != 'undefined' && reviewList[0].reItemVal != null){
  1950. gridOptionsPlanReviewList.api.setRowData(reviewList);
  1951. }
  1952. }
  1953. if(typeof couponList[0] != 'undefined'){
  1954. //쿠폰
  1955. $('#planTemplateForm input[name=cuTitle]').val(couponNotice.title);
  1956. $('#planTemplateForm input[name=cuDispOrd]').val(couponNotice.dispOrd);
  1957. $('#planTemplateForm input[name=cuPlanContSq]').val(couponNotice.planContSq);
  1958. if (couponNotice.dispYn == 'Y') {
  1959. $('#planTemplateForm input:checkbox[name="cuDispYn"]').prop('checked', true);
  1960. }
  1961. if (couponNotice.cpnNote0 != null && couponNotice.cpnNote0 != '') {
  1962. $("#planTemplateForm select[name=couponCnt]").val(1);
  1963. $("#cpnNote0").val(couponNotice.cpnNote0);
  1964. }
  1965. if (couponNotice.cpnNote1 != null && couponNotice.cpnNote1 != '') {
  1966. $("#planTemplateForm select[name=couponCnt]").val(2);
  1967. $("#cpnNote1").val(couponNotice.cpnNote1);
  1968. }
  1969. if (couponNotice.cpnNote2 != null && couponNotice.cpnNote2 != '') {
  1970. $("#planTemplateForm select[name=couponCnt]").val(3);
  1971. $("#cpnNote2").val(couponNotice.cpnNote2);
  1972. }
  1973. if (couponNotice.cpnNote3 != null && couponNotice.cpnNote3 != '') {
  1974. $("#planTemplateForm select[name=couponCnt]").val(4);
  1975. $("#cpnNote3").val(couponNotice.cpnNote3);
  1976. }
  1977. if (couponNotice.cpnNote4 != null && couponNotice.cpnNote4 != '') {
  1978. $("#planTemplateForm select[name=couponCnt]").val(5);
  1979. $("#cpnNote4").val(couponNotice.cpnNote4);
  1980. }
  1981. if (couponNotice.cpnNote5 != null && couponNotice.cpnNote5 != '') {
  1982. $("#planTemplateForm select[name=couponCnt]").val(6);
  1983. $("#cpnNote5").val(couponNotice.cpnNote5);
  1984. }
  1985. if (couponNotice.cpnNote6 != null && couponNotice.cpnNote6 != '') {
  1986. $("#planTemplateForm select[name=couponCnt]").val(7);
  1987. $("#cpnNote6").val(couponNotice.cpnNote6);
  1988. }
  1989. if (couponNotice.cpnNote7 != null && couponNotice.cpnNote7 != '') {
  1990. $("#planTemplateForm select[name=couponCnt]").val(8);
  1991. $("#cpnNote7").val(couponNotice.cpnNote7);
  1992. }
  1993. if (couponNotice.cpnNote8 != null && couponNotice.cpnNote8 != '') {
  1994. $("#planTemplateForm select[name=couponCnt]").val(9);
  1995. $("#cpnNote8").val(couponNotice.cpnNote8);
  1996. }
  1997. if (couponNotice.cpnNote9 != null && couponNotice.cpnNote9 != '') {
  1998. $("#planTemplateForm select[name=couponCnt]").val(10);
  1999. $("#cpnNote9").val(couponNotice.cpnNote9);
  2000. }
  2001. if(couponList[0].cuItemNm != null && couponList[0].cuItemNm != '')
  2002. {
  2003. for (var i = 0; i <couponList.length; i++) {
  2004. var html = '<tr>';
  2005. html += '<td colspan="3">';
  2006. html += '<input type="text" class="w300" id="cuItemNm" name="cuItemNm'+(i+1)+'" value="'+ couponList[i].cuItemNm +'"/>';
  2007. html += '<button type="button" class="btn icn" id="couponPlusBtn'+(i+1)+'"><i class="fa fa-search cpn" aria-hidden="true"></i></button>';
  2008. html += '<input id="cuItemVal" name="cuItemVal'+(i+1)+'" type="text" class="w100" maxlength="20" readonly="readonly" value="'+ couponList[i].cuItemVal +'"/>';
  2009. html += '<button type="button" class="btn icn" id="deleteCoupon'+(i+1)+'"><i class="fa fa-eraser" aria-hidden="true"></i></button>';
  2010. html += '</td>';
  2011. html += '</tr>';
  2012. $("#couponTable").append(html);
  2013. $('#couponPlusBtn'+(i+1)).attr("onclick","fnOpenCouponRetrievePopup('input[name=cuItemVal"+(i+1)+"]', 'input[name=cuItemNm"+(i+1)+"]');")
  2014. $('#deleteCoupon'+(i+1)).attr("onclick","deleteRowCoupon("+(i+1)+")");
  2015. }
  2016. }
  2017. }
  2018. if(typeof fileList[0] != 'undefined'){
  2019. //파일
  2020. $('#planTemplateForm input[name=fileDispOrd]').val(fileList[0].dispOrd);
  2021. $('#planTemplateForm input[name=filePlanContSq]').val(fileList[0].planContSq);
  2022. if (fileList[0].dispYn == 'Y') {
  2023. $('#planTemplateForm input:checkbox[name="fileDispYn"]').prop('checked', true);
  2024. }
  2025. if(fileList.length > 0 && fileList[0].fileItemVal != null)
  2026. {
  2027. $("#planTemplateForm select[name=fileCnt]").val(fileList.length);
  2028. for (var i = 0; i <fileList.length; i++) {
  2029. $("#planTemplateForm input[name=fileLinkUrl"+ (i+1) +"]").val(fileList[i].linkUrl);
  2030. $("#planTemplateForm label[id=file_"+ (i+1) +"]").html(fileList[i].fileItemVal);
  2031. $("#planTemplateForm input[id=fileItemVal"+ (i+1) +"]").val(fileList[i].fileItemVal);
  2032. if (fileList[i].linkOpenGb == "M") {
  2033. $('#planTemplateForm input:radio[name=fileLinkOpenGb'+(i+1)+']:radio[value="M"]').prop('checked', true);
  2034. }else if(fileList[i].linkOpenGb == "N"){
  2035. $('#planTemplateForm input:radio[name=fileLinkOpenGb'+(i+1)+']:radio[value="N"]').prop('checked', true);
  2036. }
  2037. }
  2038. }
  2039. }
  2040. if(typeof noticeList[0] != 'undefined'){
  2041. //유의사항
  2042. $('#planTemplateForm input[name=noticeDispOrd]').val(noticeList[0].dispOrd);
  2043. $('#planTemplateForm input[name=noticePlanContSq]').val(noticeList[0].planContSq);
  2044. if (noticeList[0].dispYn == 'Y') {
  2045. $('#planTemplateForm input:checkbox[name="noticeDispYn"]').prop('checked', true);
  2046. }
  2047. if(noticeList.length > 0 && noticeList[0].noticeItemVal != null)
  2048. {
  2049. $("#planTemplateForm select[name=noticeCnt]").val(noticeList.length);
  2050. for (var i = 0; i <noticeList.length; i++) {
  2051. $("#planTemplateForm input[id=noticeItemVal"+ (i+1) +"]").val(noticeList[i].noticeItemVal);
  2052. }
  2053. }
  2054. }
  2055. //html(하단)
  2056. if(typeof fsrcListBtm[0] != 'undefined'){
  2057. $('#planTemplateForm input[name=btmFsrcDispOrd]').val(fsrcListBtm[0].dispOrd);
  2058. if (fsrcListBtm[0].dispYn == 'Y') {
  2059. $('#planTemplateForm input:checkbox[name="btmFsrcDispYn"]').prop('checked', true);
  2060. }
  2061. $('#fsrcPcBtm').summernote('code', fsrcListBtm[0].fsrcPc);
  2062. $('#fsrcMobileBtm').summernote('code', fsrcListBtm[0].fsrcMob);
  2063. //gagaSn.setContents('#fsrcPcBtm', fsrcListBtm[0].fsrcPc);
  2064. //gagaSn.setContents('#fsrcMobileBtm', fsrcListBtm[0].fsrcMob);
  2065. }
  2066. //html(상단)
  2067. if(typeof fsrcListTop[0] != 'undefined'){
  2068. $('#planTemplateForm input[name=topFsrcDispOrd]').val(fsrcListTop[0].dispOrd);
  2069. if (fsrcListTop[0].dispYn == 'Y') {
  2070. $('#planTemplateForm input:checkbox[name="topFsrcDispYn"]').prop('checked', true);
  2071. }
  2072. $('#fsrcPcTop').summernote('code', fsrcListTop[0].fsrcPc);
  2073. $('#fsrcMobileTop').summernote('code', fsrcListTop[0].fsrcMob);
  2074. //gagaSn.setContents('#fsrcPcTop', fsrcListTop[0].fsrcPc);
  2075. //gagaSn.setContents('#fsrcMobileTop', fsrcListTop[0].fsrcMob);
  2076. }
  2077. //상품
  2078. if(typeof goodsList[0] != 'undefined'){
  2079. for (var i = 0; i < goodsList.length; i++) {
  2080. $('#planTemplateForm input[name=goodsTitle'+(i+1)+']').val(goodsList[i].title);
  2081. $('#planTemplateForm input[name=goodsUrl'+(i+1)+']').val(goodsList[i].linkUrl);
  2082. $('#planTemplateForm input[name=goodsDispOrd'+(i+1)+']').val(goodsList[i].dispOrd);
  2083. $('#planTemplateForm input[name=goodsPlanContSq'+(i+1)+']').val(goodsList[i].planContSq);
  2084. $('#planTemplateForm input[name=goodsPlanContItemSq'+(i+1)+']').val(goodsList[i].planContItemSq);
  2085. if (goodsList[i].title != '' || goodsList[i].linkUrl != '') {
  2086. if (goodsList[i].dispYn == 'Y') {
  2087. $('#planTemplateForm input:checkbox[name=goodsDispYn'+(i+1)+']').prop('checked', true);
  2088. }else{
  2089. $('#planTemplateForm input:checkbox[name=goodsDispYn'+(i+1)+']').prop('checked', false);
  2090. }
  2091. if(goodsList[i].tmplType == "G082_50"){
  2092. $('#planTemplateForm input:radio[name=goodsType'+(i+1)+']:radio[value="G082_50"]').prop('checked', true);
  2093. }else if(goodsList[i].tmplType == "G082_51"){
  2094. $('#planTemplateForm input:radio[name=goodsType'+(i+1)+']:radio[value="G082_51"]').prop('checked', true);
  2095. }else if(goodsList[i].tmplType == "G082_52"){
  2096. $('#planTemplateForm input:radio[name=goodsType'+(i+1)+']:radio[value="G082_52"]').prop('checked', true);
  2097. }
  2098. if (goodsList[i].linkOpenGb == "M") {
  2099. $('#planTemplateForm input:radio[name=linkOpenGb'+(i+1)+']:radio[value="M"]').prop('checked', true);
  2100. }else if(goodsList[i].linkOpenGb == "N"){
  2101. $('#planTemplateForm input:radio[name=linkOpenGb'+(i+1)+']:radio[value="N"]').prop('checked', true);
  2102. }
  2103. $('#btnAddGridNum' + (i + 1)).show();
  2104. }
  2105. if(goodsDetailList1.length > 0){
  2106. gridOptions_p1.api.setRowData(goodsDetailList1);
  2107. $('#btnAddGridNum1').show();
  2108. }
  2109. if(goodsDetailList2.length > 0){
  2110. gridOptions_p2.api.setRowData(goodsDetailList2);
  2111. $('#btnAddGridNum2').show();
  2112. }
  2113. if(goodsDetailList3.length > 0){
  2114. gridOptions_p3.api.setRowData(goodsDetailList3);
  2115. $('#btnAddGridNum3').show();
  2116. }
  2117. if(goodsDetailList4.length > 0){
  2118. gridOptions_p4.api.setRowData(goodsDetailList4);
  2119. $('#btnAddGridNum4').show();
  2120. }
  2121. if(goodsDetailList5.length > 0){
  2122. gridOptions_p5.api.setRowData(goodsDetailList5);
  2123. $('#btnAddGridNum5').show();
  2124. }
  2125. if(goodsDetailList6.length > 0){
  2126. gridOptions_p6.api.setRowData(goodsDetailList6);
  2127. $('#btnAddGridNum6').show();
  2128. }
  2129. if(goodsDetailList7.length > 0){
  2130. gridOptions_p7.api.setRowData(goodsDetailList7);
  2131. $('#btnAddGridNum7').show();
  2132. }
  2133. if(goodsDetailList8.length > 0){
  2134. gridOptions_p8.api.setRowData(goodsDetailList8);
  2135. $('#btnAddGridNum8').show();
  2136. }
  2137. if(goodsDetailList9.length > 0){
  2138. gridOptions_p9.api.setRowData(goodsDetailList9);
  2139. $('#btnAddGridNum9').show();
  2140. }
  2141. if(goodsDetailList10.length > 0){
  2142. gridOptions_p10.api.setRowData(goodsDetailList10);
  2143. $('#btnAddGridNum10').show();
  2144. }
  2145. }
  2146. }
  2147. }
  2148. $("#fileCnt").trigger('change');
  2149. $("#noticeCnt").trigger('change');
  2150. $("#couponCnt").trigger('change');
  2151. });
  2152. /*]]>*/
  2153. </script>
  2154. </html>