การแมปข้อมูลพนักงาน Smaregi กับข้อมูลพนักงานของ Receipt Roller

สมาเรจิ พนักงาน การเชื่อมต่อ POS การแมปข้อมูล

ข้อมูลหลักพนักงานของ Smaregi จะถูกแปลงเป็น ข้อมูลพนักงานของ Receipt Roller (StaffDto) โดยอัตโนมัติหลังจากเชื่อมต่อกับเครื่อง POS แล้ว บทความนี้สรุปความสัมพันธ์ของแต่ละฟิลด์ และข้อควรระวังเฉพาะของ Smaregi

วิธีการซิงค์ข้อมูลด้วยตนเอง ให้คลิก "ซิงค์กับ Smaregi" จากเมนูด้านขวาบนของหน้าจอพนักงาน รายละเอียดเพิ่มเติมดูได้ที่ การตั้งค่าเชื่อมต่อ POS ของ Smaregi

ตารางเทียบฟิลด์

Smaregi /pos/staffs Receipt Roller (StaffDto) หมายเหตุ
staffIdSmaregiStaffIdID ภายในของ Smaregi ใช้เป็นคีย์อ้างอิงเมื่อซิงค์ซ้ำ
staffCodeEmployeeNumberบันทึกเป็นหมายเลขพนักงาน
staffNameLastName + FirstName + DisplayNameแยกเป็นนามสกุลและชื่อจริงด้วยช่องว่าง (เช่น "下田 昌平" → LastName=下田 / FirstName=昌平) หากไม่มีช่องว่าง ข้อความทั้งหมดจะถูกใส่ใน LastName และ FirstName จะว่างเปล่า ส่วน DisplayName จะเก็บข้อความต้นฉบับไว้ทั้งหมด
emailEmailหากเป็นค่าว่าง ระบบจะคงค่าเดิมที่มีอยู่ในฝั่ง RR ไว้
displayFlagIsActive"0"(ไม่แสดง)จะไม่ถูกซิงค์ ส่วน "1" คือ IsActive = true

รายการที่ไม่ถูกนำเข้า

เนื่องจากข้อกำหนดของ Smaregi endpoint /pos/staffs ฟิลด์ต่อไปนี้ในฝั่ง RR ไม่มีข้อมูลที่ตรงกัน จึงต้องลงทะเบียนแยกต่างหากในฝั่ง RR เอง และจะไม่ถูกเขียนทับเมื่อซิงค์ซ้ำ

  • หมายเลขโทรศัพท์Phone
  • วันเดือนปีเกิดDateOfBirth
  • วันที่เข้าทำงานHireDate
  • ประเภทการจ้างงานEmploymentType)— พนักงานประจำ พาร์ทไทม์ สัญญาจ้าง ฯลฯ
  • ค่าจ้างรายชั่วโมงHourlyRate
  • ที่อยู่ / ผู้ติดต่อฉุกเฉิน
  • ตำแหน่งงานPosition)— Smaregi ส่งคืนค่า roleId แต่การแปลความหมายของชื่อตำแหน่งต้องใช้ endpoint แยกต่างหาก จึงยังไม่รองรับในเวอร์ชันปัจจุบัน
  • สาขาที่สังกัดAssignedStoreIds)— Smaregi /pos/staffs ไม่ส่งคืนข้อมูลสาขา
  • คำอ่านชื่อ-นามสกุล (คะนะ)LastNameKana / FirstNameKana)— เนื่องจาก StaffDto ยังไม่มีฟิลด์ที่รองรับ โดยมีแผนจะใช้ staffNameKana ในอนาคต

การจับคู่ข้อมูลและการลงทะเบียนใหม่

