1、工厂
import org.springframework.stereotype.Component;
import javax.annotation.Resource;
/**
* <p>Description:获取法人状态工厂,根据不同的法人类型获取法人状态
*/
@Component
public class GetStatusFactory {
//企业法人
@Resource(name = "businessGetStatus")
private IGetStatus businessGetStatus;
//社会团体
@Resource(name = "socialGetStatus")
private IGetStatus socialGetStatus;
//事业单位
@Resource(name = "institutionGetStatus")
private IGetStatus institutionGetStatus;
//机关法人
@Resource(name = "officialGetStatus")
private IGetStatus officialGetStatus;
public IGetStatus getTypeByFURTYPE(String furtype){
if("企业法人".equals(furtype)){
return businessGetStatus;
}else if("机关法人".equals(furtype)){
return officialGetStatus;
}else if("事业单位法人".equals(furtype)){
return institutionGetStatus;
}else if("社会团体".equals(furtype)){
return socialGetStatus;
}
return null;
}
}
2、接口
public interface IGetStatus {
public String getStatus(String status);
}
3、实现类示例
import org.apache.commons.lang.StringUtils;
import org.springframework.stereotype.Service;
/**
* <p>Description:获取企业法人的法人状态
*/
@Service("businessGetStatus")
public class BusinessGetStatus implements IGetStatus{
@Override
public String getStatus(String status) {
String result = "";
if(StringUtils.isNotBlank(status)){
//企业法人1、存续(在营、开业、在册) 2、吊销,未注销 3、吊销,已注销 4、注销 5、撤销 6、迁出 9、其他
if("1".equals(status)){
result = "存续";
}else if("2".equals(status)){
result = "吊销,未注销";
}else if("3".equals(status)){
result = "吊销,已注销";
}else if("4".equals(status)){
result = "注销";
}else if("5".equals(status)){
result = "撤销";
}else if("6".equals(status)){
result = "迁出";
}else if("9".equals(status)){
result = "其他";
}
}
return result;
}
}
import org.apache.commons.lang.StringUtils;
import org.springframework.stereotype.Service;
/**
* <p>Description:获取机关法人的法人状态
*/
@Service("officialGetStatus")
public class OfficialGetStatus implements IGetStatus{
@Override
public String getStatus(String status) {
String result = "";
if(StringUtils.isNotBlank(status)){
//机关法人 0、正常 1、废止 2、吊销 3、冻结 9、注销
if("0".equals(status)){
result = "正常";
}else if("1".equals(status)){
result = "废止";
}else if("2".equals(status)){
result = "吊销";
}else if("3".equals(status)){
result = "冻结";
}else if("9".equals(status)){
result = "注销";
}
}
return result;
}
}
4、调用
@Autowired
private GetStatusFactory getStatusFactory;
String status = getStatusFactory.getTypeByFURTYPE(res.getString("FURTYPE")).getStatus(status));