From 89ce2bc6b71ea331c219c295074a289d09c808af Mon Sep 17 00:00:00 2001
From: zhangzengfei <zhangzengfei@smartai.com>
Date: 星期四, 13 七月 2023 16:06:34 +0800
Subject: [PATCH] 修改车间代码的查询方式,返回正确的车间代码

---
 kingdee/cst.go |   39 +++++++++++++++++++++++++++------------
 1 files changed, 27 insertions(+), 12 deletions(-)

diff --git a/kingdee/cst.go b/kingdee/cst.go
index 076286a..9d9e1ab 100644
--- a/kingdee/cst.go
+++ b/kingdee/cst.go
@@ -5,13 +5,14 @@
 	"encoding/json"
 	"fmt"
 	"io/ioutil"
-	"kingdee-dbapi/config"
-	"kingdee-dbapi/logger"
-	"kingdee-dbapi/nsqclient"
 	"mime/multipart"
 	"net/http"
 	"strconv"
 	"time"
+
+	"kingdee-dbapi/config"
+	"kingdee-dbapi/logger"
+	"kingdee-dbapi/nsqclient"
 )
 
 var JoHeadTemplate = `
@@ -64,9 +65,11 @@
 }
 
 type CSTNsqReply struct {
-	FBillNo string `json:"fBillNo"` // 璁㈠崟缂栧彿
-	Code    int    `json:"code"`    // CST鎺ュ彛杩斿洖鐨刢ode
-	Message string `json:"message"` // 鎴愬姛鍒欒繑鍥炲崟鍙�, 澶辫触杩斿洖
+	FBillNo string `json:"FBillNo"` // 璁㈠崟缂栧彿
+	FNumber string `json:"FNumber"` // 鐗╂枡浠g爜
+	ICMONo  string `json:"ICMONo"`  // 閲戣澏绯荤粺鐨勭敓浜т换鍔″崟缂栧彿
+	Code    int    `json:"code"`    // CST鎺ュ彛杩斿洖鐨刢ode, 鎴愬姛200
+	Message string `json:"message"` // 澶辫触鐨勯敊璇俊鎭�
 }
 
 type CSTServiceResponse struct {
@@ -88,6 +91,7 @@
 		logger.Warn("瑙f瀽璇锋眰澶辫触, %s", err.Error())
 		return err
 	}
+	logger.Debug("鎺ユ敹鍒板垱寤虹敓浜т换鍔″崟璇锋眰, 鍏�%d鏉¤鍗�", len(query))
 
 	for _, q := range query {
 		ret := Commit2CSTService(q)
@@ -102,8 +106,14 @@
 }
 
 func Commit2CSTService(order CSTNsqQuery) (result CSTNsqReply) {
-	fmt.Println(order)
 	result.Code = -1
+	result.FBillNo = order.FBillNo
+	result.FNumber = order.FNumber
+
+	if result.FBillNo == "" || result.FNumber == "" {
+		result.Message = "璁㈠崟缂栧彿鎴栫墿鏂欑紪鍙蜂笉鑳戒负绌�"
+		return
+	}
 
 	today := time.Now().Format("2006-01-02")
 	joHead := fmt.Sprintf(JoHeadTemplate,
@@ -119,7 +129,7 @@
 		int(order.UseAmount), // 瀹屽伐鍏ュ簱涓婇檺
 		int(order.UseAmount), // 瀹屽伐鍏ュ簱涓嬮檺
 	)
-	fmt.Println(joHead)
+	//fmt.Println(joHead)
 	params := map[string]string{
 		"action":  "鐢熶骇浠诲姟鍗�.鏂板",
 		"fuserid": "16394",
@@ -156,8 +166,8 @@
 	}
 
 	if rspMsg.ErrCode == 0 {
-		result.Code = 0
-		result.Message = rspMsg.Data.FBillNo
+		result.Code = 200
+		result.ICMONo = rspMsg.Data.FBillNo
 	} else {
 		result.Code = rspMsg.ErrCode
 		result.Message = rspMsg.ErrMsg
@@ -169,11 +179,12 @@
 func newMultipartRequest(url string, params map[string]string) (*http.Request, error) {
 	body := &bytes.Buffer{}
 	writer := multipart.NewWriter(body)
+
 	// 璁剧疆Boundary, 鎺ュ彛楠岃瘉浜嗗叚涓�-
-	err := writer.SetBoundary("------basicHttpClient" + strconv.Itoa(int(time.Now().Unix())))
-	if err != nil {
+	if err := writer.SetBoundary("------basicHttpClient" + strconv.Itoa(int(time.Now().Unix()))); err != nil {
 		fmt.Println(err.Error())
 	}
+
 	for key, val := range params {
 		_ = writer.WriteField(key, val)
 	}
@@ -181,6 +192,10 @@
 	writer.Close()
 
 	req, err := http.NewRequest("POST", url, body)
+	if err != nil {
+		return nil, err
+	}
+
 	req.Header.Set("Content-Type", writer.FormDataContentType())
 	req.Header.Set("User-Agent", "basicHttpClient/0.0.1")
 	req.Header.Set("Connection", "keep-alive")

--
Gitblit v1.8.0