GoodsDetailSizeStockForm.html 7.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162
  1. <!DOCTYPE html>
  2. <html lang="ko"
  3. xmlns:th="http://www.thymeleaf.org">
  4. <!--
  5. *******************************************************************************
  6. * @source : GoodsSizeStockForm.html
  7. * @desc : 상품 옵셥/재고 화면
  8. *============================================================================
  9. * STYLE24
  10. * Copyright(C) 2020 TSIT, All rights reserved.
  11. *============================================================================
  12. * VER DATE AUTHOR DESCRIPTION
  13. * === =========== ========== =============================================
  14. * 1.0 2020.10.26 eskim 수정
  15. *******************************************************************************
  16. -->
  17. <table class="frmStyle" th:with="uploadGoodsUrl=${@environment.getProperty('upload.goods.view')},uxImgUrl=${@environment.getProperty('domain.uximage')}">
  18. <colgroup>
  19. <col width="100px"/>
  20. <col width="100px"/>
  21. <col width="10%"/>
  22. <col width="100px"/>
  23. <col width="100px"/>
  24. <col/>
  25. </colgroup>
  26. <tr>
  27. <th>번호</th>
  28. <th>대표색상</th>
  29. <th>이미지</th>
  30. <th>색상코드</th>
  31. <th>색상</th>
  32. <th>이미지관리</th>
  33. </tr>
  34. <tbody id="colorList" >
  35. <th:block th:if="${goodsColorList}" th:each="goodsColor, sizeStatus : ${goodsColorList}">
  36. <tr>
  37. <td class="aC" th:text="${sizeStatus.count}">1</td>
  38. <td class="aC"><label class="rdoBtn"><input type="radio" name="basicColor" th:value="${goodsColor.optCd1}" th:checked="${goodsColor.mainColorYn =='Y'}" /></label></td>
  39. <td class="aC">
  40. <img width="60" th:src="${uploadGoodsUrl+'/'+goodsColor.sysImgNm}" th:onerror="'this.src=\''+@{${uxImgUrl}+ '/image/no.gif'}+'\';'" alt="">
  41. <input type="hidden" name="sysImgNmOrg" id="sysImgNmOrg" th:value="${goodsColor.sysImgNm}"/>
  42. </td>
  43. <td class="aC" ><th:block th:text="${goodsColor.optCd1}">BK</th:block>
  44. <input type="hidden" name="colorCd" id="colorCd" th:value="${goodsColor.optCd1}"/>
  45. </td>
  46. <td class="aC" ><th:block th:text="${goodsColor.colorEnm}">BLACK</th:block>
  47. <input type="hidden" name="colorNm" id="colorNm" th:value="${goodsColor.colorEnm}"/>
  48. </td>
  49. <td><button type="button" class="btn btn-base btn-lg" onclick="fnGoodsDetailImg(this)" th:text="${#strings.isEmpty(goodsColor.sysImgNm) ?'등록':'수정'}">등록</button></td>
  50. </tr>
  51. </th:block>
  52. </tbody>
  53. </table>
  54. <table class="frmStyle">
  55. <colgroup>
  56. <col width="10%"/>
  57. <col width="15%"/>
  58. <col/>
  59. <col width="10%"/>
  60. <col width="7%"/>
  61. <col width="7%"/>
  62. <col width="7%"/>
  63. <col width="7%"/>
  64. <col width="7%"/>
  65. <col width="7%"/>
  66. <col width="7%"/>
  67. </colgroup>
  68. <tr th:if="${goods.selfGoodsYn == 'Y' and goods.goodsType == 'G056_N'}">
  69. <th colspan="2">WMS재고연동여부<em class="required" title="필수"></em></th>
  70. <td colspan="2">
  71. <label class="rdoBtn"><input type="radio" name="erpStockLinkYn" id="erpStockLinkYnY" value="Y" th:checked="${goods.erpStockLinkYn == 'Y'}"/>Y</label>
  72. <label class="rdoBtn"><input type="radio" name="erpStockLinkYn" id="erpStockLinkYnN" value="N" th:checked="${goods.erpStockLinkYn == 'N'}"/>N</label>
  73. <input type="hidden" id="erpStockLinkYnOrg" name="erpStockLinkYnOrg" th:value="${goods.erpStockLinkYn}"/>
  74. </td>
  75. <td colspan="7"></td>
  76. </tr>
  77. <th:block th:if="${goods.selfGoodsYn == 'N' or goods.goodsType != 'G056_N'}">
  78. <input type="hidden" id="erpStockLinkYnOrg" name="erpStockLinkYnOrg" th:value="${goods.erpStockLinkYn}"/>
  79. <input type="hidden" id="erpStockLinkYn" name="erpStockLinkYn" th:value="${goods.erpStockLinkYn}"/>
  80. </th:block>
  81. <tr>
  82. <th>상품코드</th>
  83. <th>옵션1(색상)</th>
  84. <th>옵션2(사이즈)</th>
  85. <th>추가가격</th>
  86. <th>노출순서</th>
  87. <th>노출여부</th>
  88. <th>가용재고</th>
  89. <th>안전재고</th>
  90. <th>출고대기</th>
  91. <th>판매가능재고</th>
  92. <th>품절여부</th>
  93. </tr>
  94. <tbody id="optionList" >
  95. <th:block th:if="${goodsSizeList}" th:each="goodsSize, sizeStatus : ${goodsSizeList}">
  96. <tr>
  97. <td th:rowspan="${goodsSize.rcount}" th:text="${goodsSize.compsGoodsCd}" th:if="${goodsSize.rnum == 1}"></td>
  98. <td><th:block th:text="${goodsSize.optCd1}"></th:block>
  99. <input type="hidden" name="compsGoodsCd" th:value="${goodsSize.compsGoodsCd}" />
  100. <input type="hidden" name="optCd" th:value="${goodsSize.optCd}" />
  101. <input type="hidden" name="optCd1" th:value="${goodsSize.optCd1}" />
  102. </td>
  103. <td><th:block th:text="${goodsSize.optCd2}"></th:block>
  104. <input type="hidden" name="optCd2" th:value="${goodsSize.optCd2}" />
  105. </td>
  106. <td><input type="text" class="w100p aR" name="addPrice" th:value="${goodsSize.addPrice}" maxlength="7" data-valid-type="numeric"/>
  107. <input type="hidden" name="hidAddPrice" th:value="${goodsSize.addPrice}" />
  108. </td>
  109. <td><input type="text" class="w100p aC" name="dispOrd" th:value="${goodsSize.dispOrd}" maxlength="7" data-valid-type="integer"/>
  110. <input type="hidden" name="hidDispOrd" th:value="${goodsSize.dispOrd}" />
  111. </td>
  112. <td><select name="dispYn" class="w100p aC">
  113. <option th:if="${useYnList}" th:each="oneData, status : ${useYnList}" th:value="${oneData.cd}" th:text="${oneData.cdNm}" th:selected="${goodsSize.dispYn == oneData.cd}"></option>
  114. </select>
  115. <input type="hidden" name="hidDispYn" th:value="${goodsSize.dispYn}"/>
  116. </td>
  117. <td><input type="text" class="w100p aC" name="editCurrStockQty" th:value="${goodsSize.currStockQty}" maxlength="10" data-valid-type="numeric" th:disabled="${goods.selfGoodsYn == 'Y'}"/>
  118. <input type="hidden" name="currStockQty" th:value="${goodsSize.currStockQty}"/>
  119. </td>
  120. <td><input type="text" class="w100p aC" name="baseStockQty" th:value="${goodsSize.baseStockQty}" maxlength="7" data-valid-type="integer">
  121. <input type="hidden" name="hidBaseStockQty" th:value="${goodsSize.baseStockQty}"/>
  122. </td>
  123. <td><input type="text" class="w100p aC" name="saleStockQty" th:value="${goodsSize.saleStockQty}" maxlength="17" data-valid-type="numeric" th:disabled="disabled"/>
  124. </td>
  125. <td><input type="text" class="w100p aC" name="ableStockQty" maxlength="7" data-valid-type="numeric" th:disabled="disabled" th:value="${goodsSize.ableStockQty}" /></td>
  126. <td><select name="soldoutYn" class="w100p aC" >
  127. <option th:if="${useYnList}" th:each="oneData, status : ${useYnList}" th:value="${oneData.cd}" th:text="${oneData.cdNm}" th:selected="${goodsSize.soldoutYn == oneData.cd}"></option>
  128. </select>
  129. <input type="hidden" name="hidSoldoutYn" th:value="${goodsSize.soldoutYn}"/>
  130. </td>
  131. </tr>
  132. </th:block>
  133. </table>
  134. <script th:inline="javascript">
  135. /*<![CDATA[*/
  136. var fnGoodsDetailImg = function(obj){
  137. var mode= 'U';
  138. var goodsCd = $('#goodsDetailForm input[name=goodsCd]').val();
  139. var colorCd = $(obj).parent().parent().find("input[name=colorCd]").val();
  140. var colorNm = $(obj).parent().parent().find("input[name=colorNm]").val();
  141. if (gagajf.isNull($(obj).parent().parent().find("input[name=sysImgNmOrg]").val())){
  142. mode = "C";
  143. }
  144. cfnOpenGoodsImagePopup(goodsCd, colorCd, colorNm, mode);
  145. }
  146. $(document).ready(function() {
  147. //옵션/재곡 변경여부
  148. $('#goodsDetailForm').find('#goodstab2').find("input, select, textarea").on('change', function() {
  149. $('#goodsDetailForm').find('.tabs .tabsNav li:eq(1) a').attr("style", "color:red;");
  150. });
  151. });
  152. /*]]>*/
  153. </script>
  154. </html>