sign_service.go 37KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384
  1. package service
  2. import (
  3. "XT_New/models"
  4. "XT_New/utils"
  5. "bytes"
  6. "crypto/hmac"
  7. "crypto/sha1"
  8. "encoding/base64"
  9. "encoding/json"
  10. "fmt"
  11. "github.com/astaxie/beego"
  12. "io/ioutil"
  13. "net/http"
  14. )
  15. func GetSignNameByPhone(phoneOne string) string {
  16. var url string
  17. url = "http://demo-open.itruscloud.com/apigate/smsService/sendingSms"
  18. var phone string
  19. phone = "13318464642"
  20. var content string
  21. content = "123456"
  22. var autograph string
  23. autograph = "【天威诚信】"
  24. maprequest := make(map[string]interface{})
  25. maprequest["phone"] = phone
  26. maprequest["content"] = content
  27. maprequest["autograph"] = autograph
  28. byterequest, _ := json.Marshal(maprequest)
  29. appId := beego.AppConfig.String("sign_appid")
  30. serviceKye := beego.AppConfig.String("serviceKye")
  31. serviceCode := beego.AppConfig.String("serviceCode")
  32. reader := bytes.NewReader(byterequest)
  33. signatureStr, _ := generateHMACSHA1SignatureOne(maprequest, serviceKye, serviceCode)
  34. fmt.Println(signatureStr)
  35. request, err := http.NewRequest("POST", url, reader)
  36. if err != nil {
  37. fmt.Println(err.Error())
  38. }
  39. fmt.Println("请求参数", request)
  40. fmt.Println("Content-Signature", signatureStr)
  41. fmt.Println("appID", appId)
  42. fmt.Println("serviceCode", serviceCode)
  43. request.Header.Set("appId", appId)
  44. request.Header.Set("serviceCode", serviceCode)
  45. request.Header.Set("Content-Type", "application/json;charset=UTF-8")
  46. request.Header.Set("Content-Signature", signatureStr)
  47. client := http.Client{}
  48. resp, err := client.Do(request)
  49. if err != nil {
  50. fmt.Println(err.Error())
  51. }
  52. respBytes, err := ioutil.ReadAll(resp.Body)
  53. if err != nil {
  54. fmt.Println(err.Error())
  55. }
  56. str := string(respBytes)
  57. fmt.Println(str)
  58. return str
  59. }
  60. func generateHMACSHA1SignatureOne(data interface{}, key, serviceCode string) (string, error) {
  61. // 将数据转换为 JSON 格式的字节数组
  62. jsonData, err := json.Marshal(data)
  63. if err != nil {
  64. return "", err
  65. }
  66. // 将密钥和 serviceCode 进行拼接
  67. signingKey := key + serviceCode
  68. // 将签名密钥转换为字节数组
  69. keyBytes := []byte(signingKey)
  70. // 创建一个新的 HMAC-SHA1 实例
  71. h := hmac.New(sha1.New, keyBytes)
  72. // 将 JSON 数据添加到 HMAC 实例中
  73. h.Write(jsonData)
  74. signature := base64.StdEncoding.EncodeToString(h.Sum(nil))
  75. // 返回带有前缀的签名字符串
  76. return "HMAC-SHA1 " + signature, nil
  77. }
  78. func CreateUserName(phone string, disPlayName string) (string, string) {
  79. var url string
  80. url = "http://demo.itruscloud.com/apigate/contractpaasapi/user/createUserRealName"
  81. var phoneOne string
  82. phoneOne = "13318464642"
  83. var disPlayNameOne string
  84. disPlayNameOne = "马云的朋友"
  85. var authentication string
  86. //测试环境用true
  87. authentication = "true"
  88. maprequest := make(map[string]interface{})
  89. twAuthReq := make(map[string]interface{})
  90. apiAuthReq := make(map[string]interface{})
  91. customerReq := make(map[string]interface{})
  92. customerReq["idCardType"] = "0"
  93. customerReq["idCardNum"] = "430526199408156511"
  94. apiAuthReq["realNameType"] = 3
  95. apiAuthReq["idCardType"] = "0"
  96. apiAuthReq["idCardNum"] = "430526199408156511"
  97. apiAuthReq["bankCard"] = "6225551675364804"
  98. //验证码流水号
  99. apiAuthReq["codeNumber"] = "msg202307071510269187701"
  100. //验证码
  101. apiAuthReq["verifyCode"] = "123456"
  102. twAuthReq["oneLineAuth"] = "false"
  103. twAuthReq["apiAuthReq"] = apiAuthReq
  104. maprequest["phone"] = phoneOne
  105. maprequest["displayName"] = disPlayNameOne
  106. maprequest["authentication"] = authentication
  107. maprequest["twAuthReq"] = twAuthReq
  108. maprequest["customerAuthReq"] = customerReq
  109. byterequest, _ := json.Marshal(maprequest)
  110. appId := beego.AppConfig.String("sign_appid")
  111. serviceKye := beego.AppConfig.String("serviceKye")
  112. serviceCode := beego.AppConfig.String("serviceCode")
  113. reader := bytes.NewReader(byterequest)
  114. signatureStr, _ := generateHMACSHA1SignatureOne(maprequest, serviceKye, serviceCode)
  115. fmt.Println(signatureStr)
  116. request, err := http.NewRequest("POST", url, reader)
  117. if err != nil {
  118. fmt.Println(err.Error())
  119. }
  120. fmt.Println("请求参数", request)
  121. fmt.Println("Content-Signature", signatureStr)
  122. fmt.Println("appID", appId)
  123. fmt.Println("serviceCode", serviceCode)
  124. request.Header.Set("appId", appId)
  125. request.Header.Set("serviceCode", serviceCode)
  126. request.Header.Set("Content-Type", "application/json;charset=UTF-8")
  127. request.Header.Set("Content-Signature", signatureStr)
  128. client := http.Client{}
  129. resp, err := client.Do(request)
  130. if err != nil {
  131. fmt.Println(err.Error())
  132. }
  133. respBytes, err := ioutil.ReadAll(resp.Body)
  134. if err != nil {
  135. fmt.Println(err.Error())
  136. }
  137. str := string(respBytes)
  138. var respJSON map[string]interface{}
  139. if err := json.Unmarshal([]byte(string(respBytes)), &respJSON); err != nil {
  140. utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  141. }
  142. var UserId string
  143. UserId = respJSON["data"].(map[string]interface{})["userId"].(string)
  144. fmt.Println("str", UserId)
  145. return str, UserId
  146. }
  147. func CreatePersionSeal(user_id string, person_seal_type int64, person_seal_name string, person_seal_base string, color int64, alpha int64, width int64, height int64, border int64, font_type int64) (string, string) {
  148. maprequest := make(map[string]interface{})
  149. maprequest["userId"] = "PBRLMBFVIRR3BV8JGGOX9C7N"
  150. maprequest["personSealType"] = 1
  151. maprequest["personSealName"] = "小朋友的印章"
  152. var url string
  153. url = "http://demo.itruscloud.com/apigate/contractpaasapi/user/createPersonSeal"
  154. appId := beego.AppConfig.String("sign_appid")
  155. serviceKye := beego.AppConfig.String("serviceKye")
  156. serviceCode := beego.AppConfig.String("serviceCode")
  157. byterequest, _ := json.Marshal(maprequest)
  158. reader := bytes.NewReader(byterequest)
  159. signatureStr, _ := generateHMACSHA1SignatureOne(maprequest, serviceKye, serviceCode)
  160. fmt.Println(signatureStr)
  161. request, err := http.NewRequest("POST", url, reader)
  162. if err != nil {
  163. fmt.Println(err.Error())
  164. }
  165. request.Header.Set("appId", appId)
  166. request.Header.Set("serviceCode", serviceCode)
  167. request.Header.Set("Content-Type", "application/json;charset=UTF-8")
  168. request.Header.Set("Content-Signature", signatureStr)
  169. client := http.Client{}
  170. resp, err := client.Do(request)
  171. if err != nil {
  172. fmt.Println(err.Error())
  173. }
  174. respBytes, err := ioutil.ReadAll(resp.Body)
  175. if err != nil {
  176. fmt.Println(err.Error())
  177. }
  178. str := string(respBytes)
  179. var respJSON map[string]interface{}
  180. if err := json.Unmarshal([]byte(string(respBytes)), &respJSON); err != nil {
  181. utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  182. }
  183. var personSealId string
  184. personSealId = respJSON["data"].(map[string]interface{})["personSealId"].(string)
  185. fmt.Println("str", personSealId)
  186. return str, personSealId
  187. }
  188. func CreateUploadPact(contractcode string, contractname string, signcount int64, docname string, contractbase string, creator string, enterpriseid string, signvalidays int64, sysncurl string, asyncurl string) string {
  189. var url string
  190. url = "http://demo.itruscloud.com/apigate/contractpaasapi/contract/createByFile"
  191. appId := beego.AppConfig.String("sign_appid")
  192. serviceKye := beego.AppConfig.String("serviceKye")
  193. serviceCode := beego.AppConfig.String("serviceCode")
  194. maprequest := make(map[string]interface{})
  195. maprequest["contractName"] = "电脑购买交易合同"
  196. maprequest["signCount"] = 10
  197. maprequest["docName"] = "日本员工保密协议"
  198. file := "C:/Users/28169/Desktop/2.pdf"
  199. fileBytes, err := ioutil.ReadFile(file) // 读取file
  200. contractBase64 := base64.StdEncoding.EncodeToString(fileBytes) // 加密成base64字符串
  201. maprequest["contractBase64"] = contractBase64
  202. //添加企业成员 里面的USERID
  203. maprequest["creator"] = "PBRLMBFVIRR3BV8JGGOX9C7N"
  204. maprequest["enterpriseId"] = "BRWAABXW3RUD4PGCYEQWRRK8"
  205. maprequest["signValidDays"] = 90
  206. maprequest["sysnUrl"] = "https://kuyi.shengws.com/chenxuemin1.png"
  207. maprequest["asyncUrl"] = "https://kuyi.shengws.com/chenxuemin1.png"
  208. byterequest, _ := json.Marshal(maprequest)
  209. reader := bytes.NewReader(byterequest)
  210. signatureStr, _ := generateHMACSHA1SignatureOne(maprequest, serviceKye, serviceCode)
  211. request, err := http.NewRequest("POST", url, reader)
  212. if err != nil {
  213. fmt.Println(err.Error())
  214. }
  215. request.Header.Set("appId", appId)
  216. request.Header.Set("serviceCode", serviceCode)
  217. request.Header.Set("Content-Type", "application/json;charset=UTF-8")
  218. request.Header.Set("Content-Signature", signatureStr)
  219. client := http.Client{}
  220. resp, err := client.Do(request)
  221. if err != nil {
  222. fmt.Println(err.Error())
  223. }
  224. respBytes, err := ioutil.ReadAll(resp.Body)
  225. if err != nil {
  226. fmt.Println(err.Error())
  227. }
  228. str := string(respBytes)
  229. return str
  230. }
  231. func CreateEnterPriseRealName(enterprisename string) string {
  232. var url string
  233. url = "http://demo.itruscloud.com/apigate/contractpaasapi/enterprise/createEnterpriseRealName"
  234. appId := beego.AppConfig.String("sign_appid")
  235. serviceKye := beego.AppConfig.String("serviceKye")
  236. serviceCode := beego.AppConfig.String("serviceCode")
  237. maprequest := make(map[string]interface{})
  238. customerReq := make(map[string]interface{})
  239. customerReq["idCardType"] = "N"
  240. customerReq["idCardNum"] = "430526199408156511"
  241. maprequest["enterpriseName"] = "深圳德马西科技有限公司"
  242. maprequest["authentication"] = true
  243. maprequest["customerAuthReq"] = customerReq
  244. fmt.Println("maprequest", maprequest)
  245. byterequest, _ := json.Marshal(maprequest)
  246. reader := bytes.NewReader(byterequest)
  247. signatureStr, _ := generateHMACSHA1SignatureOne(maprequest, serviceKye, serviceCode)
  248. request, err := http.NewRequest("POST", url, reader)
  249. if err != nil {
  250. fmt.Println(err.Error())
  251. }
  252. request.Header.Set("appId", appId)
  253. request.Header.Set("serviceCode", serviceCode)
  254. request.Header.Set("Content-Type", "application/json;charset=UTF-8")
  255. request.Header.Set("Content-Signature", signatureStr)
  256. client := http.Client{}
  257. resp, err := client.Do(request)
  258. if err != nil {
  259. fmt.Println(err.Error())
  260. }
  261. respBytes, err := ioutil.ReadAll(resp.Body)
  262. if err != nil {
  263. fmt.Println(err.Error())
  264. }
  265. str := string(respBytes)
  266. return str
  267. }
  268. func CreateUserId(userId string, displayName string) string {
  269. var url string
  270. url = "http://demo.itruscloud.com/apigate/contractpaasapi/user/joinEnterprise"
  271. appId := beego.AppConfig.String("sign_appid")
  272. serviceKye := beego.AppConfig.String("serviceKye")
  273. serviceCode := beego.AppConfig.String("serviceCode")
  274. maprequest := make(map[string]interface{})
  275. maprequest["enterpriseId"] = "BRWAABXW3RUD4PGCYEQWRRK8"
  276. maprequest["userId"] = "PBRLMBFVIRR3BV8JGGOX9C7N"
  277. byterequest, _ := json.Marshal(maprequest)
  278. reader := bytes.NewReader(byterequest)
  279. signatureStr, _ := generateHMACSHA1SignatureOne(maprequest, serviceKye, serviceCode)
  280. request, err := http.NewRequest("POST", url, reader)
  281. if err != nil {
  282. fmt.Println(err.Error())
  283. }
  284. request.Header.Set("appId", appId)
  285. request.Header.Set("serviceCode", serviceCode)
  286. request.Header.Set("Content-Type", "application/json;charset=UTF-8")
  287. request.Header.Set("Content-Signature", signatureStr)
  288. client := http.Client{}
  289. resp, err := client.Do(request)
  290. if err != nil {
  291. fmt.Println(err.Error())
  292. }
  293. respBytes, err := ioutil.ReadAll(resp.Body)
  294. if err != nil {
  295. fmt.Println(err.Error())
  296. }
  297. str := string(respBytes)
  298. return str
  299. }
  300. //type ResultTwo struct {
  301. // ErrMsg string `json:"err_msg"`
  302. // InfRefmsgid string `json:"inf_refmsgid"`
  303. // Infcode int64 `json:"infcode"`
  304. // Output struct {
  305. // Baseinfo struct {
  306. // Age float64 `json:"age"`
  307. // Brdy string `json:"brdy"`
  308. // Certno string `json:"certno"`
  309. // Gend string `json:"gend"`
  310. // Naty string `json:"naty"`
  311. // PsnCertType string `json:"psn_cert_type"`
  312. // PsnName string `json:"psn_name"`
  313. // PsnNo string `json:"psn_no"`
  314. // } `json:"baseinfo"`
  315. // Idetinfo []interface{} `json:"idetinfo"`
  316. // Iinfo []struct {
  317. // Balc float64 `json:"balc"`
  318. // CvlservFlag string `json:"cvlserv_flag"`
  319. // EmpName string `json:"emp_name"`
  320. // InsuplcAdmdvs string `json:"insuplc_admdvs"`
  321. // Insutype string `json:"insutype"`
  322. // PausInsuDansuplcAdmdvs string `json:"paus_insu_dansuplc_admdvs"`
  323. // PausInsuDate string `json:"paus_insu_date"`
  324. // PsnInsuDate string `json:"psn_insu_date"`
  325. // PsnInsuStas string `json:"psn_insu_stas"`
  326. // PsnType string `json:"psn_type"`
  327. // } `json:"insuinfo"`
  328. // } `json:"output"`
  329. // RefmsgTime string `json:"refmsg_time"`
  330. // RespondTime string `json:"respond_time"`
  331. // Signtype interface{} `json:"signtype"`
  332. // WarnInfo interface{} `json:"warn_info"`
  333. //}
  334. func AddContractSignatory(contractId string, signers string, contract models.NewContract) string {
  335. var url string
  336. url = "http://demo.itruscloud.com/apigate/contractpaasapi/contract/addSignerByFile"
  337. appId := beego.AppConfig.String("sign_appid")
  338. serviceKye := beego.AppConfig.String("serviceKye")
  339. serviceCode := beego.AppConfig.String("serviceCode")
  340. signFiles := make(map[string]interface{})
  341. //创建合同返回
  342. signFiles["docId"] = "158807311102510183"
  343. inputDataArr := make([]map[string]interface{}, 0)
  344. for _, item := range signFiles {
  345. fmt.Println("item", item)
  346. xySignControls := make(map[string]interface{})
  347. xySignControls["key"] = "1"
  348. xySignControls["type"] = "autograph"
  349. xySignControls["pageNum"] = 1
  350. xySignControls["positionX"] = "120F"
  351. xySignControls["positionY"] = "120F"
  352. inputDataArr = append(inputDataArr, xySignControls)
  353. }
  354. inputDataArrTwo := make([]map[string]interface{}, 0)
  355. for _, item := range signFiles {
  356. fmt.Println(item)
  357. keywordSignControls := make(map[string]interface{})
  358. keywordSignControls["key"] = "2"
  359. keywordSignControls["type"] = "date"
  360. keywordSignControls["pageNum"] = 1
  361. keywordSignControls["keyword"] = "王志文"
  362. keywordSignControls["offsetX"] = "100F"
  363. keywordSignControls["offsetY"] = "100F"
  364. inputDataArrTwo = append(inputDataArrTwo, keywordSignControls)
  365. }
  366. signFiles["xySignControls"] = inputDataArr
  367. signFiles["keywordSignControls"] = inputDataArrTwo
  368. inputDataArrThree := make([]map[string]interface{}, 0)
  369. inputDataArrThree = append(inputDataArrThree, signFiles)
  370. signersFiles := make(map[string]interface{})
  371. signersFiles["userId"] = "PBRLMBFVIRR3BV8JGGOX9C7N"
  372. signersFiles["signerType"] = "1"
  373. signersFiles["enterpriseId"] = "BRWAABXW3RUD4PGCYEQWRRK8"
  374. signersFiles["sequence"] = "8"
  375. signersFiles["sendMsg"] = false
  376. signersFiles["setting"] = true
  377. signersFiles["signFiles"] = inputDataArrThree
  378. inputDataArrFour := make([]map[string]interface{}, 0)
  379. inputDataArrFour = append(inputDataArrFour, signersFiles)
  380. maprequest := make(map[string]interface{})
  381. maprequest["contractId"] = "158807311102510182"
  382. maprequest["signers"] = inputDataArrFour
  383. byterequest, _ := json.Marshal(maprequest)
  384. reader := bytes.NewReader(byterequest)
  385. signatureStr, _ := generateHMACSHA1SignatureOne(maprequest, serviceKye, serviceCode)
  386. request, err := http.NewRequest("POST", url, reader)
  387. if err != nil {
  388. fmt.Println(err.Error())
  389. }
  390. request.Header.Set("appId", appId)
  391. request.Header.Set("serviceCode", serviceCode)
  392. request.Header.Set("Content-Type", "application/json;charset=UTF-8")
  393. request.Header.Set("Content-Signature", signatureStr)
  394. client := http.Client{}
  395. resp, err := client.Do(request)
  396. if err != nil {
  397. fmt.Println(err.Error())
  398. }
  399. respBytes, err := ioutil.ReadAll(resp.Body)
  400. if err != nil {
  401. fmt.Println(err.Error())
  402. }
  403. str := string(respBytes)
  404. return str
  405. }
  406. func CreateBackStageSign(contractId string, signers string) string {
  407. var url string
  408. url = "http://demo.itruscloud.com/apigate/contractpaasapi/contract/signByFile"
  409. appId := beego.AppConfig.String("sign_appid")
  410. serviceKye := beego.AppConfig.String("serviceKye")
  411. serviceCode := beego.AppConfig.String("serviceCode")
  412. sealTimestampFiles := make(map[string]interface{})
  413. inputDataArr := make([]map[string]interface{}, 0)
  414. signFiles := make(map[string]interface{})
  415. keywordSignControls := make(map[string]interface{})
  416. keywordSignControls["controlsKey"] = "2"
  417. keywordSignControls["pattern"] = 1
  418. keywordSignControls["color"] = "#FF0000"
  419. inputDataArr = append(inputDataArr, keywordSignControls)
  420. sealTimestampFiles["allAddTimestamp"] = false
  421. sealTimestampFiles["someTimestampStyle"] = inputDataArr
  422. inputDataArrOne := make([]map[string]interface{}, 0)
  423. keySignControls := make(map[string]interface{})
  424. keySignControls["controlsKey"] = "1"
  425. keySignControls["fontType"] = 1
  426. keySignControls["fontSize"] = 8.5
  427. keySignControls["fontColor"] = "#56600F"
  428. keySignControls["alignment"] = 1
  429. inputDataArrOne = append(inputDataArrOne, keySignControls)
  430. signFiles["fonts"] = inputDataArrOne
  431. signFiles["showTimestamp"] = false
  432. signFiles["sealTimestamp"] = sealTimestampFiles
  433. signControl := make(map[string]interface{})
  434. signControl["1"] = "{sealId:157474548357267755}"
  435. signControl["2"] = "姓名"
  436. fmt.Println("signContorlwqowowo", signControl)
  437. signFiles["signControl"] = signControl
  438. signFiles["docId"] = "158807311102510183"
  439. inputDataArrThree := make([]map[string]interface{}, 0)
  440. inputDataArrThree = append(inputDataArrThree, signFiles)
  441. signer := make(map[string]interface{})
  442. //添加合同签署人接口返回
  443. signer["signerId"] = "158807462500107405"
  444. signer["isUserWishes"] = true
  445. signer["userWishesWay"] = 1
  446. signer["codeNumber"] = "msg202309081937527315153"
  447. signer["verifyCode"] = "252234"
  448. signer["signFiles"] = inputDataArrThree
  449. maprequest := make(map[string]interface{})
  450. maprequest["contractId"] = "158807311102510182"
  451. maprequest["signer"] = signer
  452. byterequest, _ := json.Marshal(maprequest)
  453. reader := bytes.NewReader(byterequest)
  454. signatureStr, _ := generateHMACSHA1SignatureOne(maprequest, serviceKye, serviceCode)
  455. request, err := http.NewRequest("POST", url, reader)
  456. if err != nil {
  457. fmt.Println(err.Error())
  458. }
  459. request.Header.Set("appId", appId)
  460. request.Header.Set("serviceCode", serviceCode)
  461. request.Header.Set("Content-Type", "application/json;charset=UTF-8")
  462. request.Header.Set("Content-Signature", signatureStr)
  463. client := http.Client{}
  464. resp, err := client.Do(request)
  465. if err != nil {
  466. fmt.Println(err.Error())
  467. }
  468. respBytes, err := ioutil.ReadAll(resp.Body)
  469. if err != nil {
  470. fmt.Println(err.Error())
  471. }
  472. str := string(respBytes)
  473. return str
  474. }
  475. func GetVerificationCode() string {
  476. var url string
  477. url = "http://demo.itruscloud.com/apigate/contractpaasapi/contract/sendSmsCode"
  478. appId := beego.AppConfig.String("sign_appid")
  479. serviceKye := beego.AppConfig.String("serviceKye")
  480. serviceCode := beego.AppConfig.String("serviceCode")
  481. maprequest := make(map[string]interface{})
  482. maprequest["contractId"] = "158807311102510182"
  483. maprequest["userId"] = "PBRLMBFVIRR3BV8JGGOX9C7N"
  484. byterequest, _ := json.Marshal(maprequest)
  485. reader := bytes.NewReader(byterequest)
  486. signatureStr, _ := generateHMACSHA1SignatureOne(maprequest, serviceKye, serviceCode)
  487. request, err := http.NewRequest("POST", url, reader)
  488. if err != nil {
  489. fmt.Println(err.Error())
  490. }
  491. request.Header.Set("appId", appId)
  492. request.Header.Set("serviceCode", serviceCode)
  493. request.Header.Set("Content-Type", "application/json;charset=UTF-8")
  494. request.Header.Set("Content-Signature", signatureStr)
  495. client := http.Client{}
  496. resp, err := client.Do(request)
  497. if err != nil {
  498. fmt.Println(err.Error())
  499. }
  500. respBytes, err := ioutil.ReadAll(resp.Body)
  501. if err != nil {
  502. fmt.Println(err.Error())
  503. }
  504. str := string(respBytes)
  505. return str
  506. }
  507. func CreateEnterprise() string {
  508. var url string
  509. url = "http://demo.itruscloud.com/apigate/contractpaasapi/contract/sendSmsCode"
  510. appId := beego.AppConfig.String("sign_appid")
  511. serviceKye := beego.AppConfig.String("serviceKye")
  512. serviceCode := beego.AppConfig.String("serviceCode")
  513. maprequest := make(map[string]interface{})
  514. maprequest["contractId"] = "157413765980094742"
  515. maprequest["userId"] = "PBRLMBFVIRR3BV8JGGOX9C7N"
  516. maprequest["sealType"] = 1
  517. maprequest["sealName"] = "测试用章"
  518. maprequest["sealBase64"] = ""
  519. maprequest["color"] = 1
  520. maprequest["width"] = 40
  521. maprequest["authUserId"] = ""
  522. maprequest["sealCreateType"] = false
  523. byterequest, _ := json.Marshal(maprequest)
  524. reader := bytes.NewReader(byterequest)
  525. signatureStr, _ := generateHMACSHA1SignatureOne(maprequest, serviceKye, serviceCode)
  526. request, err := http.NewRequest("POST", url, reader)
  527. if err != nil {
  528. fmt.Println(err.Error())
  529. }
  530. request.Header.Set("appId", appId)
  531. request.Header.Set("serviceCode", serviceCode)
  532. request.Header.Set("Content-Type", "application/json;charset=UTF-8")
  533. request.Header.Set("Content-Signature", signatureStr)
  534. client := http.Client{}
  535. resp, err := client.Do(request)
  536. if err != nil {
  537. fmt.Println(err.Error())
  538. }
  539. respBytes, err := ioutil.ReadAll(resp.Body)
  540. if err != nil {
  541. fmt.Println(err.Error())
  542. }
  543. str := string(respBytes)
  544. return str
  545. }
  546. func GetTestThrityMent(org_id int64) (base []*models.XtBaseDrug, err error) {
  547. err = XTReadDB().Where("org_id = ? and status=1", org_id).Find(&base).Error
  548. return base, err
  549. }
  550. func UpdateDrugWarehouseInfoByDrugId(drug_id int64, min_price float64) error {
  551. err := XTWriteDB().Model(&models.XtDrugWarehouseInfo{}).Where("drug_id = ? and (stock_max_number>0 or stock_min_number>0) and status= 1 and is_check=1 and org_id =10375", drug_id).Updates(map[string]interface{}{"retail_price": min_price}).Error
  552. return err
  553. }
  554. func GetEnterPriseByUserOrgId(user_org_id int64) (models.XtDeviceEnterprise, error) {
  555. enterprise := models.XtDeviceEnterprise{}
  556. err := XTReadDB().Where("user_org_id = ? and status =1", user_org_id).Find(&enterprise).Error
  557. return enterprise, err
  558. }
  559. func CreateEnterPrise(enterprise models.XtDeviceEnterprise) error {
  560. err := XTWriteDB().Create(&enterprise).Error
  561. return err
  562. }
  563. func SaveEnerPrise(enterprise models.XtDeviceEnterprise) error {
  564. err := XTWriteDB().Save(&enterprise).Error
  565. return err
  566. }
  567. func CreateNewEnterPriseRealName(enterprise models.XtDeviceEnterprise) (string, string) {
  568. var url string
  569. url = "http://demo.itruscloud.com/apigate/contractpaasapi/enterprise/createEnterpriseRealName"
  570. appId := beego.AppConfig.String("sign_appid")
  571. serviceKye := beego.AppConfig.String("serviceKye")
  572. serviceCode := beego.AppConfig.String("serviceCode")
  573. maprequest := make(map[string]interface{})
  574. customerReq := make(map[string]interface{})
  575. customerReq["idCardType"] = "N"
  576. customerReq["idCardNum"] = "430526199408156511"
  577. maprequest["enterpriseName"] = enterprise.EnterpriseName
  578. maprequest["authentication"] = true
  579. maprequest["customerAuthReq"] = customerReq
  580. fmt.Println("maprequest", maprequest)
  581. byterequest, _ := json.Marshal(maprequest)
  582. reader := bytes.NewReader(byterequest)
  583. signatureStr, _ := generateHMACSHA1SignatureOne(maprequest, serviceKye, serviceCode)
  584. request, err := http.NewRequest("POST", url, reader)
  585. if err != nil {
  586. fmt.Println(err.Error())
  587. }
  588. request.Header.Set("appId", appId)
  589. request.Header.Set("serviceCode", serviceCode)
  590. request.Header.Set("Content-Type", "application/json;charset=UTF-8")
  591. request.Header.Set("Content-Signature", signatureStr)
  592. client := http.Client{}
  593. resp, err := client.Do(request)
  594. if err != nil {
  595. fmt.Println(err.Error())
  596. }
  597. respBytes, err := ioutil.ReadAll(resp.Body)
  598. if err != nil {
  599. fmt.Println(err.Error())
  600. }
  601. str := string(respBytes)
  602. var respJSON map[string]interface{}
  603. if err := json.Unmarshal([]byte(string(respBytes)), &respJSON); err != nil {
  604. utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  605. }
  606. var enterpriseId string
  607. enterpriseId = respJSON["data"].(map[string]interface{})["enterpriseId"].(string)
  608. fmt.Println("enterpriseId", enterpriseId)
  609. return str, enterpriseId
  610. }
  611. func GetNewSignNameByPhone(phone string) (string, string) {
  612. var url string
  613. url = "http://demo-open.itruscloud.com/apigate/smsService/sendingSms"
  614. var content string
  615. content = "123456"
  616. var autograph string
  617. autograph = "【天威诚信】"
  618. maprequest := make(map[string]interface{})
  619. maprequest["phone"] = phone
  620. maprequest["content"] = content
  621. maprequest["autograph"] = autograph
  622. byterequest, _ := json.Marshal(maprequest)
  623. appId := beego.AppConfig.String("sign_appid")
  624. serviceKye := beego.AppConfig.String("serviceKye")
  625. serviceCode := beego.AppConfig.String("serviceCode")
  626. reader := bytes.NewReader(byterequest)
  627. signatureStr, _ := generateHMACSHA1SignatureOne(maprequest, serviceKye, serviceCode)
  628. fmt.Println(signatureStr)
  629. request, err := http.NewRequest("POST", url, reader)
  630. if err != nil {
  631. fmt.Println(err.Error())
  632. }
  633. request.Header.Set("appId", appId)
  634. request.Header.Set("serviceCode", serviceCode)
  635. request.Header.Set("Content-Type", "application/json;charset=UTF-8")
  636. request.Header.Set("Content-Signature", signatureStr)
  637. client := http.Client{}
  638. resp, err := client.Do(request)
  639. if err != nil {
  640. fmt.Println(err.Error())
  641. }
  642. respBytes, err := ioutil.ReadAll(resp.Body)
  643. if err != nil {
  644. fmt.Println(err.Error())
  645. }
  646. str := string(respBytes)
  647. var respJSON map[string]interface{}
  648. if err := json.Unmarshal([]byte(string(respBytes)), &respJSON); err != nil {
  649. utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  650. }
  651. var orderNumber string
  652. orderNumber = respJSON["orderNumber"].(string)
  653. fmt.Println("orderNumberWOWOWOWOWO", orderNumber)
  654. return str, orderNumber
  655. }
  656. func SavePersonEnterPrise(enterprise models.XtDevicePersonEnterprise) error {
  657. err := XTWriteDB().Save(&enterprise).Error
  658. return err
  659. }
  660. func GetLastPersonEnterPrise(admin_user_id int64, orgId int64) (models.XtDevicePersonEnterprise, error) {
  661. enterprise := models.XtDevicePersonEnterprise{}
  662. err := XTReadDB().Where("admin_user_id = ? and user_org_id = ? and status = 1", admin_user_id, orgId).Find(&enterprise).Error
  663. return enterprise, err
  664. }
  665. func CreateNewUserName(phone string, disPlayName string, code string, orderNumber string, id_card_number string) (string, string) {
  666. var url string
  667. url = "http://demo.itruscloud.com/apigate/contractpaasapi/user/createUserRealName"
  668. var authentication string
  669. //测试环境用true
  670. authentication = "true"
  671. maprequest := make(map[string]interface{})
  672. twAuthReq := make(map[string]interface{})
  673. apiAuthReq := make(map[string]interface{})
  674. customerReq := make(map[string]interface{})
  675. fmt.Println("身份证id_card_number", id_card_number)
  676. customerReq["idCardType"] = "0"
  677. customerReq["idCardNum"] = id_card_number
  678. apiAuthReq["realNameType"] = 3
  679. apiAuthReq["idCardType"] = "0"
  680. apiAuthReq["idCardNum"] = id_card_number
  681. apiAuthReq["bankCard"] = "6225551675364804"
  682. //验证码流水号
  683. apiAuthReq["codeNumber"] = orderNumber
  684. //验证码
  685. apiAuthReq["verifyCode"] = code
  686. twAuthReq["oneLineAuth"] = "false"
  687. twAuthReq["apiAuthReq"] = apiAuthReq
  688. maprequest["phone"] = phone
  689. maprequest["displayName"] = disPlayName
  690. maprequest["authentication"] = authentication
  691. maprequest["twAuthReq"] = twAuthReq
  692. maprequest["customerAuthReq"] = customerReq
  693. byterequest, _ := json.Marshal(maprequest)
  694. appId := beego.AppConfig.String("sign_appid")
  695. serviceKye := beego.AppConfig.String("serviceKye")
  696. serviceCode := beego.AppConfig.String("serviceCode")
  697. reader := bytes.NewReader(byterequest)
  698. signatureStr, _ := generateHMACSHA1SignatureOne(maprequest, serviceKye, serviceCode)
  699. fmt.Println(signatureStr)
  700. request, err := http.NewRequest("POST", url, reader)
  701. if err != nil {
  702. fmt.Println(err.Error())
  703. }
  704. fmt.Println("请求参数", request)
  705. fmt.Println("Content-Signature", signatureStr)
  706. fmt.Println("appID", appId)
  707. fmt.Println("serviceCode", serviceCode)
  708. request.Header.Set("appId", appId)
  709. request.Header.Set("serviceCode", serviceCode)
  710. request.Header.Set("Content-Type", "application/json;charset=UTF-8")
  711. request.Header.Set("Content-Signature", signatureStr)
  712. client := http.Client{}
  713. resp, err := client.Do(request)
  714. if err != nil {
  715. fmt.Println(err.Error())
  716. }
  717. respBytes, err := ioutil.ReadAll(resp.Body)
  718. if err != nil {
  719. fmt.Println(err.Error())
  720. }
  721. str := string(respBytes)
  722. var respJSON map[string]interface{}
  723. if err := json.Unmarshal([]byte(string(respBytes)), &respJSON); err != nil {
  724. utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  725. }
  726. var UserId string
  727. UserId = respJSON["data"].(map[string]interface{})["userId"].(string)
  728. fmt.Println("str", UserId)
  729. return str, UserId
  730. }
  731. func CreateNewPersionSeal(userId string) (string, string) {
  732. maprequest := make(map[string]interface{})
  733. maprequest["userId"] = userId
  734. maprequest["personSealType"] = 1
  735. maprequest["personSealName"] = "小马印章"
  736. var url string
  737. url = "http://demo.itruscloud.com/apigate/contractpaasapi/user/createPersonSeal"
  738. appId := beego.AppConfig.String("sign_appid")
  739. serviceKye := beego.AppConfig.String("serviceKye")
  740. serviceCode := beego.AppConfig.String("serviceCode")
  741. byterequest, _ := json.Marshal(maprequest)
  742. reader := bytes.NewReader(byterequest)
  743. signatureStr, _ := generateHMACSHA1SignatureOne(maprequest, serviceKye, serviceCode)
  744. fmt.Println(signatureStr)
  745. request, err := http.NewRequest("POST", url, reader)
  746. if err != nil {
  747. fmt.Println(err.Error())
  748. }
  749. request.Header.Set("appId", appId)
  750. request.Header.Set("serviceCode", serviceCode)
  751. request.Header.Set("Content-Type", "application/json;charset=UTF-8")
  752. request.Header.Set("Content-Signature", signatureStr)
  753. client := http.Client{}
  754. resp, err := client.Do(request)
  755. if err != nil {
  756. fmt.Println(err.Error())
  757. }
  758. respBytes, err := ioutil.ReadAll(resp.Body)
  759. if err != nil {
  760. fmt.Println(err.Error())
  761. }
  762. str := string(respBytes)
  763. var respJSON map[string]interface{}
  764. if err := json.Unmarshal([]byte(string(respBytes)), &respJSON); err != nil {
  765. utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  766. }
  767. var personSealId string
  768. personSealId = respJSON["data"].(map[string]interface{})["personSealId"].(string)
  769. fmt.Println("str", personSealId)
  770. return str, personSealId
  771. }
  772. func UpdatePerseEnterPriseById(id int64, personSealId string) error {
  773. err := XTWriteDB().Model(models.XtDevicePersonEnterprise{}).Where("id= ? and status =1", id).Updates(map[string]interface{}{"person_seal_id": personSealId}).Error
  774. return err
  775. }
  776. func CreateNewEnterPrise(enterpriseId string, userId string) (string, string) {
  777. var url string
  778. url = "http://demo.itruscloud.com/apigate/contractpaasapi/enterprise/createSeal"
  779. appId := beego.AppConfig.String("sign_appid")
  780. serviceKye := beego.AppConfig.String("serviceKye")
  781. serviceCode := beego.AppConfig.String("serviceCode")
  782. fmt.Println("enterpriseId", enterpriseId)
  783. fmt.Println("userId", userId)
  784. maprequest := make(map[string]interface{})
  785. maprequest["enterpriseId"] = enterpriseId
  786. maprequest["userId"] = userId
  787. maprequest["sealType"] = 1
  788. maprequest["sealName"] = "测试用章"
  789. fmt.Println("request23222222222222222", maprequest)
  790. byterequest, _ := json.Marshal(maprequest)
  791. reader := bytes.NewReader(byterequest)
  792. signatureStr, _ := generateHMACSHA1SignatureOne(maprequest, serviceKye, serviceCode)
  793. request, err := http.NewRequest("POST", url, reader)
  794. fmt.Println("request23222222222222222", request)
  795. if err != nil {
  796. fmt.Println(err.Error())
  797. }
  798. request.Header.Set("appId", appId)
  799. request.Header.Set("serviceCode", serviceCode)
  800. request.Header.Set("Content-Type", "application/json;charset=UTF-8")
  801. request.Header.Set("Content-Signature", signatureStr)
  802. client := http.Client{}
  803. resp, err := client.Do(request)
  804. if err != nil {
  805. fmt.Println(err.Error())
  806. }
  807. respBytes, err := ioutil.ReadAll(resp.Body)
  808. if err != nil {
  809. fmt.Println(err.Error())
  810. }
  811. str := string(respBytes)
  812. fmt.Println("strwowowowowo", str)
  813. var respJSON map[string]interface{}
  814. if err := json.Unmarshal([]byte(string(respBytes)), &respJSON); err != nil {
  815. utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  816. }
  817. var sealId string
  818. sealId = respJSON["data"].(map[string]interface{})["sealId"].(string)
  819. fmt.Println("sealId", sealId)
  820. return str, sealId
  821. }
  822. func UpdatePersonEnterPrise(id int64, sealId string) error {
  823. err := XTWriteDB().Model(models.XtDevicePersonEnterprise{}).Where("id = ? and status =1", id).Updates(map[string]interface{}{"seal_id": sealId}).Error
  824. return err
  825. }
  826. func GetContractId() string {
  827. var url string
  828. url = "http://demo.itruscloud.com/apigate/contractpaasapi/contract/search"
  829. appId := beego.AppConfig.String("sign_appid")
  830. serviceKye := beego.AppConfig.String("serviceKye")
  831. serviceCode := beego.AppConfig.String("serviceCode")
  832. maprequest := make(map[string]interface{})
  833. maprequest["contractId"] = "158799561907766048"
  834. maprequest["responseContractFile"] = true
  835. fmt.Println("request23222222222222222", maprequest)
  836. byterequest, _ := json.Marshal(maprequest)
  837. reader := bytes.NewReader(byterequest)
  838. signatureStr, _ := generateHMACSHA1SignatureOne(maprequest, serviceKye, serviceCode)
  839. request, err := http.NewRequest("POST", url, reader)
  840. fmt.Println("request23222222222222222", request)
  841. if err != nil {
  842. fmt.Println(err.Error())
  843. }
  844. request.Header.Set("appId", appId)
  845. request.Header.Set("serviceCode", serviceCode)
  846. request.Header.Set("Content-Type", "application/json;charset=UTF-8")
  847. request.Header.Set("Content-Signature", signatureStr)
  848. client := http.Client{}
  849. resp, err := client.Do(request)
  850. if err != nil {
  851. fmt.Println(err.Error())
  852. }
  853. respBytes, err := ioutil.ReadAll(resp.Body)
  854. if err != nil {
  855. fmt.Println(err.Error())
  856. }
  857. str := string(respBytes)
  858. fmt.Println("strwowowowowo", str)
  859. return str
  860. }
  861. func EndEnterPrise() string {
  862. var url string
  863. url = "http://demo.itruscloud.com/apigate/contractpaasapi/contract/finished"
  864. appId := beego.AppConfig.String("sign_appid")
  865. serviceKye := beego.AppConfig.String("serviceKye")
  866. serviceCode := beego.AppConfig.String("serviceCode")
  867. maprequest := make(map[string]interface{})
  868. maprequest["contractId"] = "157475501840007476"
  869. byterequest, _ := json.Marshal(maprequest)
  870. reader := bytes.NewReader(byterequest)
  871. signatureStr, _ := generateHMACSHA1SignatureOne(maprequest, serviceKye, serviceCode)
  872. request, err := http.NewRequest("POST", url, reader)
  873. if err != nil {
  874. fmt.Println(err.Error())
  875. }
  876. request.Header.Set("appId", appId)
  877. request.Header.Set("serviceCode", serviceCode)
  878. request.Header.Set("Content-Type", "application/json;charset=UTF-8")
  879. request.Header.Set("Content-Signature", signatureStr)
  880. client := http.Client{}
  881. resp, err := client.Do(request)
  882. if err != nil {
  883. fmt.Println(err.Error())
  884. }
  885. respBytes, err := ioutil.ReadAll(resp.Body)
  886. if err != nil {
  887. fmt.Println(err.Error())
  888. }
  889. str := string(respBytes)
  890. fmt.Println("strwowowowowo", str)
  891. return str
  892. }
  893. func GetEnterPriseDetail() (string, string) {
  894. var url string
  895. url = "http://demo.itruscloud.com/apigate/contractpaasapi/contract/preview"
  896. appId := beego.AppConfig.String("sign_appid")
  897. serviceKye := beego.AppConfig.String("serviceKye")
  898. serviceCode := beego.AppConfig.String("serviceCode")
  899. maprequest := make(map[string]interface{})
  900. maprequest["contractId"] = "158807311102510182"
  901. byterequest, _ := json.Marshal(maprequest)
  902. reader := bytes.NewReader(byterequest)
  903. signatureStr, _ := generateHMACSHA1SignatureOne(maprequest, serviceKye, serviceCode)
  904. request, err := http.NewRequest("POST", url, reader)
  905. if err != nil {
  906. fmt.Println(err.Error())
  907. }
  908. request.Header.Set("appId", appId)
  909. request.Header.Set("serviceCode", serviceCode)
  910. request.Header.Set("Content-Type", "application/json;charset=UTF-8")
  911. request.Header.Set("Content-Signature", signatureStr)
  912. client := http.Client{}
  913. resp, err := client.Do(request)
  914. if err != nil {
  915. fmt.Println(err.Error())
  916. }
  917. respBytes, err := ioutil.ReadAll(resp.Body)
  918. if err != nil {
  919. fmt.Println(err.Error())
  920. }
  921. str := string(respBytes)
  922. fmt.Println("strwowowowowo", str)
  923. var respJSON map[string]interface{}
  924. if err := json.Unmarshal([]byte(string(respBytes)), &respJSON); err != nil {
  925. utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  926. }
  927. var urlOne string
  928. urlOne = respJSON["data"].(map[string]interface{})["url"].(string)
  929. fmt.Println("url", urlOne)
  930. return str, urlOne
  931. }
  932. func CreateNewUploadPact(name string) string {
  933. var url string
  934. url = "http://demo.itruscloud.com/apigate/contractpaasapi/contract/createByFile"
  935. appId := beego.AppConfig.String("sign_appid")
  936. serviceKye := beego.AppConfig.String("serviceKye")
  937. serviceCode := beego.AppConfig.String("serviceCode")
  938. maprequest := make(map[string]interface{})
  939. //maprequest["contractCode"] = "102020620701056856"
  940. maprequest["contractName"] = "手机购买交易合同"
  941. maprequest["signCount"] = 10
  942. maprequest["docName"] = "美国员工保密协议"
  943. //file := "C:/Users/28169/Desktop/打印单.pdf"
  944. //
  945. //fileBytes, err := ioutil.ReadFile(file) // 读取file
  946. //
  947. //contractBase64 := base64.StdEncoding.EncodeToString(fileBytes) // 加密成base64字符串
  948. //fmt.Println(contractBase64)
  949. maprequest["contractBase64"] = name
  950. //添加企业成员 里面的USERID
  951. maprequest["creator"] = "PBRLMBFVIRR3BV8JGGOX9C7N"
  952. maprequest["enterpriseId"] = "BRWAABXW3RUD4PGCYEQWRRK8"
  953. maprequest["signValidDays"] = 90
  954. maprequest["sysnUrl"] = "https://kuyi.shengws.com/chenxuemin1.png"
  955. maprequest["asyncUrl"] = "https://kuyi.shengws.com/chenxuemin1.png"
  956. byterequest, _ := json.Marshal(maprequest)
  957. reader := bytes.NewReader(byterequest)
  958. signatureStr, _ := generateHMACSHA1SignatureOne(maprequest, serviceKye, serviceCode)
  959. request, err := http.NewRequest("POST", url, reader)
  960. if err != nil {
  961. fmt.Println(err.Error())
  962. }
  963. request.Header.Set("appId", appId)
  964. request.Header.Set("serviceCode", serviceCode)
  965. request.Header.Set("Content-Type", "application/json;charset=UTF-8")
  966. request.Header.Set("Content-Signature", signatureStr)
  967. client := http.Client{}
  968. resp, err := client.Do(request)
  969. if err != nil {
  970. fmt.Println(err.Error())
  971. }
  972. respBytes, err := ioutil.ReadAll(resp.Body)
  973. if err != nil {
  974. fmt.Println(err.Error())
  975. }
  976. str := string(respBytes)
  977. fmt.Println("strwwoowowow", str)
  978. return str
  979. }
  980. func GetDataConfigDisinfectionFluid(org_id int64) (models.Dataconfig, error) {
  981. dataconfig := models.Dataconfig{}
  982. err := XTReadDB().Where("org_id = ? and status =1 and id =12536", org_id).Find(&dataconfig).Error
  983. return dataconfig, err
  984. }