Commit a79bb366 by wuyang.zou

Add Table Column For Save Local Order Input Pos Record

Add ActionId:14 For Query Record History
Add New Feature: Skip Print & Retry Input Pos
parent d492f27e
......@@ -70,14 +70,29 @@ private:
QString orderId;
int pullErrorCount;
QString callBackUrl;
}PullOrderInfo;
bool skipPrint;
} PullOrderInfo;
typedef struct TO_DELAY_PULL_ORDER
{
QString channel;
QString orderId;
QString callBackUrl;
}DelayPullOrderInfo;
bool skipPrint;
} DelayPullOrderInfo;
typedef struct QUERY_ORDER_INPUT_POS_RECORD
{
QString channel;
QString orderId;
int status;
} QueryOrderInputPosRecord;
typedef struct ORDER_OPERATION
{
......@@ -85,7 +100,8 @@ private:
int result;//1:成功,0:失败
QString orderId;
}OrderOperation;
} OrderOperation;
//存放向OMS汇报的结构体: 订单入机POS的情况;
typedef struct REPORTOMS_ORDERRECORD
......@@ -102,12 +118,13 @@ private:
QString failCode; // 入机/存储 错误码 (成功时都给 "");
QString posPluginVersion; //该订单入机后, 汇报给OMS对应程序的版本号;
int reqResult; //向OMS请求汇报结果;
}RepOMSRecordOrderInfo;
} RepOMSRecordOrderInfo;
//定义门店的营业状态;
typedef enum {
UNKNOWN=0,OPEN=1,CLOSE=2 /*0:未知;1:开店;2:关店*/
}StoreStatus;
} StoreStatus;
private:
// 门店信息
......@@ -361,7 +378,7 @@ private slots:
* 参数:[1]订单编号
* 返回:是否成功
* */
bool _PullOrderDetail( const QString &orderId, const QString &channel, const QString &callBackUrl, const bool &skipErrorDisplay = false );
bool _PullOrderDetail( const QString& orderId, const QString& channel, const QString& callBackUrl, const bool& skipPrint = false, const bool& skipErrorDisplay = false );
/* 功能:拉取订单
* 参数:NULL
* 返回:是否成功
......@@ -420,9 +437,9 @@ private slots:
QString _Penny2Dollar(int penny);
void _GetIpAddress();
void _AddOrderPull ( const QString& orderId=0, const QString& channel=0, const QString& callBackUrl="", const int& pageNumber=1, const int& pageSize=30 );
void _AddOrderPull ( const QString& orderId=0, const QString& channel=0, const QString& callBackUrl="", const bool& skipPrint=false, const int& pageNumber=1, const int& pageSize=30 );
// 避免获取较多历史订单的同时,OMS又有推单过来,导致死锁;
bool _TryAddOrderPull(const QString &orderId=0, const QString &channel=0, const QString &callBackUrl="", const int &pageNumber=1, const int &pageSize=30);
bool _TryAddOrderPull ( const QString& orderId=0, const QString& channel=0, const QString& callBackUrl="", const bool& skipPrint=false, const int& pageNumber=1, const int& pageSize=30);
//点击屏幕指定区域
void _ClickOMSAssignArea();
......@@ -649,6 +666,14 @@ public slots:
bool _ResponseOMS13Request(const QJsonObject &content, QJsonObject &data, QString &error);
/**
*功能:FM外卖插件为响应OMS推送 查询订单入机情况 请求[action:14 -> OMS->PosPlugin ]准备返回数据
*参数:1、请求json参数;2、准备返回请求数据的Buff;3、返回错误信息;
*返回:是否查询成功;
**/
bool _ResponseOMS14Request(const QJsonObject& content, QJsonObject& data, QString& error);
/**
*功能:FM外卖插件为响应盒马生鲜 推订单请求[action:21]准备返回数据
*参数:1、请求json参数;2、准备返回请求数据的Buff;3、返回错误信息;
*返回:是否准备成功;
......
......@@ -30,6 +30,15 @@ public:
**/
bool alterTableSimProcOrderDB();
/**
*功能:修改 SimProcOrderDB表字段: 新增多个入机状态字段;
*参数:[无]
*返回:true:修改成功,false:修改失败
**/
bool alterTableSimProcOrderDB_2022();
/**
*功能:插入一条Simphony返回小票号的订单新数据
*参数:[1]订单号 [2]创建时间
......
......@@ -110,6 +110,7 @@ class OrderObject : public QObject
Q_PROPERTY (QString carNumber READ getCarNumber WRITE setCarNumber)
Q_PROPERTY (QString privacyPhone READ getPrivacyPhone WRITE setPrivacyPhone)
Q_PROPERTY (QString callBackUrl READ getCallBackUrl WRITE setCallBackUrl)
Q_PROPERTY (bool skipPrint READ getSkipPrint WRITE setSkipPrint)
public:
OrderObject(QObject *parent=0)
......@@ -236,7 +237,8 @@ public:
QString remindTicketTime; // 提醒小票时间
QString carNumber; // 车牌号
QString privacyPhone; // 隐私号
QString callBackUrl; // 为阿里云配置新域名, 用于获取订单详情, 和汇报订单入机情况: 拉取订单详情成功时手动添加到订单json报文体中为了入机汇报接口;
QString callBackUrl; // 为 Fulfillment Service 后多个OMS, 用于获取订单详情, 和汇报订单入机情况: 拉取订单详情成功时手动添加到订单json报文体中为了入机汇报接口;
bool skipPrint; // 上游推送的订单 是否跳过打印;
int forwardPosStatus; // 正向单入机状态: 0:未知 1: 成功 2:失败;
int negativePosStatus; // 负向单同上;
......@@ -542,6 +544,8 @@ public:
inline QString getCallBackUrl()const{return callBackUrl;}
inline void setCallBackUrl(const QString& v){callBackUrl = v;}
inline bool getSkipPrint()const{return skipPrint;}
inline void setSkipPrint(const bool& v){skipPrint = v;}
};
#endif // ORDEROBJECT_H
......@@ -163,6 +163,7 @@
#define JSON_POSIPADDRESS "posAddress"
#define JSON_CHANNEL "channel"
#define JSON_CALL_BACK_URL "callBackUrl"
#define JSON_SKIP_PRINT "skipPrint"
#define JSON_BUSINESSSTATUS "business_status"
#define JSON_CODE "code"
#define JSON_PAGENUMBER "pageNo"
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment