Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Insurance benefit package #27

Open
wants to merge 2 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
package org.openmrs.module.kenyaemr.cashier.api;

import org.openmrs.module.kenyaemr.cashier.api.base.entity.IEntityDataService;
import org.openmrs.module.kenyaemr.cashier.api.model.InsuranceBenefitsPackageService;
import org.openmrs.module.kenyaemr.cashier.api.search.InsuranceBenefitsPackageServiceSearch;
import org.springframework.transaction.annotation.Transactional;

import java.util.List;

@Transactional
public interface IInsuranceBenefitsPackageService extends IEntityDataService<InsuranceBenefitsPackageService> {
List<InsuranceBenefitsPackageService> findServices(final InsuranceBenefitsPackageServiceSearch search);
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
package org.openmrs.module.kenyaemr.cashier.api.impl;

import org.hibernate.Criteria;
import org.openmrs.module.kenyaemr.cashier.api.IInsuranceBenefitsPackageService;
import org.openmrs.module.kenyaemr.cashier.api.base.entity.impl.BaseEntityDataServiceImpl;
import org.openmrs.module.kenyaemr.cashier.api.base.entity.security.IEntityAuthorizationPrivileges;
import org.openmrs.module.kenyaemr.cashier.api.base.f.Action1;
import org.openmrs.module.kenyaemr.cashier.api.model.InsuranceBenefitsPackageService;
import org.openmrs.module.kenyaemr.cashier.api.search.InsuranceBenefitsPackageServiceSearch;
import org.springframework.transaction.annotation.Transactional;

import java.util.List;

@Transactional
public class InsuranceBenefitsPackageServiceImpl extends BaseEntityDataServiceImpl<InsuranceBenefitsPackageService> implements IEntityAuthorizationPrivileges
, IInsuranceBenefitsPackageService {

@Override
public List<InsuranceBenefitsPackageService> findServices(final InsuranceBenefitsPackageServiceSearch serviceSearch) {
return executeCriteria(InsuranceBenefitsPackageService.class, null, new Action1<Criteria>() {
@Override
public void apply(Criteria criteria) {
serviceSearch.updateCriteria(criteria);
}
});
}

@Override
protected IEntityAuthorizationPrivileges getPrivileges() {
return this;
}

@Override
protected void validate(InsuranceBenefitsPackageService object) {

}

@Override
public String getVoidPrivilege() {
return null;
}

@Override
public String getSavePrivilege() {
return null;
}

@Override
public String getPurgePrivilege() {
return null;
}

@Override
public String getGetPrivilege() {
return null;
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,174 @@
package org.openmrs.module.kenyaemr.cashier.api.model;

import org.openmrs.BaseOpenmrsData;

public class InsuranceBenefitsPackageService extends BaseOpenmrsData {

public static final long serialVersionUID = 0L;
private int benefitId;
private String interventionName;
private String shaCode;
private String description;
private String interventionType;
private Boolean requiresPreAuth;
private String benefitDistribution;
private Integer tariff;
private Integer lowerAgeLimit;
private Integer upperAgeLimit;
private Boolean needsReferral;
private String packageName;
private String packageCode;
private Integer insurer;
private String gender;
private String accessPoint;
private String subCategory;

public int getBenefitId() {
return benefitId;
}

public void setBenefitId(int benefitId) {
this.benefitId = benefitId;
}

public String getShaCode() {
return shaCode;
}

public void setShaCode(String shaCode) {
this.shaCode = shaCode;
}

public String getDescription() {
return description;
}

public void setDescription(String description) {
this.description = description;
}

public String getInterventionType() {
return interventionType;
}

public void setInterventionType(String interventionType) {
this.interventionType = interventionType;
}

public Boolean getRequiresPreAuth() {
return requiresPreAuth;
}

public void setRequiresPreAuth(Boolean requiresPreAuth) {
this.requiresPreAuth = requiresPreAuth;
}

public String getBenefitDistribution() {
return benefitDistribution;
}

public void setBenefitDistribution(String benefitDistribution) {
this.benefitDistribution = benefitDistribution;
}

public Integer getTariff() {
return tariff;
}

public void setTariff(Integer tariff) {
this.tariff = tariff;
}

@Override
public Integer getId() {
return getBenefitId();
}

@Override
public void setId(Integer integer) {
setBenefitId(integer);
}


public Integer getLowerAgeLimit() {
return lowerAgeLimit;
}

public void setLowerAgeLimit(Integer lowerAgeLimit) {
this.lowerAgeLimit = lowerAgeLimit;
}

public Integer getUpperAgeLimit() {
return upperAgeLimit;
}

public void setUpperAgeLimit(Integer upperAgeLimit) {
this.upperAgeLimit = upperAgeLimit;
}

public Boolean getNeedsReferral() {
return needsReferral;
}

public void setNeedsReferral(Boolean needsReferral) {
this.needsReferral = needsReferral;
}

public String getPackageName() {
return packageName;
}

public void setPackageName(String packageName) {
this.packageName = packageName;
}

public String getPackageCode() {
return packageCode;
}

public void setPackageCode(String packageCode) {
this.packageCode = packageCode;
}

public Integer getInsurer() {
return insurer;
}

public void setInsurer(Integer insurer) {
this.insurer = insurer;
}

public String getGender() {
return gender;
}

public void setGender(String gender) {
this.gender = gender;
}

public String getAccessPoint() {
return accessPoint;
}

public void setAccessPoint(String accessPoint) {
this.accessPoint = accessPoint;
}

public String getSubCategory() {
return subCategory;
}

public void setSubCategory(String subCategory) {
this.subCategory = subCategory;
}

public String getInterventionName() {
return interventionName;
}

public void setInterventionName(String interventionName) {
this.interventionName = interventionName;
}


}
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
package org.openmrs.module.kenyaemr.cashier.api.search;

import org.hibernate.Criteria;
import org.hibernate.criterion.Restrictions;
import org.openmrs.module.kenyaemr.cashier.api.base.entity.search.BaseDataTemplateSearch;
import org.openmrs.module.kenyaemr.cashier.api.model.InsuranceBenefitsPackageService;

public class InsuranceBenefitsPackageServiceSearch extends BaseDataTemplateSearch<InsuranceBenefitsPackageService> {
public InsuranceBenefitsPackageServiceSearch() {
this(new InsuranceBenefitsPackageService(), false);
}

public InsuranceBenefitsPackageServiceSearch(InsuranceBenefitsPackageService template) {
this(template, false);
}

public InsuranceBenefitsPackageServiceSearch(InsuranceBenefitsPackageService template, Boolean includeRetired) {
super(template, includeRetired);
}

@Override
public void updateCriteria(Criteria criteria) {
super.updateCriteria(criteria);

InsuranceBenefitsPackageService InsurancePackageService = getTemplate();
if (InsurancePackageService.getPackageCode() != null) {
criteria.add(Restrictions.eq("packageCode", InsurancePackageService.getPackageCode()));
}
if (InsurancePackageService.getPackageName() != null) {
criteria.add(Restrictions.eq("packageName", InsurancePackageService.getPackageName()));
}
if (InsurancePackageService.getSubCategory() != null) {
criteria.add(Restrictions.eq("subCategory", InsurancePackageService.getSubCategory()));
}
if (InsurancePackageService.getShaCode() != null) {
criteria.add(Restrictions.eq("shaCode", InsurancePackageService.getShaCode()));
}
}
}
49 changes: 49 additions & 0 deletions api/src/main/resources/InsurancePackage.hbm.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">
<hibernate-mapping package="org.openmrs.module.kenyaemr.cashier.api.model">


<class name="org.openmrs.module.kenyaemr.cashier.api.model.InsuranceBenefitsPackageService" table="insurance_benefits_package">
<cache usage="read-write"/>

<id name="id" type="int" column="benefit_id">
<generator class="native">
<param name="sequence">insurance_benefits_package_id_seq</param>
</generator>
</id>
<discriminator column="benefit_id" insert="false" />

<property name="interventionName" type="java.lang.String" column="intervention_name" length="19" />
<property name="shaCode" type="java.lang.String" column="sha_code" length="19" />
<property name="interventionType" type="java.lang.String" column="intervention_type" length="19" />
<property name="description" type="java.lang.String" column="description" length="255" />
<property name="requiresPreAuth" type="java.lang.Boolean" column="requires_pre_auth" />
<property name="gender" type="java.lang.String" column="gender" length="15" />
<property name="benefitDistribution" type="java.lang.String" column="benefit_distribution" length="50" />
<property name="tariff" type="java.lang.Integer" column="tariff" length="50" />
<property name="lowerAgeLimit" type="int" column="lower_age_limit" />
<property name="upperAgeLimit" type="int" column="upper_age_limit" />
<property name="needsReferral" type="java.lang.Boolean" column="needs_referral" />
<property name="packageName" type="java.lang.String" column="package_name" length="255" />
<property name="packageCode" type="java.lang.String" column="package_code" length="255" />
<property name="insurer" type="int" column="insurer" />
<property name="accessPoint" type="java.lang.String" column="access_point" length="255" />
<property name="subCategory" type="java.lang.String" column="sub_category" length="255" />
<many-to-one name="creator" class="org.openmrs.User" not-null="true" column="creator" />
<property name="dateCreated" type="java.util.Date" column="date_created" not-null="true" length="19" />

<many-to-one name="changedBy" class="org.openmrs.User" column="changed_by" />
<property name="dateChanged" type="java.util.Date" column="date_changed" length="19" />

<property name="voided" type="java.lang.Boolean" column="voided" length="1" not-null="true" />
<many-to-one name="voidedBy" class="org.openmrs.User" column="voided_by" />

<property name="dateVoided" type="java.util.Date" column="date_voided" length="19" />
<property name="voidReason" type="java.lang.String" column="void_reason" length="255" />

<property name="uuid" type="java.lang.String" column="uuid" length="38" unique="true" />
</class>

</hibernate-mapping>
18 changes: 18 additions & 0 deletions api/src/main/resources/moduleApplicationContext.xml
Original file line number Diff line number Diff line change
Expand Up @@ -98,6 +98,14 @@
</list>
</property>
</bean>
<bean parent="serviceContext">
<property name="moduleService">
<list merge="true">
<value>org.openmrs.module.kenyaemr.cashier.api.IInsuranceBenefitsPackageService</value>
<ref bean="insuranceBenefitsPackageService" />
</list>
</property>
</bean>
<bean parent="serviceContext">
<property name="moduleService">
<list merge="true">
Expand Down Expand Up @@ -206,6 +214,16 @@
<property name="preInterceptors" ref="serviceInterceptors" />
<property name="transactionAttributeSource" ref="transactionAttributeSource" />
</bean>
<bean id="insuranceBenefitsPackageService" class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean">
<property name="transactionManager" ref="transactionManager" />
<property name="target">
<bean class="org.openmrs.module.kenyaemr.cashier.api.impl.InsuranceBenefitsPackageServiceImpl">
<property name="repository" ref="genericRepositoryDao" />
</bean>
</property>
<property name="preInterceptors" ref="serviceInterceptors" />
<property name="transactionAttributeSource" ref="transactionAttributeSource" />
</bean>
<bean id="cashierItemPriceService" class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean">
<property name="transactionManager" ref="transactionManager" />
<property name="target">
Expand Down
Loading