|  | @@ -1365,7 +1365,7 @@ public class MzChargeDetailServiceImpl implements MzChargeDetailService {
 | 
	
		
			
				|  |  |          if (mzPrescriptionVo.getIcdText() != null && mzPrescriptionVo.getIcdText().length() > 2000) {
 | 
	
		
			
				|  |  |              throw new MzException("标准诊断长度超过最大值,请删除部分诊断,您可以在初步诊断继续填其他写诊断!");
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  | -        if (realIcdText == null && StringUtils.isBlank(mzPrescriptionVo.getTcmIcdText())) {
 | 
	
		
			
				|  |  | +        if (realIcdText == null && (StringUtils.isBlank(mzPrescriptionVo.getTcmIcdText()) || StringUtils.isBlank(mzPrescriptionVo.getTcmIcdText().replaceAll(",","")))) {
 | 
	
		
			
				|  |  |              throw new MzException("标准诊断或中医诊断不能为同时为空!");
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |          //if (mzPrescriptionVo.getMzZyReq() !=null || CollUtil.isNotEmpty(mzPrescriptionVo.getMzYjReqList())) {
 | 
	
	
		
			
				|  | @@ -3847,10 +3847,11 @@ public class MzChargeDetailServiceImpl implements MzChargeDetailService {
 | 
	
		
			
				|  |  |                   if(NumberEnum.ONE.getCode().equals(employee.getOrderYn()) && (mjSet.contains(md.getChargeItemCode()) || jeSet.contains(md.getChargeItemCode()))){
 | 
	
		
			
				|  |  |                      throw new MzException("您没有开毒麻药处方的权限,如要开通该权限,请找医务部开通权限!");
 | 
	
		
			
				|  |  |                  }
 | 
	
		
			
				|  |  | -                if(Constants.CYF.equals(md.getBillItemCode()) && Convert.toInt(employee.getDoctorZy(),0) == 0){
 | 
	
		
			
				|  |  | +                boolean cyFlag = ypZdDictService.isCy(md.getChargeItemCode());
 | 
	
		
			
				|  |  | +                if( cyFlag && Convert.toInt(employee.getDoctorZy(),0) == 0){
 | 
	
		
			
				|  |  |                      throw new MzException("您没有开中草药["+md.getTcName()+"]处方权限,如要开通该权限,请找医务部开通权限!");
 | 
	
		
			
				|  |  |                  }
 | 
	
		
			
				|  |  | -                if(Constants.CYF.equals(md.getBillItemCode()) && StrUtil.isBlank(mzPrescriptionVo.getTcmIcdCode())){
 | 
	
		
			
				|  |  | +                if(cyFlag && StrUtil.isBlank(mzPrescriptionVo.getTcmIcdCode())){
 | 
	
		
			
				|  |  |                      throw new MzException("您开具中草药["+md.getTcName()+"],中医诊断不能为空!");
 | 
	
		
			
				|  |  |                  }
 | 
	
		
			
				|  |  |              }
 |