package main import ( "context" "fmt" _ "gdyb/routers" "gdyb/service" "gdyb/utils" "github.com/astaxie/beego" "github.com/qiniu/api.v7/auth/qbox" "github.com/qiniu/api.v7/storage" "os" "os/exec" "strconv" "time" ) func init() { service.ConnectDB() } var ( astr_jyhb string = "3046022100E4C617A5626E408938EEAC33D7BC0ACD645D8FF0B9A29FE55EC3F9BAB01A07C9022100D0F9E8A545E997F3E431C5E3DADA0EC5F53ACE6A7E9598FD6F3B85BE055D3E10" astr_jysr string = "bqh" astr_jysc string = "" ) func call_yh_hb_call() { cmd := exec.Command("java", "-jar", "yh_hb_fat.jar", astr_jyhb, astr_jysr, astr_jysc) out, err := cmd.Output() if err != nil { fmt.Println("error:", err.Error()) } fmt.Printf("call yh_hb_call %q\n", string(out)) } func main() { call_yh_hb_call() org_id, _ := beego.AppConfig.Int64("org_id") miConfig, _ := service.FindMedicalInsuranceInfo(org_id) dir := miConfig.OrgName + "日志" utils.Mkdir(dir) month := time.Unix(1557042972, 0).Format("1") year := time.Now().Format("2006") month = time.Now().Format("01") day := time.Now().Format("02") file := strconv.FormatInt(org_id, 10) + "_" + year + month + day + "_log" file_name := file + ".txt" file_path := miConfig.OrgName + "日志" + "/" + file_name exist, _ := utils.PathExists(file_path) if exist { //存在 fmt.Println("存在") f, err := os.OpenFile(file_path, os.O_WRONLY, 0644) if err != nil { fmt.Println("read fail") } content := "\r\n" n, _ := f.Seek(0, 2) _, err = f.WriteAt([]byte(content), n) } else { //不存在 fmt.Println("文件不存在,创建文件") f, err := os.Create(miConfig.OrgName + "日志" + "/" + file_name) defer f.Close() if err != nil { } else { _, err = f.Write([]byte("记录日志")) } } //upload_qiniu(file_path,miConfig.OrgName+"_"+year+month+day) beego.Run() } func upload_qiniu(filePath string, temp_key string) { key := temp_key //上传凭证,关于凭证这块大家可以去看看官方文档 putPolicy := storage.PutPolicy{ Scope: beego.AppConfig.String("qiniu_bucket"), } mac := qbox.NewMac(beego.AppConfig.String("qiniu_accesskey"), beego.AppConfig.String("qiniu_secretkey")) upToken := putPolicy.UploadToken(mac) cfg := storage.Config{} //空间对应机房 //其中关于Zone对象和机房的关系如下: // 机房 Zone对象 // 华东 storage.ZoneHuadong // 华北 storage.ZoneHuabei // 华南 storage.ZoneHuanan // 北美 storage.ZoneBeimei //七牛云存储空间设置首页有存储区域 cfg.Zone = &storage.ZoneHuadong //不启用HTTPS域名 cfg.UseHTTPS = false //不使用CND加速 cfg.UseCdnDomains = false //构建上传表单对象 formUploader := storage.NewFormUploader(&cfg) ret := storage.PutRet{} // 可选 putExtra := storage.PutExtra{ Params: map[string]string{}, } err := formUploader.PutFile(context.Background(), &ret, upToken, key, filePath, &putExtra) if err != nil { fmt.Println(err) return } }