card_person.h 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. #ifndef _card_person_h_
  2. #define _card_person_h_
  3. #include "card_base.h"
  4. #include "card_area.h"
  5. struct person:card_location_base, card_area
  6. {
  7. int m_workLine=0;
  8. int m_worktype_id=0;
  9. int m_thour{-1};
  10. uint16_t m_charge_value{0};
  11. uint16_t m_discharge_value{0};
  12. uint16_t m_ctflag{0};
  13. uint8_t m_power{0};
  14. uint8_t m_index{0};
  15. uint8_t m_card_generation{1};
  16. time_t m_iris_recognition_timeval = 0;
  17. static int m_limit_detained_time;
  18. static int m_auto_up_mine_time;
  19. static int m_person_cards_flag;
  20. std::weak_ptr<monkey_person> m_monkeyPerson;
  21. std::string m_stafferName,m_deptName;
  22. std::array<uint8_t,5> m_value;
  23. person(const std::string &type,uint32_t cardid,uint16_t needdisplay,int16_t t,int32_t deptid,int32_t level_id,uint32_t cid,int wl,const std::string &sname,const std::string &dname,int workrype_id);
  24. ~person();
  25. void clear();
  26. void reset(std::shared_ptr<monkey_person> mp);
  27. void on_timer();
  28. void IKSDK_DB(int);
  29. point getSmoothPoint(uint64_t& t);
  30. void print_card_detained();
  31. virtual void site_hover(int sid);
  32. virtual void get_card(bool f);
  33. virtual std::shared_ptr<mine_tool> get_mine_tool();
  34. virtual void do_business(const std::shared_ptr<site>&site,const point &pt);
  35. virtual void set_area_info(int mapid,double scale,int areaid,uint64_t t,int type);
  36. virtual void handle_message(uint16_t ct,uint8_t &value);
  37. virtual std::shared_ptr<area_tool> get_area_tool()
  38. {
  39. return m_area_tool;
  40. }
  41. virtual int get_workline()
  42. {
  43. return m_workLine;
  44. }
  45. };
  46. #endif