| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697 |
- package service
- import (
- "context"
- "fmt"
- "io"
- "net/http"
- "os"
- "testing"
- modelWorkflow "dashoo.cn/micro/app/model/workflow"
- "dashoo.cn/opms_libary/plugin/dingtalk"
- "dashoo.cn/opms_libary/plugin/dingtalk/message"
- "github.com/gogf/gf/frame/g"
- "github.com/smallnest/rpcx/share"
- )
- var testTenant = "default"
- func fakeCtx(parent context.Context, tenant string) context.Context {
- ctx := context.WithValue(parent, share.ReqMetaDataKey, map[string]string{
- "tenant": tenant,
- })
- return ctx
- }
- func TestAssignInvoiceApplyApproval(t *testing.T) {
- ctx := fakeCtx(context.Background(), testTenant)
- instance := modelWorkflow.PlatWorkflow{}
- err := g.DB(testTenant).Table("plat_workflow").Where("id = ?", 47).Struct(&instance)
- if err != nil {
- panic(err)
- }
- err = InvoiceApplyApproval(ctx, &instance, &message.MixMessage{
- ProcessType: "finish",
- // ProcessType: "terminate",
- // Result: "agree",
- Result: "refuse",
- })
- if err != nil {
- panic(err)
- }
- }
- func TestContractApplyApproval(t *testing.T) {
- ctx := fakeCtx(context.Background(), testTenant)
- instance := modelWorkflow.PlatWorkflow{}
- err := g.DB(testTenant).Table("plat_workflow").Where("id = ?", 85).Struct(&instance)
- if err != nil {
- panic(err)
- }
- err = ContractApplyApproval(ctx, &instance, &message.MixMessage{
- ProcessType: "finish",
- // ProcessType: "terminate",
- Result: "agree",
- // Result: "refuse",
- })
- if err != nil {
- panic(err)
- }
- }
- func TestDownloadDingtalk(t *testing.T) {
- // dingtalk:21042518430:97103341461
- // dingtalk:21042518430:97112761361
- res, err := dingtalk.Client.GetStorage().AddPermission(dingtalk.Client.Context.CorpId, "21042518430", "8xljy04PZiS9iPxp5PhDnUzQiEiE", "EDITOR", "USER")
- fmt.Println(res, err)
- resp, err := dingtalk.Client.GetStorage().QueryFileDownloadInfo("21042518430", "97112761361", "8xljy04PZiS9iPxp5PhDnUzQiEiE")
- // resp, err := dingtalk.Client.GetStorage().QueryFileDownloadInfo("21042518430", "97103341461", "fHJtftdpHZXwvsdOfg8skgiEiE")
- fmt.Println(resp, err)
- req, err := http.NewRequest("GET", resp.HeaderSignatureInfo.ResourceUrls[0], nil)
- if err != nil {
- panic(err)
- }
- for k, v := range resp.HeaderSignatureInfo.Headers {
- req.Header.Add(k, v)
- }
- fileresp, err := http.DefaultClient.Do(req)
- if err != nil {
- panic(err)
- }
- f, err := os.Create("test.jpeg")
- if err != nil {
- panic(err)
- }
- defer f.Close()
- _, err = io.Copy(f, fileresp.Body)
- if err != nil {
- panic(err)
- }
- }
|