sunhao 5 years ago
parent
commit
931c053743

+ 15 - 0
app/Http/Controllers/Admin/TemplateController.php

@@ -550,6 +550,21 @@ class TemplateController extends Controller
550 550
         return false;
551 551
     }
552 552
 
553
+    public function uploadBack(Request $request){
554
+        $img = 
555
+        $img = str_replace('data:image/png;base64,', '', $img);
556
+        $img = str_replace(' ', '+', $img);
557
+        $file = base64_decode($img);
558
+
559
+        $ossClient=new oss();
560
+        // 上传阿里云
561
+        $file = $ossClient->upload($file->getClientOriginalExtension(), $file->getRealPath(), 'upload/seafoodPic'.date("Y-m-d",time()).'/'.date('His'));
562
+        $img=$file['oss-request-url'];
563
+        $back_img=str_replace("kx-youhuiquan.oss-cn-beijing.aliyuncs.com","imgs.726p.com",$img);
564
+        #保存背景图
565
+        TemplatesBackimg::insert(['back_img'=>$back_img]);
566
+    }
567
+
553 568
 
554 569
 }
555 570
  

+ 1 - 0
app/Http/routes.php

@@ -210,6 +210,7 @@ Route::group(['prefix' => 'admin'], function(){
210 210
         Route::get('template/sourceedit/{id}', 'Admin\TemplateController@sourceedit');
211 211
         Route::post('template/sourceupdate',   'Admin\TemplateController@sourceupdate');
212 212
         Route::get('template/sourcedelete/{id}',   'Admin\TemplateController@sourcedel');
213
+        Route::post('template/uploadBack/',   'Admin\TemplateController@uploadBack');
213 214
 
214 215
     });
215 216
     

+ 116 - 20
resources/views/template/sourcecreate.blade.php

@@ -1,5 +1,56 @@
1 1
 @extends('admin/master')
2 2
 @section('content')
3
+<style>
4
+    .templates_ul{
5
+
6
+    }
7
+    .templates_li{
8
+        float: left;
9
+        width: 25%;
10
+        margin-bottom: 35px;
11
+    }
12
+    .templates_li .templates_img{
13
+        width: 100px;
14
+        height: 177px;
15
+        margin: auto;
16
+        margin-bottom: 10px;
17
+    }
18
+    .add_div{
19
+        width: 100px;
20
+        height: 177px;
21
+        border: 1px solid #ccc;
22
+        font-size: 47px;
23
+        color: #ccc;
24
+        text-align: center;
25
+        border-radius: 5px;
26
+        line-height: 177px;
27
+        cursor: pointer;
28
+        position: relative;
29
+    }
30
+    .add_div .add_img_input{
31
+        position: absolute;
32
+        width: 100%;
33
+        height: 100%;
34
+        left: 0;
35
+        top: 0;
36
+    }
37
+    .add_img_title{
38
+        width: 100px;
39
+        text-align: center;
40
+        padding: 8px 0;
41
+    }
42
+    .clear::after {
43
+        content: ".";
44
+        clear: both;
45
+        display: block;
46
+        overflow: hidden;
47
+        font-size: 0;
48
+        height: 0;
49
+    }
50
+    .clear {
51
+        zoom: 1;
52
+    }
53
+</style>
3 54
     <body>
4 55
     @if(count($errors) > 0)
5 56
         <div class="Huialert Huialert-info" id="error">
@@ -16,11 +67,14 @@
16 67
                     选择模板:</label>
17 68
                 <div class="formControls col-xs-6 col-sm-6">
18 69
                     @if($templates)
19
-                    <ul>
70
+                    <ul class="templates_ul clear">
20 71
                         @foreach($templates as $item)
21
-                        <li>
22
-                            <img  style="width:100px;" src="{{$item['img']}}"/>
23
-                            <input type="radio" class="input-text" value="{{$item['id']}}" @if(old('t_id') == $item['id']) checked @endif name="t_id">{{$item['note']}}
72
+                        <li class="templates_li">
73
+                            <img class="templates_img" src="{{$item['img']}}"/>
74
+                            <div>
75
+                                <input type="radio" id="templates_{{$item['id']}}" value="{{$item['id']}}" @if(old('t_id') == $item['id']) checked @endif name="t_id">
76
+                                <label for="templates_{{$item['id']}}">{{$item['note']}}</label>
77
+                            </div>
24 78
                         </li>
25 79
                         @endforeach
26 80
                     </ul>
@@ -31,26 +85,44 @@
31 85
                 <label class="form-label col-xs-4 col-sm-2">
32 86
                     选择背景图:</label>
33 87
                 <div class="formControls col-xs-6 col-sm-6">
