diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/DiagnosisFacaed.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/DiagnosisFacaed.java new file mode 100644 index 0000000..4a6830f --- /dev/null +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/DiagnosisFacaed.java @@ -0,0 +1,149 @@ +package com.lyms.platform.operate.web.facade; + +import com.lyms.platform.biz.service.*; +import com.lyms.platform.common.constants.ErrorCodeConstants; +import com.lyms.platform.common.enums.YnEnums; +import com.lyms.platform.common.result.BaseObjectResponse; +import com.lyms.platform.common.result.BaseResponse; +import com.lyms.platform.common.utils.JsonUtil; +import com.lyms.platform.operate.web.result.DiagnosisResult; +import com.lyms.platform.operate.web.result.HighScoreResult; +import com.lyms.platform.permission.model.PatientService; +import com.lyms.platform.pojo.AntExChuModel; +import com.lyms.platform.pojo.Patients; +import com.lyms.platform.pojo.SieveApplyOrderModel; +import com.lyms.platform.pojo.SieveModel; +import com.lyms.platform.query.AntExChuQuery; +import com.lyms.platform.query.PatientsQuery; +import com.lyms.platform.query.SieveApplyOrderQuery; +import com.lyms.platform.query.SieveQuery; +import org.apache.commons.collections.CollectionUtils; +import org.apache.commons.lang.StringUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; + +import java.util.ArrayList; +import java.util.List; + +/** + * Created by Administrator on 2018/9/11. + */ +@Component +public class DiagnosisFacaed { + + @Autowired + private DiagnosisService diagnosisService; + @Autowired + private AutoMatchFacade autoMatchFacade; + @Autowired + private PatientsService patientsService; + @Autowired + private OrganizationGroupsFacade groupsFacade; + @Autowired + private AntenatalExaminationFacade antenatalExaminationFacade; + @Autowired + private ApplyOrderService applyOrderService; + @Autowired + private SieveService sieveService; + @Autowired + private AntenatalExaminationService antenatalExaminationService; + + + /** + * 产前诊断申请 + * @param cardNo + * @param vcCardNo + * @param userId + * @return + */ + public BaseResponse queryDiagnosis(String cardNo, String vcCardNo, Integer userId){ + + String hospitalId = autoMatchFacade.getHospitalId(userId); + PatientsQuery patientsQuery = new PatientsQuery(); + patientsQuery.setHospitalId(hospitalId); + patientsQuery.setYn(YnEnums.YES.getId()); + if (StringUtils.isNotEmpty(cardNo)) { + patientsQuery.setPhoneOrCert(cardNo); + } else if (StringUtils.isNotEmpty(vcCardNo)) { + patientsQuery.setVcCardNo(vcCardNo); + } + List localPatients = patientsService.queryPatient(patientsQuery); + Patients pat = null; + if (CollectionUtils.isNotEmpty(localPatients)) { + pat = localPatients.get(0); + } else { + patientsQuery.setHospitalId(null); + List areaPatients = patientsService.queryPatient(patientsQuery); + if (CollectionUtils.isNotEmpty(areaPatients)) { + pat = areaPatients.get(0); + if (StringUtils.isNotEmpty(groupsFacade.findByCurrentUserId(hospitalId))) { + //建立隐藏档案 + String id = antenatalExaminationFacade.handHideBuild(pat.getPid(), pat.getId(), userId, 1); + + pat = patientsService.findOnePatientById(id); + } else { + return new BaseResponse().setErrorcode(ErrorCodeConstants.NO_DATA).setErrormsg("没有档案,请建档后申请产筛"); + } + }else{ + return new BaseResponse().setErrorcode(ErrorCodeConstants.NO_DATA).setErrormsg("没有档案,请建档后申请产筛"); + } + } + + HighScoreResult highScoreResult = antenatalExaminationFacade.findLastRisk(pat.getPid(), false); + DiagnosisResult diagnosisResult = new DiagnosisResult(); + if(null != pat){ + SieveQuery sieveQuery = new SieveQuery(); + sieveQuery.setParentId(pat.getId()); + //查询产筛list + List list = sieveService.queryList1(sieveQuery, "order"); + if(list != null && list.size() > 0){ + SieveModel sieveModel = list.get(0); + if(!"-".equals(sieveModel.getZtfx())) { + diagnosisResult.setIsCqSieve("1");//已筛查 + SieveApplyOrderQuery sieveApplyOrderQuery = new SieveApplyOrderQuery(); + sieveApplyOrderQuery.setParentId(pat.getId()); + sieveApplyOrderQuery.setYn(YnEnums.YES.getId()); + List applyOrderModels = applyOrderService.querySieveApplyOrderWithQuery(sieveApplyOrderQuery); + List sList = new ArrayList(); + if(applyOrderModels != null && applyOrderModels.size() > 0){ + SieveApplyOrderModel sieveAppModel = applyOrderModels.get(0); + if (StringUtils.isNotEmpty(sieveAppModel.getCheckItem())) { + sList = JsonUtil.jkstr2Obj(sieveAppModel.getCheckItem(), List.class); + } + } + diagnosisResult.setSieveProject(sList); + if("0".equals(sieveModel.getZtfx())){ + diagnosisResult.setZtfx("0"); + diagnosisResult.setZtfeText("低风险"); + } + if("1".equals(sieveModel.getZtfx())){ + diagnosisResult.setZtfx("1"); + diagnosisResult.setZtfeText("临界值"); + } + if("2".equals(sieveModel.getZtfx())){ + diagnosisResult.setZtfx("2"); + diagnosisResult.setZtfeText("高风险"); + } + } + }else{ + diagnosisResult.setIsCqSieve("0");//未筛查 + } + diagnosisResult.convertToResult(pat); + diagnosisResult.setRiskFactor(highScoreResult.getHighRisk()); + diagnosisResult.setRiskScore(highScoreResult.getScoreStr()); + AntExChuQuery antExChuQuery = new AntExChuQuery(); + antExChuQuery.setParentId(pat.getId()); + antExChuQuery.setYn(YnEnums.YES.getId()); + + List aList = antenatalExaminationService.queryAntExChu(antExChuQuery); + if (CollectionUtils.isNotEmpty(aList)) { + AntExChuModel chuModel = aList.get(0); + diagnosisResult.setWeight(chuModel.getYqWeight()); + } + + } + return new BaseObjectResponse().setErrorcode(ErrorCodeConstants.SUCCESS).setErrormsg("成功").setData(diagnosisResult); + } + + +} diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/diagnosisFacaed.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/diagnosisFacaed.java deleted file mode 100644 index 4a6830f..0000000 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/diagnosisFacaed.java +++ /dev/null @@ -1,149 +0,0 @@ -package com.lyms.platform.operate.web.facade; - -import com.lyms.platform.biz.service.*; -import com.lyms.platform.common.constants.ErrorCodeConstants; -import com.lyms.platform.common.enums.YnEnums; -import com.lyms.platform.common.result.BaseObjectResponse; -import com.lyms.platform.common.result.BaseResponse; -import com.lyms.platform.common.utils.JsonUtil; -import com.lyms.platform.operate.web.result.DiagnosisResult; -import com.lyms.platform.operate.web.result.HighScoreResult; -import com.lyms.platform.permission.model.PatientService; -import com.lyms.platform.pojo.AntExChuModel; -import com.lyms.platform.pojo.Patients; -import com.lyms.platform.pojo.SieveApplyOrderModel; -import com.lyms.platform.pojo.SieveModel; -import com.lyms.platform.query.AntExChuQuery; -import com.lyms.platform.query.PatientsQuery; -import com.lyms.platform.query.SieveApplyOrderQuery; -import com.lyms.platform.query.SieveQuery; -import org.apache.commons.collections.CollectionUtils; -import org.apache.commons.lang.StringUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Component; - -import java.util.ArrayList; -import java.util.List; - -/** - * Created by Administrator on 2018/9/11. - */ -@Component -public class DiagnosisFacaed { - - @Autowired - private DiagnosisService diagnosisService; - @Autowired - private AutoMatchFacade autoMatchFacade; - @Autowired - private PatientsService patientsService; - @Autowired - private OrganizationGroupsFacade groupsFacade; - @Autowired - private AntenatalExaminationFacade antenatalExaminationFacade; - @Autowired - private ApplyOrderService applyOrderService; - @Autowired - private SieveService sieveService; - @Autowired - private AntenatalExaminationService antenatalExaminationService; - - - /** - * 产前诊断申请 - * @param cardNo - * @param vcCardNo - * @param userId - * @return - */ - public BaseResponse queryDiagnosis(String cardNo, String vcCardNo, Integer userId){ - - String hospitalId = autoMatchFacade.getHospitalId(userId); - PatientsQuery patientsQuery = new PatientsQuery(); - patientsQuery.setHospitalId(hospitalId); - patientsQuery.setYn(YnEnums.YES.getId()); - if (StringUtils.isNotEmpty(cardNo)) { - patientsQuery.setPhoneOrCert(cardNo); - } else if (StringUtils.isNotEmpty(vcCardNo)) { - patientsQuery.setVcCardNo(vcCardNo); - } - List localPatients = patientsService.queryPatient(patientsQuery); - Patients pat = null; - if (CollectionUtils.isNotEmpty(localPatients)) { - pat = localPatients.get(0); - } else { - patientsQuery.setHospitalId(null); - List areaPatients = patientsService.queryPatient(patientsQuery); - if (CollectionUtils.isNotEmpty(areaPatients)) { - pat = areaPatients.get(0); - if (StringUtils.isNotEmpty(groupsFacade.findByCurrentUserId(hospitalId))) { - //建立隐藏档案 - String id = antenatalExaminationFacade.handHideBuild(pat.getPid(), pat.getId(), userId, 1); - - pat = patientsService.findOnePatientById(id); - } else { - return new BaseResponse().setErrorcode(ErrorCodeConstants.NO_DATA).setErrormsg("没有档案,请建档后申请产筛"); - } - }else{ - return new BaseResponse().setErrorcode(ErrorCodeConstants.NO_DATA).setErrormsg("没有档案,请建档后申请产筛"); - } - } - - HighScoreResult highScoreResult = antenatalExaminationFacade.findLastRisk(pat.getPid(), false); - DiagnosisResult diagnosisResult = new DiagnosisResult(); - if(null != pat){ - SieveQuery sieveQuery = new SieveQuery(); - sieveQuery.setParentId(pat.getId()); - //查询产筛list - List list = sieveService.queryList1(sieveQuery, "order"); - if(list != null && list.size() > 0){ - SieveModel sieveModel = list.get(0); - if(!"-".equals(sieveModel.getZtfx())) { - diagnosisResult.setIsCqSieve("1");//已筛查 - SieveApplyOrderQuery sieveApplyOrderQuery = new SieveApplyOrderQuery(); - sieveApplyOrderQuery.setParentId(pat.getId()); - sieveApplyOrderQuery.setYn(YnEnums.YES.getId()); - List applyOrderModels = applyOrderService.querySieveApplyOrderWithQuery(sieveApplyOrderQuery); - List sList = new ArrayList(); - if(applyOrderModels != null && applyOrderModels.size() > 0){ - SieveApplyOrderModel sieveAppModel = applyOrderModels.get(0); - if (StringUtils.isNotEmpty(sieveAppModel.getCheckItem())) { - sList = JsonUtil.jkstr2Obj(sieveAppModel.getCheckItem(), List.class); - } - } - diagnosisResult.setSieveProject(sList); - if("0".equals(sieveModel.getZtfx())){ - diagnosisResult.setZtfx("0"); - diagnosisResult.setZtfeText("低风险"); - } - if("1".equals(sieveModel.getZtfx())){ - diagnosisResult.setZtfx("1"); - diagnosisResult.setZtfeText("临界值"); - } - if("2".equals(sieveModel.getZtfx())){ - diagnosisResult.setZtfx("2"); - diagnosisResult.setZtfeText("高风险"); - } - } - }else{ - diagnosisResult.setIsCqSieve("0");//未筛查 - } - diagnosisResult.convertToResult(pat); - diagnosisResult.setRiskFactor(highScoreResult.getHighRisk()); - diagnosisResult.setRiskScore(highScoreResult.getScoreStr()); - AntExChuQuery antExChuQuery = new AntExChuQuery(); - antExChuQuery.setParentId(pat.getId()); - antExChuQuery.setYn(YnEnums.YES.getId()); - - List aList = antenatalExaminationService.queryAntExChu(antExChuQuery); - if (CollectionUtils.isNotEmpty(aList)) { - AntExChuModel chuModel = aList.get(0); - diagnosisResult.setWeight(chuModel.getYqWeight()); - } - - } - return new BaseObjectResponse().setErrorcode(ErrorCodeConstants.SUCCESS).setErrormsg("成功").setData(diagnosisResult); - } - - -} diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/result/DiagnosisResult.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/result/DiagnosisResult.java new file mode 100644 index 0000000..06d002d --- /dev/null +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/result/DiagnosisResult.java @@ -0,0 +1,257 @@ +package com.lyms.platform.operate.web.result; + +import com.lyms.platform.common.utils.DateUtil; +import com.lyms.platform.common.utils.StringUtils; +import com.lyms.platform.pojo.Patients; + +import java.util.Date; +import java.util.List; + +/** + * Created by Administrator on 2018/9/11. + */ +public class DiagnosisResult { + + private String id; + private String parentId;//孕妇ID + private String name;//姓名 + private Integer age;//年龄 + private String dueWeek;//孕周 + private String yChanQi;//预产期 + private String phone;//手机号 + private List riskFactor;//高危因素 + private String riskScore;//高危评分 + private String remarks;//备注 + private String lastMenses;//末次月经 + private String weight;//体重 + private String birth;//出生日期 + private String mensStartDay;//月经周期开始天数 + private String mensEndDay;//月经周期结束天数 + private String mensStopStartDay;//月经停留开始天数 + private String mensStopEndDay;//月经停留结束天数 + private String collectDocterId;//采集医生 + private String sendDocterId;//送检医生 + private String collectHospitalId;//申请医院 + private String isCqSieve;//是否申请了产前筛查(0,未产筛;1,已产筛) + private List sieveProject;//筛查项目 + private String ztfx;//整体风险 + private String ztfeText;//整体风险中文 + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getParentId() { + return parentId; + } + + public void setParentId(String parentId) { + this.parentId = parentId; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public Integer getAge() { + return age; + } + + public void setAge(Integer age) { + this.age = age; + } + + public String getDueWeek() { + return dueWeek; + } + + public void setDueWeek(String dueWeek) { + this.dueWeek = dueWeek; + } + + public String getyChanQi() { + return yChanQi; + } + + public void setyChanQi(String yChanQi) { + this.yChanQi = yChanQi; + } + + public String getPhone() { + return phone; + } + + public void setPhone(String phone) { + this.phone = phone; + } + + public List getRiskFactor() { + return riskFactor; + } + + public void setRiskFactor(List riskFactor) { + this.riskFactor = riskFactor; + } + + public String getRiskScore() { + return riskScore; + } + + public void setRiskScore(String riskScore) { + this.riskScore = riskScore; + } + + public String getRemarks() { + return remarks; + } + + public void setRemarks(String remarks) { + this.remarks = remarks; + } + + public String getLastMenses() { + return lastMenses; + } + + public void setLastMenses(String lastMenses) { + this.lastMenses = lastMenses; + } + + public String getWeight() { + return weight; + } + + public void setWeight(String weight) { + this.weight = weight; + } + + public String getBirth() { + return birth; + } + + public void setBirth(String birth) { + this.birth = birth; + } + + public String getMensStartDay() { + return mensStartDay; + } + + public void setMensStartDay(String mensStartDay) { + this.mensStartDay = mensStartDay; + } + + public String getMensEndDay() { + return mensEndDay; + } + + public void setMensEndDay(String mensEndDay) { + this.mensEndDay = mensEndDay; + } + + public String getMensStopStartDay() { + return mensStopStartDay; + } + + public void setMensStopStartDay(String mensStopStartDay) { + this.mensStopStartDay = mensStopStartDay; + } + + public String getMensStopEndDay() { + return mensStopEndDay; + } + + public void setMensStopEndDay(String mensStopEndDay) { + this.mensStopEndDay = mensStopEndDay; + } + + public String getCollectDocterId() { + return collectDocterId; + } + + public void setCollectDocterId(String collectDocterId) { + this.collectDocterId = collectDocterId; + } + + public String getSendDocterId() { + return sendDocterId; + } + + public void setSendDocterId(String sendDocterId) { + this.sendDocterId = sendDocterId; + } + + public String getCollectHospitalId() { + return collectHospitalId; + } + + public void setCollectHospitalId(String collectHospitalId) { + this.collectHospitalId = collectHospitalId; + } + + public String getIsCqSieve() { + return isCqSieve; + } + + public void setIsCqSieve(String isCqSieve) { + this.isCqSieve = isCqSieve; + } + + public List getSieveProject() { + return sieveProject; + } + + public void setSieveProject(List sieveProject) { + this.sieveProject = sieveProject; + } + + public String getZtfx() { + return ztfx; + } + + public void setZtfx(String ztfx) { + this.ztfx = ztfx; + } + + public String getZtfeText() { + return ztfeText; + } + + public void setZtfeText(String ztfeText) { + this.ztfeText = ztfeText; + } + + public DiagnosisResult convertToResult(Patients patient){ + setName(patient.getUsername()); + try{ + if (null != patient.getBirth()) { + setAge(DateUtil.getAge(patient.getBirth())); + } + }catch (Exception e){ + e.printStackTrace(); + } + if (null != patient.getDueDate()) { + setyChanQi(DateUtil.getyyyy_MM_dd(patient.getDueDate())); + } + if (null != patient.getLastMenses()) { + int days = DateUtil.daysBetween(patient.getLastMenses(), new Date()); + this.dueWeek = StringUtils.dueWeek(days); + + setLastMenses(DateUtil.getyyyy_MM_dd(patient.getLastMenses())); + } + setMensStartDay(patient.getMensStartDay()); + setMensEndDay(patient.getMensEndDay()); + setMensStopStartDay(patient.getMensStopStartDay()); + setMensStopEndDay(patient.getMensStopEndDay()); + + return this; + } +} diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/result/diagnosisResult.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/result/diagnosisResult.java deleted file mode 100644 index 06d002d..0000000 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/result/diagnosisResult.java +++ /dev/null @@ -1,257 +0,0 @@ -package com.lyms.platform.operate.web.result; - -import com.lyms.platform.common.utils.DateUtil; -import com.lyms.platform.common.utils.StringUtils; -import com.lyms.platform.pojo.Patients; - -import java.util.Date; -import java.util.List; - -/** - * Created by Administrator on 2018/9/11. - */ -public class DiagnosisResult { - - private String id; - private String parentId;//孕妇ID - private String name;//姓名 - private Integer age;//年龄 - private String dueWeek;//孕周 - private String yChanQi;//预产期 - private String phone;//手机号 - private List riskFactor;//高危因素 - private String riskScore;//高危评分 - private String remarks;//备注 - private String lastMenses;//末次月经 - private String weight;//体重 - private String birth;//出生日期 - private String mensStartDay;//月经周期开始天数 - private String mensEndDay;//月经周期结束天数 - private String mensStopStartDay;//月经停留开始天数 - private String mensStopEndDay;//月经停留结束天数 - private String collectDocterId;//采集医生 - private String sendDocterId;//送检医生 - private String collectHospitalId;//申请医院 - private String isCqSieve;//是否申请了产前筛查(0,未产筛;1,已产筛) - private List sieveProject;//筛查项目 - private String ztfx;//整体风险 - private String ztfeText;//整体风险中文 - - public String getId() { - return id; - } - - public void setId(String id) { - this.id = id; - } - - public String getParentId() { - return parentId; - } - - public void setParentId(String parentId) { - this.parentId = parentId; - } - - public String getName() { - return name; - } - - public void setName(String name) { - this.name = name; - } - - public Integer getAge() { - return age; - } - - public void setAge(Integer age) { - this.age = age; - } - - public String getDueWeek() { - return dueWeek; - } - - public void setDueWeek(String dueWeek) { - this.dueWeek = dueWeek; - } - - public String getyChanQi() { - return yChanQi; - } - - public void setyChanQi(String yChanQi) { - this.yChanQi = yChanQi; - } - - public String getPhone() { - return phone; - } - - public void setPhone(String phone) { - this.phone = phone; - } - - public List getRiskFactor() { - return riskFactor; - } - - public void setRiskFactor(List riskFactor) { - this.riskFactor = riskFactor; - } - - public String getRiskScore() { - return riskScore; - } - - public void setRiskScore(String riskScore) { - this.riskScore = riskScore; - } - - public String getRemarks() { - return remarks; - } - - public void setRemarks(String remarks) { - this.remarks = remarks; - } - - public String getLastMenses() { - return lastMenses; - } - - public void setLastMenses(String lastMenses) { - this.lastMenses = lastMenses; - } - - public String getWeight() { - return weight; - } - - public void setWeight(String weight) { - this.weight = weight; - } - - public String getBirth() { - return birth; - } - - public void setBirth(String birth) { - this.birth = birth; - } - - public String getMensStartDay() { - return mensStartDay; - } - - public void setMensStartDay(String mensStartDay) { - this.mensStartDay = mensStartDay; - } - - public String getMensEndDay() { - return mensEndDay; - } - - public void setMensEndDay(String mensEndDay) { - this.mensEndDay = mensEndDay; - } - - public String getMensStopStartDay() { - return mensStopStartDay; - } - - public void setMensStopStartDay(String mensStopStartDay) { - this.mensStopStartDay = mensStopStartDay; - } - - public String getMensStopEndDay() { - return mensStopEndDay; - } - - public void setMensStopEndDay(String mensStopEndDay) { - this.mensStopEndDay = mensStopEndDay; - } - - public String getCollectDocterId() { - return collectDocterId; - } - - public void setCollectDocterId(String collectDocterId) { - this.collectDocterId = collectDocterId; - } - - public String getSendDocterId() { - return sendDocterId; - } - - public void setSendDocterId(String sendDocterId) { - this.sendDocterId = sendDocterId; - } - - public String getCollectHospitalId() { - return collectHospitalId; - } - - public void setCollectHospitalId(String collectHospitalId) { - this.collectHospitalId = collectHospitalId; - } - - public String getIsCqSieve() { - return isCqSieve; - } - - public void setIsCqSieve(String isCqSieve) { - this.isCqSieve = isCqSieve; - } - - public List getSieveProject() { - return sieveProject; - } - - public void setSieveProject(List sieveProject) { - this.sieveProject = sieveProject; - } - - public String getZtfx() { - return ztfx; - } - - public void setZtfx(String ztfx) { - this.ztfx = ztfx; - } - - public String getZtfeText() { - return ztfeText; - } - - public void setZtfeText(String ztfeText) { - this.ztfeText = ztfeText; - } - - public DiagnosisResult convertToResult(Patients patient){ - setName(patient.getUsername()); - try{ - if (null != patient.getBirth()) { - setAge(DateUtil.getAge(patient.getBirth())); - } - }catch (Exception e){ - e.printStackTrace(); - } - if (null != patient.getDueDate()) { - setyChanQi(DateUtil.getyyyy_MM_dd(patient.getDueDate())); - } - if (null != patient.getLastMenses()) { - int days = DateUtil.daysBetween(patient.getLastMenses(), new Date()); - this.dueWeek = StringUtils.dueWeek(days); - - setLastMenses(DateUtil.getyyyy_MM_dd(patient.getLastMenses())); - } - setMensStartDay(patient.getMensStartDay()); - setMensEndDay(patient.getMensEndDay()); - setMensStopStartDay(patient.getMensStopStartDay()); - setMensStopEndDay(patient.getMensStopEndDay()); - - return this; - } -}