/**
 * Copyright &copy; 2015-2020 <a href="http://www.jeeplus.org/">JeePlus</a> All rights reserved.
 */
package com.jeeplus.modules.workfullmanage.entity;


import com.jeeplus.common.persistence.ActEntity;
import com.jeeplus.common.utils.excel.annotation.ExcelField;
import org.activiti.engine.history.HistoricProcessInstance;
import org.activiti.engine.repository.ProcessDefinition;
import org.activiti.engine.runtime.ProcessInstance;
import org.activiti.engine.task.Task;

/**
 * 工程计量支付Entity
 * @author mapengbo
 * @version 2017-11-03
 */
public class WorkFullPay extends ActEntity<WorkFullPay> {
	
	private static final long serialVersionUID = 1L;
	private String applyUnit;		// 申请单位
	private String payContent;		// 付款内容
	private String constructionTender;		// 施工标段
	private String thisApplyMoney;		// 本次申请金额
	private String arrangeMoney;		// 合同金额
	private String arrangePayMoney;		// 合同最高支付金额
	private String confirmPayMoney;		// 核定支付金额
	private String totalPayMoney;		// 累计付款金额
	private String completeEngeerValue;		// 完成工程产值
	private String completePerPay;		// 完成比例付款
	private String completeProcess;		// 完成进度
	private String processInstanceId;		// 流程编号
	private Boolean processEnded;            //流程是否走到了结束状态(结束：false，未结束：true)
	private String fullPayStatus;		// 1，暂存 2，审核中 3，未通过 4，已通过
	private String workFullManageId; //项目id
	private String countFlag; //次数区分
	// 流程任务
	private Task task;
	// 运行中的流程实例
	private ProcessInstance processInstance;
	// 历史的流程实例
	private HistoricProcessInstance historicProcessInstance;
	// 流程定义
	private ProcessDefinition processDefinition;

	public WorkFullPay() {
		super();
	}

	public WorkFullPay(String id){
		super(id);
	}

	@ExcelField(title="申请单位", align=2, sort=7)
	public String getApplyUnit() {
		return applyUnit;
	}

	public void setApplyUnit(String applyUnit) {
		this.applyUnit = applyUnit;
	}
	
	@ExcelField(title="付款内容", align=2, sort=8)
	public String getPayContent() {
		return payContent;
	}

	public void setPayContent(String payContent) {
		this.payContent = payContent;
	}
	
	@ExcelField(title="施工标段", align=2, sort=9)
	public String getConstructionTender() {
		return constructionTender;
	}

	public void setConstructionTender(String constructionTender) {
		this.constructionTender = constructionTender;
	}
	
	@ExcelField(title="本次申请金额", align=2, sort=10)
	public String getThisApplyMoney() {
		return thisApplyMoney;
	}

	public void setThisApplyMoney(String thisApplyMoney) {
		this.thisApplyMoney = thisApplyMoney;
	}
	
	@ExcelField(title="合同金额", align=2, sort=11)
	public String getArrangeMoney() {
		return arrangeMoney;
	}

	public void setArrangeMoney(String arrangeMoney) {
		this.arrangeMoney = arrangeMoney;
	}
	
	@ExcelField(title="合同最高支付金额", align=2, sort=12)
	public String getArrangePayMoney() {
		return arrangePayMoney;
	}

	public void setArrangePayMoney(String arrangePayMoney) {
		this.arrangePayMoney = arrangePayMoney;
	}
	
	@ExcelField(title="核定支付金额", align=2, sort=13)
	public String getConfirmPayMoney() {
		return confirmPayMoney;
	}

	public void setConfirmPayMoney(String confirmPayMoney) {
		this.confirmPayMoney = confirmPayMoney;
	}
	
	@ExcelField(title="累计付款金额", align=2, sort=14)
	public String getTotalPayMoney() {
		return totalPayMoney;
	}

	public void setTotalPayMoney(String totalPayMoney) {
		this.totalPayMoney = totalPayMoney;
	}
	
	@ExcelField(title="完成工程产值", align=2, sort=15)
	public String getCompleteEngeerValue() {
		return completeEngeerValue;
	}

	public void setCompleteEngeerValue(String completeEngeerValue) {
		this.completeEngeerValue = completeEngeerValue;
	}
	
	@ExcelField(title="完成比例付款", align=2, sort=16)
	public String getCompletePerPay() {
		return completePerPay;
	}

	public void setCompletePerPay(String completePerPay) {
		this.completePerPay = completePerPay;
	}
	
	@ExcelField(title="完成进度", align=2, sort=17)
	public String getCompleteProcess() {
		return completeProcess;
	}

	public void setCompleteProcess(String completeProcess) {
		this.completeProcess = completeProcess;
	}
	
	@ExcelField(title="流程编号", align=2, sort=18)
	public String getProcessInstanceId() {
		return processInstanceId;
	}

	public void setProcessInstanceId(String processInstanceId) {
		this.processInstanceId = processInstanceId;
	}
	
	@ExcelField(title="1，暂存 2，审核中 3，未通过 4，已通过", dictType="full_pay_status", align=2, sort=19)
	public String getFullPayStatus() {
		return fullPayStatus;
	}

	public void setFullPayStatus(String fullPayStatus) {
		this.fullPayStatus = fullPayStatus;
	}

	public String getWorkFullManageId() {
		return workFullManageId;
	}

	public void setWorkFullManageId(String workFullManageId) {
		this.workFullManageId = workFullManageId;
	}

	public String getCountFlag() {
		return countFlag;
	}

	public void setCountFlag(String countFlag) {
		this.countFlag = countFlag;
	}

	public Task getTask() {
		return task;
	}

	public void setTask(Task task) {
		this.task = task;
	}

	public ProcessInstance getProcessInstance() {
		return processInstance;
	}

	public void setProcessInstance(ProcessInstance processInstance) {
		this.processInstance = processInstance;
	}

	public HistoricProcessInstance getHistoricProcessInstance() {
		return historicProcessInstance;
	}

	public void setHistoricProcessInstance(HistoricProcessInstance historicProcessInstance) {
		this.historicProcessInstance = historicProcessInstance;
	}

	public ProcessDefinition getProcessDefinition() {
		return processDefinition;
	}

	public void setProcessDefinition(ProcessDefinition processDefinition) {
		this.processDefinition = processDefinition;
	}

	public Boolean getProcessEnded() {
		return processEnded;
	}

	public void setProcessEnded(Boolean processEnded) {
		this.processEnded = processEnded;
	}
}