card_person.h 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  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{0};
  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 handle_three_rates(const point & pt);
  28. void on_timer();
  29. void IKSDK_DB(int);
  30. point getSmoothPoint(uint64_t& t);
  31. void print_card_detained();
  32. virtual void site_hover(int sid);
  33. virtual void get_card(bool f);
  34. virtual std::shared_ptr<mine_tool> get_mine_tool();
  35. virtual void do_business(const std::shared_ptr<site>&site,const point &pt,double acc);
  36. virtual void set_area_info(int mapid,double scale,int areaid,uint64_t t,int type);
  37. virtual void handle_message(uint16_t ct,uint8_t &value);
  38. virtual std::shared_ptr<area_tool> get_area_tool()
  39. {
  40. return m_area_tool;
  41. }
  42. virtual int get_workline()
  43. {
  44. return m_workLine;
  45. }
  46. };
  47. #endif