我正在开发应用程序,我想为各种客户生成发票,同时生成发票,我想检查该客户是否具有gstin编号,如果该客户没有gstin编号抛出错误。要检查该客户端的客户端类型。如果设置表中存在该客户端类型ID,则gstin不应进行验证,否则请验证该客户端的gstin编号。
public function getGstinCType(){
$result = $this->find('all',
array('conditions' =>
array('Setting.row_status' => 0,'Setting.id' => 1),
'fields'=>array('Setting.id','Setting.gstin_C_type'),
)
);
$all_data = array();
foreach ($result as $ind => $row) {
$all_data[$row['Setting']['id']] = $row['Setting']['gstin_C_type'];
}
return $all_data;
}
通过以上方法,我将获得如下所示的客户端类型ID的数组
out put:
Array
(
[1] => ["38","40","25","4","51"]
)
控制器中的方法,用于从客户端获取gstin和客户端类型:
public function getGstin($id) {
$gstinCtype = $this->Cases->getClientgstByCaseId($id);
$gstin=$gstinCtype['Client']['gstin'];
$clienttypeId=$gstinCtype['Client']['client_type'];
$ctypeID = $this->Setting->getGstinCType();
if (in_array($ctypeID , $clienttypeId)) {
$gstin = 1;
echo $gstin;
} else {
$gstin = (($gstin == 'null') && !empty($gstin)) ? 0 : 1;
echo $gstin;
exit;
}
}
我想检查设置表中是否存在客户端类型($ clienttypeId) 表示方法“ getGstinCType()”的结果,gstin的默认值应采用并生成发票。否则抛出错误以提供gstin编号。
在此先感谢您的帮助。