'!'
This commit is contained in:
@@ -47,7 +47,7 @@ const merchant = {
|
||||
* @param {object} params 请求参数 storeID int 门店ID vendorID int 厂商ID
|
||||
*/
|
||||
update_store_vendor_map: async (params: AnyObject): Promise<AnyObject> => {
|
||||
return await request.api('v2/store/UpdateStoreVendorMap','PUT',params)
|
||||
return await request.api('/v2/store/UpdateStoreVendorMap','PUT',params)
|
||||
},
|
||||
|
||||
|
||||
|
||||
@@ -2,8 +2,8 @@
|
||||
"name" : "京西菜市商家版",
|
||||
"appid" : "__UNI__F9A47D3",
|
||||
"description" : "1、商户通过京西平台同时管理美团、饿了么、京东等多个外卖平台实现一键上架、下架、修改、删除多个平台商品;2、商户通过京西平台可以同时对、美团专送、达达、顺丰同城等多个专送平台召唤偶骑手",
|
||||
"versionName" : "1.8.50",
|
||||
"versionCode" : 1850,
|
||||
"versionName" : "1.8.52",
|
||||
"versionCode" : 1852,
|
||||
"transformPx" : false,
|
||||
"uni-app" : {
|
||||
"debug" : true
|
||||
|
||||
@@ -70,8 +70,7 @@
|
||||
(sku.mtwmSyncStatus & 2) !== 2 &&
|
||||
(sku.mtwmSyncStatus & 4) !== 4
|
||||
"
|
||||
>美团:该商品无法修改价格,请联系运营修改</view
|
||||
>
|
||||
>美团:该商品无法修改价格,请联系运营修改</view>
|
||||
<view
|
||||
class="error eb"
|
||||
v-if="
|
||||
|
||||
@@ -503,9 +503,7 @@ function shoppingMangerFn() {
|
||||
currentValue.value = ''
|
||||
} else {
|
||||
currentValue.value = ''
|
||||
toast(
|
||||
+price < originalUnitPrice ? '修改成功' : '提交成功, 请等待审核'
|
||||
)
|
||||
toast(+price < originalUnitPrice ? '修改成功' : '提交成功, 请等待审核')
|
||||
}
|
||||
} else {
|
||||
toast('修改失败', 2)
|
||||
|
||||
@@ -80,6 +80,8 @@ const messageFn = function () {
|
||||
}
|
||||
let venderIDInfo = arr.find((item:AnyObject) => item.vendorID === '1')
|
||||
let ebStore = arr.find((item:AnyObject) => item.vendorID === '3')
|
||||
let jdStore = arr.find((item:AnyObject) => item.vendorID === '0')
|
||||
|
||||
|
||||
let res = await message.get_IM_user_list(data)
|
||||
// res = msgInfo.userList // 模拟数据
|
||||
@@ -89,10 +91,13 @@ const messageFn = function () {
|
||||
let newArr: any = []
|
||||
let fmtUserList = venderIDInfo ? res.data[`${venderIDInfo.appID}:${venderIDInfo.vendorStoreID}:1`] || [] : [] // 美团
|
||||
let febUserList = ebStore && JSON.stringify(ebStore) !== '{}' ? res.data[`${ebStore.appID}:${ebStore.vendorStoreID}:3`] || [] : [] // 饿百
|
||||
let jdUserList = jdStore && JSON.stringify(jdStore) !== '{}' ? res.data[`${jdStore.appID}:${jdStore.vendorStoreID}:0`] || [] : [] // 京东
|
||||
// let febUserList = res.data[`${ebStore.appID}:${ebStore.vendorStoreID}:3`] || []
|
||||
|
||||
let reverseList = fmtUserList.reverse()
|
||||
let reverseListEb = febUserList.reverse()
|
||||
let reverseListJD = jdUserList.reverse()
|
||||
|
||||
// 格式化数据
|
||||
reverseList.map((element: any) => {
|
||||
let resData = JSON.parse(element)
|
||||
@@ -163,6 +168,24 @@ const messageFn = function () {
|
||||
if (userList.orderID) getOrderInfo(userList.orderID, newArr.length - 1 )
|
||||
}
|
||||
|
||||
// 京东
|
||||
if(reverseListJD && reverseListJD.length>0){
|
||||
reverseListJD.forEach((element:string) => {
|
||||
let resData = JSON.parse(element)
|
||||
// console.log('京东消息,用户列表',resData)
|
||||
let latestMsgHandler = resData.latestMsg
|
||||
|
||||
let userList = {
|
||||
...resData,
|
||||
latestMsg: latestMsgHandler,
|
||||
latestTime: timeFormatDHM(+new Date(resData.latestTime )),
|
||||
orderInfo: {},
|
||||
orderDesc: ''
|
||||
}
|
||||
newArr.push(userList)
|
||||
});
|
||||
}
|
||||
|
||||
})
|
||||
userListData.value = newArr
|
||||
} else {
|
||||
|
||||
@@ -22,12 +22,13 @@
|
||||
:title="
|
||||
item.vendorID == 1
|
||||
? `【美团${item.orderDesc}】${item.userID === '0' ? '群发消息' : item.userID}`
|
||||
: `【饿了么】${item.userID}`
|
||||
: item.vendorID == 3 ? `【淘宝闪购】${item.userID}` : `【京东】${item.userID}`
|
||||
"
|
||||
:avatar="
|
||||
item.vendorID == 1
|
||||
? 'https://image.jxc4.com/image/75654ab606494a0efdb0cf7d7ad060d9.png'
|
||||
: 'https://image.jxc4.com/image/6c2f1dfd95890df8ef5e27bde15c4e7f.png'
|
||||
: item.vendorID == 3 ? 'https://image.jxc4.com/image/6c2f1dfd95890df8ef5e27bde15c4e7f.png'
|
||||
: 'https://image.jxc4.com/image/884664b80ffd2eda64a4aab9f4dc402e.png'
|
||||
"
|
||||
:note="item.latestMsg"
|
||||
:time="item.latestTime"
|
||||
|
||||
@@ -61,8 +61,8 @@
|
||||
>若退款造成的损失较大,建议联系顾客,自行上门取回退货。</text
|
||||
>
|
||||
<view class="btn-root">
|
||||
<view class="reject" @tap.stop="popup.open()">驳回</view>
|
||||
<view class="resolve" @tap.stop="handleAgree">同意</view>
|
||||
<view class="reject" @tap.stop="popup.open()" style="width: 86%;font-size: 40rpx;">驳回</view>
|
||||
<view class="resolve" @tap.stop="handleAgree" style="width: 14%;">同意</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
@@ -75,7 +75,7 @@
|
||||
</view>
|
||||
|
||||
<!-- 查看详情 -->
|
||||
<view class="detail-btn">查看详情</view>
|
||||
<view class="detail-btn" tyle="font-size: 40rpx;">查看详情</view>
|
||||
|
||||
<!-- 提示内容 -->
|
||||
<view class="tips-text">
|
||||
|
||||
@@ -224,7 +224,7 @@ const cancelTime = ref<any>()
|
||||
const timer = ref<any>()
|
||||
onShow(() => {
|
||||
if (props.item.lockStatus === -5) {
|
||||
let { purchaseVendorInfo } = store.state.serveInfo.sysInfo as any
|
||||
let { purchaseVendorInfo } = store.state.serveInfo.serviceInfo as any
|
||||
let { userApplyCancelWaitMinute } = purchaseVendorInfo[props.item.vendorID]
|
||||
let cancelTime1 =
|
||||
new Date(props.item.lockStatusTime).getTime() +
|
||||
|
||||
@@ -48,13 +48,14 @@
|
||||
|
||||
<!-- 确定自提 -->
|
||||
<template v-if="isSelfBtn">
|
||||
<!-- v-if="item.vendorID != 9" -->
|
||||
<view
|
||||
class="btn-picked"
|
||||
v-if="item.vendorID != 9"
|
||||
|
||||
@tap.stop="inputTakeCode"
|
||||
>输入自提码</view
|
||||
>
|
||||
<view class="btn-picked" v-else @tap.stop="jxSelfTake('jx')">完成自提</view>
|
||||
<!-- <view class="btn-picked" v-else @tap.stop="jxSelfTake('jx')">完成自提</view> -->
|
||||
</template>
|
||||
|
||||
<!-- 商家自送送达按钮 status 20 -->
|
||||
@@ -156,7 +157,8 @@ function inputTakeCode() {
|
||||
*/
|
||||
const takeCode = ref<any>() // 自提码
|
||||
function jxSelfTake(type: string) {
|
||||
if (type != 'jx' && takeCode.value == '') return toast('请输入自提码')
|
||||
// if (type != 'jx' && takeCode.value == '') return toast('请输入自提码')
|
||||
if (takeCode.value == '') return toast('请输入自提码')
|
||||
uni.jxConfirm({
|
||||
title: '自提订单',
|
||||
content: '是否完成自提(请确保用户已出示正确订单,以免引起不必要的损失)',
|
||||
@@ -164,7 +166,8 @@ function jxSelfTake(type: string) {
|
||||
let data = {
|
||||
vendorOrderID: props.item.vendorOrderID,
|
||||
vendorID: props.item.vendorID,
|
||||
selfTakeCode: type === 'jx' ? '135246' : takeCode.value,
|
||||
// selfTakeCode: type === 'jx' ? '135246' : takeCode.value,
|
||||
selfTakeCode: takeCode.value,
|
||||
}
|
||||
let res = await order.confirm_self_take(data)
|
||||
if (res.code == 0) {
|
||||
|
||||
@@ -22,6 +22,9 @@ function setUp() {
|
||||
// IM单聊状态是否开启-饿百
|
||||
const imEbStoreStatus = ref<number>(0)
|
||||
|
||||
// 门店是否可自提
|
||||
const isDeliverSelf = ref<boolean>(false)
|
||||
|
||||
// 美团门店信息
|
||||
const mtStoreInfo = ref<AnyObject>({})
|
||||
|
||||
@@ -64,6 +67,7 @@ function setUp() {
|
||||
})
|
||||
async function getStoreMsg() {
|
||||
// 读取vuex 中的 store 数据
|
||||
await store.dispatch('storeInfo/getOneStore', getStorage("storeID"))
|
||||
smsNotify.value = store.state.storeInfo.allStoreInfo.smsNotify
|
||||
printerDisabled.value = store.state.storeInfo.allStoreInfo.printerDisabled
|
||||
// 获取第三方美团门店
|
||||
@@ -83,6 +87,9 @@ function setUp() {
|
||||
let ebStataus = store.state.storeInfo.imOnlineStatus.filter(item => item.vendorID === 3)
|
||||
imEbStoreStatus.value = ebStataus.length > 0 ? ebStataus[0].imStatus : 0
|
||||
}
|
||||
|
||||
let jxStore = store.state.storeInfo.allStoreInfo.StoreMaps.find((item: { vendorID: number }) => item.vendorID === 9)
|
||||
if(jxStore && JSON.stringify(jxStore) !== '{}') isDeliverSelf.value = jxStore.deliverySelf === 1
|
||||
}
|
||||
// 网络打印机
|
||||
netPrinter.value = (store.state.serveInfo.serviceInfo as any).printerVendorInfo
|
||||
@@ -541,6 +548,20 @@ function setUp() {
|
||||
setStorage('defaultOrderReminder', orderReminder.value ? 1 : 0)
|
||||
}
|
||||
|
||||
|
||||
/***************************************************
|
||||
* 修改自提的类型
|
||||
*/
|
||||
async function switchJxDeliverySelf(e:AnyObject) {
|
||||
let res = await merchant.update_store_vendor_map({
|
||||
storeID:getStorage('storeID'),
|
||||
vendorID:9,
|
||||
payload:JSON.stringify({
|
||||
deliverySelf:e.detail.value ? 1 : 0
|
||||
})
|
||||
})
|
||||
}
|
||||
|
||||
return {
|
||||
copyRight, // 京西版权信息
|
||||
smsNotifyData, // 未拣货选项
|
||||
@@ -560,6 +581,8 @@ function setUp() {
|
||||
switchprinterDisabled, // 网络打印机禁用开关,
|
||||
imMtStoreStatus, // IM单聊状态是否开启
|
||||
imEbStoreStatus, // IM单聊状态是否开启 饿百
|
||||
isDeliverSelf, // 京西
|
||||
switchJxDeliverySelf, // 切换自送
|
||||
switchImMtStoreStatus, // 更改IM单聊门店状态
|
||||
isExistMtStore, // 是否绑定美团门店
|
||||
isExistEbStore, // 是否绑定饿百门店
|
||||
|
||||
@@ -173,6 +173,15 @@
|
||||
<view>营业时间设置</view>
|
||||
<jx-icon icon="gengduo" color="rgb(220, 220, 220)"></jx-icon>
|
||||
</view>
|
||||
<view class="item" >
|
||||
<view>自提(仅京西)</view>
|
||||
<switch
|
||||
:checked="isDeliverSelf"
|
||||
@change="switchJxDeliverySelf($event)"
|
||||
color="#4EB331"
|
||||
style="zoom: 0.85"
|
||||
/>
|
||||
</view>
|
||||
<view class="item" v-if="isExistEbStore" @tap="jumpInvoiceSet">
|
||||
<view>发票设置(饿百)</view>
|
||||
<jx-icon icon="gengduo" color="rgb(220, 220, 220)"></jx-icon>
|
||||
@@ -254,6 +263,8 @@ const {
|
||||
switchprinterDisabled, // 网络打印机禁用开关
|
||||
imMtStoreStatus, // IM单聊状态是否开启
|
||||
imEbStoreStatus, // IM单聊状态是否开启 饿百
|
||||
isDeliverSelf, // 京西
|
||||
switchJxDeliverySelf, // 切换自送
|
||||
switchImMtStoreStatus, // 更改IM单聊门店状态
|
||||
isExistMtStore, // 是否绑定美团门店
|
||||
isExistEbStore, // 是否绑定饿百门店
|
||||
|
||||
@@ -35,6 +35,7 @@ const msgChatFn = function () {
|
||||
*/
|
||||
let useData: AnyObject = {}
|
||||
let ebStore: AnyObject = {}
|
||||
let jdStore: AnyObject = {}
|
||||
onLoad((potion: any) => {
|
||||
let res:any = getStorage('vendorUserInfo')
|
||||
if(JSON.stringify(potion) === '{}') {
|
||||
@@ -50,13 +51,14 @@ const msgChatFn = function () {
|
||||
useData = useInfo
|
||||
}
|
||||
if (store.state.storeInfo.allStoreInfo.StoreMaps && store.state.storeInfo.allStoreInfo.StoreMaps.length > 0) ebStore = store.state.storeInfo.allStoreInfo.StoreMaps.find((item: { vendorID: number }) => item.vendorID === 3) // 饿百
|
||||
if (store.state.storeInfo.allStoreInfo.StoreMaps && store.state.storeInfo.allStoreInfo.StoreMaps.length > 0) jdStore = store.state.storeInfo.allStoreInfo.StoreMaps.find((item: { vendorID: number }) => item.vendorID === 0) // 京东
|
||||
|
||||
// 修改标题
|
||||
uni.setNavigationBarTitle({
|
||||
title:
|
||||
useData.vendorID == 1
|
||||
? `【美团${useData.orderDesc}】${useData.userID === '0' ? '群发消息' : useData.userID}`
|
||||
: `【饿了么】${useData.userID}`,
|
||||
: useData.vendorID == 3 ? `【淘宝闪购】${useData.userID}` : `【京东】${useData.userID}`,
|
||||
})
|
||||
|
||||
// 获取聊天数据
|
||||
@@ -74,8 +76,8 @@ const msgChatFn = function () {
|
||||
async function SetMsgRead() {
|
||||
let venderIDInfo = store.state.storeInfo.vendorStoreIDS
|
||||
let data = {
|
||||
appID: useData.vendorID === 1 ? venderIDInfo.appID : ebStore.vendorOrgCode,
|
||||
vendorStoreID: useData.vendorID === 1 ? venderIDInfo.MT : ebStore.vendorStoreID,
|
||||
appID: useData.vendorID === 1 ? venderIDInfo.appID : useData.vendorID === 3 ? ebStore.vendorOrgCode : jdStore.vendorOrgCode,
|
||||
vendorStoreID: useData.vendorID === 1 ? venderIDInfo.MT : useData.vendorID === 3 ? ebStore.vendorStoreID : jdStore.vendorStoreID,
|
||||
vendorID: "" + useData.vendorID,
|
||||
orderID: "" + useData.orderID ? useData.orderID : '0',
|
||||
userID: useData.userID
|
||||
@@ -92,9 +94,9 @@ const msgChatFn = function () {
|
||||
let venderIDInfo = store.state.storeInfo.vendorStoreIDS
|
||||
let data = {
|
||||
payLoad: JSON.stringify([{
|
||||
vendorStoreID: useData.vendorID === 1 ? venderIDInfo.MT : ebStore.vendorStoreID,
|
||||
vendorStoreID: useData.vendorID === 1 ? venderIDInfo.MT : useData.vendorID === 3 ? ebStore.vendorStoreID : jdStore.vendorStoreID,
|
||||
vendorID: "" + useData.vendorID,
|
||||
appID: useData.vendorID === 1 ? venderIDInfo.appID : ebStore.vendorOrgCode,
|
||||
appID: useData.vendorID === 1 ? venderIDInfo.appID : useData.vendorID === 3 ? ebStore.vendorOrgCode : jdStore.vendorOrgCode,
|
||||
userID: useData.userID
|
||||
}])
|
||||
}
|
||||
@@ -121,7 +123,7 @@ const msgChatFn = function () {
|
||||
newArr.push(msgList)
|
||||
}
|
||||
})
|
||||
} else {
|
||||
} else if(useData.vendorID === 3){
|
||||
// 饿百
|
||||
let newMsg = res.data[`${ebStore.vendorOrgCode}:${ebStore.vendorStoreID}:${useData.vendorID}:${useData.userID}`] || []
|
||||
newMsg.map((element: any, index: number) => {
|
||||
@@ -162,6 +164,25 @@ const msgChatFn = function () {
|
||||
newArr.push(msgList)
|
||||
}
|
||||
})
|
||||
}else if(useData.vendorID === 0){
|
||||
let newMsg = res.data[`${jdStore.vendorOrgCode}:${jdStore.vendorStoreID}:${useData.vendorID}:${useData.userID}`] || []
|
||||
newMsg.forEach((element:string) => {
|
||||
let resData = jxParse(element)
|
||||
if(resData.msgContent){
|
||||
let msg = JSON.parse(resData.msgContent.extendJsonData)
|
||||
let content = msg.body.type === 'text' ? msg.body.content : msg.body.type === 'image' ? msg.body.url : msg.body.content
|
||||
// console.log(msg,'msg','获取聊天详情,resData',resData,'useData',useData.userID)
|
||||
|
||||
let msgList = {
|
||||
sendType:'jd',
|
||||
...msg,
|
||||
msg_content: msg.body.type === 'text' ? analyEmoji(content) : msg.body.type === 'image' ? content : '未知' ,
|
||||
msg_source: useData.userID === msg.from.pin ? 2 : 1, // 目前全是客户发的消息
|
||||
msg_type: msg.body.type === 'text' ? 1 : msg.body.type === 'image' ? 2 : 99 // 目前只支持文本消息
|
||||
}
|
||||
newArr.push(msgList)
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
chatData.value = newArr
|
||||
@@ -355,11 +376,11 @@ const msgChatFn = function () {
|
||||
* 发送数据
|
||||
*/
|
||||
async function sendClick(msgData: AnyObject) {
|
||||
let venderIDInfo = useData.vendorID === 1 ? store.state.storeInfo.vendorStoreIDS : ebStore.vendorOrgCode
|
||||
let venderIDInfo = useData.vendorID === 1 ? store.state.storeInfo.vendorStoreIDS : useData.vendorID === 3 ? ebStore.vendorOrgCode : jdStore.vendorOrgCode
|
||||
let data = {
|
||||
sendType: useData.vendorID === 1 ? "mt" : "elm",
|
||||
app_id: useData.vendorID === 1 ? venderIDInfo.appID : ebStore.vendorOrgCode,
|
||||
app_poi_code: useData.vendorID === 1 ? venderIDInfo.MT : ebStore.vendorStoreID,
|
||||
sendType: useData.vendorID === 1 ? "mt" : useData.vendorID === 3 ? "elm" : 'jd',
|
||||
app_id: useData.vendorID === 1 ? venderIDInfo.appID : useData.vendorID === 3 ? ebStore.vendorOrgCode : jdStore.vendorOrgCode,
|
||||
app_poi_code: useData.vendorID === 1 ? venderIDInfo.MT : useData.vendorID === 3 ? ebStore.vendorStoreID : jdStore.vendorStoreID,
|
||||
cts: Math.round(new Date().getTime() / 1000).toString(),
|
||||
msg_content: msgData.type === 1 ? analyEmoji(msgData.msg) : msgData.msg,
|
||||
msg_id: Math.round(new Date().getTime()).toString(),
|
||||
@@ -396,7 +417,7 @@ const msgChatFn = function () {
|
||||
}
|
||||
})
|
||||
}
|
||||
} else {
|
||||
} else if(useData.vendorID === 3){
|
||||
let chatDataItem = chatData.value.filter(item => item.msg_source === 2)
|
||||
sendMsg = {
|
||||
platformShopId: chatDataItem[0].platformShopId,
|
||||
@@ -426,6 +447,44 @@ const msgChatFn = function () {
|
||||
data: { ...sendMsg }
|
||||
})
|
||||
}
|
||||
}else if(useData.vendorID === 0){
|
||||
sendMsg = {
|
||||
vendorOrgCode: jdStore.vendorOrgCode,
|
||||
sendData:JSON.stringify({
|
||||
vendorID: 0,
|
||||
storeId:jdStore.storeID,
|
||||
data:{
|
||||
id: '' + Math.round(new Date().getTime()).toString() + 184572 , // uuid //随机生成一个字符串
|
||||
lang: "zh_CN",
|
||||
type: "chat_message",
|
||||
from: {
|
||||
pin:chatData.value[0].to.pin,
|
||||
app:'im.waiter', // 固定不变
|
||||
clientType:'android'
|
||||
},
|
||||
to: {
|
||||
pin:chatData.value[0].from.pin,
|
||||
app:'im.customer', // 固定不变
|
||||
},
|
||||
body: {
|
||||
type:msgData.type === 1 ? "text" : "image", // 消息类型
|
||||
content:msgData.msg,
|
||||
chatinfo:{
|
||||
venderId:chatData.value[0].body.chatinfo.venderId,
|
||||
askAllocateType:chatData.value[0].body.chatinfo.askAllocateType,
|
||||
sid:chatData.value[0].body.chatinfo.sid,
|
||||
source:chatData.value[0].body.chatinfo.source
|
||||
},
|
||||
template:{
|
||||
source:'dd_msg_583984a984834b1889f853be6e449f39_e66c448b9fbe4704901925d3217081a3' // 文本固定不变 //卡片类消息必传
|
||||
},
|
||||
mt:60,
|
||||
},
|
||||
timestamp:new Date().getTime(), // 时间戳
|
||||
clientTime:new Date().getTime() // 客户端时间
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
let res = await message.send_to_vendor(sendMsg)
|
||||
|
||||
@@ -114,8 +114,8 @@
|
||||
>若退款造成的损失较大,建议联系顾客,自行上门取回退货。</view
|
||||
>
|
||||
<view class="btn-group">
|
||||
<text class="refuse" @tap.stop="popup.open()">驳回</text>
|
||||
<text class="agree" @tap.stop="handleAgree">同意</text>
|
||||
<text class="refuse" @tap.stop="popup.open()" style="width: 82%;">驳回</text>
|
||||
<text class="agree" @tap.stop="handleAgree" style="width: 14%;margin-left: 6rpx;">同意</text>
|
||||
</view>
|
||||
</view>
|
||||
<!-- 已进行审核操作 -->
|
||||
|
||||
Reference in New Issue
Block a user