package others_request

import (
	"encoding/json"
	"git.sxidc.com/student-physical-examination/contract_lock_sdk/http"
	"git.sxidc.com/student-physical-examination/contract_lock_sdk/model/common"
)

type SysAuditAddRequest struct {
	// 【操作时间】操作时间  【传参】  日期格式：yyyy-MM-dd HH:mm:ss。
	Time     string                  `json:"time"`
	Operator *common.UserInfoRequest `json:"operator,omitempty"`
	// 【操作类型】操作类型 【作用】 1、指定需要记录的操作类型，目前仅支持记录文件打印日志 2、文件打印：可记录电子签约文件打印的操作日志 【传参】 取值范围：PRINTCONTRACT（文件打印）
	OperationType string `json:"operationType"`
	// 【文件打印日志明细】文件打印日志明细 【作用】 1、当记录文件打印类型的操作时，可传入日志明细内容 2、文件打印日志会现在在审计模块及电子签约文件的签署详情页面
	PrintDetails []*common.PrintLogDetail `json:"printDetails,omitempty"`
}

func (obj SysAuditAddRequest) GetUrl() string {
	return "/sys/audit/add"
}

func (obj SysAuditAddRequest) GetHttpParameter() *http.HttpParameter {
	parameter := http.NewPostHttpParameter()
	jsonBytes, _ := json.Marshal(obj)
	parameter.SetJsonParamer(string(jsonBytes))
	return parameter
}
