1
This commit is contained in:
@@ -86,7 +86,7 @@ func TestSkuListDelete(t *testing.T) {
|
|||||||
Page: page,
|
Page: page,
|
||||||
PageSize: 100,
|
PageSize: 100,
|
||||||
}
|
}
|
||||||
foodList, err := api.SkuList(utils.Int2Str(102778), param)
|
foodList, err := api.SkuList(utils.Int2Str(667247), param)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
break
|
break
|
||||||
}
|
}
|
||||||
@@ -94,7 +94,7 @@ func TestSkuListDelete(t *testing.T) {
|
|||||||
for k, v := range foodList.List {
|
for k, v := range foodList.List {
|
||||||
if v.CustomSkuID == "" {
|
if v.CustomSkuID == "" {
|
||||||
api.AccessAPI2("sku.delete", map[string]interface{}{
|
api.AccessAPI2("sku.delete", map[string]interface{}{
|
||||||
"shop_id": "102778",
|
"shop_id": "667247",
|
||||||
"sku_id": v.SkuId,
|
"sku_id": v.SkuId,
|
||||||
}, utils.GetUUID())
|
}, utils.GetUUID())
|
||||||
globals.SugarLogger.Debugf("---k := %d,delete_name:= %s", k, v.Name)
|
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) {
|
func TestDeleteSku(t *testing.T) {
|
||||||
shopId := "804627"
|
shopId := "667247"
|
||||||
param1 := &SkuListParams{
|
param1 := &SkuListParams{
|
||||||
Page: 1,
|
Page: 1,
|
||||||
PageSize: 100,
|
PageSize: 100,
|
||||||
|
|||||||
@@ -1,5 +1,21 @@
|
|||||||
package lakala
|
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 商户分账创建/修改回调
|
// SeparateCallback 商户分账创建/修改回调
|
||||||
type SeparateCallback struct {
|
type SeparateCallback struct {
|
||||||
ApplyId string `json:"applyId"`
|
ApplyId string `json:"applyId"`
|
||||||
|
|||||||
@@ -148,5 +148,78 @@ func (a *API) RefundOrderQuery(param *RefundOrderQueryReq) ([]*RefundOrderQueryR
|
|||||||
}
|
}
|
||||||
|
|
||||||
return resp, nil
|
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/" // 收银订单创建测试地址
|
OrderTestUrl = "https://test.wsmsd.cn/sit/api/v3/" // 收银订单创建测试地址
|
||||||
OrderProdUrl = "https://s2.lakala.com/api/v3" // 收银订单创建正式地址
|
OrderProdUrl = "https://s2.lakala.com/api/v3" // 收银订单创建正式地址
|
||||||
|
|
||||||
CrateOrderActive = "ccss/counter/order/special_create" // 创建订单
|
CrateOrderActive = "ccss/counter/order/special_create" // 创建订单
|
||||||
CloseOrderActive = "ccss/counter/order/close" // 订单关单
|
CloseOrderActive = "ccss/counter/order/close" // 订单关单
|
||||||
QueryOrderActive = "ccss/counter/order/query" // 订单查询
|
QueryOrderActive = "ccss/counter/order/query" // 订单查询
|
||||||
OrderRefundActive = "lams/trade/trade_refund" // 订单统一退货
|
OrderRefundActive = "lams/trade/trade_refund" // 订单统一退货
|
||||||
OrderRefundQueryActive = "lams/trade/trade_refund_query" // 订单统一退货查询
|
OrderRefundQueryActive = "lams/trade/trade_refund_query" // 订单统一退货查询
|
||||||
|
OrderEcApplyActive = "mms/open_api/ec/apply" // 电子合同申请
|
||||||
|
OrderEcApplyStatusActive = "mms/open_api/ec/qma_status" // 电子合同状态查询
|
||||||
)
|
)
|
||||||
|
|
||||||
const (
|
const (
|
||||||
@@ -221,3 +223,36 @@ type RefundOrderQueryResp struct {
|
|||||||
AccMdiscountAmount string `json:"acc_mdiscount_amount"` // 商户侧优惠金额(账户端)
|
AccMdiscountAmount string `json:"acc_mdiscount_amount"` // 商户侧优惠金额(账户端)
|
||||||
AccDiscountAmount string `json:"acc_discount_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提现回调
|
//BillProdCallbackUrl = "http://callback.jxc4.com/lakalaCallback/ewalletWithdrawD1" // 账户D1提现回调
|
||||||
//OrderStatusCallback = "http://callback.jxc4.com/lakalaCallback/orderStatus" // 收银台订单通知(订单状态)
|
//OrderStatusCallback = "http://callback.jxc4.com/lakalaCallback/orderStatus" // 收银台订单通知(订单状态)
|
||||||
//PayStatusCallback = "http://callback.jxc4.com/lakalaCallback/payStatus" // 主扫支付状态通知
|
//PayStatusCallback = "http://callback.jxc4.com/lakalaCallback/payStatus" // 主扫支付状态通知
|
||||||
|
//ApplyContractCallback = "http://callback.jxc4.com/lakalaCallback/applyContract" // 合同申请回到
|
||||||
|
|
||||||
CallbackLaKaLaShopUrl = "http://callback.test.jxc4.com/lakalaCallback/separateMsg" // 消息通知地址(商户开通)
|
CallbackLaKaLaShopUrl = "http://callback.test.jxc4.com/lakalaCallback/separateMsg" // 消息通知地址(商户开通)
|
||||||
CallbackLaKaLaSeparateBindUrl = "http://callback.test.jxc4.com/lakalaCallback/separateBind" // 消息通知地址(分账关系绑定回调,解绑回调)
|
CallbackLaKaLaSeparateBindUrl = "http://callback.test.jxc4.com/lakalaCallback/separateBind" // 消息通知地址(分账关系绑定回调,解绑回调)
|
||||||
@@ -98,4 +99,5 @@ const (
|
|||||||
BillProdCallbackUrl = "http://callback.test.jxc4.com/lakalaCallback/ewalletWithdrawD1" // 账户D1提现回调
|
BillProdCallbackUrl = "http://callback.test.jxc4.com/lakalaCallback/ewalletWithdrawD1" // 账户D1提现回调
|
||||||
OrderStatusCallback = "http://callback.test.jxc4.com/lakalaCallback/orderStatus" // 收银台订单通知(订单状态)
|
OrderStatusCallback = "http://callback.test.jxc4.com/lakalaCallback/orderStatus" // 收银台订单通知(订单状态)
|
||||||
PayStatusCallback = "http://callback.test.jxc4.com/lakalaCallback/payStatus" // 主扫支付状态通知
|
PayStatusCallback = "http://callback.test.jxc4.com/lakalaCallback/payStatus" // 主扫支付状态通知
|
||||||
|
ApplyContractCallback = "http://callback.test.jxc4.com/lakalaCallback/applyContract" // 合同申请回到
|
||||||
)
|
)
|
||||||
|
|||||||
Reference in New Issue
Block a user