package com.bonus.canteen.core.customer.model;

import java.io.Serializable;

public class PigxUser implements Serializable {
   private Long id;
   private Long merchantId;
   private Long canteenEffId;
   private Long custEffId;
   private Long dishesEffId;
   private String roleCode;
   private String username;

   public static PigxUserBuilder builder() {
      return new PigxUserBuilder();
   }

   public void setId(final Long id) {
      this.id = id;
   }

   public void setMerchantId(final Long merchantId) {
      this.merchantId = merchantId;
   }

   public void setCanteenEffId(final Long canteenEffId) {
      this.canteenEffId = canteenEffId;
   }

   public void setCustEffId(final Long custEffId) {
      this.custEffId = custEffId;
   }

   public void setDishesEffId(final Long dishesEffId) {
      this.dishesEffId = dishesEffId;
   }

   public void setRoleCode(final String roleCode) {
      this.roleCode = roleCode;
   }

   public void setUsername(final String username) {
      this.username = username;
   }


   public PigxUser(final Long id, final Long merchantId, final Long canteenEffId, final Long custEffId, final Long dishesEffId, final String roleCode, final String username) {
      this.id = id;
      this.merchantId = merchantId;
      this.canteenEffId = canteenEffId;
      this.custEffId = custEffId;
      this.dishesEffId = dishesEffId;
      this.roleCode = roleCode;
      this.username = username;
   }

   public PigxUser() {
   }

   public Long getId() {
      return this.id;
   }

   public Long getMerchantId() {
      return this.merchantId;
   }

   public Long getCanteenEffId() {
      return this.canteenEffId;
   }

   public Long getCustEffId() {
      return this.custEffId;
   }

   public Long getDishesEffId() {
      return this.dishesEffId;
   }

   public String getRoleCode() {
      return this.roleCode;
   }

   public String getUsername() {
      return this.username;
   }

   public static class PigxUserBuilder {
      private Long id;
      private Long merchantId;
      private Long canteenEffId;
      private Long custEffId;
      private Long dishesEffId;
      private String roleCode;
      private String username;

      PigxUserBuilder() {
      }

      public PigxUserBuilder id(final Long id) {
         this.id = id;
         return this;
      }

      public PigxUserBuilder merchantId(final Long merchantId) {
         this.merchantId = merchantId;
         return this;
      }

      public PigxUserBuilder canteenEffId(final Long canteenEffId) {
         this.canteenEffId = canteenEffId;
         return this;
      }

      public PigxUserBuilder custEffId(final Long custEffId) {
         this.custEffId = custEffId;
         return this;
      }

      public PigxUserBuilder dishesEffId(final Long dishesEffId) {
         this.dishesEffId = dishesEffId;
         return this;
      }

      public PigxUserBuilder roleCode(final String roleCode) {
         this.roleCode = roleCode;
         return this;
      }

      public PigxUserBuilder username(final String username) {
         this.username = username;
         return this;
      }

      public PigxUser build() {
         return new PigxUser(this.id, this.merchantId, this.canteenEffId, this.custEffId, this.dishesEffId, this.roleCode, this.username);
      }

      public String toString() {
         return "PigxUser.PigxUserBuilder(id=" + this.id + ", merchantId=" + this.merchantId + ", canteenEffId=" + this.canteenEffId + ", custEffId=" + this.custEffId + ", dishesEffId=" + this.dishesEffId + ", roleCode=" + this.roleCode + ", username=" + this.username + ")";
      }
   }
}
