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