tgPublish.ftl 9.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257
  1. <#assign title="团购详情"/>
  2. <#include "/home/frag.head.ftl" />
  3. <div class="weui-tab">
  4. <div class="weui-btn-area" style="display: flex; flex-direction: row;">
  5. <a class="weui-btn weui-btn_primary" href="javascript:goback();" style="width: 25vw; height: 6vh; line-height: 6vh;">返回</a>
  6. <div style="width: 65%;"></div>
  7. </div>
  8. <div class="weui-btn-area">
  9. <p class="weui-media-box__desc">组团标题:</p>
  10. <input id="tg_input_title" class="weui-input" autofocus="" type="text" placeholder="请输入" maxlength="20" style="border: 1px solid rgba(0,0,0,.2);box-sizing:border-box; border-radius: 5px; height: 5vh;" />
  11. <p class="weui-media-box__desc" style="margin-top: 1vh;">供应商:</p>
  12. <input id="tg_input_supplier" class="weui-input" autofocus="" type="text" placeholder="请输入" maxlength="20" style="border: 1px solid rgba(0,0,0,.2);box-sizing:border-box; border-radius: 5px; height: 5vh;" />
  13. <p class="weui-media-box__desc" style="margin-top: 1vh;">套餐:</p>
  14. <textarea id="tg_input_goods" class="weui-textarea" autofocus="" type="text" placeholder="请输入" maxlength="500" rows="5" style="border: 1px solid rgba(0,0,0,.2);box-sizing:border-box; border-radius: 5px;"></textarea>
  15. <p class="weui-media-box__desc" style="margin-top: 1vh;">单价(元):</p>
  16. <input id="tg_input_price" onkeyup="clearNoNum(this)" class="weui-input" autofocus="" type="number" placeholder="请输入" maxlength="50" style="border: 1px solid rgba(0,0,0,.2);box-sizing:border-box; border-radius: 5px; height: 5vh;" />
  17. <p class="weui-media-box__desc" style="margin-top: 1vh;">最低起送(份):</p>
  18. <input id="tg_input_minnum" class="weui-input" autofocus="" type="number" placeholder="不填为没有起送量" maxlength="50" style="border: 1px solid rgba(0,0,0,.2);box-sizing:border-box; border-radius: 5px; height: 5vh;" />
  19. <p class="weui-media-box__desc" style="margin-top: 1vh;">最大订量(份):</p>
  20. <input id="tg_input_maxnum" class="weui-input" autofocus="" type="number" placeholder="不填为没有上限" maxlength="50" style="border: 1px solid rgba(0,0,0,.2);box-sizing:border-box; border-radius: 5px; height: 5vh;" />
  21. <p class="weui-media-box__desc" style="margin-top: 1vh;">个人限额(份):</p>
  22. <input id="tg_input_itemNum" class="weui-input" autofocus="" type="number" placeholder="不填为没有限额" maxlength="50" style="border: 1px solid rgba(0,0,0,.2);box-sizing:border-box; border-radius: 5px; height: 5vh;" />
  23. <p class="weui-media-box__desc" style="margin-top: 1vh;">截止时间:</p>
  24. <input id="tg_input_end_time" type="text" placeholder="请选择时间" style="border: 1px solid rgba(0,0,0,.2);box-sizing:border-box; border-radius: 5px; height: 5vh;"/>
  25. <p class="weui-media-box__desc" style="margin-top: 1vh;">预计送货时间:</p>
  26. <input id="tg_input_deliver_time" type="text" placeholder="请选择时间" style="border: 1px solid rgba(0,0,0,.2);box-sizing:border-box; border-radius: 5px; height: 5vh;"/>
  27. <p class="weui-media-box__desc" style="margin-top: 1vh;">服务电话:</p>
  28. <input id="tg_input_phone_number" class="weui-input" autofocus="" type="number" placeholder="请输入" maxlength="50" style="border: 1px solid rgba(0,0,0,.2);box-sizing:border-box; border-radius: 5px; height: 5vh;" />
  29. <div class="weui-btn-area">
  30. <a id="tg_publish" class="weui-btn weui-btn_primary" style="width: 30%;">
  31. 发布
  32. </a>
  33. </div>
  34. </div>
  35. </div>
  36. <#include "/home/frag.foot.ftl" />
  37. <script>
  38. var userId = ${userId};
  39. var isLoading = false;
  40. $("#tg_input_end_time").datetimePicker();
  41. $("#tg_input_deliver_time").datetimePicker();
  42. function goback() {
  43. window.location.href = "/yeweihui/home.html?show=tuangou&userId=" + userId;
  44. }
  45. function clearNoNum(obj){
  46. obj.value = obj.value.replace(/[^\d.]/g,""); //清除“数字”和“.”以外的字符
  47. obj.value = obj.value.replace(/\.{2,}/g,"."); //只保留第一个. 清除多余的
  48. obj.value = obj.value.replace(".","$#$").replace(/\./g,"").replace("$#$",".");
  49. obj.value = obj.value.replace(/^(\-)*(\d+)\.(\d\d).*$/,'$1$2.$3');//只能输入两个小数
  50. if(obj.value.indexOf(".")< 0 && obj.value !=""){//以上已经过滤,此处控制的是如果没有小数点,首位不能为类似于 01、02的金额
  51. obj.value= parseFloat(obj.value);
  52. }
  53. }
  54. $("#tg_publish").on('click', function () {
  55. let title = $("#tg_input_title").val();
  56. if (title.length <= 0) {
  57. $.alert("请输入组团标题");
  58. return;
  59. }
  60. let supplier = $("#tg_input_supplier").val();
  61. if (supplier.length <= 0) {
  62. $.alert("请输入供应商名称");
  63. return;
  64. }
  65. let goods = $("#tg_input_goods").val();
  66. if (goods.length <= 0) {
  67. $.alert("请输入套餐内容");
  68. return;
  69. }
  70. let price = $("#tg_input_price").val();
  71. if (price.length <= 0) {
  72. $.alert("请输入套餐单价");
  73. return;
  74. }
  75. let minnum = $("#tg_input_minnum").val();
  76. if (minnum.length <= 0) {
  77. minnum = "0";
  78. }
  79. let maxnum = $("#tg_input_maxnum").val();
  80. if (maxnum.length <= 0) {
  81. maxnum = "0";
  82. }
  83. let itemNum = $("#tg_input_itemNum").val();
  84. if (itemNum.length <= 0) {
  85. itemNum = "0";
  86. }
  87. let end_time = $("#tg_input_end_time").val();
  88. if (end_time.length <= 0) {
  89. $.alert("请选择截止时间");
  90. return;
  91. }
  92. let deliver_time = $("#tg_input_deliver_time").val();
  93. if (deliver_time.length <= 0) {
  94. $.alert("请选择送货时间");
  95. return;
  96. }
  97. let phone_number = $("#tg_input_phone_number").val();
  98. if (phone_number.length <= 0) {
  99. $.alert("请输入服务电话");
  100. return;
  101. }
  102. // if (/^-?(([1-9]{1}\d*)|(0{1}))(\.\d{2})?$/.test(price) == false) {
  103. // $.alert("价格保留两位小数");
  104. // return;
  105. // }
  106. if (parseFloat(price) > 10000) {
  107. $.alert("价格最大为10000");
  108. return;
  109. }
  110. if (/^[0-9]+$/.test(minnum) == false) {
  111. $.alert("最低起送请输入整数");
  112. return;
  113. }
  114. if (minnum.length > 4) {
  115. $.alert("最低起送最大为9999");
  116. return;
  117. }
  118. if (/^[0-9]+$/.test(maxnum) == false) {
  119. $.alert("最大订量请输入整数");
  120. return;
  121. }
  122. if (maxnum.length > 4) {
  123. $.alert("最大订量最大为9999");
  124. return;
  125. }
  126. if (itemNum.length > 4) {
  127. $.alert("个人限额最大为9999");
  128. return;
  129. }
  130. // if (parseInt(minnum) <= 0) {
  131. // $.alert("最低起送量应大于0");
  132. // return;
  133. // }
  134. if (maxnum != "0" && minnum != "0") {
  135. if (parseInt(maxnum) < parseInt(minnum)) {
  136. $.alert("最大订量应大于或等于最低起送量");
  137. return;
  138. }
  139. }
  140. // if (parseInt(itemNum) <= 0) {
  141. // $.alert("个人限额应大于0");
  142. // return;
  143. // }
  144. if (maxnum != "0" && itemNum != "0") {
  145. if (parseInt(maxnum) < parseInt(itemNum)) {
  146. $.alert("最大订量应大于或等于个人限额");
  147. return;
  148. }
  149. }
  150. let curTimestamp =(new Date()).valueOf();
  151. let endTimestamp = end_time.replace(/-/g,'/');
  152. endTimestamp = Date.parse(endTimestamp);
  153. let deliverTimestamp = deliver_time.replace(/-/g,'/');
  154. deliverTimestamp = Date.parse(deliverTimestamp);
  155. if (endTimestamp < curTimestamp) {
  156. $.alert("团购截止时间不能早于当前时间");
  157. return;
  158. }
  159. if (deliverTimestamp < curTimestamp) {
  160. $.alert("送货时间不能早于当前时间");
  161. return;
  162. }
  163. if (endTimestamp > deliverTimestamp) {
  164. $.alert("团购截止时间不能大于送货时间");
  165. return;
  166. }
  167. if (phone_number.length > 11) {
  168. $.alert("请输入正确的联系方式");
  169. return;
  170. }
  171. console.log(
  172. "发布",
  173. title + "---" +
  174. supplier + "---" +
  175. goods + "---" +
  176. price + "---" +
  177. minnum + "---" +
  178. end_time + "---" +
  179. deliver_time + "---" +
  180. phone_number
  181. );
  182. let sendData = {
  183. userId: userId,
  184. tgTitle: title,
  185. tgSupplier: supplier,
  186. tgGoods: goods,
  187. tgPrice: price,
  188. tgMinNum: minnum,
  189. tgMaxNum: maxnum,
  190. tgItemNum: itemNum,
  191. endTime: end_time,
  192. deliverTime: deliver_time,
  193. tgPhoneNumber: phone_number,
  194. };
  195. if (isLoading == true) {
  196. return;
  197. }
  198. else {
  199. isLoading = true;
  200. }
  201. $.ajax({
  202. url: '/yeweihui/tgPublish.json',
  203. type: 'post',
  204. data: sendData,
  205. success: function (data) {
  206. isLoading = false;
  207. // console.log(data);
  208. if (data.success) {
  209. window.location.href = "/yeweihui/home.html?show=tuangou&userId=" + userId;
  210. }
  211. else {
  212. $.alert(data.data);
  213. }
  214. },
  215. error: function () {
  216. isLoading = false;
  217. $.alert("网络异常");
  218. }
  219. });
  220. })
  221. </script>