/*
 * This file is generated by jOOQ.
 */
package com.git.hui.boot.jooq.dao.tables.records;


import com.git.hui.boot.jooq.dao.tables.UserTB;

import javax.annotation.Generated;

import org.jooq.Field;
import org.jooq.Record1;
import org.jooq.Record6;
import org.jooq.Row6;
import org.jooq.impl.UpdatableRecordImpl;
import org.jooq.types.UInteger;


/**
 * This class is generated by jOOQ.
 */
@Generated(
    value = {
        "http://www.jooq.org",
        "jOOQ version:3.12.3"
    },
    comments = "This class is generated by jOOQ"
)
@SuppressWarnings({ "all", "unchecked", "rawtypes" })
public class UserPO extends UpdatableRecordImpl<UserPO> implements Record6<UInteger, String, String, Byte, String, String> {

    private static final long serialVersionUID = 603878842;

    /**
     * Setter for <code>test.user.id</code>.
     */
    public void setId(UInteger value) {
        set(0, value);
    }

    /**
     * Getter for <code>test.user.id</code>.
     */
    public UInteger getId() {
        return (UInteger) get(0);
    }

    /**
     * Setter for <code>test.user.name</code>. 用户名
     */
    public void setName(String value) {
        set(1, value);
    }

    /**
     * Getter for <code>test.user.name</code>. 用户名
     */
    public String getName() {
        return (String) get(1);
    }

    /**
     * Setter for <code>test.user.pwd</code>. 密码
     */
    public void setPwd(String value) {
        set(2, value);
    }

    /**
     * Getter for <code>test.user.pwd</code>. 密码
     */
    public String getPwd() {
        return (String) get(2);
    }

    /**
     * Setter for <code>test.user.isDeleted</code>.
     */
    public void setIsdeleted(Byte value) {
        set(3, value);
    }

    /**
     * Getter for <code>test.user.isDeleted</code>.
     */
    public Byte getIsdeleted() {
        return (Byte) get(3);
    }

    /**
     * Setter for <code>test.user.created</code>.
     */
    public void setCreated(String value) {
        set(4, value);
    }

    /**
     * Getter for <code>test.user.created</code>.
     */
    public String getCreated() {
        return (String) get(4);
    }

    /**
     * Setter for <code>test.user.updated</code>.
     */
    public void setUpdated(String value) {
        set(5, value);
    }

    /**
     * Getter for <code>test.user.updated</code>.
     */
    public String getUpdated() {
        return (String) get(5);
    }

    // -------------------------------------------------------------------------
    // Primary key information
    // -------------------------------------------------------------------------

    @Override
    public Record1<UInteger> key() {
        return (Record1) super.key();
    }

    // -------------------------------------------------------------------------
    // Record6 type implementation
    // -------------------------------------------------------------------------

    @Override
    public Row6<UInteger, String, String, Byte, String, String> fieldsRow() {
        return (Row6) super.fieldsRow();
    }

    @Override
    public Row6<UInteger, String, String, Byte, String, String> valuesRow() {
        return (Row6) super.valuesRow();
    }

    @Override
    public Field<UInteger> field1() {
        return UserTB.USER.ID;
    }

    @Override
    public Field<String> field2() {
        return UserTB.USER.NAME;
    }

    @Override
    public Field<String> field3() {
        return UserTB.USER.PWD;
    }

    @Override
    public Field<Byte> field4() {
        return UserTB.USER.ISDELETED;
    }

    @Override
    public Field<String> field5() {
        return UserTB.USER.CREATED;
    }

    @Override
    public Field<String> field6() {
        return UserTB.USER.UPDATED;
    }

    @Override
    public UInteger component1() {
        return getId();
    }

    @Override
    public String component2() {
        return getName();
    }

    @Override
    public String component3() {
        return getPwd();
    }

    @Override
    public Byte component4() {
        return getIsdeleted();
    }

    @Override
    public String component5() {
        return getCreated();
    }

    @Override
    public String component6() {
        return getUpdated();
    }

    @Override
    public UInteger value1() {
        return getId();
    }

    @Override
    public String value2() {
        return getName();
    }

    @Override
    public String value3() {
        return getPwd();
    }

    @Override
    public Byte value4() {
        return getIsdeleted();
    }

    @Override
    public String value5() {
        return getCreated();
    }

    @Override
    public String value6() {
        return getUpdated();
    }

    @Override
    public UserPO value1(UInteger value) {
        setId(value);
        return this;
    }

    @Override
    public UserPO value2(String value) {
        setName(value);
        return this;
    }

    @Override
    public UserPO value3(String value) {
        setPwd(value);
        return this;
    }

    @Override
    public UserPO value4(Byte value) {
        setIsdeleted(value);
        return this;
    }

    @Override
    public UserPO value5(String value) {
        setCreated(value);
        return this;
    }

    @Override
    public UserPO value6(String value) {
        setUpdated(value);
        return this;
    }

    @Override
    public UserPO values(UInteger value1, String value2, String value3, Byte value4, String value5, String value6) {
        value1(value1);
        value2(value2);
        value3(value3);
        value4(value4);
        value5(value5);
        value6(value6);
        return this;
    }

    // -------------------------------------------------------------------------
    // Constructors
    // -------------------------------------------------------------------------

    /**
     * Create a detached UserPO
     */
    public UserPO() {
        super(UserTB.USER);
    }

    /**
     * Create a detached, initialised UserPO
     */
    public UserPO(UInteger id, String name, String pwd, Byte isdeleted, String created, String updated) {
        super(UserTB.USER);

        set(0, id);
        set(1, name);
        set(2, pwd);
        set(3, isdeleted);
        set(4, created);
        set(5, updated);
    }
}
