1
This commit is contained in:
@@ -86,7 +86,7 @@ func TestSkuListDelete(t *testing.T) {
|
||||
Page: page,
|
||||
PageSize: 100,
|
||||
}
|
||||
foodList, err := api.SkuList(utils.Int2Str(102778), param)
|
||||
foodList, err := api.SkuList(utils.Int2Str(667247), param)
|
||||
if err != nil {
|
||||
break
|
||||
}
|
||||
@@ -94,7 +94,7 @@ func TestSkuListDelete(t *testing.T) {
|
||||
for k, v := range foodList.List {
|
||||
if v.CustomSkuID == "" {
|
||||
api.AccessAPI2("sku.delete", map[string]interface{}{
|
||||
"shop_id": "102778",
|
||||
"shop_id": "667247",
|
||||
"sku_id": v.SkuId,
|
||||
}, utils.GetUUID())
|
||||
globals.SugarLogger.Debugf("---k := %d,delete_name:= %s", k, v.Name)
|
||||
@@ -328,7 +328,7 @@ func TestDeleteStoreSku(t *testing.T) {
|
||||
}
|
||||
|
||||
func TestDeleteSku(t *testing.T) {
|
||||
shopId := "804627"
|
||||
shopId := "667247"
|
||||
param1 := &SkuListParams{
|
||||
Page: 1,
|
||||
PageSize: 100,
|
||||
|
||||
@@ -1,5 +1,21 @@
|
||||
package lakala
|
||||
|
||||
// ApplyContractCallBack 合同生气回调
|
||||
type ApplyContractCallBack struct {
|
||||
Code string `json:"code"`
|
||||
Msg string `json:"msg"`
|
||||
RespData struct {
|
||||
Version string `json:"version"`
|
||||
OrderNo string `json:"order_no"`
|
||||
OrgId int `json:"org_id"`
|
||||
EcApplyId int64 `json:"ec_apply_id"`
|
||||
AuditStatus string `json:"audit_status"`
|
||||
AuditDesc string `json:"audit_desc"`
|
||||
SignH5Url string `json:"sign_h5_url"`
|
||||
SignH5UrlExpTm string `json:"sign_h5_url_exp_tm"`
|
||||
} `json:"resp_data"`
|
||||
}
|
||||
|
||||
// SeparateCallback 商户分账创建/修改回调
|
||||
type SeparateCallback struct {
|
||||
ApplyId string `json:"applyId"`
|
||||
|
||||
@@ -148,5 +148,78 @@ func (a *API) RefundOrderQuery(param *RefundOrderQueryReq) ([]*RefundOrderQueryR
|
||||
}
|
||||
|
||||
return resp, nil
|
||||
|
||||
}
|
||||
|
||||
// ApplyElectronicContract 电子合同签约
|
||||
func (a *API) ApplyElectronicContract(param *ApplyContractParam) (*ApplyContractResp, error) {
|
||||
reqParameter := map[string]interface{}{
|
||||
"req_data": utils.Struct2Map(param, "", false),
|
||||
"version": Version3,
|
||||
"req_time": utils.Time2TimeStrByFormat(time.Now(), TimeFormat),
|
||||
}
|
||||
result, err := a.AccessAPISign(OrderProdUrl, OrderEcApplyActive, http.MethodPost, "", reqParameter)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
if result["code"].(string) != Success {
|
||||
return nil, fmt.Errorf(result["msg"].(string))
|
||||
}
|
||||
|
||||
bodyResult, err := json.Marshal(result["resp_data"].(map[string]interface{}))
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
resp := &ApplyContractResp{}
|
||||
if err = json.Unmarshal(bodyResult, resp); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return resp, nil
|
||||
}
|
||||
|
||||
// QueryElectronicContract 电子合同签约审核结果查询
|
||||
func (a *API) QueryElectronicContract(orderNo string, orgId int, ecApplyId string) (*ElectronicContractStatus, error) {
|
||||
reqParameter := map[string]interface{}{
|
||||
"req_data": map[string]interface{}{
|
||||
"version": "1.0",
|
||||
"order_no": orderNo,
|
||||
"org_id": orgId,
|
||||
"ec_apply_id": ecApplyId,
|
||||
},
|
||||
"version": Version,
|
||||
"req_time": utils.Time2TimeStrByFormat(time.Now(), TimeFormat),
|
||||
}
|
||||
result, err := a.AccessAPISign(OrderProdUrl, OrderEcApplyStatusActive, http.MethodPost, "", reqParameter)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
if result["code"].(string) != Success {
|
||||
return nil, fmt.Errorf(result["msg"].(string))
|
||||
}
|
||||
|
||||
bodyResult, err := json.Marshal(result["resp_data"].(map[string]interface{}))
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
resp := &ElectronicContractStatus{}
|
||||
if err = json.Unmarshal(bodyResult, resp); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return resp, nil
|
||||
}
|
||||
|
||||
type ElectronicContractStatus struct {
|
||||
Version string `json:"version"`
|
||||
OrderNo string `json:"order_no"`
|
||||
OrgId int `json:"org_id"`
|
||||
EcApplyId int64 `json:"ec_apply_id"` // ec_apply_id
|
||||
AuditStatus string `json:"audit_status"` // 人工审核状态
|
||||
AuditDesc string `json:"audit_desc"` // 人工审核结果说明
|
||||
SignH5Url string `json:"sign_h5_url"` // 签约H5地址
|
||||
SignH5UrlExpTm string `json:"sign_h5_url_exp_tm"` // 签约H5地址过期时间
|
||||
}
|
||||
|
||||
@@ -4,11 +4,13 @@ const (
|
||||
OrderTestUrl = "https://test.wsmsd.cn/sit/api/v3/" // 收银订单创建测试地址
|
||||
OrderProdUrl = "https://s2.lakala.com/api/v3" // 收银订单创建正式地址
|
||||
|
||||
CrateOrderActive = "ccss/counter/order/special_create" // 创建订单
|
||||
CloseOrderActive = "ccss/counter/order/close" // 订单关单
|
||||
QueryOrderActive = "ccss/counter/order/query" // 订单查询
|
||||
OrderRefundActive = "lams/trade/trade_refund" // 订单统一退货
|
||||
OrderRefundQueryActive = "lams/trade/trade_refund_query" // 订单统一退货查询
|
||||
CrateOrderActive = "ccss/counter/order/special_create" // 创建订单
|
||||
CloseOrderActive = "ccss/counter/order/close" // 订单关单
|
||||
QueryOrderActive = "ccss/counter/order/query" // 订单查询
|
||||
OrderRefundActive = "lams/trade/trade_refund" // 订单统一退货
|
||||
OrderRefundQueryActive = "lams/trade/trade_refund_query" // 订单统一退货查询
|
||||
OrderEcApplyActive = "mms/open_api/ec/apply" // 电子合同申请
|
||||
OrderEcApplyStatusActive = "mms/open_api/ec/qma_status" // 电子合同状态查询
|
||||
)
|
||||
|
||||
const (
|
||||
@@ -221,3 +223,36 @@ type RefundOrderQueryResp struct {
|
||||
AccMdiscountAmount string `json:"acc_mdiscount_amount"` // 商户侧优惠金额(账户端)
|
||||
AccDiscountAmount string `json:"acc_discount_amount"` // 账户端优惠金额
|
||||
}
|
||||
|
||||
// ApplyContractParam 合同申请参数
|
||||
type ApplyContractParam struct {
|
||||
OrderNo string `json:"order_no"` // 四方机构自定义订单编号 M String(32) 建议:平台编号+14位年月日时(24小时制)分秒+8位的随机数(同一接入机构不重复)
|
||||
OrgId int `json:"org_id"` // 机构号 M Integer 签约方所属拉卡拉机构
|
||||
EcTypeCode string `json:"ec_type_code"` // 合同类别 M String(12) EC001 : 特约商户支付服务合作协议V3.1(商户入网) PASSPORT(护照);HK_MACAO_PASS(港澳居民往来内地通行证);TAIWAN_PASS(台湾居民来往大陆通行证);
|
||||
CertName string `json:"cert_name"` // 法人/经营者姓名 M String(32)
|
||||
CertNo string `json:"cert_no"` // 法人/经营者证件号码 M String(32)
|
||||
Mobile string `json:"mobile"` // 签约手机号 M String(16) 1.小微个人商户(无营业执照),签约手机号必须填写商户经营者本人手机号;2.个体工商户或企业商户(有营业执照),签约手机号必须填写法人手机号或者经办人手机号 合同签署人手机号,请慎重填写,不可修改
|
||||
BusinessLicenseMo string `json:"business_license_no"` // 营业执照号 C String(32) 个体工商户或企业商户 必传
|
||||
BusinessLicenseMame string `json:"business_license_name"` // 营业执照名称 C String(32) 个体工商户或企业商户 必传
|
||||
OpenningBankCode string `json:"openning_bank_code"` // 企业/经营者结算开户行号 M String(32)
|
||||
OpenningBankName string `json:"openning_bank_name"` // 企业/经营者结算开户行名称 M String(128)
|
||||
AcctTypeCode string `json:"acct_type_code"` // 企业/经营者结算卡性质 M String(2) 57 对公、 58 对私
|
||||
AcctNo string `json:"acct_no"` // 企业/经营者结算卡号 M String(32)
|
||||
AcctName string `json:"acct_name"` // 企业/经营者结算卡名称 M String(64) 企业/经营者结算卡名称
|
||||
EcContentParameters string `json:"ec_content_parameters"` // 电子合同内容参数集合 M JSONString 按合同类型(ecTypeCode)传递不同的参数集合,
|
||||
AgentTag int `json:"agent_tag"` // 是否经办签约 C Integer(1) 0 不启用 1启用 ; 缺省 0
|
||||
AgentName string `json:"agent_name"` // 经办人名称 C String(32) 经办人名称(要与证件号对应)agentTag 为1时 必传
|
||||
AgentCertType string `json:"agent_cert_type"` // 经办人证件类型 C String(32) RESIDENT_ID(身份证);PASSPORT(护照);HK_MACAO_PASS(港澳居民往来内地通行证);TAIWAN_PASS(台湾居民来往大陆通行证);
|
||||
AgentCertNo string `json:"agent_cert_no"` // 经办人证件号 C String(32) agentTag 为1时 必传
|
||||
AgentFileName string `json:"agent_file_name"` // 经办签约授权委托书文件名 C String(32) agentTag 为1时 必传
|
||||
AgentFilePath string `json:"agent_file_path"` // 经办授权委托书文件路径 C String(128) agentTag 为1时 必传
|
||||
Remark string `json:"remark"` // 备注说明 C String(128) 备注说明
|
||||
RetUrl string `json:"ret_url"` // 电子合同签约结果回调通知 C String(128) 成功签约才通知
|
||||
}
|
||||
|
||||
// ApplyContractResp 签约响应参数
|
||||
type ApplyContractResp struct {
|
||||
OrderNo string `json:"order_no"`
|
||||
EcApplyId int64 `json:"ec_apply_id"`
|
||||
ResultUrl string `json:"result_url"`
|
||||
}
|
||||
|
||||
@@ -91,6 +91,7 @@ const (
|
||||
//BillProdCallbackUrl = "http://callback.jxc4.com/lakalaCallback/ewalletWithdrawD1" // 账户D1提现回调
|
||||
//OrderStatusCallback = "http://callback.jxc4.com/lakalaCallback/orderStatus" // 收银台订单通知(订单状态)
|
||||
//PayStatusCallback = "http://callback.jxc4.com/lakalaCallback/payStatus" // 主扫支付状态通知
|
||||
//ApplyContractCallback = "http://callback.jxc4.com/lakalaCallback/applyContract" // 合同申请回到
|
||||
|
||||
CallbackLaKaLaShopUrl = "http://callback.test.jxc4.com/lakalaCallback/separateMsg" // 消息通知地址(商户开通)
|
||||
CallbackLaKaLaSeparateBindUrl = "http://callback.test.jxc4.com/lakalaCallback/separateBind" // 消息通知地址(分账关系绑定回调,解绑回调)
|
||||
@@ -98,4 +99,5 @@ const (
|
||||
BillProdCallbackUrl = "http://callback.test.jxc4.com/lakalaCallback/ewalletWithdrawD1" // 账户D1提现回调
|
||||
OrderStatusCallback = "http://callback.test.jxc4.com/lakalaCallback/orderStatus" // 收银台订单通知(订单状态)
|
||||
PayStatusCallback = "http://callback.test.jxc4.com/lakalaCallback/payStatus" // 主扫支付状态通知
|
||||
ApplyContractCallback = "http://callback.test.jxc4.com/lakalaCallback/applyContract" // 合同申请回到
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user