<?php
/**
 * TOP API: alibaba.alihealth.drug.download.dataerrordiagnosis request
 * 
 * @author auto create
 * @since 1.0, 2024.12.24
 */
class AlibabaAlihealthDrugDownloadDataerrordiagnosisRequest
{
	/** 
	 * appKey
	 **/
	private $appKeyN;
	
	/** 
	 * 数据所有者企业名称
	 **/
	private $baseEntName;
	
	/** 
	 * 单据号
	 **/
	private $billCode;
	
	/** 
	 * 单据所有者企业名称
	 **/
	private $billEntName;
	
	/** 
	 * 单据标识 入库填写I 出库填写O
	 **/
	private $billTypeFlag;
	
	/** 
	 * 追溯码；当有code时候billEntname  bill_code  bill_type_flag可以不填，优先根据code判定
	 **/
	private $code;
	
	/** 
	 * 是否需要重传 1代表需要 0代表不需要
	 **/
	private $reUpload;
	
	/** 
	 * 下游模式填2 集团模式填3
	 **/
	private $type;
	
	private $apiParas = array();
	
	public function setAppKeyN($appKeyN)
	{
		$this->appKeyN = $appKeyN;
		$this->apiParas["app_key_n"] = $appKeyN;
	}

	public function getAppKeyN()
	{
		return $this->appKeyN;
	}

	public function setBaseEntName($baseEntName)
	{
		$this->baseEntName = $baseEntName;
		$this->apiParas["base_ent_name"] = $baseEntName;
	}

	public function getBaseEntName()
	{
		return $this->baseEntName;
	}

	public function setBillCode($billCode)
	{
		$this->billCode = $billCode;
		$this->apiParas["bill_code"] = $billCode;
	}

	public function getBillCode()
	{
		return $this->billCode;
	}

	public function setBillEntName($billEntName)
	{
		$this->billEntName = $billEntName;
		$this->apiParas["bill_ent_name"] = $billEntName;
	}

	public function getBillEntName()
	{
		return $this->billEntName;
	}

	public function setBillTypeFlag($billTypeFlag)
	{
		$this->billTypeFlag = $billTypeFlag;
		$this->apiParas["bill_type_flag"] = $billTypeFlag;
	}

	public function getBillTypeFlag()
	{
		return $this->billTypeFlag;
	}

	public function setCode($code)
	{
		$this->code = $code;
		$this->apiParas["code"] = $code;
	}

	public function getCode()
	{
		return $this->code;
	}

	public function setReUpload($reUpload)
	{
		$this->reUpload = $reUpload;
		$this->apiParas["re_upload"] = $reUpload;
	}

	public function getReUpload()
	{
		return $this->reUpload;
	}

	public function setType($type)
	{
		$this->type = $type;
		$this->apiParas["type"] = $type;
	}

	public function getType()
	{
		return $this->type;
	}

	public function getApiMethodName()
	{
		return "alibaba.alihealth.drug.download.dataerrordiagnosis";
	}
	
	public function getApiParas()
	{
		return $this->apiParas;
	}
	
	public function check()
	{
		
		RequestCheckUtil::checkNotNull($this->appKeyN,"appKeyN");
		RequestCheckUtil::checkNotNull($this->baseEntName,"baseEntName");
		RequestCheckUtil::checkNotNull($this->reUpload,"reUpload");
		RequestCheckUtil::checkNotNull($this->type,"type");
	}
	
	public function putOtherTextParam($key, $value) {
		$this->apiParas[$key] = $value;
		$this->$key = $value;
	}
}
