#ifndef ADDPERSONFORM_H #define ADDPERSONFORM_H #include <QWidget> #include <QFile> #include "QDblClickLabel.h" #include "OperationTipsDialog.h" #include "casic/ProMemory.h" #include "dao/util/CacheManager.h" #include "utils/UtilInclude.h" namespace Ui { class AddPersonForm; } class AddPersonForm : public QWidget { Q_OBJECT public: explicit AddPersonForm(QWidget *parent = nullptr); ~AddPersonForm(); void setPersonId(QString personId); void updateFormTitle(QString title); void loadPersonInfo(QString personId); void clearPersonInfo(); public slots: void drawImageOnForm(QImage imageDisp); void onFailedCaptureFace(); void onSuccessCaptureFace(QString personIdByFace); private slots: void on_btnBack_clicked(); void on_btnHome_clicked(); void on_btnSave_clicked(); void onPhotoFaceDoubleClicked(); void onPhotoIrisDoubleClicked(); private: Ui::AddPersonForm *ui; QString personId; QString face; // 人脸图像数据 QByteArray faceCode; // 人脸特征编码数据 bool faceReCaptured; // 编辑时是否需要更新人脸数据 QLabel * faceLabel; // 采集人脸时显示的画面 bool validateForm(); void registPerson(); void editPersonInfo(); signals: void switchToUserListForm(); void backToHomePage(); void startCaptureFace(); }; #endif // ADDPERSONFORM_H