|
@@ -1,6 +1,7 @@
|
1
|
1
|
package wechatimg
|
2
|
2
|
|
3
|
3
|
import (
|
|
4
|
+ "errors"
|
4
|
5
|
"fmt"
|
5
|
6
|
"io"
|
6
|
7
|
"os"
|
|
@@ -155,7 +156,10 @@ func (c *WechatImgController) AddNewImg() {
|
155
|
156
|
fmt.Println("文件保存失败")
|
156
|
157
|
return
|
157
|
158
|
}
|
158
|
|
-
|
|
159
|
+ url, err := c.FileUploadForMatrial()
|
|
160
|
+ if err != nil {
|
|
161
|
+ c.ResponseError(err)
|
|
162
|
+ }
|
159
|
163
|
user := c.Context.Get("user").(*model.SysUser)
|
160
|
164
|
|
161
|
165
|
appId, err := c.sdao.GetAppIdByOrgId(user.OrgId)
|
|
@@ -181,7 +185,7 @@ func (c *WechatImgController) AddNewImg() {
|
181
|
185
|
}
|
182
|
186
|
c.ResponseJSON(map[string]interface{}{
|
183
|
187
|
"media_id": img.MediaId,
|
184
|
|
- "url": img.Url,
|
|
188
|
+ "url": url,
|
185
|
189
|
})
|
186
|
190
|
|
187
|
191
|
}
|
|
@@ -208,3 +212,37 @@ func (c *WechatImgController) DeleteImg() {
|
208
|
212
|
}
|
209
|
213
|
c.ResponseJSON("删除成功")
|
210
|
214
|
}
|
|
215
|
+
|
|
216
|
+func (c *BaseController) FileUploadForMatrial() (string, error) {
|
|
217
|
+ file, err := c.uploadFileToOSS("media")
|
|
218
|
+ if err != nil {
|
|
219
|
+ return nil, err
|
|
220
|
+ }
|
|
221
|
+ return file, nil
|
|
222
|
+}
|
|
223
|
+
|
|
224
|
+func (c *BaseController) uploadFileToOSS(field string) (string, error) {
|
|
225
|
+ aliConf, ok := c.Configer[AliYunConf]
|
|
226
|
+ if !ok {
|
|
227
|
+ return "", errors.New("没有找到阿里云相关配置")
|
|
228
|
+ }
|
|
229
|
+
|
|
230
|
+ endpoint := aliConf.String("oss::Endpoint")
|
|
231
|
+ accessKeyID := aliConf.String("oss::AccessKeyId")
|
|
232
|
+ accessKeySecret := aliConf.String("oss::AccessKeySecret")
|
|
233
|
+ bucket := aliConf.String("oss::Bucket")
|
|
234
|
+
|
|
235
|
+ aliCli, err := utils.GetOssClient(endpoint, accessKeyID, accessKeySecret)
|
|
236
|
+ if err != nil {
|
|
237
|
+ return "", err
|
|
238
|
+ }
|
|
239
|
+
|
|
240
|
+ fNameExtra := strconv.FormatInt(time.Now().Unix(), 10)
|
|
241
|
+
|
|
242
|
+ fileURL, err := utils.UploadFileToBucket(aliCli, c.Ctx.Request, bucket, field, fNameExtra)
|
|
243
|
+ if err != nil {
|
|
244
|
+ return "", err
|
|
245
|
+ }
|
|
246
|
+
|
|
247
|
+ return fileURL, nil
|
|
248
|
+}
|