PlanTemplatePopupForm.html 100 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343
  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>HTML [상단]</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>[전시여부<label class="chkBox"><input type="checkbox" name="topFsrcDispYn" value="Y" checked/></label>]</th>
  62. <!-- <td><input type="text" name ="topFsrcDispOrd" value="" class="w100 aR" data-valid-type="numeric"></td> -->
  63. </tr>
  64. <tr>
  65. <th>웹용소스</th>
  66. <td colspan="5">
  67. <div style="margin-top: 5px;">
  68. <textarea class="textareaR4 summernote" name="fsrcPcTop" id="fsrcPcTop" rows="15" cols="95" style="width: 1280px;"></textarea>
  69. </div>
  70. </td>
  71. </tr>
  72. <tr>
  73. <th>모바일용소스</th>
  74. <td colspan="5">
  75. <div style="margin-top: 5px;">
  76. <textarea class="textareaR4 summernote" name="fsrcMobileTop" id="fsrcMobileTop" rows="15" cols="95" style="width: 1280px;"></textarea>
  77. </div>
  78. </td>
  79. </tr>
  80. </table>
  81. </div>
  82. </div>
  83. </div>
  84. </div>
  85. <div class="panelContent">
  86. <div class="panelStyle" style="margin: unset;">
  87. <!-- TITLE -->
  88. <div class="panelTitle">
  89. <h2>리뷰 조회</h2>
  90. <span class="panelControl"> <i
  91. class="fa inner-fa-chevron-up"></i> <!-- 열림/닫힘 화살표 -->
  92. </span>
  93. </div>
  94. <!-- //TITLE -->
  95. <div class="inner-panelContent">
  96. <div class="panelContent">
  97. <table class="frmStyle">
  98. <colgroup>
  99. <col width="10%" />
  100. <col width="90%" />
  101. </colgroup>
  102. <tr>
  103. <th>리뷰<br/>[전시여부<label class="chkBox"><input type="checkbox" name="reDispYn" onclick="fnAttachYnClick('reDispYn')" value="Y" checked/></label>]</th>
  104. <td>
  105. <table class="frmStyle">
  106. <tr>
  107. <th>리뷰 타이틀</th>
  108. <td><input type="text" name="reTitle" class="w300 aL"/>
  109. </td>
  110. </tr>
  111. <tr>
  112. <th>전시순서</th>
  113. <td><input type="text" name="reDispOrd" class="w100 aL" data-valid-type="numeric"></td>
  114. </tr>
  115. </table>
  116. <div class="padding10">
  117. <span class="buttonSpan">
  118. <button type="button" class="btn btnRight btn-success btn-lg" onclick="cfnOpenGoodsPopup('reviewGoodsList')">상품 조회</button>
  119. <button type="button" class="btn btnRight btn-success btn-lg" id="btnReviewDelete">행 삭제</button>
  120. </span> <br />
  121. <div id="gridListPlanReview" style="width: 100%; height: 200px;" class="ag-theme-balham"></div>
  122. </div>
  123. </td>
  124. </tr>
  125. </table>
  126. </div>
  127. </div>
  128. </div>
  129. </div>
  130. <div class="panelContent">
  131. <div class="panelStyle" style="margin: unset;">
  132. <!-- TITLE -->
  133. <div class="panelTitle">
  134. <h2>쿠폰 조회</h2>
  135. <span class="panelControl"> <i
  136. class="fa inner-fa-chevron-up"></i> <!-- 열림/닫힘 화살표 -->
  137. </span>
  138. </div>
  139. <!-- //TITLE -->
  140. <div class="inner-panelContent">
  141. <div class="panelContent">
  142. <table class="frmStyle">
  143. <colgroup>
  144. <col width="10%" />
  145. <col width="90%" />
  146. </colgroup>
  147. <tr>
  148. <th>쿠폰<br/>[전시여부<label class="chkBox"><input type="checkbox" name="cuDispYn" id="cuDispYn" value="Y" checked/></label>]</th>
  149. <td>
  150. <table class="frmStyle">
  151. <tr>
  152. <th>쿠폰 타이틀</th>
  153. <td><input type="text" name="cuTitle" class="w300 aL">
  154. </td>
  155. </tr>
  156. <tr>
  157. <th>전시순서</th>
  158. <td><input type="text" name="cuDispOrd" class="w100 aL" data-valid-type="numeric"></td>
  159. </tr>
  160. <tr>
  161. <th>쿠폰 유의사항</th>
  162. <td colspan="5">
  163. <div id="registeredFile"></div>
  164. <div style="display: block">
  165. <select name="couponCnt" id="couponCnt">
  166. <th:block th:each="num: ${#numbers.sequence(1,10)}">
  167. <option th:value="${num}" th:text="${num}"></option>
  168. </th:block>
  169. </select>* 쿠폰 유의사항 개수 선택(10개까지 가능)
  170. </div>
  171. <th:block th:each="num: ${#numbers.sequence(1,10)}">
  172. <div>
  173. <table>
  174. <tr th:id="${'coupon'+num}">
  175. <th th:text="${'유의사항' + num}"></th>
  176. <td>
  177. <input type="text" th:id="${'cpnNote' + (num-1)}" th:name="${'cpnNote' + (num-1)}" class="w300 aL" maxlength="500">
  178. </td>
  179. </tr>
  180. </table>
  181. </div>
  182. </th:block>
  183. </td>
  184. </tr>
  185. </table>
  186. <div class="padding10">
  187. <span class="buttonSpan">
  188. <button type="button" class="btn btnRight btn-success btn-lg" onclick="fnAddCoupone()">쿠폰 추가</button>
  189. </span> <br />
  190. <table class="frmStyle" id="couponTable">
  191. </table>
  192. </div>
  193. </td>
  194. </tr>
  195. </table>
  196. </div>
  197. </div>
  198. </div>
  199. </div>
  200. <div class="panelContent">
  201. <div class="panelStyle" style="margin: unset;">
  202. <!-- TITLE -->
  203. <div class="panelTitle">
  204. <h2>이미지 첨부</h2>
  205. <span class="panelControl"> <i
  206. class="fa inner-fa-chevron-up"></i> <!-- 열림/닫힘 화살표 -->
  207. </span>
  208. </div>
  209. <!-- //TITLE -->
  210. <div class="inner-panelContent">
  211. <div class="panelContent">
  212. <table class="frmStyle">
  213. <colgroup>
  214. <col width="10%" />
  215. <col width="90%" />
  216. </colgroup>
  217. <tr>
  218. <th>이미지 첨부<br/>[전시여부<label class="chkBox"><input type="checkbox" name="fileDispYn" value="Y" checked/></label>]</th>
  219. <td colspan="5">
  220. <div id="registeredFile"></div>
  221. <div style="display: block">
  222. <select name="fileCnt" id="fileCnt">
  223. <th:block th:each="num: ${#numbers.sequence(1,10)}">
  224. <option th:value="${num}" th:text="${num}"></option>
  225. </th:block>
  226. </select>* 이미지 개수 선택(10개까지 가능)
  227. </div>
  228. <th:block th:each="num: ${#numbers.sequence(1,10)}">
  229. <div>
  230. <div class="uFile w500">
  231. <input type="file" th:id="${'file' + num}" th:name="${'file' + num}" class="uFileInput w500" accept="image/*"/>
  232. <label th:for="${'file' + num}" class="uFileLabel" th:id="${'file_' + num}">파일선택</label>
  233. <input type="hidden" name="fileItemVal" th:id="${'fileItemVal' + num}" />
  234. <input type="hidden" name="sysFileNms" th:id="${'sysFileNm' + num}" />
  235. <input type="text" th:name="${'linkUrl' + num}" th:id="${'linkUrl' + num}" class="w300 aL">
  236. </div>
  237. <br />
  238. <table>
  239. <tr>
  240. <th>클릭시 페이지창</th>
  241. <td>
  242. <label class="rdoBtn"><input type="radio" th:name="${'fileLinkOpenGb' + num}" value="M" checked/>현재창</label>
  243. <label class="rdoBtn"><input type="radio" th:name="${'fileLinkOpenGb' + num}" value="N" />새창</label>
  244. </td>
  245. </tr>
  246. <tr>
  247. <th>이미지 링크</th>
  248. <td><input type="text" th:name="${'fileLinkUrl' + num}" class="w300 aL">
  249. </td>
  250. </tr>
  251. </table>
  252. </div>
  253. </th:block>
  254. </td>
  255. <th>전시순서</th>
  256. <td><input type="text" name="fileDispOrd" class="w100 aL" data-valid-type="numeric"></td>
  257. </tr>
  258. </table>
  259. </div>
  260. </div>
  261. </div>
  262. </div>
  263. <div class="panelContent">
  264. <div class="panelStyle" style="margin: unset;">
  265. <!-- TITLE -->
  266. <div class="panelTitle">
  267. <h2>유의사항</h2>
  268. <span class="panelControl"> <i
  269. class="fa inner-fa-chevron-up"></i> <!-- 열림/닫힘 화살표 -->
  270. </span>
  271. </div>
  272. <!-- //TITLE -->
  273. <div class="inner-panelContent">
  274. <div class="panelContent">
  275. <table class="frmStyle">
  276. <colgroup>
  277. <col width="10%" />
  278. <col width="90%" />
  279. </colgroup>
  280. <tr>
  281. <th>유의사항<br/>[전시여부<label class="chkBox"><input type="checkbox" name="noticeDispYn" value="Y" checked/></label>]</th>
  282. <td colspan="5">
  283. <div id="registeredFile"></div>
  284. <div style="display: block">
  285. <select name="noticeCnt" id="noticeCnt">
  286. <th:block th:each="num: ${#numbers.sequence(1,10)}">
  287. <option th:value="${num}" th:text="${num}"></option>
  288. </th:block>
  289. </select>* 유의사항 개수 선택(10개까지 가능)
  290. </div>
  291. <th:block th:each="num: ${#numbers.sequence(1,10)}">
  292. <div>
  293. <table>
  294. <tr th:id="${'notice'+num}">
  295. <th th:text="${'유의사항' + num}"></th>
  296. <td><input type="text" th:id="${'noticeItemVal' + num}" th:name="${'noticeItemVal' + num}" class="w300 aL" maxlength="500">
  297. </td>
  298. </tr>
  299. </table>
  300. </div>
  301. </th:block>
  302. </td>
  303. <th>전시순서</th>
  304. <td><input type="text" name="noticeDispOrd" class="w100 aL" data-valid-type="numeric"></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/>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/>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/>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/>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/>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/>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/>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/>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/>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/>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=2021072201"></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. //gagaAgGrid.removeRowData(gridOptions_p1, false);
  1318. gridOptions_p1.api.updateRowData({remove:gagaAgGrid.getAllRowData(gridOptions_p1)});
  1319. }
  1320. }
  1321. function btnDeleteGridNum2(param){
  1322. if($('#btnAddGridNum2').css('display') !='none'){
  1323. $('#btnAddGridNum2').hide();
  1324. var deleteData = [];
  1325. var data = {};
  1326. data.planContSq = $('#planTemplateForm input[name=goodsPlanContSq2]').val();
  1327. deleteData.push(data);
  1328. var jsonData = JSON.stringify(deleteData);
  1329. gagajf.ajaxJsonSubmit('marketing/planning/detail/template/goods/delete', jsonData);
  1330. $("#planTemplateForm input[name=goodsTitle2]").val('');
  1331. $("#planTemplateForm input[name=goodsUrl2]").val('');
  1332. $("#planTemplateForm input[name=goodsDispOrd2]").val('');
  1333. gridOptions_p2.api.updateRowData({remove:gagaAgGrid.getAllRowData(gridOptions_p2)});
  1334. }
  1335. }
  1336. function btnDeleteGridNum3(param){
  1337. if ($('#btnAddGridNum3').css('display') !='none'){
  1338. $('#btnAddGridNum3').hide();
  1339. var deleteData = [];
  1340. var data = {};
  1341. data.planContSq = $('#planTemplateForm input[name=goodsPlanContSq3]').val();
  1342. deleteData.push(data);
  1343. var jsonData = JSON.stringify(deleteData);
  1344. gagajf.ajaxJsonSubmit('marketing/planning/detail/template/goods/delete', jsonData);
  1345. $("#planTemplateForm input[name=goodsTitle3]").val('');
  1346. $("#planTemplateForm input[name=goodsUrl3]").val('');
  1347. $("#planTemplateForm input[name=goodsDispOrd3]").val('');
  1348. gridOptions_p3.api.updateRowData({remove:gagaAgGrid.getAllRowData(gridOptions_p3)});
  1349. }
  1350. }
  1351. function btnDeleteGridNum4(param){
  1352. if ($('#btnAddGridNum4').css('display') !='none'){
  1353. $('#btnAddGridNum4').hide();
  1354. var deleteData = [];
  1355. var data = {};
  1356. data.planContSq = $('#planTemplateForm input[name=goodsPlanContSq4]').val();
  1357. deleteData.push(data);
  1358. var jsonData = JSON.stringify(deleteData);
  1359. gagajf.ajaxJsonSubmit('marketing/planning/detail/template/goods/delete', jsonData);
  1360. $("#planTemplateForm input[name=goodsTitle4]").val('');
  1361. $("#planTemplateForm input[name=goodsUrl4]").val('');
  1362. $("#planTemplateForm input[name=goodsDispOrd4]").val('');
  1363. gridOptions_p4.api.updateRowData({remove:gagaAgGrid.getAllRowData(gridOptions_p4)});
  1364. }
  1365. }
  1366. function btnDeleteGridNum5(param){
  1367. if ($('#btnAddGridNum5').css('display') !='none'){
  1368. $('#btnAddGridNum5').hide();
  1369. var deleteData = [];
  1370. var data = {};
  1371. data.planContSq = $('#planTemplateForm input[name=goodsPlanContSq5]').val();
  1372. deleteData.push(data);
  1373. var jsonData = JSON.stringify(deleteData);
  1374. gagajf.ajaxJsonSubmit('marketing/planning/detail/template/goods/delete', jsonData);
  1375. $("#planTemplateForm input[name=goodsTitle5]").val('');
  1376. $("#planTemplateForm input[name=goodsUrl5]").val('');
  1377. $("#planTemplateForm input[name=goodsDispOrd5]").val('');
  1378. gridOptions_p5.api.updateRowData({remove:gagaAgGrid.getAllRowData(gridOptions_p5)});
  1379. }
  1380. }
  1381. function btnDeleteGridNum6(param){
  1382. if ($('#btnAddGridNum6').css('display') !='none'){
  1383. $('#btnAddGridNum6').hide();
  1384. var deleteData = [];
  1385. var data = {};
  1386. data.planContSq = $('#planTemplateForm input[name=goodsPlanContSq6]').val();
  1387. deleteData.push(data);
  1388. var jsonData = JSON.stringify(deleteData);
  1389. gagajf.ajaxJsonSubmit('marketing/planning/detail/template/goods/delete', jsonData);
  1390. $("#planTemplateForm input[name=goodsTitle6]").val('');
  1391. $("#planTemplateForm input[name=goodsUrl6]").val('');
  1392. $("#planTemplateForm input[name=goodsDispOrd6]").val('');
  1393. gridOptions_p6.api.updateRowData({remove:gagaAgGrid.getAllRowData(gridOptions_p6)});
  1394. }
  1395. }
  1396. function btnDeleteGridNum7(param){
  1397. if ($('#btnAddGridNum7').css('display') !='none'){
  1398. $('#btnAddGridNum7').hide();
  1399. var deleteData = [];
  1400. var data = {};
  1401. data.planContSq = $('#planTemplateForm input[name=goodsPlanContSq7]').val();
  1402. deleteData.push(data);
  1403. var jsonData = JSON.stringify(deleteData);
  1404. gagajf.ajaxJsonSubmit('marketing/planning/detail/template/goods/delete', jsonData);
  1405. $("#planTemplateForm input[name=goodsTitle7]").val('');
  1406. $("#planTemplateForm input[name=goodsUrl7]").val('');
  1407. $("#planTemplateForm input[name=goodsDispOrd7]").val('');
  1408. gridOptions_p7.api.updateRowData({remove:gagaAgGrid.getAllRowData(gridOptions_p7)});
  1409. }
  1410. }
  1411. function btnDeleteGridNum8(param){
  1412. if ($('#btnAddGridNum8').css('display') !='none'){
  1413. $('#btnAddGridNum8').hide();
  1414. var deleteData = [];
  1415. var data = {};
  1416. data.planContSq = $('#planTemplateForm input[name=goodsPlanContSq8]').val();
  1417. deleteData.push(data);
  1418. var jsonData = JSON.stringify(deleteData);
  1419. gagajf.ajaxJsonSubmit('marketing/planning/detail/template/goods/delete', jsonData);
  1420. $("#planTemplateForm input[name=goodsTitle8]").val('');
  1421. $("#planTemplateForm input[name=goodsUrl8]").val('');
  1422. $("#planTemplateForm input[name=goodsDispOrd8]").val('');
  1423. gridOptions_p8.api.updateRowData({remove:gagaAgGrid.getAllRowData(gridOptions_p8)});
  1424. }
  1425. }
  1426. function btnDeleteGridNum9(param){
  1427. if ($('#btnAddGridNum9').css('display') !='none'){
  1428. $('#btnAddGridNum9').hide();
  1429. var deleteData = [];
  1430. var data = {};
  1431. data.planContSq = $('#planTemplateForm input[name=goodsPlanContSq9]').val();
  1432. deleteData.push(data);
  1433. var jsonData = JSON.stringify(deleteData);
  1434. gagajf.ajaxJsonSubmit('marketing/planning/detail/template/goods/delete', jsonData);
  1435. $("#planTemplateForm input[name=goodsTitle9]").val('');
  1436. $("#planTemplateForm input[name=goodsUrl9]").val('');
  1437. $("#planTemplateForm input[name=goodsDispOrd9]").val('');
  1438. gridOptions_p9.api.updateRowData({remove:gagaAgGrid.getAllRowData(gridOptions_p9)});
  1439. }
  1440. }
  1441. function btnDeleteGridNum10(param){
  1442. if ($('#btnAddGridNum10').css('display') !='none'){
  1443. $('#btnAddGridNum10').hide();
  1444. var deleteData = [];
  1445. var data = {};
  1446. data.planContSq = $('#planTemplateForm input[name=goodsPlanContSq10]').val();
  1447. deleteData.push(data);
  1448. var jsonData = JSON.stringify(deleteData);
  1449. gagajf.ajaxJsonSubmit('marketing/planning/detail/template/goods/delete', jsonData);
  1450. $("#planTemplateForm input[name=goodsTitle10]").val('');
  1451. $("#planTemplateForm input[name=goodsUrl10]").val('');
  1452. $("#planTemplateForm input[name=goodsDispOrd10]").val('');
  1453. gridOptions_p10.api.updateRowData({remove:gagaAgGrid.getAllRowData(gridOptions_p10)});
  1454. }
  1455. }
  1456. // 첨부파일 개수 선택시
  1457. $("#fileCnt").on("change", function() {
  1458. for (var i = 1; i <= 10; i++) {
  1459. $('#file' + i).parent().parent().show();
  1460. }
  1461. var fileCnt = $(this).val();
  1462. for (var i = 10; i > fileCnt; i--) {
  1463. $('#file' + i).parent().parent().hide();
  1464. }
  1465. });
  1466. // 유의사항 개수 선택시
  1467. $("#noticeCnt").on("change", function() {
  1468. for (var i = 1; i <= 10; i++) {
  1469. $('#notice' + i).parent().parent().parent().show();
  1470. }
  1471. var noticeCnt = $(this).val();
  1472. for (var i = 10; i > noticeCnt; i--) {
  1473. $('#notice' + i).parent().parent().parent().hide();
  1474. }
  1475. });
  1476. // 쿠폰 개수 선택시
  1477. $("#couponCnt").on("change", function() {
  1478. for (var i = 1; i <= 10; i++) {
  1479. $('#coupon' + i).parent().parent().show();
  1480. }
  1481. var couponCnt = $(this).val();
  1482. for (var i = 10; i > couponCnt; i--) {
  1483. $('#coupon' + i).parent().parent().hide();
  1484. }
  1485. });
  1486. // 파일첨부 선택 시
  1487. $('#file1').on('change', function() { fnChooseFile(this, 1); });
  1488. $('#file2').on('change', function() { fnChooseFile(this, 2); });
  1489. $('#file3').on('change', function() { fnChooseFile(this, 3); });
  1490. $('#file4').on('change', function() { fnChooseFile(this, 4); });
  1491. $('#file5').on('change', function() { fnChooseFile(this, 5); });
  1492. $('#file6').on('change', function() { fnChooseFile(this, 6); });
  1493. $('#file7').on('change', function() { fnChooseFile(this, 7); });
  1494. $('#file8').on('change', function() { fnChooseFile(this, 8); });
  1495. $('#file9').on('change', function() { fnChooseFile(this, 9); });
  1496. $('#file10').on('change', function() { fnChooseFile(this, 10); });
  1497. var fnChooseFile = function(obj, fileNo) {
  1498. // multiple 속성이 있으면 files에는 다수의 객체가 할당됨
  1499. var file = obj.files[0];
  1500. // 파일 업로드
  1501. gagajf.ajaxFileUpload('/common/file/upload?subDir=/planning'
  1502. , file
  1503. , function(result) {
  1504. // 업로드한 파일명 설정
  1505. $('#fileItemVal' + fileNo).val(result.oldFileName);
  1506. $('#sysFileNm' + fileNo).val(result.newFileName);
  1507. }
  1508. );
  1509. }
  1510. // 리뷰상품 추가 콜백 함수
  1511. var reviewGoodsList = function (result) {
  1512. // 기존 리스트 데이터 for
  1513. for(let i = 0 ; i < result.length ; i++) {
  1514. let addChk = true, gridListValue = gagaAgGrid.getAllRowData(gridOptionsPlanReviewList); // 받아온 모든 데이터
  1515. // 받아온 data for
  1516. for(let j = 0 ; j < gridListValue.length ; j++) {
  1517. // 동일한 data는 추가하지 않음
  1518. if(gridListValue[j].reItemVal == result[i].goodsCd) { addChk = false; } // 중복체크
  1519. }
  1520. // 중복되지 않은 데이터 리스트에 추가
  1521. if(addChk) {
  1522. gagaAgGrid.addRowData(gridOptionsPlanReviewList, {"reItemVal":result[i].goodsCd , "reItemNm":result[i].goodsNm, "startSearchDate": _today, "startSearchTime": '00:00:00', "endSearchDate":_today, endSearchTime: '23:59:59' });
  1523. }
  1524. }
  1525. uifnPopupClose("popupGoods");
  1526. }
  1527. // 리뷰 선택삭제 버튼 클릭시
  1528. $('#btnReviewDelete').on('click', function() {
  1529. gridOptionsPlanReviewList.api.updateRowData({remove:gagaAgGrid.selectedRowData(gridOptionsPlanReviewList)});
  1530. });
  1531. // 쿠폰조회 팝업
  1532. var fnOpenCouponRetrievePopup = function(strReturnCode, strReturnName) {
  1533. var oParam = new Object();
  1534. oParam.returnCode = strReturnCode;
  1535. oParam.returnName = strReturnName;
  1536. cfnOpenCouponRetrievePopup($(strReturnName).val(), oParam);
  1537. }
  1538. // 쿠폰 추가
  1539. var fnAddCoupone = function() {
  1540. var len = $('#planTemplateForm').find('#couponTable tr').length;
  1541. var html = '<tr>';
  1542. html += '<td colspan="3">';
  1543. html += '<input type="text" class="w300" id="cuItemNm" name="cuItemNm'+(len+1)+'"/>';
  1544. html += '<button type="button" class="btn icn" id="couponPlusBtn'+(len+1)+'"><i class="fa fa-search cpn" aria-hidden="true"></i></button>';
  1545. html += '<input id="cuItemVal" name="cuItemVal'+(len+1)+'" type="text" class="w100" maxlength="20" readonly="readonly"/>';
  1546. html += '<button type="button" class="btn icn" id="deleteCoupon'+(len+1)+'"><i class="fa fa-eraser" aria-hidden="true"></i></button>';
  1547. html += '</td>';
  1548. html += '</tr>';
  1549. $("#couponTable").append(html);
  1550. $('#couponPlusBtn'+(len+1)).attr("onclick","fnOpenCouponRetrievePopup('input[name=cuItemVal"+(len+1)+"]', 'input[name=cuItemNm"+(len+1)+"]');")
  1551. $('#deleteCoupon'+(len+1)).attr("onclick","deleteRowCoupon("+(len+1)+")");
  1552. }
  1553. //삭제 버튼
  1554. var deleteRowCoupon = function(len) {
  1555. var cnt = len;
  1556. var html = $("#deleteCoupon"+len).closest('tr');
  1557. html.remove(); //tr 테그 삭제
  1558. }
  1559. // 팝업창 저장
  1560. $('#btnSaveTemplate').on('click', function() {
  1561. // 리뷰관련 데이터 담기
  1562. let allReviewData = gagaAgGrid.getAllRowData(gridOptionsPlanReviewList);
  1563. var multiPlanReview = [];
  1564. $.each(allReviewData, function(idx, item) {
  1565. multiPlanReview.push(item.reItemVal);
  1566. });
  1567. var multiPlanReviewStartD = [];
  1568. $.each(allReviewData, function(idx, item) {
  1569. multiPlanReviewStartD.push(item.startSearchDate);
  1570. });
  1571. var multiPlanReviewStartT = [];
  1572. $.each(allReviewData, function(idx, item) {
  1573. multiPlanReviewStartT.push(item.startSearchTime);
  1574. });
  1575. var multiPlanReviewEndD = [];
  1576. $.each(allReviewData, function(idx, item) {
  1577. multiPlanReviewEndD.push(item.endSearchDate);
  1578. });
  1579. var multiPlanReviewEndT = [];
  1580. $.each(allReviewData, function(idx, item) {
  1581. multiPlanReviewEndT.push(item.endSearchTime);
  1582. });
  1583. // 쿠폰관련 데이터 담기
  1584. var multiPlanCoupon = [];
  1585. var len = $('#planTemplateForm').find('#couponTable tr').length;
  1586. for (var i = 0; i < len; i++) {
  1587. multiPlanCoupon.push($('#planTemplateForm').find('#couponTable tr').children().eq(i).find("#cuItemVal").val());
  1588. }
  1589. //파일관련 데이터 담기
  1590. var multiPlanFile = [];
  1591. var multiPlanFile2 = [];
  1592. var multiPlanFile3 = [];
  1593. var count = $("#planTemplateForm select[name=fileCnt]").val();
  1594. for (var i = 0; i < count; i++) {
  1595. if($('#fileItemVal'+(i+1)).val() == '' || typeof $('#fileItemVal'+(i+1)).val() == 'undeifined'){
  1596. false;
  1597. }else{
  1598. multiPlanFile.push($('#fileItemVal'+(i+1)).val());
  1599. multiPlanFile2.push($('#planTemplateForm input[name=fileLinkUrl'+(i+1)+']').val());
  1600. multiPlanFile3.push($('#planTemplateForm input:radio[name=fileLinkOpenGb'+(i+1)+']:checked').val());
  1601. }
  1602. }
  1603. //유의사항관련 데이터 담기
  1604. var multiPlanNotice = [];
  1605. var count = $("#planTemplateForm select[name=noticeCnt]").val();
  1606. for (var i = 0; i < count; i++) {
  1607. if($('#noticeItemVal'+(i+1)).val() == '' || typeof $('#noticeItemVal'+(i+1)).val() == 'undeifined'){
  1608. false;
  1609. }else{
  1610. multiPlanNotice.push($('#noticeItemVal'+(i+1)).val());
  1611. }
  1612. }
  1613. //쿠폰 유의사항관련 데이터 담기
  1614. var multiPlanCouponNotice = [];
  1615. var count = $("#planTemplateForm select[name=couponCnt]").val();
  1616. for (var i = 0; i < count; i++) {
  1617. if($('#cpnNote'+i).val() == '' || typeof $('#cpnNote'+i).val() == 'undeifined'){
  1618. false;
  1619. }else{
  1620. multiPlanCouponNotice.push($('#cpnNote'+i).val());
  1621. }
  1622. }
  1623. // 상품 등록
  1624. let arrayData1 = gagaAgGrid.getAllRowData(gridOptions_p1)
  1625. let arrayData2 = gagaAgGrid.getAllRowData(gridOptions_p2)
  1626. let arrayData3 = gagaAgGrid.getAllRowData(gridOptions_p3)
  1627. let arrayData4 = gagaAgGrid.getAllRowData(gridOptions_p4)
  1628. let arrayData5 = gagaAgGrid.getAllRowData(gridOptions_p5)
  1629. let arrayData6 = gagaAgGrid.getAllRowData(gridOptions_p6)
  1630. let arrayData7 = gagaAgGrid.getAllRowData(gridOptions_p7)
  1631. let arrayData8 = gagaAgGrid.getAllRowData(gridOptions_p8)
  1632. let arrayData9 = gagaAgGrid.getAllRowData(gridOptions_p9)
  1633. let arrayData10 = gagaAgGrid.getAllRowData(gridOptions_p10)
  1634. let goodsTemp1 = {};
  1635. let goodsTemp2 = {};
  1636. let goodsTemp3 = {};
  1637. let goodsTemp4 = {};
  1638. let goodsTemp5 = {};
  1639. let goodsTemp6 = {};
  1640. let goodsTemp7 = {};
  1641. let goodsTemp8 = {};
  1642. let goodsTemp9 = {};
  1643. let goodsTemp10 = {};
  1644. goodsTemp1.goodsTitle = $('#planTemplateForm input[name=goodsTitle1]').val();
  1645. goodsTemp1.goodsUrl = $('#planTemplateForm input[name=goodsUrl1]').val();
  1646. goodsTemp1.goodsType = $('#planTemplateForm input:radio[name=goodsType1]:checked').val();
  1647. goodsTemp1.goodsLinkOpenGb = $('#planTemplateForm input[name=linkOpenGb1]:checked').val();
  1648. goodsTemp1.goodsDispOrd = $('#planTemplateForm input[name=goodsDispOrd1]').val();
  1649. goodsTemp1.goodsDispYn = $('#planTemplateForm input:checkbox[name=goodsDispYn1]').val();
  1650. goodsTemp1.goodsPlanContSq = $('#planTemplateForm input[name=goodsPlanContSq1]').val();
  1651. goodsTemp2.goodsTitle = $('#planTemplateForm input[name=goodsTitle2]').val();
  1652. goodsTemp2.goodsUrl = $('#planTemplateForm input[name=goodsUrl2]').val();
  1653. goodsTemp2.goodsType = $('#planTemplateForm input:radio[name=goodsType2]:checked').val();
  1654. goodsTemp2.goodsLinkOpenGb = $('#planTemplateForm input:radio[name=linkOpenGb2]:checked').val();
  1655. goodsTemp2.goodsDispOrd = $('#planTemplateForm input[name=goodsDispOrd2]').val();
  1656. goodsTemp2.goodsDispYn = $('#planTemplateForm input:checkbox[name=goodsDispYn2]').val();
  1657. goodsTemp2.goodsPlanContSq = $('#planTemplateForm input[name=goodsPlanContSq2]').val();
  1658. goodsTemp3.goodsTitle = $('#planTemplateForm input[name=goodsTitle3]').val();
  1659. goodsTemp3.goodsUrl = $('#planTemplateForm input[name=goodsUrl3]').val();
  1660. goodsTemp3.goodsType = $('#planTemplateForm input:radio[name=goodsType3]:checked').val();
  1661. goodsTemp3.goodsLinkOpenGb = $('#planTemplateForm input:radio[name=linkOpenGb3]:checked').val();
  1662. goodsTemp3.goodsDispOrd = $('#planTemplateForm input[name=goodsDispOrd3]').val();
  1663. goodsTemp3.goodsDispYn = $('#planTemplateForm input:checkbox[name=goodsDispYn3]').val();
  1664. goodsTemp3.goodsPlanContSq = $('#planTemplateForm input[name=goodsPlanContSq3]').val();
  1665. goodsTemp4.goodsTitle = $('#planTemplateForm input[name=goodsTitle4]').val();
  1666. goodsTemp4.goodsUrl = $('#planTemplateForm input[name=goodsUrl4]').val();
  1667. goodsTemp4.goodsType = $('#planTemplateForm input:radio[name=goodsType4]:checked').val();
  1668. goodsTemp4.goodsLinkOpenGb = $('#planTemplateForm input:radio[name=linkOpenGb4]:checked').val();
  1669. goodsTemp4.goodsDispOrd = $('#planTemplateForm input[name=goodsDispOrd4]').val();
  1670. goodsTemp4.goodsDispYn = $('#planTemplateForm input:checkbox[name=goodsDispYn4]').val();
  1671. goodsTemp4.goodsPlanContSq = $('#planTemplateForm input[name=goodsPlanContSq4]').val();
  1672. goodsTemp5.goodsTitle = $('#planTemplateForm input[name=goodsTitle5]').val();
  1673. goodsTemp5.goodsUrl = $('#planTemplateForm input[name=goodsUrl5]').val();
  1674. goodsTemp5.goodsType = $('#planTemplateForm input:radio[name=goodsType5]:checked').val();
  1675. goodsTemp5.goodsLinkOpenGb = $('#planTemplateForm input:radio[name=linkOpenGb5]:checked').val();
  1676. goodsTemp5.goodsDispOrd = $('#planTemplateForm input[name=goodsDispOrd5]').val();
  1677. goodsTemp5.goodsDispYn = $('#planTemplateForm input:checkbox[name=goodsDispYn5]').val();
  1678. goodsTemp5.goodsPlanContSq = $('#planTemplateForm input[name=goodsPlanContSq5]').val();
  1679. goodsTemp6.goodsTitle = $('#planTemplateForm input[name=goodsTitle6]').val();
  1680. goodsTemp6.goodsUrl = $('#planTemplateForm input[name=goodsUrl6]').val();
  1681. goodsTemp6.goodsType = $('#planTemplateForm input:radio[name=goodsType6]:checked').val();
  1682. goodsTemp6.goodsLinkOpenGb = $('#planTemplateForm input:radio[name=linkOpenGb6]:checked').val();
  1683. goodsTemp6.goodsDispOrd = $('#planTemplateForm input[name=goodsDispOrd6]').val();
  1684. goodsTemp6.goodsDispYn = $('#planTemplateForm input:checkbox[name=goodsDispYn6]').val();
  1685. goodsTemp6.goodsPlanContSq = $('#planTemplateForm input[name=goodsPlanContSq6]').val();
  1686. goodsTemp7.goodsTitle = $('#planTemplateForm input[name=goodsTitle7]').val();
  1687. goodsTemp7.goodsUrl = $('#planTemplateForm input[name=goodsUrl7]').val();
  1688. goodsTemp7.goodsType = $('#planTemplateForm input:radio[name=goodsType7]:checked').val();
  1689. goodsTemp7.goodsLinkOpenGb = $('#planTemplateForm input:radio[name=linkOpenGb7]:checked').val();
  1690. goodsTemp7.goodsDispOrd = $('#planTemplateForm input[name=goodsDispOrd7]').val();
  1691. goodsTemp7.goodsDispYn = $('#planTemplateForm input:checkbox[name=goodsDispYn7]').val();
  1692. goodsTemp7.goodsPlanContSq = $('#planTemplateForm input[name=goodsPlanContSq7]').val();
  1693. goodsTemp8.goodsTitle = $('#planTemplateForm input[name=goodsTitle8]').val();
  1694. goodsTemp8.goodsUrl = $('#planTemplateForm input[name=goodsUrl8]').val();
  1695. goodsTemp8.goodsType = $('#planTemplateForm input:radio[name=goodsType8]:checked').val();
  1696. goodsTemp8.goodsLinkOpenGb = $('#planTemplateForm input:radio[name=linkOpenGb8]:checked').val();
  1697. goodsTemp8.goodsDispOrd = $('#planTemplateForm input[name=goodsDispOrd8]').val();
  1698. goodsTemp8.goodsDispYn = $('#planTemplateForm input:checkbox[name=goodsDispYn8]').val();
  1699. goodsTemp8.goodsPlanContSq = $('#planTemplateForm input[name=goodsPlanContSq8]').val();
  1700. goodsTemp9.goodsTitle = $('#planTemplateForm input[name=goodsTitle9]').val();
  1701. goodsTemp9.goodsUrl = $('#planTemplateForm input[name=goodsUrl9]').val();
  1702. goodsTemp9.goodsType = $('#planTemplateForm input:radio[name=goodsType9]:checked').val();
  1703. goodsTemp9.goodsLinkOpenGb = $('#planTemplateForm input:radio[name=linkOpenGb9]:checked').val();
  1704. goodsTemp9.goodsDispOrd = $('#planTemplateForm input[name=goodsDispOrd9]').val();
  1705. goodsTemp9.goodsDispYn = $('#planTemplateForm input:checkbox[name=goodsDispYn9]').val();
  1706. goodsTemp9.goodsPlanContSq = $('#planTemplateForm input[name=goodsPlanContSq9]').val();
  1707. goodsTemp10.goodsTitle = $('#planTemplateForm input[name=goodsTitle10]').val();
  1708. goodsTemp10.goodsUrl = $('#planTemplateForm input[name=goodsUrl10]').val();
  1709. goodsTemp10.goodsType = $('#planTemplateForm input:radio[name=goodsType10]:checked').val();
  1710. goodsTemp10.goodsLinkOpenGb = $('#planTemplateForm input:radio[name=linkOpenGb10]:checked').val();
  1711. goodsTemp10.goodsDispOrd = $('#planTemplateForm input[name=goodsDispOrd10]').val();
  1712. goodsTemp10.goodsDispYn = $('#planTemplateForm input:checkbox[name=goodsDispYn10]').val();
  1713. goodsTemp10.goodsPlanContSq = $('#planTemplateForm input[name=goodsPlanContSq10]').val();
  1714. mcxDialog.confirm('기획전 템플릿을 등록 하시겠습니까?', {
  1715. cancelBtnText: "취소",
  1716. sureBtnText: "확인",
  1717. sureBtnClick: function() {
  1718. let data = {
  1719. multiPlanReview : multiPlanReview
  1720. ,allReviewData : allReviewData
  1721. ,multiPlanReviewStartD : multiPlanReviewStartD
  1722. ,multiPlanReviewStartT : multiPlanReviewStartT
  1723. ,multiPlanReviewEndD : multiPlanReviewEndD
  1724. ,multiPlanReviewEndT : multiPlanReviewEndT
  1725. ,reTitle : $('#planTemplateForm input[name=reTitle]').val()
  1726. ,reDispOrd : $('#planTemplateForm input[name=reDispOrd]').val()
  1727. ,rePlanContSq : $('#planTemplateForm input[name=rePlanContSq]').val()
  1728. ,reDispYn : $('#planTemplateForm input:checkbox[name=reDispYn]').val()
  1729. ,mode : $('#planTemplateForm input[name=mode]').val()
  1730. ,planSq : $('#planTemplateForm input[name=planSq]').val()
  1731. ,multiPlanCoupon : multiPlanCoupon
  1732. ,cuTitle : $('#planTemplateForm input[name=cuTitle]').val()
  1733. ,cuDispOrd : $('#planTemplateForm input[name=cuDispOrd]').val()
  1734. ,cuPlanContSq : $('#planTemplateForm input[name=cuPlanContSq]').val()
  1735. ,cuDispYn : $('#planTemplateForm input:checkbox[name=cuDispYn]').val()
  1736. ,multiPlanCouponNotice : multiPlanCouponNotice
  1737. ,multiPlanFile : multiPlanFile
  1738. ,multiPlanFile2 : multiPlanFile2
  1739. ,multiPlanFile3 : multiPlanFile3
  1740. ,fileDispYn : $('#planTemplateForm input:checkbox[name=fileDispYn]').val()
  1741. ,fileDispOrd : $('#planTemplateForm input[name=fileDispOrd]').val()
  1742. ,filePlanContSq : $('#planTemplateForm input[name=filePlanContSq]').val()
  1743. ,multiPlanNotice : multiPlanNotice
  1744. ,noticeDispYn : $('#planTemplateForm input:checkbox[name=noticeDispYn]').val()
  1745. ,noticeDispOrd : $('#planTemplateForm input[name=noticeDispOrd]').val()
  1746. ,noticePlanContSq : $('#planTemplateForm input[name=noticePlanContSq]').val()
  1747. ,topFsrcDispYn : $('#planTemplateForm input:checkbox[name=topFsrcDispYn]').val()
  1748. ,btmFsrcDispYn : $('#planTemplateForm input:checkbox[name=btmFsrcDispYn]').val()
  1749. ,topFsrcDispOrd: $('#planTemplateForm input[name=topFsrcDispOrd]').val()
  1750. ,btmFsrcDispOrd : $('#planTemplateForm input[name=btmFsrcDispOrd]').val()
  1751. ,fsrcPcTop : $('#planTemplateForm textarea[name=fsrcPcTop]').val()
  1752. ,fsrcMobileTop: $('#planTemplateForm textarea[name=fsrcMobileTop]').val()
  1753. ,fsrcPcBtm: $('#planTemplateForm textarea[name=fsrcPcBtm]').val()
  1754. ,fsrcMobileBtm : $('#planTemplateForm textarea[name=fsrcMobileBtm]').val()
  1755. ,multiPlanGoodsContent1 : goodsTemp1
  1756. ,multiPlanGoodsContent2 : goodsTemp2
  1757. ,multiPlanGoodsContent3 : goodsTemp3
  1758. ,multiPlanGoodsContent4 : goodsTemp4
  1759. ,multiPlanGoodsContent5 : goodsTemp5
  1760. ,multiPlanGoodsContent6 : goodsTemp6
  1761. ,multiPlanGoodsContent7 : goodsTemp7
  1762. ,multiPlanGoodsContent8 : goodsTemp8
  1763. ,multiPlanGoodsContent9 : goodsTemp9
  1764. ,multiPlanGoodsContent10 : goodsTemp10
  1765. ,multiPlanGoodsContentVal1 : arrayData1
  1766. ,multiPlanGoodsContentVal2 : arrayData2
  1767. ,multiPlanGoodsContentVal3 : arrayData3
  1768. ,multiPlanGoodsContentVal4 : arrayData4
  1769. ,multiPlanGoodsContentVal5 : arrayData5
  1770. ,multiPlanGoodsContentVal6 : arrayData6
  1771. ,multiPlanGoodsContentVal7 : arrayData7
  1772. ,multiPlanGoodsContentVal8 : arrayData8
  1773. ,multiPlanGoodsContentVal9 : arrayData9
  1774. ,multiPlanGoodsContentVal10 : arrayData10
  1775. }
  1776. var jsonData = JSON.stringify(data);
  1777. gagajf.ajaxJsonSubmit('/marketing/planning/detail/template/save', jsonData, fnDetailFormSearch);
  1778. }
  1779. });
  1780. });
  1781. // 템플릿 등록 후 콜백
  1782. var fnDetailFormSearch = function() {
  1783. uifnPopupClose('popupPlanTemplate');
  1784. }
  1785. // 첨부파일 삭제
  1786. var fnDeleteFile = function(obj, planSq, planContItemSq, fileItemVal) {
  1787. mcxDialog.confirm('정말 삭제하시겠습니까?', {
  1788. cancelBtnText: "취소",
  1789. sureBtnText: "확인",
  1790. sureBtnClick: function(){
  1791. var params = new Object();
  1792. params.planSq = planSq;
  1793. params.planContItemSq = planContItemSq;
  1794. params.fileItemVal = fileItemVal;
  1795. var jsonData = JSON.stringify(params);
  1796. gagajf.ajaxJsonSubmit('/marketing/planning/detail/template/file/delete', jsonData, function() {
  1797. $(obj).parent().remove();
  1798. });
  1799. }
  1800. });
  1801. }
  1802. $(document).ready(function() {
  1803. //gagaSn.setContents('#fsrcPcBtm', '');
  1804. //gagaSn.setContents('#fsrcMobileBtm', '');
  1805. //gagaSn.setContents('#fsrcPcTop', '');
  1806. //gagaSn.setContents('#fsrcMobileTop', '');
  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. }else{
  1949. $('#planTemplateForm input:checkbox[name="reDispYn"]').prop('checked', false);
  1950. $('#planTemplateForm input:checkbox[name="reDispYn"]').val("N");
  1951. }
  1952. if(typeof reviewList[0].reItemVal != 'undefined' && reviewList[0].reItemVal != null){
  1953. gridOptionsPlanReviewList.api.setRowData(reviewList);
  1954. }
  1955. }
  1956. if(typeof couponList[0] != 'undefined'){
  1957. //쿠폰
  1958. $('#planTemplateForm input[name=cuTitle]').val(couponNotice.title);
  1959. $('#planTemplateForm input[name=cuDispOrd]').val(couponNotice.dispOrd);
  1960. $('#planTemplateForm input[name=cuPlanContSq]').val(couponNotice.planContSq);
  1961. if (couponNotice.dispYn == 'Y') {
  1962. $('#planTemplateForm input:checkbox[name="cuDispYn"]').prop('checked', true);
  1963. }else{
  1964. $('#planTemplateForm input:checkbox[name="cuDispYn"]').prop('checked', false);
  1965. $('#planTemplateForm input:checkbox[name="cuDispYn"]').val("N");
  1966. }
  1967. if (couponNotice.cpnNote0 != null && couponNotice.cpnNote0 != '') {
  1968. $("#planTemplateForm select[name=couponCnt]").val(1);
  1969. $("#cpnNote0").val(couponNotice.cpnNote0);
  1970. }
  1971. if (couponNotice.cpnNote1 != null && couponNotice.cpnNote1 != '') {
  1972. $("#planTemplateForm select[name=couponCnt]").val(2);
  1973. $("#cpnNote1").val(couponNotice.cpnNote1);
  1974. }
  1975. if (couponNotice.cpnNote2 != null && couponNotice.cpnNote2 != '') {
  1976. $("#planTemplateForm select[name=couponCnt]").val(3);
  1977. $("#cpnNote2").val(couponNotice.cpnNote2);
  1978. }
  1979. if (couponNotice.cpnNote3 != null && couponNotice.cpnNote3 != '') {
  1980. $("#planTemplateForm select[name=couponCnt]").val(4);
  1981. $("#cpnNote3").val(couponNotice.cpnNote3);
  1982. }
  1983. if (couponNotice.cpnNote4 != null && couponNotice.cpnNote4 != '') {
  1984. $("#planTemplateForm select[name=couponCnt]").val(5);
  1985. $("#cpnNote4").val(couponNotice.cpnNote4);
  1986. }
  1987. if (couponNotice.cpnNote5 != null && couponNotice.cpnNote5 != '') {
  1988. $("#planTemplateForm select[name=couponCnt]").val(6);
  1989. $("#cpnNote5").val(couponNotice.cpnNote5);
  1990. }
  1991. if (couponNotice.cpnNote6 != null && couponNotice.cpnNote6 != '') {
  1992. $("#planTemplateForm select[name=couponCnt]").val(7);
  1993. $("#cpnNote6").val(couponNotice.cpnNote6);
  1994. }
  1995. if (couponNotice.cpnNote7 != null && couponNotice.cpnNote7 != '') {
  1996. $("#planTemplateForm select[name=couponCnt]").val(8);
  1997. $("#cpnNote7").val(couponNotice.cpnNote7);
  1998. }
  1999. if (couponNotice.cpnNote8 != null && couponNotice.cpnNote8 != '') {
  2000. $("#planTemplateForm select[name=couponCnt]").val(9);
  2001. $("#cpnNote8").val(couponNotice.cpnNote8);
  2002. }
  2003. if (couponNotice.cpnNote9 != null && couponNotice.cpnNote9 != '') {
  2004. $("#planTemplateForm select[name=couponCnt]").val(10);
  2005. $("#cpnNote9").val(couponNotice.cpnNote9);
  2006. }
  2007. if(couponList[0].cuItemNm != null && couponList[0].cuItemNm != '')
  2008. {
  2009. for (var i = 0; i <couponList.length; i++) {
  2010. var html = '<tr>';
  2011. html += '<td colspan="3">';
  2012. html += '<input type="text" class="w300" id="cuItemNm" name="cuItemNm'+(i+1)+'" value="'+ couponList[i].cuItemNm +'"/>';
  2013. html += '<button type="button" class="btn icn" id="couponPlusBtn'+(i+1)+'"><i class="fa fa-search cpn" aria-hidden="true"></i></button>';
  2014. html += '<input id="cuItemVal" name="cuItemVal'+(i+1)+'" type="text" class="w100" maxlength="20" readonly="readonly" value="'+ couponList[i].cuItemVal +'"/>';
  2015. html += '<button type="button" class="btn icn" id="deleteCoupon'+(i+1)+'"><i class="fa fa-eraser" aria-hidden="true"></i></button>';
  2016. html += '</td>';
  2017. html += '</tr>';
  2018. $("#couponTable").prepend(html);
  2019. $('#couponPlusBtn'+(i+1)).attr("onclick","fnOpenCouponRetrievePopup('input[name=cuItemVal"+(i+1)+"]', 'input[name=cuItemNm"+(i+1)+"]');")
  2020. $('#deleteCoupon'+(i+1)).attr("onclick","deleteRowCoupon("+(i+1)+")");
  2021. }
  2022. }
  2023. }
  2024. if(typeof fileList[0] != 'undefined'){
  2025. //파일
  2026. $('#planTemplateForm input[name=fileDispOrd]').val(fileList[0].dispOrd);
  2027. $('#planTemplateForm input[name=filePlanContSq]').val(fileList[0].planContSq);
  2028. if (fileList[0].dispYn == 'Y') {
  2029. $('#planTemplateForm input:checkbox[name="fileDispYn"]').prop('checked', true);
  2030. }else{
  2031. $('#planTemplateForm input:checkbox[name="fileDispYn"]').prop('checked', false);
  2032. $('#planTemplateForm input:checkbox[name="fileDispYn"]').val("N");
  2033. }
  2034. if(fileList.length > 0 && fileList[0].fileItemVal != null)
  2035. {
  2036. $("#planTemplateForm select[name=fileCnt]").val(fileList.length);
  2037. for (var i = 0; i <fileList.length; i++) {
  2038. $("#planTemplateForm input[name=fileLinkUrl"+ (i+1) +"]").val(fileList[i].linkUrl);
  2039. $("#planTemplateForm label[id=file_"+ (i+1) +"]").html(fileList[i].fileItemVal);
  2040. $("#planTemplateForm input[id=fileItemVal"+ (i+1) +"]").val(fileList[i].fileItemVal);
  2041. if (fileList[i].linkOpenGb == "M") {
  2042. $('#planTemplateForm input:radio[name=fileLinkOpenGb'+(i+1)+']:radio[value="M"]').prop('checked', true);
  2043. }else if(fileList[i].linkOpenGb == "N"){
  2044. $('#planTemplateForm input:radio[name=fileLinkOpenGb'+(i+1)+']:radio[value="N"]').prop('checked', true);
  2045. }
  2046. }
  2047. }
  2048. }
  2049. if(typeof noticeList[0] != 'undefined'){
  2050. //유의사항
  2051. $('#planTemplateForm input[name=noticeDispOrd]').val(noticeList[0].dispOrd);
  2052. $('#planTemplateForm input[name=noticePlanContSq]').val(noticeList[0].planContSq);
  2053. if (noticeList[0].dispYn == 'Y') {
  2054. $('#planTemplateForm input:checkbox[name="noticeDispYn"]').prop('checked', true);
  2055. }else{
  2056. $('#planTemplateForm input:checkbox[name="noticeDispYn"]').prop('checked', false);
  2057. $('#planTemplateForm input:checkbox[name="noticeDispYn"]').val("N");
  2058. }
  2059. if(noticeList.length > 0 && noticeList[0].noticeItemVal != null)
  2060. {
  2061. $("#planTemplateForm select[name=noticeCnt]").val(noticeList.length);
  2062. for (var i = 0; i <noticeList.length; i++) {
  2063. $("#planTemplateForm input[id=noticeItemVal"+ (i+1) +"]").val(noticeList[i].noticeItemVal);
  2064. }
  2065. }
  2066. }
  2067. //html(하단)
  2068. if(typeof fsrcListBtm[0] != 'undefined'){
  2069. $('#planTemplateForm input[name=btmFsrcDispOrd]').val(fsrcListBtm[0].dispOrd);
  2070. if (fsrcListBtm[0].dispYn == 'Y') {
  2071. $('#planTemplateForm input:checkbox[name="btmFsrcDispYn"]').prop('checked', true);
  2072. }else{
  2073. $('#planTemplateForm input:checkbox[name="btmFsrcDispYn"]').prop('checked', false);
  2074. $('#planTemplateForm input:checkbox[name="btmFsrcDispYn"]').val("N");
  2075. }
  2076. $('#fsrcPcBtm').summernote('code', fsrcListBtm[0].fsrcPc);
  2077. $('#fsrcMobileBtm').summernote('code', fsrcListBtm[0].fsrcMob);
  2078. //gagaSn.setContents('#fsrcPcBtm', fsrcListBtm[0].fsrcPc);
  2079. //gagaSn.setContents('#fsrcMobileBtm', fsrcListBtm[0].fsrcMob);
  2080. }
  2081. //html(상단)
  2082. if(typeof fsrcListTop[0] != 'undefined'){
  2083. $('#planTemplateForm input[name=topFsrcDispOrd]').val(fsrcListTop[0].dispOrd);
  2084. if (fsrcListTop[0].dispYn == 'Y') {
  2085. $('#planTemplateForm input:checkbox[name="topFsrcDispYn"]').prop('checked', true);
  2086. }else{
  2087. $('#planTemplateForm input:checkbox[name="topFsrcDispYn"]').prop('checked', false);
  2088. $('#planTemplateForm input:checkbox[name="topFsrcDispYn"]').val("N");
  2089. }
  2090. $('#fsrcPcTop').summernote('code', fsrcListTop[0].fsrcPc);
  2091. $('#fsrcMobileTop').summernote('code', fsrcListTop[0].fsrcMob);
  2092. //gagaSn.setContents('#fsrcPcTop', fsrcListTop[0].fsrcPc);
  2093. //gagaSn.setContents('#fsrcMobileTop', fsrcListTop[0].fsrcMob);
  2094. }
  2095. //상품
  2096. if(typeof goodsList[0] != 'undefined'){
  2097. for (var i = 0; i < goodsList.length; i++) {
  2098. $('#planTemplateForm input[name=goodsTitle'+(i+1)+']').val(goodsList[i].title);
  2099. $('#planTemplateForm input[name=goodsUrl'+(i+1)+']').val(goodsList[i].linkUrl);
  2100. $('#planTemplateForm input[name=goodsDispOrd'+(i+1)+']').val(goodsList[i].dispOrd);
  2101. $('#planTemplateForm input[name=goodsPlanContSq'+(i+1)+']').val(goodsList[i].planContSq);
  2102. $('#planTemplateForm input[name=goodsPlanContItemSq'+(i+1)+']').val(goodsList[i].planContItemSq);
  2103. if (goodsList[i].title != '' || goodsList[i].linkUrl != '' ){
  2104. if (goodsList[i].dispYn == 'Y') {
  2105. $('#planTemplateForm input:checkbox[name=goodsDispYn'+(i+1)+']').prop('checked', true);
  2106. }else{
  2107. $('#planTemplateForm input:checkbox[name=goodsDispYn'+(i+1)+']').prop('checked', false);
  2108. }
  2109. if(goodsList[i].tmplType == "G082_50"){
  2110. $('#planTemplateForm input:radio[name=goodsType'+(i+1)+']:radio[value="G082_50"]').prop('checked', true);
  2111. }else if(goodsList[i].tmplType == "G082_51"){
  2112. $('#planTemplateForm input:radio[name=goodsType'+(i+1)+']:radio[value="G082_51"]').prop('checked', true);
  2113. }else if(goodsList[i].tmplType == "G082_52"){
  2114. $('#planTemplateForm input:radio[name=goodsType'+(i+1)+']:radio[value="G082_52"]').prop('checked', true);
  2115. }
  2116. if (goodsList[i].linkOpenGb == "M") {
  2117. $('#planTemplateForm input:radio[name=linkOpenGb'+(i+1)+']:radio[value="M"]').prop('checked', true);
  2118. }else if(goodsList[i].linkOpenGb == "N"){
  2119. $('#planTemplateForm input:radio[name=linkOpenGb'+(i+1)+']:radio[value="N"]').prop('checked', true);
  2120. }
  2121. $('#btnAddGridNum' + (i + 1)).show();
  2122. }
  2123. if(null != goodsDetailList1 && goodsDetailList1.length > 0){
  2124. gridOptions_p1.api.setRowData(goodsDetailList1);
  2125. $('#btnAddGridNum1').show();
  2126. }
  2127. if(null != goodsDetailList2 && goodsDetailList2.length > 0){
  2128. gridOptions_p2.api.setRowData(goodsDetailList2);
  2129. $('#btnAddGridNum2').show();
  2130. }
  2131. if(null != goodsDetailList3 && goodsDetailList3.length > 0){
  2132. gridOptions_p3.api.setRowData(goodsDetailList3);
  2133. $('#btnAddGridNum3').show();
  2134. }
  2135. if(null != goodsDetailList4 && goodsDetailList4.length > 0){
  2136. gridOptions_p4.api.setRowData(goodsDetailList4);
  2137. $('#btnAddGridNum4').show();
  2138. }
  2139. if(null != goodsDetailList5 && goodsDetailList5.length > 0){
  2140. gridOptions_p5.api.setRowData(goodsDetailList5);
  2141. $('#btnAddGridNum5').show();
  2142. }
  2143. if(null != goodsDetailList6 && goodsDetailList6.length > 0){
  2144. gridOptions_p6.api.setRowData(goodsDetailList6);
  2145. $('#btnAddGridNum6').show();
  2146. }
  2147. if(null != goodsDetailList7 && goodsDetailList7.length > 0){
  2148. gridOptions_p7.api.setRowData(goodsDetailList7);
  2149. $('#btnAddGridNum7').show();
  2150. }
  2151. if(null != goodsDetailList8 && goodsDetailList8.length > 0){
  2152. gridOptions_p8.api.setRowData(goodsDetailList8);
  2153. $('#btnAddGridNum8').show();
  2154. }
  2155. if(null != goodsDetailList9 && goodsDetailList9.length > 0){
  2156. gridOptions_p9.api.setRowData(goodsDetailList9);
  2157. $('#btnAddGridNum9').show();
  2158. }
  2159. if(null != goodsDetailList10 && goodsDetailList10.length > 0){
  2160. gridOptions_p10.api.setRowData(goodsDetailList10);
  2161. $('#btnAddGridNum10').show();
  2162. }
  2163. }
  2164. }
  2165. }
  2166. $("#fileCnt").trigger('change');
  2167. $("#noticeCnt").trigger('change');
  2168. $("#couponCnt").trigger('change');
  2169. });
  2170. /*]]>*/
  2171. </script>
  2172. </html>