34
-                        @if($back_imgs)
35
-                        <ul>
36
-                            @foreach($back_imgs as $k=>$back_img)
37
-                            <li>
38
-                                <img  style="width:100px;" src="{{$back_img}}"/>
39
-                                <input type="radio" class="input-text" value="{{$back_img}}" @if(old('back_img') == $back_img) checked @endif name="t_id">背景图{{$k+1}}
40
-                            </li>
41
-                            @endforeach
42
-                        </ul>
43
-                        @endif
44
-                        <span class="btn-upload">
45
-                          <input class="input-text upload-url radius" type="text" name="uploadfile-1" id="uploadfile-1" readonly><a href="javascript:void();" class="btn btn-primary radius"><i class="Hui-iconfont">&#xe642;</i> 上传图片</a>
46
-                          <input type="file" multiple name="img" class="input-file">
47
-                        </span><br>
48
-                    文件类型支持:jpg ,png ,ico ,文件大小不能超过1M
88
+                    @if($back_imgs)
89
+                    <ul class="templates_ul clear">
90
+                        @foreach($back_imgs as $k=>$back_img)
91
+                        <li class="templates_li">
92
+                            <img class="templates_img" src="{{$back_img}}"/>
93
+                            <div>
94
+                                <input type="radio" id="bgImg{{$k}}" value="{{$back_img}}" @if(old('back_img') == $back_img) checked @endif name="back_img">
95
+                                <label for="bgImg{{$k}}">背景图{{$k+1}}</label>
96
+                            </div>
97
+                        </li>
98
+                        @endforeach
99
+
100
+                        <li id='upload_img' class="templates_li">
101
+                            <div class="add_div">
102
+                                <span>+</span>
103
+                                <input type="file" id="ImgInput" multiple name="img" class="input-file add_img_input" onChange="changeImgID()">
104
+                            </div>
105
+                            <div class="add_img_title">上传新背景图</div>
106
+
107
+                        </li>
108
+                    </ul>
109
+                    @endif
49 110
                 </div>
50 111
             </div>
112
+
113
+            <!-- <div class="row cl">
114
+                <label class="form-label col-xs-4 col-sm-2">
115
+        </label>
116
+                
117
+                  <input class="input-text upload-url radius" type="text" name="uploadfile-1" id="uploadfile-1" readonly>
118
+                  <a href="javascript:void();" class="btn btn-primary radius"><i class="Hui-iconfont">&#xe642;</i> 上传图片</a>
119
+
120
+                <div style="margin-left: 280px;padding: 10px;">文件类型支持:jpg ,png ,ico ,文件大小不能超过1M</div>
121
+            </div> -->
122
+
51 123
             <div class="row cl">
52 124
                 <label class="form-label col-xs-4 col-sm-2">
53
-                    渠道描述:</label>
125
+                    渠道备注:</label>
54 126
                 <div class="formControls col-xs-6 col-sm-6">
55 127
                     <input type="text" class="input-text" value="{{old('note')}}" placeholder="" name="note">
56 128
                 </div>
@@ -81,6 +153,30 @@
81 153
         function return_index(){
82 154
             location.href='/admin/template/sourceindex';
83 155
         }
156
+
157
+        function changeImgID(html) {
158
+             //获取读取我文件的File对象
159
+            var selectedFile = '';
160
+            selectedFile = document.getElementById('ImgInput').files[0];
161
+             var reader = new FileReader();
162
+             reader.readAsDataURL(selectedFile);
163
+             reader.onload = function () {
164
+                 //当读取完成后回调这个函数,然后此时文件的内容存储到了result中,直接操作即可
165
+                 console.log(this.result)
166
+                 $.ajax({
167
+                    'url':'/admin/template/uploadBack',
168
+                    'type':'post',
169
+                    'data':this.result,
170
+                    'dataType':'json',
171
+                    success:function(pic_url){
172
+                        var str = "<li class=\"templates_li\"><img class=\"templates_img\" src=\""+ pic_url +"\"\/><div><input type=\"radio\" id=\"bgImg\" value=\""+pic_url+"\" name=\"back_img\"><label for=\"bgImg\">背景图</label><\/div><\/li>";
173
+                        $("#upload_img").before(str);
174
+                    }
175
+                })
176
+             }
177
+
178
+        }
179
+
84 180
     </script>
85 181
     </body>
86 182
 @endsection

+ 14 - 4
resources/views/template/sourceedit.blade.php

@@ -28,20 +28,30 @@
28 28
                     @endif
29 29
                 </div>
30 30
             </div>
31
-            <!--div class="row cl">
31
+            <div class="row cl">
32 32
                 <label class="form-label col-xs-4 col-sm-2">
33
-                    背景图:</label>
33
+                    选择背景图:</label>
34 34
                 <div class="formControls col-xs-6 col-sm-6">
35
+                        @if($back_imgs)
36
+                        <ul>
37
+                            @foreach($back_imgs as $k=>$back_img)
38
+                            <li>
39
+                                <img  style="width:100px;" src="{{$back_img}}"/>
40
+                                <input type="radio" class="input-text" value="{{$back_img}}" @if($template['back_img'] == $back_img) checked @endif name="back_img">背景图{{$k+1}}
41
+                            </li>
42
+                            @endforeach
43
+                        </ul>
44
+                        @endif
35 45
                         <span class="btn-upload">
36 46
                           <input class="input-text upload-url radius" type="text" name="uploadfile-1" id="uploadfile-1" readonly><a href="javascript:void();" class="btn btn-primary radius"><i class="Hui-iconfont">&#xe642;</i> 上传图片</a>
37 47
                           <input type="file" multiple name="img" class="input-file">
38 48
                         </span><br>
39 49
                     文件类型支持:jpg ,png ,ico ,文件大小不能超过1M
40 50
                 </div>
41
-            </div-->
51
+            </div>
42 52
             <div class="row cl">
43 53
                 <label class="form-label col-xs-4 col-sm-2">
44
-                    渠道描述:</label>
54
+                    渠道备注:</label>
45 55
                 <div class="formControls col-xs-6 col-sm-6">
46 56
                     <input type="text" class="input-text" value="{{$template['note']}}" placeholder="" name="note">
47 57
                 </div>