| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202 | 
							- package util
 
- import (
 
- 	"../../pkg/logging"
 
- 	"bytes"
 
- 	"fmt"
 
- 	"github.com/pkg/errors"
 
- 	"github.com/xormplus/xorm"
 
- 	"io/ioutil"
 
- 	"mime/multipart"
 
- 	"net/http"
 
- )
 
- type JSON1 struct {
 
- 	Access_token string `json:"access_token"`
 
- }
 
- //格润富德api调用(可咨询刘欢)
 
- func Get_AccessToken1(corpid,corpsecret string) string {
 
- 	gettoken_url := "https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=" + corpid + "&corpsecret=" + corpsecret
 
- 	//print(gettoken_url)
 
- 	client := &http.Client{}
 
- 	req, _ := client.Get(gettoken_url)
 
- 	defer req.Body.Close()
 
- 	body, _ := ioutil.ReadAll(req.Body)
 
- 	//fmt.Printf("\n%q",string(body))
 
- 	var json_str JSON
 
- 	json.Unmarshal([]byte(body), &json_str)
 
- 	//fmt.Printf("\n%q",json_str.Access_token)
 
- 	return json_str.Access_token
 
- }
 
- func Send_Message1(msg string,url string)[]byte {
 
- 	//print(send_url)
 
- 	client := &http.Client{}
 
- 	body := bytes.NewBuffer([]byte(msg))
 
- 	req, err := http.NewRequest("POST",url,body)
 
- 	req.Header.Set("Content-Type", "application/json")
 
- 	req.Header.Set("charset","UTF-8")
 
- 	if err != nil {
 
- 		// handle error
 
- 	}
 
- 	resp, err := client.Do(req)
 
- 	if err != nil {
 
- 		fmt.Println(err)
 
- 		return nil
 
- 	}
 
- 	defer resp.Body.Close()
 
- 	result_body, err := ioutil.ReadAll(resp.Body)
 
- 	if err != nil {
 
- 		fmt.Println(err)
 
- 		return nil
 
- 	}
 
- 	return result_body
 
- }
 
- /*func main() {
 
- 	postData := make(map[string]string)
 
- 	postData["anchorId"] = "361155076095561728"
 
- 	postData["searchBegin"] = "2019-03-01 00:00:00"
 
- 	postData["searchEnd"] = "2020-03-10 00:00:00"
 
- 	url := "https:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
 
- 	PostWithFormData("POST",url ,&postData)
 
- }*/
 
- func PostWithFormData(method, url string, postData *map[string]string)error{
 
- 	body := new(bytes.Buffer)
 
- 	w := multipart.NewWriter(body)
 
- 	for k,v :=  range *postData{
 
- 		w.WriteField(k, v)
 
- 	}
 
- 	w.Close()
 
- 	req, _ := http.NewRequest(method, url, body)
 
- 	logging.Info("setdata:    ",body.String())
 
- 	req.Header.Set("Content-Type", w.FormDataContentType())
 
- 	resp, _ := http.DefaultClient.Do(req)
 
- 	data, _ := ioutil.ReadAll(resp.Body)
 
- 	resp.Body.Close()
 
- 	m := make(map[string]interface{},0)
 
- 	json.Unmarshal(data,&m)
 
- 	rescode := 0
 
- 	switch  m["status"].(type) {
 
- 	case float64:
 
- 		rescode = int(m["status"].(float64) )
 
- 	case int:
 
- 		rescode = m["status"].(int)
 
- 	}
 
- 	if rescode == 1{
 
- 		return errors.New( xorm.String(m["message"]))
 
- 	}
 
- 	return  nil
 
- }
 
- // 栏舍
 
- type Feedp struct{
 
- 	Status int `json:"status"`
 
- 	ReturnCode string `json:"returnCode"`
 
- 	MessageType     int `json:"messageType"`
 
- 	Message     string    `json:"message"`
 
- 	Data []FeedpData `json:"data"`
 
- }
 
- type FeedpData struct{
 
- 	PenId string `json:"penId"`
 
- 	PenName string `json:"penName"`
 
- 	CowCount    int `json:"cowCount"`
 
- 	CreatedAt   string    `json:"createdAt"`
 
- 	ModifiedAt string  `json:"modifiedAt"`
 
- 	CcountRatio string `json:"ccountRatio"`
 
- }
 
- // 牛群类别分类
 
- type Feed struct{
 
- 	Status int `json:"status"`
 
- 	Message     string    `json:"message"`
 
- 	Data []FeedData `json:"data"`
 
- }
 
- type FeedData struct{
 
- 	FId string `json:"fId"`
 
- 	FName string `json:"fName"`
 
- 	FeedclassName   string    `json:"feedclassName"`
 
- 	DryMatter string  `json:"dryMatter"`
 
- 	Price string `json:"price"`
 
- 	AutoChange string `json:"autoChange"`
 
- 	AllowDev   string    `json:"allowDev"`
 
- 	CreatedAt   string    `json:"createdAt"`
 
- 	ModifiedAt string  `json:"modifiedAt"`
 
- }
 
- // 饲料分类
 
- type FeedClass struct{
 
- 	Status int `json:"status"`
 
- 	Message     string    `json:"message"`
 
- 	Data []FeedClassData `json:"data"`
 
- }
 
- type FeedClassData struct{
 
- 	FeedclassName string `json:"feedclassName"`
 
- 	FeedclassId string `json:"feedclassId"`
 
- 	CreatedAt   string    `json:"createdAt"`
 
- 	ModifiedAt string  `json:"modifiedAt"`
 
- }
 
- // 牛群类别分类
 
- type CowClass struct{
 
- 	Status int `json:"status"`
 
- 	Message     string    `json:"message"`
 
- 	Data []CowClassData `json:"data"`
 
- }
 
- type CowClassData struct{
 
- 	CowClassCode string `json:"cowClassCode"`
 
- 	CowClassName string `json:"cowClassName"`
 
- 	CreatedAt   string    `json:"createdAt"`
 
- 	ModifiedAt string  `json:"modifiedAt"`
 
- }
 
- // 配方
 
- type FeedTemplet struct{
 
- 	Status int `json:"status"`
 
- 	Message     string    `json:"message"`
 
- 	Data []FeedTempletData `json:"data"`
 
- }
 
- type FeedTempletData struct{
 
- 	FtId string `json:"ftId"`
 
- 	FtName string `json:"ftName"`
 
- 	CreatedAt   string    `json:"createdAt"`
 
- 	ModifiedAt string  `json:"modifiedAt"`
 
- 	FeedList []FeedListData `json:"feedList"`
 
- }
 
- type FeedListData struct{
 
- 	FId string `json:"fId"`
 
- 	FName string `json:"fName"`
 
- 	DryMatter string `json:"dryMatter"`
 
- 	FodderWeight string `json:"fodderWeight"`
 
- 	MixNo string `json:"mixNo"`
 
- 	RecipeCost string `json:"recipeCost"`
 
- 	FeedclassName string `json:"feedclassName"`
 
- 	AllowableError string `json:"allowableError"`
 
- 	Autosecond string `json:"autosecond"`
 
- }
 
 
  |