func (j *WorkerCreateOperation) UnmarshalJSON(input []byte) error {
	fs := fflib.NewFFLexer(input)
	return j.UnmarshalJSONFFLexer(fs, fflib.FFParse_map_start)
}
UnmarshalJSON umarshall json - template of ffjson
package operations
import (
	"bytes"
	"encoding/json"
	"fmt"
	fflib "github.com/pquerna/ffjson/fflib/v1"
)
func (j *WorkerCreateOperation) MarshalJSON() ([]byte, error) {
	var buf fflib.Buffer
	if j == nil {
		buf.WriteString("null")
		return buf.Bytes(), nil
	}
	err := j.MarshalJSONBuf(&buf)
	if err != nil {
		return nil, err
	}
	return buf.Bytes(), nil
}
func (j *WorkerCreateOperation) MarshalJSONBuf(buf fflib.EncodingBuffer) error {
	if j == nil {
		buf.WriteString("null")
		return nil
	}
	var err error
	var obj []byte
	_ = obj
	_ = err
	buf.WriteString(`{ "daily_pay":`)
	fflib.FormatBits2(buf, uint64(j.DailyPay), 10, false)
	buf.WriteString(`,"initializer":`)
	{
		obj, err = j.Initializer.MarshalJSON()
		if err != nil {
			return err
		}
		buf.Write(obj)
	}
	buf.WriteString(`,"name":`)
	fflib.WriteJsonString(buf, string(j.Name))
	buf.WriteString(`,"owner":`)
	{
		obj, err = j.Owner.MarshalJSON()
		if err != nil {
			return err
		}
		buf.Write(obj)
	}
	buf.WriteString(`,"url":`)
	fflib.WriteJsonString(buf, string(j.URL))
	buf.WriteString(`,"work_begin_date":`)
	{
		obj, err = j.WorkBeginDate.MarshalJSON()
		if err != nil {
			return err
		}
		buf.Write(obj)
	}
	buf.WriteString(`,"work_end_date":`)
	{
		obj, err = j.WorkEndDate.MarshalJSON()
		if err != nil {
			return err
		}
		buf.Write(obj)
	}
	buf.WriteByte(',')
	if j.Fee != nil {
		if true {
			buf.WriteString(`"fee":`)
			err = buf.Encode(j.Fee)
			if err != nil {
				return err
			}
			buf.WriteByte(',')
		}
	}
	buf.Rewind(1)
	buf.WriteByte('}')
	return nil
}
const (
	ffjtWorkerCreateOperationbase = iota
	ffjtWorkerCreateOperationnosuchkey
	ffjtWorkerCreateOperationDailyPay
	ffjtWorkerCreateOperationInitializer
	ffjtWorkerCreateOperationName
	ffjtWorkerCreateOperationOwner
	ffjtWorkerCreateOperationURL
	ffjtWorkerCreateOperationWorkBeginDate
	ffjtWorkerCreateOperationWorkEndDate
	ffjtWorkerCreateOperationFee
)
var ffjKeyWorkerCreateOperationDailyPay = []byte("daily_pay")
var ffjKeyWorkerCreateOperationInitializer = []byte("initializer")
var ffjKeyWorkerCreateOperationName = []byte("name")
var ffjKeyWorkerCreateOperationOwner = []byte("owner")
var ffjKeyWorkerCreateOperationURL = []byte("url")
var ffjKeyWorkerCreateOperationWorkBeginDate = []byte("work_begin_date")
var ffjKeyWorkerCreateOperationWorkEndDate = []byte("work_end_date")
var ffjKeyWorkerCreateOperationFee = []byte("fee")