flyer.jsp 17 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382
  1. <%@ page language="java" contentType="text/html; charset=UTF-8"
  2. pageEncoding="UTF-8" %>
  3. <%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
  4. <!DOCTYPE html>
  5. <html>
  6. <head>
  7. <meta charset="UTF-8">
  8. <title>Insert title here</title>
  9. <%@include file="/views/common.jsp" %>
  10. </head>
  11. <!-- 宣传单 -->
  12. <style>
  13. .edge .layui-edge {
  14. right: 10px;
  15. }
  16. </style>
  17. <body>
  18. <div class="big_box">
  19. <div class="left_div">
  20. <h1 class="h2">宣传单</h1> <span style="color:red;font-weight:700;"></span>
  21. <hr>
  22. <form class="layui-form">
  23. <p>
  24. 材质
  25. </p>
  26. <div class="layui-form-item">
  27. <select name="kindValue" id="kindValue" lay-filter="kindValue" class="select">
  28. <option value="0">双胶80克彩色印刷</option>
  29. <option value="1">商务250克铜版纸</option>
  30. <option value="2">商务200克铜版纸</option>
  31. <option value="3" selected="selected">商务157克铜版纸</option>
  32. </select>
  33. </div>
  34. </form>
  35. <form class="layui-form">
  36. <input type="hidden" name="proTypeValue" id="proTypeValue" class="layui-input" value="14">
  37. <!-- <p>
  38. 规格
  39. </p>
  40. <div class="layui-form-item">
  41. <select name="kind2Value" id="kind2Value" lay-filter="kind2Value" class="select">
  42. <option value="0">42*28.5 CM</option>
  43. <option value="1" selected="selected">28.5*21 CM</option>
  44. <option value="2">21*14 CM</option>
  45. </select>
  46. </div> -->
  47. <p>
  48. 尺寸(CM/厘米) <span style="font-size:14px;color:red">输入格式: 长 * 宽</span>
  49. </p>
  50. <div class="layui-form-item">
  51. <input type="text" placeholder="格式:长*宽" name="size" id="size" class="layui-input" lay-verify="required"
  52. autocomplete="off">
  53. </div>
  54. <p>
  55. 数量(个)
  56. </p>
  57. <div class="layui-form-item">
  58. <select name="count" id="count" class="select">
  59. <option value="500">500</option>
  60. <option value="1000">1000</option>
  61. <option value="2000">2000</option>
  62. <option value="3000">3000</option>
  63. <option value="5000">5000</option>
  64. <option value="10000">10000</option>
  65. </select>
  66. </div>
  67. <p>
  68. 款数
  69. </p>
  70. <div class="layui-form-item">
  71. <input type="text" placeholder="请输入整数" autocomplete="off" name="number" id="number" value="1"
  72. class="layui-input" lay-verify="number">
  73. </div>
  74. <p>
  75. 客户旺旺
  76. </p>
  77. <div class="layui-form-item">
  78. <input type="text" placeholder="请输入客户旺旺号" autocomplete="off" name="wangwang" id="wangwang"
  79. class="layui-input">
  80. </div>
  81. <p>
  82. 工艺
  83. </p>
  84. <div class="layui-input-block craft">
  85. <input type="checkbox" name="craft" lay-filter="switch" value="折页" title="折页">
  86. <div class="layui-inline edge zheyeHide" style="width: 60px; display:none">
  87. <select name="zheye" class="select zheye" lay-filter="zheye">
  88. <option value="1" selected>1</option>
  89. <option value="2">2</option>
  90. <option value="3">3</option>
  91. <option value="4">4</option>
  92. <option value="5">5</option>
  93. <option value="6">6</option>
  94. </select>
  95. </div>
  96. <div class="layui-inline edge zheyeHide" style="width: 120px; display:none">
  97. <select name="ui_type" id="ui_type">
  98. <option value="1">对折</option>
  99. <option value="2">荷包折</option>
  100. <option value="3">对对折</option>
  101. <option value="4">外三折</option>
  102. <option value="5">四联风琴折</option>
  103. <option value="6">五联风琴折</option>
  104. </select>
  105. </div>
  106. <input type="checkbox" name="craft" class="disab yh" lay-filter="switch" value="压痕" title="压痕" disabled>
  107. <div class="layui-inline edge yahenHide" style="width: 60px; display:none">
  108. <select name="yahen" class="select yahen" lay-filter="yahen">
  109. <option value="1" selected>1</option>
  110. <option value="2">2</option>
  111. <option value="3">3</option>
  112. <option value="4">4</option>
  113. <option value="5">5</option>
  114. <option value="6">6</option>
  115. </select>
  116. </div>
  117. <input type="checkbox" name="craft" class="disab fm" lay-filter="switch" value="单面覆膜" title="单面覆膜"
  118. disabled>
  119. <input type="checkbox" name="craft" class="disab fm" lay-filter="switch" value="双面覆膜" title="双面覆膜"
  120. disabled>
  121. <input type="checkbox" name="craft" class="disab mq" lay-filter="switch" value="模切" title="异形模切">
  122. </div>
  123. <hr>
  124. <div class="layui-form-item">
  125. <button class="layui-btn" lay-submit="" lay-filter="acount_btn">计算</button>
  126. <button type="reset" class="layui-btn layui-btn-primary">重置</button>
  127. </div>
  128. <h2>计算结果-
  129. <button type="button" class="layui-btn layui-btn-primary layui-btn-sm copyResult"
  130. onclick="copyResult()">点击复制
  131. </button>
  132. </h2>
  133. <div>
  134. <textarea rows="11" cols="75" id="span_result" readonly="readonly"></textarea>
  135. <%@include file="../acountExpressFee.jsp" %>
  136. </div>
  137. <!--<h2>下单备注-<button type="button" class="layui-btn layui-btn-primary layui-btn-sm copyResult" onclick="copyBz()">点击复制</button></h2>
  138. <div>
  139. <textarea rows="5" cols="75" id="bz_result" readonly="readonly"></textarea>
  140. </div>-->
  141. <div>
  142. <table class="layui-hide" id="priceTable" lay-filter="priceTable"></table>
  143. </div>
  144. </form>
  145. </div>
  146. <div class="right_div" style="margin-left:50px;">
  147. <div class="layui-carousel" id="test1">
  148. <div carousel-item id="carousel"></div>
  149. <br>
  150. <div id="remark" style="font-size:20px;color:red"></div>
  151. </div>
  152. </div>
  153. </div>
  154. </body>
  155. <script src="../../js/carousel.js" charset="utf-8"></script>
  156. <%@include file="/views/copyResult.jsp" %>
  157. <script>
  158. layui.use(['table', 'form', 'carousel'], function () {
  159. var form = layui.form; //只有执行了这一步,部分表单元素才会自动修饰成功
  160. var carousel = layui.carousel;
  161. var table = layui.table;
  162. //建造实例
  163. ins = carousel.render({});
  164. var checkZheye = 0;
  165. form.on('checkbox(switch)', function (data) {
  166. // 覆膜只能选一个
  167. var fumoLen = $(".fm:checked").length;
  168. if (fumoLen > 1) {
  169. $(data.elem).next().attr("class", "layui-unselect layui-form-checkbox");
  170. $(data.elem).prop("checked", false);
  171. layer.msg('[ 单面覆膜 - 双面覆膜 ]不能同时选择!', {
  172. offset: ['300px', '300px']
  173. }, {icon: 5});
  174. return false;
  175. }
  176. if (data.value == '折页') {
  177. if (data.elem.checked) {
  178. $(".zheyeHide").show();
  179. checkZheye = 1;
  180. } else {
  181. $(".zheyeHide").hide();
  182. checkZheye = 0;
  183. }
  184. }
  185. if (data.value == '压痕') {
  186. if (data.elem.checked) {
  187. $(".yahenHide").show();
  188. } else {
  189. $(".yahenHide").hide();
  190. }
  191. }
  192. })
  193. function setRemark() {
  194. let kindValue = $("select[name='kindValue'] option:checked").val();
  195. $("#remark").empty();
  196. let html = '';
  197. if (kindValue == 3) {
  198. html = '预计发货时间:<br>福建:直角裁切 (2-3天发货) 圆通 顺丰 <br>江苏:直角裁切 (2-3天发货) 韵达 顺丰<br>福建:直角折页 (3-4天发货) 圆通 顺丰 <br>江苏:直角折页 (3-4天发货) 韵达 顺丰<br>福建:异形模切 (4-5天发货) 圆通 顺丰'
  199. }
  200. if (kindValue == 2) {
  201. html = '预计发货时间:<br>江苏:直角裁切 (2-3天发货) 韵达 顺丰<br>江苏:直角折页/压痕 (3-4天发货) 韵达 顺丰<br>江苏:异形模切 (4-5天发货) 韵达 顺丰'
  202. }
  203. if (kindValue == 1) {
  204. html = '预计发货时间:<br>江苏:直角裁切 (2-3天发货) 韵达 顺丰<br>江苏:直角折页/压痕 (3-4天发货) 韵达 顺丰<br>江苏:异形模切 (4-5天发货) 韵达 顺丰'
  205. }
  206. if (kindValue == 0) {
  207. html = '预计发货时间:<br>江苏:直角裁切 (2-3天发货) 韵达 顺丰<br>江苏:直角折页/压痕 (3-4天发货) 韵达 顺丰<br>福建:异形模切 (4-5天发货) 圆通 顺丰'
  208. }
  209. $("#remark").append('<div><span>' + html + '<span/></div>');
  210. }
  211. form.on('select(kindValue)', function (data) {
  212. // 80克、157克纸张的时候无覆膜
  213. if (data.value == "0" || data.value == "3") {
  214. $(".disab").attr("disabled", true);
  215. } else {
  216. $(".disab").attr("disabled", false);
  217. }
  218. // 157克铜版纸的时候可以选择模切
  219. if (data.value == "3") {
  220. $(".mq").attr("disabled", false);
  221. }
  222. form.render('checkbox');
  223. setRemark()
  224. });
  225. // 点击计算,计算价格
  226. form.on('submit(acount_btn)', function (data) {
  227. var kindData = {
  228. 0: "双胶80克彩色印刷",
  229. 1: "250克铜版纸",
  230. 2: "200克铜版纸",
  231. 3: "157克铜版纸"
  232. };
  233. var kind2Data = {
  234. 0: "42*28.5 CM",
  235. 1: "28.5*21 CM",
  236. 2: "21*14 CM"
  237. };
  238. var kind = kindData[$("#kindValue").val()];
  239. var kind2 = kind2Data[$("#kind2Value").val()];
  240. var number = $("#number").val();
  241. var size = $("#size").val();
  242. if ((size.split("*")[0] > 110 || size.split("*")[1] > 110) && (size.split("*")[0] > 110 || size.split("*")[1] > 110)) {
  243. layer.msg("宣传单尺寸不能超过110*110 cm", {offset: ['300px', '300px']}, function () {
  244. });
  245. return false;
  246. }
  247. if (((size.split("*")[0] < 10 || size.split("*")[1] < 14) && (size.split("*")[0] < 14 || size.split("*")[1] < 10)) && checkZheye == 1) {
  248. layer.msg("14*10 cm 以下无法‘折’", {offset: ['300px', '300px']}, function () {
  249. });
  250. return false;
  251. }
  252. // 判断能否折
  253. var bigSize = parseInt(size.split("*")[0] / 9) > parseInt(size.split("*")[1] / 9) ? parseInt(size.split("*")[0] / 9) : parseInt(size.split("*")[1] / 9)
  254. if (bigSize < $(".zheye").val() && checkZheye == 1) {
  255. layer.msg("该尺寸无法" + $(".zheye").val() + " 折!!每一页的成品不能小于9 cm", {offset: ['300px', '300px']}, function () {
  256. });
  257. return false;
  258. }
  259. var arr = [];
  260. $("input:checkbox[name='craft']:checked").each(function (i) {
  261. // 没有被禁用的工艺加到arr中
  262. if (!$(this).is(':disabled')) {
  263. arr.push($(this).val());
  264. }
  265. });
  266. console.log('-----选中的值-----', arr);
  267. if ($("#kindValue").val() == 1 || $("#kindValue").val() == 2) {
  268. if (arr[0] == '折页' && arr[1] != '压痕') {
  269. layer.msg("200克以上材质折页必须选压痕", {offset: ['300px', '300px']}, function () {
  270. });
  271. return false;
  272. }
  273. }
  274. $.ajax({
  275. url: "${path}/getThanSum",
  276. type: "GET",
  277. data: $(".big_box form").serialize(),
  278. success: function (result) {
  279. if (result.code == 100) {
  280. layer.msg(result.msg, {offset: ['300px', '300px']}, function () {
  281. });
  282. return false;
  283. }
  284. var data = result.data.proList;
  285. var span_result = "宣传单 - " + kind + ' - ' + size + ' 厘米 -(同款内容)\n' + "工艺 :" + arr + "\n";
  286. if (number > 1) {
  287. for (let i = 0; i < data.length; i++) {
  288. span_result += number + '款 各' + data[i].count + "个,共" + data[i].price + "元" + "," + (data[i].price / number / data[i].count).toFixed(2) + '/个\n'
  289. data[i].number = number;
  290. }
  291. } else {
  292. for (let i = 0; i < data.length; i++) {
  293. span_result += number + '款 ' + data[i].count + "个,共" + data[i].price + "元" + "," + (data[i].price / number / data[i].count).toFixed(2) + '/个\n'
  294. data[i].number = number;
  295. }
  296. }
  297. span_result += '包邮,免费设计呢~(偏远地区需补邮费)'
  298. $("#span_result").val(span_result);
  299. var count = $("#count option:selected").val();
  300. var craft = "";
  301. for (let i = 0; i < arr.length; i++) {
  302. if (arr[i].indexOf("折页") >= 0) {
  303. console.log(arr[i]);
  304. craft = $("#ui_type option:selected").text();
  305. } else {
  306. craft += arr[i];
  307. }
  308. }
  309. console.log(craft);
  310. getRemark("宣传单", size, count + "个", kind, number, craft, "");
  311. //计算完自动复制文本
  312. var e = document.getElementById("span_result");//对象是content
  313. if (e.value != "") {
  314. e.select();//选择对象
  315. document.execCommand("Copy");//执行浏览器复制命令
  316. }
  317. //生成表格
  318. table.render({
  319. elem: '#priceTable',
  320. even: true, //隔行变色
  321. data: data, // 赋值已知数据
  322. width: 500,
  323. cols: [[
  324. {
  325. field: 'number',
  326. width: '12%',
  327. align: "center",
  328. title: '款数'
  329. }, {
  330. field: 'count',
  331. width: '16%',
  332. align: "center",
  333. title: '数量'
  334. }, {
  335. field: 'price',
  336. width: '16%',
  337. align: "center",
  338. title: '报价'
  339. },/* {
  340. field : 'wangwang',
  341. align : "center",
  342. width : '16%',
  343. title : '折扣价',
  344. templet : function(d) {
  345. return Math.ceil(d.price * 0.98)
  346. }
  347. },{
  348. field : 'wangwang',
  349. align : "center",
  350. width : '19%',
  351. title : '跳楼价',
  352. templet : function(d) {
  353. return Math.ceil(d.price * 0.96)
  354. }
  355. }, */{
  356. field: 'weight',
  357. width: '21%',
  358. align: "center",
  359. title: '重量(kg)'
  360. }
  361. ]],
  362. done: function () {
  363. }
  364. });
  365. }
  366. });
  367. return false;
  368. });
  369. });
  370. </script>
  371. </html>