mail_add.blade.php 8.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190
  1. @extends('base.base')
  2. @section('base')
  3. <!-- 内容区域 -->
  4. {{-- <script src="https://cdn.jsdelivr.net/npm/vue@2.6.11"></script>--}}
  5. <script src="/assets/js/vue.js"></script>
  6. {{-- <script src="https://cdn.jsdelivr.net/npm/vue"></script>--}}
  7. <script src="/assets/js/jquery-3.0.0.min.js"></script>
  8. <div class="main-panel">
  9. <div class="content-wrapper">
  10. <div class="row">
  11. <div class="col-12 grid-margin stretch-card">
  12. <div class="card">
  13. <div class="card-body">
  14. <h4 class="card-title">{{ __('auto.请编辑礼包内容') }}</h4>
  15. {{--<p class="card-message">--}}
  16. {{--Basic form elements--}}
  17. {{--</p>--}}
  18. <div class="form-inline" id="test">
  19. <div class="form-inline" style="margin-top: 5px">
  20. <label for="exampleInputName1">*邮件方式:</label>&nbsp;&nbsp;
  21. <select class="form-control" v-model="type" v-on:change="indexSelect">
  22. <option :value="index" v-for="(item,index) in typeList" :key="index" selected >
  23. @{{item}}
  24. </option>
  25. </select>
  26. </div>
  27. <div class="form-inline" style="margin-top: 5px">
  28. <label for="exampleInputName1">*收件人ID:</label>&nbsp;&nbsp;
  29. <input v-model="game_id" type="text" style="color: black;width: 500px;"
  30. class="form-control" name="game_id" placeholder="{{ __('auto.玩家游戏') }}ID">
  31. </div>
  32. <div class="form-inline" style="margin-top: 5px">
  33. <label for="exampleInputName1">*邮件标题:</label>&nbsp;&nbsp;
  34. <input v-model="title" type="text" style="color: black;width: 500px;"
  35. class="form-control" name="title" placeholder="{{ __('auto.输入标题') }}">
  36. </div>
  37. <div class="form-inline" style="margin-top: 5px">
  38. <label for="exampleInputName1">*邮件内容:</label>&nbsp;&nbsp;
  39. <textarea v-model="text" style="color: black;width: 500px;" class="form-control"
  40. name="text" rows="4" placeholder="{{ __('auto.输入邮件内容') }}"></textarea>
  41. </div>
  42. <div v-for="(item,index) in allGift" :key="index" class="form-inline" v-if="play"
  43. style="margin-top: 5px">
  44. <label for="exampleInputName1">*选择奖品:</label>&nbsp;&nbsp;
  45. <select v-model="item.id" class="form-control">
  46. <option :value="item.PropID" v-for="(item,index) in giftList" :key="index" selected>
  47. @{{item.PropName}}
  48. </option>
  49. </select>
  50. <label for="exampleInputName1">*奖品数量:</label>&nbsp;&nbsp;
  51. <input v-model="item.number" class="form-control required">
  52. </div>
  53. <div>
  54. <button @click="add()" class="btn btn-sm btn-gradient-primary btn-icon-text">{{ __('auto.增加') }}
  55. </button>
  56. <button @click="del()" class="btn btn-sm btn-gradient-primary btn-icon-text">{{ __('auto.减少') }}
  57. </button>
  58. {{-- <button @click.once="send()" id="send"--}}
  59. <button id="send" @click="send()"
  60. class="btn btn-sm btn-gradient-primary btn-icon-text">{{ __('auto.提交') }}
  61. </button>
  62. </div>
  63. </div>
  64. </div>
  65. </div>
  66. </div>
  67. </div>
  68. </div>
  69. </div>
  70. <script type="text/javascript">
  71. var test = new Vue({
  72. el: '#test',
  73. data() {
  74. return {
  75. data: {
  76. id: 0,
  77. BonusNumber: 1,
  78. BonusString: '',
  79. },
  80. giftList: [],
  81. allGift: [{
  82. id: "30000",
  83. number: ""
  84. }],
  85. typeList : {'1':'{{ __('auto.全部玩家') }}','2':'{{ __('auto.单个玩家') }}'},
  86. type: 2,
  87. title: '',
  88. game_id: '',
  89. text: '',
  90. play:1
  91. }
  92. },
  93. created() {
  94. var that = this;
  95. //that.giftList = "['id'=>3000,'PropName'=>'金币']"
  96. $.get(
  97. '/admin/gift/list',
  98. function (data) {
  99. that.giftList = data;
  100. },
  101. )
  102. },
  103. methods: {
  104. add: function () {
  105. let oneGift = {
  106. id: "",
  107. number: ""
  108. }
  109. this.allGift.push(oneGift)
  110. },
  111. del: function () {
  112. let oneGift = {
  113. id: "",
  114. number: ""
  115. }
  116. this.allGift.pop(oneGift)
  117. },
  118. indexSelect:function(){
  119. if (this.type == 1){
  120. this.play=0
  121. }else{
  122. this.play=1
  123. }
  124. },
  125. send: function () {
  126. if (this.type == 1 && this.game_id != '') {
  127. layer.msg('{{ __('auto.全部玩家时,玩家游戏ID不允许有值!') }}')
  128. return false;
  129. }
  130. if (this.type == 2 && this.game_id == ''){
  131. layer.msg('{{ __('auto.私人邮件缺少发件人') }}')
  132. return false;
  133. }
  134. $.post('/admin/mail/add', {
  135. 'type': this.type,
  136. 'game_id': this.game_id,
  137. 'title': this.title,
  138. 'bonus': this.allGift,
  139. 'text': this.text
  140. })
  141. .then(function (res) {
  142. layer.msg(res.msg)
  143. if (res.code == 200) {
  144. setTimeout(function () {
  145. parent.location.reload();
  146. }, 1500)
  147. }
  148. });
  149. // parent.location.reload();
  150. }
  151. }
  152. })
  153. </script>
  154. <script>
  155. function add() {
  156. var a = $("#a").find("option:selected").text();
  157. var b = parseInt(document.getElementById("b").value);
  158. $("#c").val(a + b);
  159. }
  160. function commit() {
  161. if (!checkForm()) {
  162. return false;
  163. }
  164. var data = $("#form").serializeObject();
  165. myRequest("/admin/gift/add/", "post", data, function (res) {
  166. layer.msg(res.msg)
  167. setTimeout(function () {
  168. parent.location.reload();
  169. }, 1500)
  170. });
  171. }
  172. function cancel() {
  173. parent.location.reload();
  174. }
  175. </script>
  176. @endsection