From 8324f872ef3a4d0c978a9b1d062800c6a1701c12 Mon Sep 17 00:00:00 2001
From: zhangqian <zhangqian@123.com>
Date: 星期五, 01 十二月 2023 09:58:17 +0800
Subject: [PATCH] fix

---
 service/process_model.go |   72 ++++++++++++++++++++---------------
 1 files changed, 41 insertions(+), 31 deletions(-)

diff --git a/service/process_model.go b/service/process_model.go
index d201167..ead4ebf 100644
--- a/service/process_model.go
+++ b/service/process_model.go
@@ -2,41 +2,51 @@
 
 import (
 	"apsClient/conf"
-	"apsClient/pkg/httpx"
+	"apsClient/model"
+	"apsClient/pkg/logx"
+	"errors"
 )
 
-type ProcessModel struct{}
-
-const (
-	GetProcessModelUrl = "/api-s/v1/processParams/info"
-)
-
-type GetProcessModelParams struct {
-	WorkOrder string `json:"workOrder,omitempty" form:"workOrder"` //宸ュ簭缂栧彿
-	OrderId   string `json:"orderId"`                              // 璁㈠崟鍙�
-	Product   string `json:"password"`                             // 浜у搧
-	Procedure string `json:"procedure"`                            // 宸ュ簭
-	Device    string `json:"device"`                               // 璁惧
-}
-type GetProcessModel struct {
-	Number    string                 `json:"number"`    //宸ヨ壓妯″瀷缂栧彿
-	OrderId   string                 `json:"orderId"`   //璁㈠崟id
-	Product   string                 `json:"product"`   //浜у搧鍚嶇О
-	Procedure string                 `json:"procedure"` //宸ュ簭
-	WorkOrder string                 `json:"workOrder"` //宸ュ崟
-	Device    string                 `json:"device"`    //璁惧
-	ParamsMap map[string]interface{} `json:"paramsMap"`
+func GetProcessModelList(offset, limit int, product, procedure string) (list []*model.ProcessModel, total int64, err error) {
+	device, err := model.NewDeviceSearch().SetDeviceId(conf.Conf.CurrentDeviceID).First()
+	if err != nil {
+		return
+	}
+	list, total, err = model.NewProcessModelSearch().
+		SetIsNew(true).SetOrder("id desc").
+		SetProduct(product).SetProcedure(procedure).
+		SetPage(offset, limit).SetProcedures(device.ProceduresArr).Find()
+	return
 }
 
-type GetProcessModelResponse struct {
-	Code int
-	Msg  string
-	Data GetProcessModel
+func GetOtherProcessModelList(offset, limit int, product, procedure string) (list []*model.ProcessModel, total int64, err error) {
+	device, err := model.NewDeviceSearch().SetDeviceId(conf.Conf.CurrentDeviceID).First()
+	if err != nil {
+		return
+	}
+	list, total, err = model.NewProcessModelSearch().
+		SetIsNew(true).SetOrder("id desc").
+		SetProductAndProcedureNot(product, procedure).
+		SetPage(offset, limit).SetProcedures(device.ProceduresArr).Find()
+	return
 }
 
-// GetProcessModel 鑾峰彇宸ヨ壓妯″瀷
-func (slf ProcessModel) GetProcessModel(params GetProcessModelParams) (GetProcessModel GetProcessModel, err error) {
-	resp := new(GetProcessModelResponse)
-	err = httpx.SendPostAndParseJson(conf.Conf.Services.ApsServer+GetProcessModelUrl, params, resp)
-	return resp.Data, err
+func GetProcessModelByNumber(num string) (record *model.ProcessModel, err error) {
+	return model.NewProcessModelSearch().SetNumber(num).First()
+}
+
+func GetProcessModelAddress(deviceID string) (addressMap map[string]int, err error) {
+	record, err := model.NewProcessModelPlcAddressSearch().SetDeviceID(deviceID).First()
+	if err != nil {
+		logx.Errorf("find process model plc address for device:%v, err:%v", deviceID, err)
+		return nil, err
+	}
+	if record.AddressList == nil {
+		return nil, errors.New("empty process model address list")
+	}
+	addressMap = make(map[string]int, len(record.AddressList))
+	for _, item := range record.AddressList {
+		addressMap[item.Name] = item.Address
+	}
+	return addressMap, nil
 }

--
Gitblit v1.8.0