#ifndef PUBCONTACT_H #define PUBCONTACT_H #include <topcore/topclassabs.h> class QVBoxLayout; class PubOtherDataLineEditWideget; class PubOtherDataTextEditWideget; class TFormLayout; class TPushButton; class TTableView; class TUiLoader; class SysContact : public TopClassAbs { Q_OBJECT public: explicit SysContact(const QString &iModuleNameStr = QString(""), const QVariantMap iUrlPars = QVariantMap(), QWidget *iParent = nullptr); ~SysContact(); signals: void countChanged(); public slots: void setObjectState(QStringList iObjNames, QString iStateStr); static QObject *newDataItem(QObject *iObj, const QString &iTypeStr, const QVariant &iParamVar); void reload(); void copy(); void create(); void clearData(); void setData(const QVariantMap &iDataMap); QVariantMap getData() const; void saveData(); TUiLoader *uiLoader(); void setDefaultSource(const QString &iSource); void addRelevantContacts(); void setContactRelation(); void OnHeadPortraitBtnClicked(); void OnCompanyBtnClicked(QString pSource); void moveRowsUpOrDown(bool iIsUp); void removeSelectedRows(); QStringList getEditableComboBoxList(const QString& iEnumName); protected: void uidChangeEvent(const QString &iUidStr); virtual void resizeEvent(QResizeEvent *iEvent); private slots: void onDoSearch(const QString &iSearchStr, const QVariant &iOptions); private: QVariantList getTransferedTableData(const QVariantList &iDataLst); void initSearchEntry(); void initUiItemMode(); QVariantList getAllCustomerList(); QVariantList getAllSupplierList(); QVariantList getAllContactList(QVariantList iExistIdLst); QString getLogRemarkInfo(QVariantMap iOldData, QVariantMap iNewData); QVBoxLayout *mBodyLayout = nullptr; TUiLoader *mUiLoader = nullptr; TTableView *mRelatedTableView = nullptr; //TPushButton *mHeadPortraitBtn = nullptr; //QByteArray mHeadPortraitInfo; QStringList mSearchKey = QStringList(); QString mDefaultSource = ""; }; #endif // PUBCONTACT_H