เมื่อนำเข้าข้อมูลพนักงานจาก Smaregi ระบบจะจับคู่กับพนักงานที่มีอยู่แล้วโดยใช้ SmaregiStaffId ที่ตรงกันทั้งหมดเท่านั้น หากไม่ตรงกัน จะถูกลงทะเบียนเป็นพนักงานใหม่ ระบบจะไม่จับคู่อัตโนมัติด้วยชื่อหรือหมายเลขพนักงาน

จังหวะเวลาในการซิงค์

  • Smaregi → RR: ทำงานแบบแมนนวลผ่านปุ่ม "ซิงค์กับ Smaregi" ที่เมนูด้านขวาบนของหน้าจอพนักงาน ระบบจะดึงพนักงานทั้งหมดจาก /pos/staffs และจับคู่ด้วย SmaregiStaffId เพื่อเพิ่มหรืออัปเดตข้อมูล
  • พฤติกรรมเมื่อซิงค์ซ้ำ: พนักงานที่มีอยู่แล้ว(ที่มี SmaregiStaffId ตรงกัน)จะถูกเขียนทับในฟิลด์ EmployeeNumber / LastName / FirstName / DisplayName / Email / IsActive ส่วนฟิลด์ที่เพิ่มในฝั่ง RR เช่น HourlyRate / HireDate / EmploymentType / Position / AssignedStoreIds / ผู้ติดต่อฉุกเฉิน จะยังคงอยู่ไม่ถูกเขียนทับ
  • RR → Smaregi: ยังไม่รองรับในเวอร์ชันปัจจุบัน พนักงานที่ลงทะเบียนในฝั่ง RR จะไม่ถูกส่งกลับไปยัง Smaregi โดยอัตโนมัติ

การระบุผู้รับผิดชอบในข้อมูลการขาย

เมื่อซิงค์ข้อมูลหลักพนักงานไว้แล้ว ระบบจะสามารถระบุ RR staff record จาก staffId ที่อยู่ในข้อมูลการขาย(PosTransactionDto)ได้โดยอัตโนมัติ ทำให้การแสดงผลใบเสร็จและการรวมยอดขายตามผู้รับผิดชอบแสดงเป็น "ชื่อพนักงานที่ลงทะเบียนใน RR" แทนที่จะเป็น "ID ภายในของ Smaregi"

หากยังไม่ได้ซิงค์ข้อมูลหลักพนักงาน ระบบจะใช้ค่า staffName(ชื่อที่แสดงในฝั่ง Smaregi)ในข้อมูลการขายตามเดิม

ข้อควรระวัง

  • หากมีการลบพนักงานออกจริงในฝั่ง Smaregi การจับคู่ด้วย SmaregiStaffId จะใช้งานไม่ได้อีกต่อไป แนะนำให้ใช้การซ่อนด้วย displayFlag แทนการลบจริงในฝั่ง Smaregi
  • แม้จะตั้งค่า IsActive = false(สถานะลาออก)ในฝั่ง RR การระบุผู้รับผิดชอบของรายการขายในอดีตจะยังคงทำงานได้ตามปกติ กรุณาอย่าลบข้อมูลพนักงานที่ลาออกแล้ว
  • การแยกนามสกุล/ชื่อโดยอัตโนมัติเป็นการประมวลผลอย่างง่ายโดย "แบ่งด้วยช่องว่างแรกที่พบเป็น 2 ส่วน" ชื่อที่มีนามสกุลผสมหรือมีตั้งแต่ 3 คำขึ้นไปอาจถูกแบ่งไม่ตรงตามที่ตั้งใจ สามารถแก้ไขเป็นรายบุคคลได้ในฝั่ง RR หลังการซิงค์
  • หากพนักงาน 1 คนรับผิดชอบหลายสาขา กรุณาตั้งค่าหลายสาขาใน AssignedStoreIds ที่ฝั่ง RR ด้วยตนเองหลังการซิงค์

คู่มือที่เกี่ยวข้อง

เผยแพร่เมื่อ: 2569-05-29 อัปเดตเมื่อ: 2569-07-03
บทความที่เกี่ยวข้อง