autopackform.h 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. #ifndef AUTOPACKFORM_H
  2. #define AUTOPACKFORM_H
  3. #include <QWidget>
  4. #include "globalinfo.h"
  5. #include "handle/remotepackconfig.h"
  6. #include "packinfo.h"
  7. #include "httprequestid.h"
  8. #include "handle/danjumuban.h"
  9. #include "handle/database.h"
  10. namespace Ui {
  11. class AutoPackForm;
  12. }
  13. // NOTE:页面逻辑部份注意耦合,页面可能重用
  14. class AutoPackForm : public QWidget
  15. {
  16. Q_OBJECT
  17. public:
  18. explicit AutoPackForm(QWidget *parent = nullptr);
  19. ~AutoPackForm();
  20. inline void setProInfo(const ProjectInfo & info){_info = info;}
  21. public slots:
  22. void upconfig(const DaBaoConfig & config);
  23. void upDengjiInfo(const QList<DengJiConfigItem> & dengJis);
  24. void init();
  25. signals:
  26. void back();
  27. void djmbbox(QImage image);
  28. private slots:
  29. void on_pushBack_clicked();
  30. void on_addPackList_clicked();
  31. void doSend(QSharedPointer<PackInfo> & info);
  32. void on_pushStart_clicked();
  33. void on_addBoxList_clicked();
  34. void httpResult(int emitcode, const QJsonObject body);
  35. void insertDetailsSQL(QSharedPointer<BoxInfo> boxes,QString codeSingle);
  36. void insertProductSQL(QSharedPointer<PackInfo> packes);
  37. private:
  38. Ui::AutoPackForm *ui;
  39. ProjectInfo _info;
  40. QSharedPointer<PackInfo> packinfo;
  41. QMap<QString,DengJiConfigItem> dengjiMap;// <name,详细信息>
  42. RemotePackConfig packConfig;
  43. HttpRequest _request;
  44. DanJuMuBan djmb;
  45. Database database;
  46. details_data detailsData;
  47. product_data productData;
  48. QJsonObject toJson(QSharedPointer<PackInfo> &info);
  49. };
  50. #endif // AUTOPACKFORM_H