package com.ekexiu.portal.po;

import java.math.BigDecimal;

import org.jfw.apt.orm.annotation.entry.Column;
import org.jfw.apt.orm.annotation.entry.PrimaryKey;
import org.jfw.apt.orm.annotation.entry.Table;
import org.jfw.apt.orm.core.defaultImpl.FixLenStringHandler;
import org.jfw.apt.orm.core.defaultImpl.StringHandler;
import org.jfw.apt.orm.core.enums.DE;

import com.ekexiu.portal.basepo.CreateTimeSupported;

@Table
@PrimaryKey("operationId")
public class Operation implements CreateTimeSupported {
	private String operationId;//业务ID
	private int operationStatus;//业务状态
	private String demandId;//需求方ID，即当前登录用户ID
	/**
	 * 具体需求
	 */
	private String detailDemand;
	/**
	 * 交付时间
	 */
	private String deliverTime;
	private String resourceId;//申请的资源ID
	/**
	 * 成交金额
	 */
	private BigDecimal dealPrice;
	private String dealTime;//成交时间
	private String payMethod;//支付方式
	private String replyNotes; //回复备注
	private String createTime;//创建时间
	private String applysquare;//申请方 专家姓名或所属机构名称
	private Professor professor;
	private Resource resource;
	
	public Professor getProfessor() {
		return professor;
	}
	public void setProfessor(Professor professor) {
		this.professor = professor;
	}
	
	public Resource getResource() {
		return resource;
	}
	public void setResource(Resource resource) {
		this.resource = resource;
	}
	
	@Column(DE.String_de)
	public String getReplyNotes() {
		return replyNotes;
	}
	public void setReplyNotes(String replyNotes) {
		this.replyNotes = replyNotes;
	}
	
	public String getCreateTime() {
		return createTime;
	}
	public void setCreateTime(String createTime) {
		this.createTime = createTime;
	}
	
	@Column(DE.String_de)
	public String getApplysquare() {
		return applysquare;
	}
	public void setApplysquare(String applysquare) {
		this.applysquare = applysquare;
	}
	
	@Column(DE.id_32)
	public String getOperationId() {
		return operationId;
	}
	public void setOperationId(String operationId) {
		this.operationId = operationId;
	}
	
	@Column(DE.int_de)
	public int getOperationStatus() {
		return operationStatus;
	}
	public void setOperationStatus(int operationStatus) {
		this.operationStatus = operationStatus;
	}
	
	@Column(DE.id_32)
	public String getDemandId() {
		return demandId;
	}
	public void setDemandId(String demandId) {
		this.demandId = demandId;
	}
	
	@Column(handlerClass=StringHandler.class,dbType="TEXT",insertable=true,nullable=true,renewable=true,queryable=true)
	public String getDetailDemand() {
		return detailDemand;
	}
	public void setDetailDemand(String detailDemand) {
		this.detailDemand = detailDemand;
	}
	
	@Column(handlerClass=FixLenStringHandler.class,dbType="CHAR(8)",insertable=true,nullable=true,queryable=true,renewable=true)
	public String getDeliverTime() {
		return deliverTime;
	}
	public void setDeliverTime(String deliverTime) {
		this.deliverTime = deliverTime;
	}
	
	@Column(DE.id_32)
	public String getResourceId() {
		return resourceId;
	}
	public void setResourceId(String resourceId) {
		this.resourceId = resourceId;
	}
	
	@Column(DE.BigDecmimal_de)
	public BigDecimal getDealPrice() {
		return dealPrice;
	}
	public void setDealPrice(BigDecimal dealPrice) {
		this.dealPrice = dealPrice;
	}
	
	@Column(handlerClass=FixLenStringHandler.class,dbType="CHAR(14)",insertable=false,nullable=true,queryable=true,renewable=true)
	public String getDealTime() {
		return dealTime;
	}
	public void setDealTime(String dealTime) {
		this.dealTime = dealTime;
	}
	
	@Column(DE.String_de)
	public String getPayMethod() {
		return payMethod;
	}
	public void setPayMethod(String payMethod) {
		this.payMethod = payMethod;
	}
	
}
