套餐多选一双向同步
1、CRM套餐同步至HIS(原有接口)
#套餐多选一增加内网多选一组id(tb_meal_multi_choosen_examitem)
ALTER TABLE tb_meal_multi_choosen_examitem ADD COLUMN
( `his_multi_choosen_id` char(32) DEFAULT NULL COMMENT '内网多选一组id' );
请求URL
https://api.mytijian.com/open-api/V2/ws/meal/syncmeal?accessToken=ACCESS_TOKEN
请求协议:HTTPS
请求方式:POST
需要签名: 否
URL参数:
|参数名|是否必须|类型|说明|
| —————— | —————— | —————— | —————— |
|accessToken |是 |string | 当前有效的accessToken |
POST参数示例
{
"appKey":"ap1650211464d84a6397b09109d1805c78"
}
正确返回示例:
用open-api的VO对象返回。
#在原有返回参数的基础上(data下,单个套餐返回内),增加如下内容:
"mealMultiChoosenList":[
{
"mealId": 544882,//套餐id
"multiChoosenId": "de8b63c0a2614b9f8c677a7156581f48",//平台多选一组id
"multiChoosenName": "打扫打扫打扫",//平台多选一组名称
"hisMultiChoosenId":"de8b63c0a2614b9f8c677a7156581f48"// 内网多选一组id---> Csa 新加DDL字段返回。
"ext": null,// 扩展字段
"multiChoosenExamitemList": [//多选一组内单项集合
{
"itemId": 4292429,//平台单项id
"selected": true,//是否被选中 true-被选中,false-未被选中。
"itemName": "有编码",//平台单项名称
"hisItemId": "1233435",//医院单项id
2021.12.22增加----》 ~~ "composeHisItemIds":["xxxx","xxxxxx"]//2021.12.7 -如果选中多选一单项为合并项,这个字段就传hisItemIds集合。~~
},
{
"itemId": 4292400,//平台单项id
"selected": false,//是否被选中 true-被选中,false-未被选中。
"itemName": "新单项1",//平台单项名称
"hisItemId": "1234567"//医院单项id
2021.12.22增加----》 "composeItemIds":null//2021.12.7 -如果选中多选一单项为合并项,这个字段就传hisItemIds集合。
}
],
"salePrice": 100,
"activitySalePrice": null,
"originPrice": 100,
"defaultSelectItemId": 4292429// 默认多选一选中单项id
},
{
"mealId": 544882,
"multiChoosenId": "6c8f0363a7244dd286b81a50df94d28b",
"multiChoosenName": "实打实大师",
"ext": null,
"multiChoosenExamitemList": [
{
"itemId": 4292267,
"selected": true,
"itemName": "单项哈哈哈哈哈哈",
"price": 1,
"description": null,
"warning": "<p>---------</p><p>选择警告</p><p>选择警告</p><p>选择警告</p>",
"discount": true,
"hisItemId": "55555"
},
{
"itemId": 4293739,
"selected": false,
"itemName": "qa合卡单项1",
"price": 1000,
"description": null,
"warning": null,
"discount": true,
"hisItemId": "55428"
}
],
"salePrice": 1,
"activitySalePrice": null,
"originPrice": 1,
"defaultSelectItemId": 4292267
}
]
4、his创建或修改套餐 —->市一升级版
https://api.mytijian.com/open-api/V2/ws/meal/hisCreateOrUpdateMealUpgrade?accessToken=ACCESS_TOKEN&nonce=NONCE&sign=SIGN
请求协议:HTTPS
请求方式:POST
需要签名: 是
URL参数:
参数名 | 是否必须 | 类型 | 说明 |
---|---|---|---|
accessToken | 是 | string | 当前有效的accessToken |
nonce | 是 | string | 当前有效的nonce |
sign | 是 | string | 数据sign值 |
POST参数示例
#增加参数传入
"mealMultiChoosenList":[
{
"mealId": 544882,//套餐id--->必传☆
"multiChoosenId": "de8b63c0a2614b9f8c677a7156581f48",//平台多选一组id--->如果有就必须传☆
"multiChoosenName": "打扫打扫打扫",//平台多选一组名称--->如果有就必须传☆
"hisMultiChoosenId":"de8b63c0a2614b9f8c677a7156581f48"// 内网多选一组id ---> 必须传☆
"ext": null,// 扩展字段 --->如果有就必须传☆
"multiChoosenExamitemList": [//多选一组内单项集合
{
"itemId": 4292429,//平台单项id ---> 必须传☆
"selected": true,//是否被选中 true-被选中,false-未被选中。 --->必须传☆
"itemName": "有编码",//平台单项名称
"hisItemId": "1233435"//医院单项id
},
{
"itemId": 4292400,//平台单项id
"selected": false,//是否被选中 true-被选中,false-未被选中。
"itemName": "新单项1",//平台单项名称
"hisItemId": "1234567"//医院单项id
}
],
"defaultSelectItemId": 4292429// 默认多选一选中单项id
},
{
"mealId": 544882,
"multiChoosenId": "6c8f0363a7244dd286b81a50df94d28b",
"multiChoosenName": "实打实大师",
"ext": null,
"multiChoosenExamitemList": [
{
"itemId": 4292267,
"selected": true,
"itemName": "单项哈哈哈哈哈哈",
"hisItemId": "55555"
},
{
"itemId": 4293739,
"selected": false,
"itemName": "qa合卡单项1",
"hisItemId": "55428"
}
],
"defaultSelectItemId": 4292267
}
]
正确返回示例:
{
"data": {
"mealId": "484758"
"mealMultiChoosenList":[] // 内容见第一个接口新加的内容。
},
"msg": "success",
"success": "T"
}
返回参数说明:
参数名 | 类型 | 说明 |
---|---|---|
success | String | T成功,F失败 |
errCode | String | 错误码,只有失败的时候才有 |
msg | String | 描述消息 |
data | int | 平台套餐id |
订单多选一双向同步
1、获取极速预约订单(原有接口)
请求URL
https://api.mytijian.com/open-api/V2/ws/order/immediateOrder?accessToken=ACCESS_TOKEN
请求协议:HTTPS
请求方式:POST
需要签名: 否
URL参数:
参数名 | 是否必须 | 类型 | 说明 |
---|---|---|---|
accessToken | 是 | string | 当前有效的accessToken |
2、获取正常导单订单(原有接口)
请求URL
https://api.mytijian.com/open-api/V2/ws/order/normalOrder?accessToken=ACCESS_TOKEN
请求协议:HTTPS
请求方式:POST
需要签名: 否
URL参数:
参数名 | 是否必须 | 类型 | 说明 |
---|---|---|---|
accessToken | 是 | string | 当前有效的accessToken |
内部逻辑:
从tb_exam_order_meal_snapshot 表中获取到全部单项信息,然后把获取有多选一组id的单项,
Map
判断返回的单项是否是多选一组单项,如果是的话,就加上多选一组id。
#参数增加如下:
"examItemExportDto":[
{
"originalPrice":300,
"hisId":"000007",
"price":100,
"typeToMeal":1,
"multiChooseId":"de8b63c0a2614b9f8c677a7156581f48" // 新增的字段,用这个字段是否为空,判断是普通单项还是多选一单项。
"mergeItemParentId":1111 //2021.12.22 线上平台合并项小项 归属父合并项id
},
{
"originalPrice":700,
"hisId":"000012",
"price":100,
"typeToMeal":1
"multiChooseId":"de8b63c0a2614b9f8c677a7156581f48" // 新增的字段,
"mergeItemParentId":1111 //2021.12.22 线上平台合并项小项 归属父合并项id
}
]
1、his创建订单接口(原有接口)
https://api.mytijian.com/open-api/V2/ws/order/hisCreateOrder?accessToken=ACCESS_TOKEN&nonce=NONCE&sign=SIGN
请求协议:HTTPS
请求方式:POST
需要签名: 是
URL参数:
参数名 | 是否必须 | 类型 | 说明 |
---|---|---|---|
accessToken | 是 | string | 当前有效的accessToken |
nonce | 是 | string | 当前有效的nonce |
sign | 是 | string | 数据sign值 |
POST参数示例
#在原有基础上,新增参数
"orderMealMultiChooseList":{
[
{
"multiChooseId":"xxxxxxxxxxxx",// 套餐多选一组id
"selectExamItemId":"111", //套餐多选一选中选中单项id
"multiChooseName":"多选一组名" // 套餐多选一组名称
},
{
"multiChooseId":"xxxxxxxxxxxx",// 套餐多选一组id
"selectExamItemId":"111", //套餐多选一选中选中单项id
"multiChooseName":"多选一组名" // 套餐多选一组名称
}
]
}
—————->
2021.12.22改为
"orderMealMultiChooseList":{
[
{
"multiChooseId":"xxxxxxxxxxxx",// 套餐多选一组id
"mergeItemParentId":"111", //如果为合并项,传平台合并项id,没有则传null
"hisId":"1111",// 如果为普通单项,则传该单项的hisItemId。
"multiChooseName":"多选一组名" // 套餐多选一组名称
},
{
"multiChooseId":"xxxxxxxxxxxx",// 套餐多选一组id
"mergeItemParentId":"111", //如果为合并项,传平台合并项id,没有则传null
"hisId":"1111",// 如果为普通单项,则传该单项的hisId,不是普通单项则传null
"multiChooseName":"多选一组名" // 套餐多选一组名称
}
]
}