setting.blade.php 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238
  1. @extends('layouts.base')
  2. @section('title', '基础设置')
  3. @section('content')
  4. <link rel="stylesheet" type="text/css" href="{{static_url('yunshop/goods/vue-goods1.css')}}"/>
  5. <link rel="stylesheet" type="text/css" href="{{static_url('yunshop/goods/vue-ohter.css')}}"/>
  6. <style>
  7. .el-checkbox-group {
  8. position: relative;
  9. z-index: 0;
  10. }
  11. .el-checkbox {
  12. margin-top: 10px !important;
  13. }
  14. </style>
  15. <div id='re_content'>
  16. <div class="con">
  17. <div class="vue-main-title">
  18. <div class="title" style="margin-top: 20px"><span
  19. style="width: 4px;height: 18px;background-color: #29ba9c;margin-right:15px;display:inline-block;"></span><b>基础设置</b>
  20. </div>
  21. </div>
  22. <div class="setting">
  23. <el-form ref="form" label-width="15%">
  24. <div class="block">
  25. <el-form-item label="是否开启企业管理PC端">
  26. <template>
  27. <el-switch v-model="form.open_state" :active-value="1"
  28. :inactive-value="0"></el-switch>
  29. </template>
  30. </el-form-item>
  31. <el-form-item label="平台名称">
  32. <el-input v-model="form.pc_title"
  33. style="width:65%;"></el-input>
  34. </el-form-item>
  35. <el-form-item label="登录链接">
  36. <el-input v-model="form.login_url"
  37. style="width:65%;"></el-input>
  38. <el-button type="primary" @click="copy(form.login_url)">复制</el-button>
  39. </el-form-item>
  40. <el-form-item label="平台Logo">
  41. <el-input v-model="form.pc_logo" :disabled="true"
  42. style="width:65%;"></el-input>
  43. <el-button type="primary" @click="uploadShow3=true">选择图片</el-button>
  44. <div class="tip">建议图片尺寸:300px * 300px</div>
  45. </el-form-item>
  46. <el-form-item label="" v-if="form.pc_logo_url">
  47. <el-link :href="form.pc_logo_url" target="_blank">
  48. <el-image :src="form.pc_logo_url"
  49. style="width: 150px;height: 150px"></el-image>
  50. </el-link>
  51. </el-form-item>
  52. <el-form-item label="浏览器标题图标">
  53. <el-input v-model="form.pc_favorite_icon" :disabled="true"
  54. style="width:65%;"></el-input>
  55. <el-button type="primary" @click="uploadShow2=true">选择图片</el-button>
  56. <div class="tip">建议图片尺寸:300px * 300px</div>
  57. </el-form-item>
  58. <el-form-item label="" v-if="form.pc_favorite_icon_url">
  59. <el-link :href="form.pc_favorite_icon_url" target="_blank">
  60. <el-image :src="form.pc_favorite_icon_url"
  61. style="width: 150px;height: 150px"></el-image>
  62. </el-link>
  63. </el-form-item>
  64. <el-form-item label="平台登录页广告">
  65. <el-input v-model="form.pc_login_left_banner" :disabled="true"
  66. style="width:65%;"></el-input>
  67. <el-button type="primary" @click="uploadShow1=true">选择图片</el-button>
  68. <div class="tip">建议图片尺寸:750px * 365px</div>
  69. </el-form-item>
  70. <el-form-item label="" v-if="form.pc_login_left_banner_url">
  71. <el-link :href="form.pc_login_left_banner_url" target="_blank">
  72. <el-image :src="form.pc_login_left_banner_url"
  73. style="width: 150px;height: 150px"></el-image>
  74. </el-link>
  75. </el-form-item>
  76. <el-form-item label="平台底部版权信息" style="margin-bottom: 60px;">
  77. <tinymceee v-model="form.copyright" style="width:70%;"
  78. v-if="form.copyright!==undefined"></tinymceee>
  79. </el-form-item>
  80. </div>
  81. </el-form>
  82. </div>
  83. <upload-img :upload-show="uploadShow1" :name="chooseImgName1" @replace="changeProp1"
  84. @sure="sureImg1"></upload-img>
  85. <upload-img :upload-show="uploadShow2" :name="chooseImgName2" @replace="changeProp2"
  86. @sure="sureImg2"></upload-img>
  87. <upload-img :upload-show="uploadShow3" :name="chooseImgName3" @replace="changeProp3"
  88. @sure="sureImg3"></upload-img>
  89. <div class="confirm-btn">
  90. <el-button type="primary" @click="submit">提交</el-button>
  91. </div>
  92. </el-form>
  93. </div>
  94. </div>
  95. <script src="{{resource_get('static/yunshop/tinymce4.7.5/tinymce.min.js')}}"></script>
  96. @include('public.admin.uploadImg')
  97. @include('public.admin.tinymceee')
  98. <script>
  99. var app = new Vue({
  100. el: "#re_content",
  101. delimiters: ['[[', ']]'],
  102. name: 'test',
  103. data() {
  104. return {
  105. form: {},
  106. template_list: {},
  107. activeName: 'first',
  108. uploadShow1: false,
  109. uploadShow2: false,
  110. uploadShow3: false,
  111. chooseImgName1: '',
  112. chooseImgName2: '',
  113. chooseImgName3: '',
  114. }
  115. },
  116. created() {
  117. this.getData();
  118. },
  119. mounted() {
  120. },
  121. methods: {
  122. copy(url) {
  123. let oInput = document.createElement('input');
  124. oInput.value = url;
  125. document.body.appendChild(oInput);
  126. oInput.select(); // 选择对象;
  127. console.log(oInput.value);
  128. document.execCommand("Copy"); // 执行浏览器复制命令
  129. this.$message({message: '复制成功', type: 'success'});
  130. oInput.remove()
  131. },
  132. changeProp1(val) {
  133. if (val == true) {
  134. this.uploadShow1 = false;
  135. } else {
  136. this.uploadShow1 = true;
  137. }
  138. },
  139. changeProp2(val) {
  140. if (val == true) {
  141. this.uploadShow2 = false;
  142. } else {
  143. this.uploadShow2 = true;
  144. }
  145. },
  146. changeProp3(val) {
  147. if (val == true) {
  148. this.uploadShow3 = false;
  149. } else {
  150. this.uploadShow3 = true;
  151. }
  152. },
  153. sureImg1(name, image, image_url) {
  154. this.form.pc_login_left_banner = image;
  155. this.form.pc_login_left_banner_url = image_url;
  156. },
  157. sureImg2(name, image, image_url) {
  158. this.form.pc_favorite_icon = image;
  159. this.form.pc_favorite_icon_url = image_url;
  160. },
  161. sureImg3(name, image, image_url) {
  162. this.form.pc_logo = image;
  163. this.form.pc_logo_url = image_url;
  164. },
  165. getData() {
  166. this.$http.post('{!! yzWebFullUrl('plugin.business-pc.admin.setting.index') !!}', {is_json: 1}).then(response => {
  167. if (response.data.result) {
  168. console.log(response.data.result);
  169. this.form = response.data.data.setting;
  170. } else {
  171. this.$message({message: response.data.msg, type: 'error'});
  172. }
  173. }, response => {
  174. this.$message({message: response.data.msg, type: 'error'});
  175. })
  176. },
  177. submit() {
  178. let that = this;
  179. if (this.form.websocket_open != 1 && this.form.open_state == 1) {
  180. this.websocketOpen()
  181. } else {
  182. this.postData()
  183. }
  184. },
  185. websocketOpen() {
  186. this.$confirm("检测到websocket没有开启是否同步开启?若是使用项目管理通知功能请点’是‘或自行到系统->系统工具设置(无论是否,该页面设置依然会生效)", '提示', {
  187. confirmButtonText: '是',
  188. cancelButtonText: '否',
  189. type: 'warning'
  190. }).then(() => {
  191. this.form.websocket_open = 1
  192. this.postData()
  193. }).catch(() => {
  194. this.postData()
  195. });
  196. },
  197. postData() {
  198. this.$http.post('{!! yzWebFullUrl('plugin.business-pc.admin.setting.edit') !!}', this.form).then(response => {
  199. if (response.data.result) {
  200. this.$message({message: response.data.msg, type: 'success'});
  201. this.getData();
  202. } else {
  203. this.$message({message: response.data.msg, type: 'error'});
  204. }
  205. }, response => {
  206. this.$message({message: response.data.msg, type: 'error'});
  207. })
  208. },
  209. }
  210. })
  211. </script>
  212. @endsection