add.html 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427
  1. {extend name="layout/content" /}
  2. {block name="header"}
  3. <link rel="stylesheet" href="__STATIC__/css/FuzzySearch.css?v={$Think.STATIC_VERSION}"
  4. xmlns="http://www.w3.org/1999/html">
  5. <title>添加礼包</title>
  6. <style>
  7. .layui-form-label {
  8. width: 110px;
  9. }
  10. </style>
  11. {/block}
  12. {block name="content"}
  13. <div class="x-body">
  14. <form class="layui-form" action="{:url('add')}" method="post">
  15. <div class="layui-form-item">
  16. <label class="layui-form-label"> <span class="x-red">*</span>所属游戏:</label>
  17. <div class="layui-input-inline" style="width: 40%">
  18. <div id="game"></div>
  19. </div>
  20. </div>
  21. <div class="layui-form-item">
  22. <label for="" class="layui-form-label">
  23. <span class="x-red">*</span>礼包名称:
  24. </label>
  25. <div class="layui-input-inline">
  26. <input type="text" id="name" name="name" required="" lay-verify="required" class="layui-input">
  27. </div>
  28. </div>
  29. <div class="layui-form-item">
  30. <label class="layui-form-label">
  31. <span class="x-red">*</span>发放类型:
  32. </label>
  33. <div class="layui-input-inline FuzzySearch_Container">
  34. <div>
  35. <select lay-search name="grant_type_id" id="grant_type_id" class="layui-form-select"
  36. lay-filter="selctOnchange" lay-verify="required">
  37. <option value="">请选择类型</option>
  38. {foreach name="grant_type_ids" item="vo" key='k'}
  39. <option value="{$k}">{$vo}</option>
  40. {/foreach}
  41. </select>
  42. </div>
  43. </div>
  44. </div>
  45. <div class="layui-form-item frequency" style="display: none">
  46. <label class="layui-form-label">
  47. <span class="x-red">*</span>发放次数:
  48. </label>
  49. <div class="layui-input-inline FuzzySearch_Container">
  50. <div>
  51. <select lay-search name="frequency" id="frequency" lay-verify="required">
  52. <option value="1">一次</option>
  53. <option value="2">多次</option>
  54. </select>
  55. </div>
  56. </div>
  57. </br> </br>
  58. </div>
  59. <div class="layui-form-item first-type" style="display: none">
  60. <label class="layui-form-label">
  61. <span class="x-red">*</span>首充判断规则:
  62. </label>
  63. <div class="layui-input-inline FuzzySearch_Container">
  64. <div>
  65. <select lay-search name="first_type" id="first_type" lay-verify="required">
  66. <option value="1">固定金额</option>
  67. <option value="2">大于某金额</option>
  68. </select>
  69. </div>
  70. </div>
  71. </br> </br>
  72. </div>
  73. <div class="layui-form-item month-type" style="display: none">
  74. <label class="layui-form-label">
  75. <span class="x-red">*</span>月卡周卡发放方式:
  76. </label>
  77. <div class="layui-input-inline FuzzySearch_Container">
  78. <div>
  79. <select lay-search name="month_type" id="month_type" lay-verify="required">
  80. <option value="1">当天</option>
  81. <option value="2">隔天</option>
  82. </select>
  83. </div>
  84. </div>
  85. </br> </br>
  86. </div>
  87. <input type="hidden" name="grant_pattern" value="1">
  88. <!-- <div class="layui-form-item">-->
  89. <!-- <label class="layui-form-label">-->
  90. <!-- <span class="x-red">*</span>是否严格按照条件发放:-->
  91. <!-- </label>-->
  92. <!-- <div class="layui-input-inline FuzzySearch_Container">-->
  93. <!-- <div>-->
  94. <!-- <select lay-search name="grant_pattern" id="grant_pattern">-->
  95. <!-- <option value="1">是</option>-->
  96. <!-- <option value="2">否</option>-->
  97. <!-- </select>-->
  98. <!-- </div>-->
  99. <!-- </div>-->
  100. <!-- </div>-->
  101. <div class="layui-form-item">
  102. <label class="layui-form-label">
  103. <span class="x-red">*</span>是否需要审核:
  104. </label>
  105. <div class="layui-input-inline FuzzySearch_Container">
  106. <div>
  107. <select lay-search name="is_examine" id="is_examine" lay-verify="required">
  108. <option value="1">不需要</option>
  109. <option value="2">需要</option>
  110. </select>
  111. </div>
  112. </div>
  113. </div>
  114. <div class="layui-form-item">
  115. <label class="layui-form-label">
  116. <span class="x-red">*</span>cps是否显示:
  117. </label>
  118. <div class="layui-input-inline FuzzySearch_Container">
  119. <div>
  120. <select lay-search name="is_show" id="is_show" lay-verify="required">
  121. <option value="1">显示</option>
  122. <option value="2">不显示</option>
  123. </select>
  124. </div>
  125. </div> </br>
  126. <span>自动发放的可配置不显示</span>
  127. </div>
  128. <div class="layui-form-item">
  129. <label class="layui-form-label">
  130. <span class="x-red">*</span>福利礼包类型(领取条件):
  131. </label>
  132. <div class="layui-input-inline FuzzySearch_Container">
  133. <div>
  134. <select lay-search name="welfare_gift_type_id" id="typeid" lay-verify="required">
  135. <option value="">请选择类型</option>
  136. {foreach name="welfare_gift_type" item="vo" key='k'}
  137. <option value="{$vo.id}">{$vo.name}(使用条件:{if condition="$vo.type_id eq 1"}
  138. {if condition="$vo.recharge_type eq 1"}最低充值金额{$vo.recharge_amount}
  139. {else/}区间金额:{$vo.recharge_amount}-{$vo.max_recharge_amount}{/if}
  140. 时间段:
  141. {if condition="$vo.time_type eq 1"}
  142. 全部
  143. {elseif condition="$vo.time_type eq 2"}
  144. {elseif condition="$vo.time_type eq 3"}
  145. {elseif condition="$vo.time_type eq 4"}
  146. {elseif condition="$vo.time_type eq 5"}
  147. {elseif condition="$vo.time_type eq 6"}
  148. {else/}
  149. 自定义
  150. {/if}
  151. {elseif condition="$vo.type_id eq 2"} 创角 {else/}
  152. 最低等级{$vo.role_level}{/if} )
  153. </option>
  154. {/foreach}
  155. </select>
  156. </div>
  157. </div>
  158. </div>
  159. <div class="layui-form-item">
  160. <label for="" class="layui-form-label">
  161. <span class="x-red">*</span>说明内容:
  162. </label>
  163. <div class="layui-input-inline" style="width: 50%;">
  164. <textarea name="content" rows="5" class="layui-textarea" required="" lay-verify="required"></textarea>
  165. </div>
  166. </div>
  167. <div class="layui-form-item" id="details_p">
  168. <label for="" class="layui-form-label">
  169. <span class="x-red">*</span>礼包内容:
  170. </label>
  171. <button type="button" class="layui-btn" onclick="add_div()" id="add_link">+</button>
  172. </br>
  173. </br>
  174. </br>
  175. <div id="details">
  176. <!-- <div class="layui-inline" style="margin-bottom: 20px;">-->
  177. <!-- <label class="layui-form-label">排名</label>-->
  178. <!-- <div class="layui-input-inline">-->
  179. <!-- <select id="GJliebiaoa" name="welfare_resources_id" lay-verify="GJliebiao" lay-search="">-->
  180. <!-- </select>-->
  181. <!-- </div>-->
  182. <!-- </div>-->
  183. <!-- <div class="layui-inline" style="margin-bottom: 20px;">-->
  184. <!-- <label class="layui-form-label">奖励</label>-->
  185. <!-- <div class="layui-input-inline">-->
  186. <!-- <input type="text" name="awardIntegral" placeholder="请输入奖励"-->
  187. <!-- class="layui-input awardIntegral">-->
  188. <!-- </div>-->
  189. <!-- </div>-->
  190. </div>
  191. </div>
  192. <div class="layui-form-item">
  193. <div class="layui-input-block">
  194. <button class="layui-btn" lay-submit lay-filter="formDemo" id="J_submit_btn">提交</button>
  195. <button type="button" class="layui-btn layui-btn-primary" onClick="javascript:history.back(-1);">返回
  196. </button>
  197. </div>
  198. </div>
  199. </form>
  200. </div>
  201. {/block}
  202. {block name="footer"}
  203. <script type="text/javascript" src="__STATIC__/js/FuzzySearch.js?v={$Think.STATIC_VERSION}"></script>
  204. <script type="text/javascript" charset="utf-8" src="__STATIC__/lib/xm-select.js"></script>
  205. <script>
  206. layui.use(['form', 'layer', 'upload', 'jquery'], function () {
  207. var form = layui.form,
  208. layer = layui.layer,
  209. upload = layui.upload;
  210. form.on('select(selctOnchange)', function (data) {
  211. console.log(data.value); //得到被选中的值
  212. if (data.value == 3 || data.value == 8 || data.value == 9) {
  213. $('.frequency').show()
  214. } else {
  215. $('.frequency').hide()
  216. }
  217. if (data.value == 7 ) {
  218. $('.first-type').show()
  219. } else {
  220. $('.first-type').hide()
  221. }
  222. if (data.value == 8 || data.value == 9) {
  223. $('.month-type').show()
  224. } else {
  225. $('.month-type').hide()
  226. }
  227. });
  228. })
  229. var tagData1 = {:json_encode($game_list)}; // 获取到后台给出的数据-PHP写法
  230. var LeftData = ''
  231. var tagIns1 = xmSelect.render({
  232. el: '#game', // div的id值
  233. toolbar: { // 工具条【‘全选’,‘清空’】
  234. show: true, // 开启工具条
  235. showIcon: false, // 隐藏工具条的图标
  236. },
  237. autoRow: true,
  238. tips: '请选择', // 让默认值不是“请选择”,而是“选择校区”
  239. filterable: true, // 开启搜索模式,默认按照name进行搜索
  240. paging: true, // 启用分页
  241. pageSize: 100, // 每页的数据个数
  242. data: tagData1,
  243. prop: { // 也许你的数据库返回的并不是name和value, 也许你提交的时候不止name和value, 怎么办? 自定义就行
  244. name: 'name',
  245. value: 'id'
  246. },
  247. on: function(data){
  248. var arr = data.arr;
  249. if(!arr){
  250. return;
  251. }
  252. gameArr = []
  253. for (i=0;i<arr.length;i++){
  254. gameArr[i]=arr[i].id;
  255. }
  256. validate(gameArr.toString())
  257. },
  258. })
  259. function validate(str) {
  260. if(!str){
  261. return;
  262. }
  263. $.ajax({
  264. type: "post",
  265. url: 'getWelfareResources',
  266. async: false,
  267. data: {"game":str},
  268. dataType: 'json',
  269. timeout: 5000,
  270. success: function (data) {
  271. if(data.code){
  272. LeftData=data.data
  273. for (var i = detail_div; i >0; i--) {
  274. del_div_html(i-1)
  275. }
  276. }else{
  277. alert(data.msg)
  278. }
  279. },
  280. error: function () {
  281. layer.alert('网络错误,请重试');
  282. }
  283. });
  284. }
  285. var detail_div = 0
  286. function add_div() {
  287. var e = document.getElementById("details");
  288. var div = document.createElement("div");
  289. div.className = "form-group";
  290. div.id = "details" + detail_div;
  291. // div.find('.ranking').val(2)
  292. // var html = "<div class='layui-inline' style='margin-bottom: 20px;'><label class='layui-form-label'>排名</label>" +
  293. // "<div class='layui-input-inline'><input type='text' value='" + (detail_div + 1) +
  294. // "' name='ranking' disabled placeholder='请输入排名' class='layui-input ranking'></div></div>" +
  295. // "<div class='layui-inline' style='margin-bottom: 20px;'><label class='layui-form-label'>奖励</label>" +
  296. // "<div class='layui-input-inline'>" +
  297. // "<input type='text' name='awardIntegral' placeholder='请输入奖励' class='layui-input awardIntegral'>" +
  298. // "</div>" +
  299. // "<button class='layui-btn' onclick='del_div(this)'>-</button>" +
  300. // "</div>"
  301. if(LeftData.length == 0){
  302. alert('游戏不存在礼包内容不存在,请先配置资源'); return;
  303. }
  304. var html = '<div class="layui-inline" style="margin-bottom: 20px;"><label class="layui-form-label">福利资源</label>' +
  305. '<div class="layui-input-inline FuzzySearch_Container" >' +
  306. '<select id="GJliebiao' + (detail_div + 1) + '" name="welfare_resources_id[]" lay-verify="GJliebiao" lay-search="true">';
  307. for (var i = 0; i < LeftData.length; i++) {
  308. console.log(LeftData[i])
  309. html += ' <option value="' + LeftData[i].id + '">' + LeftData[i].name + '</option>';
  310. }
  311. html += '</select></div> </div>' +
  312. '<div class="layui-inline" style="margin-bottom: 20px;"><label class="layui-form-label">发放数量</label>' +
  313. '<div class="layui-input-inline">' +
  314. '<input type="text" name="number[]" placeholder="发放数量" class="layui-input awardIntegral" value="1">' +
  315. '</div>';
  316. if(detail_div>0){
  317. html += '<button class="layui-btn" onclick="del_div(this)">-</button>';
  318. }
  319. html += '</div></br>';
  320. div.innerHTML += html
  321. document.getElementById("details_p").appendChild(div);
  322. layui.form.render("select");
  323. detail_div++;
  324. }
  325. function del_div(obj) {
  326. var did_id = obj.parentNode.parentNode.id;
  327. var did = did_id.substring(7);
  328. if (detail_div > 1) {
  329. var id = "details" + did.toString();
  330. var e = document.getElementById(id);
  331. // console.log({id})
  332. $(".ranking").each(function (ite, ind) {
  333. if (ite > 1) {
  334. // console.log({ite})
  335. $(this).val(ite);
  336. }
  337. })
  338. document.getElementById("details_p").removeChild(e);
  339. detail_div--;
  340. }
  341. }
  342. function del_div_html(num){
  343. var id = "details" + num.toString();
  344. var e = document.getElementById(id);
  345. // console.log({id})
  346. $(".ranking").each(function (ite, ind) {
  347. if (ite > 1) {
  348. // console.log({ite})
  349. $(this).val(ite);
  350. }
  351. })
  352. document.getElementById("details_p").removeChild(e);
  353. detail_div--;
  354. }
  355. // for (var i = 0; i < obj.length - 1; i++) {
  356. // add_div()
  357. // // console.log({i})
  358. // }
  359. // obj.map((item, index) => {
  360. // $(".awardIntegral").each(function(ite, ind) {
  361. // // console.log({ite})
  362. // // console.log({ind})
  363. // // if (index == 0) $(this).val(obj[0].awardIntegral);
  364. // if (index == ite) $(this).val(item.awardIntegral);
  365. // })
  366. // })
  367. // obj.map((item, index) => {
  368. // $(".ranking").each(function(ite, ind) {
  369. // // if (index == 0) $(this).val(obj[0].ranking);
  370. // // if(index>1){
  371. // if (index == ite) $(this).val(item.ranking);
  372. // // }
  373. // })
  374. // })
  375. </script>
  376. {/block}