Skip to content

Instantly share code, notes, and snippets.

@mohashari
Created April 7, 2018 14:40
Show Gist options
  • Select an option

  • Save mohashari/85ebfe9b888ea97a238ff3aae6634620 to your computer and use it in GitHub Desktop.

Select an option

Save mohashari/85ebfe9b888ea97a238ff3aae6634620 to your computer and use it in GitHub Desktop.
package com.nostratech.project.util;
import com.nostratech.project.persistence.domain.AccessLevel;
import com.nostratech.project.persistence.domain.Privilege;
import com.nostratech.project.persistence.repository.AccessLevelRepository;
import com.nostratech.project.persistence.repository.PrivilegeRepository;
import com.nostratech.project.persistence.domain.*;
import com.nostratech.project.persistence.repository.*;
import com.nostratech.project.oauth.provider.UserPasswordAuthenticationToken;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.security.core.Authentication;
import org.springframework.security.core.context.SecurityContextHolder;
import org.springframework.security.crypto.password.PasswordEncoder;
import org.springframework.stereotype.Component;
import javax.annotation.PostConstruct;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
/**
* agus w on 3/3/16.
*/
@Component
public class InitDB {
public static final Logger logger = LoggerFactory.getLogger(InitDB.class);
@Autowired
PatokTaksirRepository taksirRepository;
@Autowired
GolonganRepository golonganRepository;
@Autowired
ParameterRepository parameterRepository;
@Autowired
PrivilegeRepository privilegeRepository;
@Autowired
AccessLevelRepository accessLevelRepository;
@Autowired
GroupRepository groupRepository;
@Autowired
UserRepository userRepository;
@Autowired
AgentRepository agentRepository;
@Autowired
ParameterStlRepository parameterStlRepository;
@Autowired
ProfileAdminRepository profileAdminRepository;
@Autowired
ProductRepository productRepository;
@Autowired
MunahAmanahRepository munahAmanahRepository;
@Autowired
MunahArrumHajiRepository munahArrumHajiRepository;
@Autowired
BranchRepository branchRepository;
@Autowired
@Qualifier("passwordEncoder")
PasswordEncoder passwordEncoder;
@Value("#{'${params.code}'.split(',')}")
List<String> paramsCode;
@Value("#{'${params.desc}'.split(',')}")
List<String> paramsDesc;
@Value("#{'${params.value}'.split(',')}")
List<String> paramsValue;
// Inserting Privileges
@Value("#{'${privilege.accessLevelUser}'.split(',')}")
List<String> accessLevelUser;
@Value("#{'${privilege.accessLevelUserDesc}'.split(',')}")
List<String> accessLevelUserDesc;
@Value("#{'${privilege.accessLevelGroup}'.split(',')}")
List<String> accessLevelGroup;
@Value("#{'${privilege.accessLevelGroupDesc}'.split(',')}")
List<String> accessLevelGroupDesc;
@Value("#{'${privilege.accessLevelGadai}'.split(',')}")
List<String> accessLevelGadai;
@Value("#{'${privilege.accessLevelGadaiDesc}'.split(',')}")
List<String> accessLevelGadaiDesc;
@Value("#{'${privilege.accessLevelPemasaran}'.split(',')}")
List<String> accessLevelPemasaran;
@Value("#{'${privilege.accessLevelPemasaranDesc}'.split(',')}")
List<String> accessLevelPemasaranDesc;
@Value("#{'${privilege.accessLevelPembayaran}'.split(',')}")
List<String> accessLevelPembayaran;
@Value("#{'${privilege.accessLevelPembayaranDesc}'.split(',')}")
List<String> accessLevelPembayaranDesc;
@Value("#{'${privilege.accessLevelSurveyAgen}'.split(',')}")
List<String> accessLevelSurvey;
@Value("#{'${privilege.accessLevelSurveyAgenDesc}'.split(',')}")
List<String> accessLevelSurveyDesc;
@Value("#{'${privilege.accessLevelApprovalAgen}'.split(',')}")
List<String> accessLevelApproval;
@Value("#{'${privilege.accessLevelApprovalAgenDesc}'.split(',')}")
List<String> accessLevelApprovalDesc;
@Value("#{'${privilege.accessLevelAdminManagement}'.split(',')}")
List<String> accessLevelAdminManagement;
@Value("#{'${privilege.accessLevelAdminManagementDesc}'.split(',')}")
List<String> accessLevelAdminManagementDesc;
@Value("#{'${privilege.accessLevelContentManagement}'.split(',')}")
List<String> accessLevelContentManagement;
@Value("#{'${privilege.accessLevelContentManagementDesc}'.split(',')}")
List<String> accessLevelContentManagementDesc;
@Value("#{'${privilege.accessLevelAreaManagement}'.split(',')}")
List<String> accessLevelAreaManagement;
@Value("#{'${privilege.accessLevelAreaManagementDesc}'.split(',')}")
List<String> accessLevelAreaManagementDesc;
@Value("#{'${privilege.accessLevelBranchManagement}'.split(',')}")
List<String> accessLevelBranchManagement;
@Value("#{'${privilege.accessLevelBranchManagementDesc}'.split(',')}")
List<String> accessLevelBranchManagementDesc;
@Value("#{'${privilege.accessLevelAgentManagement}'.split(',')}")
List<String> accessLevelAgentManagement;
@Value("#{'${privilege.accessLevelAgentManagementDesc}'.split(',')}")
List<String> accessLevelAgentManagementDesc;
@Value("#{'${privilege.accessLevelSurveyProduct}'.split(',')}")
List<String> accessLevelSurveyProduct;
@Value("#{'${privilege.accessLevelSurveyProductDesc}'.split(',')}")
List<String> accessLevelSurveyProductDesc;
// End of inserting privileges
@Value("#{'${accessLevel.desc}'.split(',')}")
List<String> accessLevelDesc;
@Value("#{'${accessLevel.value}'.split(',')}")
List<String> accessLevelValue;
@Value("#{'${accessLevel.keyName}'.split(',')}")
List<String> accessLevelKeyName;
// Init Admin
// Admin Integrasi
@Value("${passion.integration.password}")
String integrationPassword;
@Value("${passion.integration.username}")
String integrationFullname;
@Value("${passion.integration.username}")
String integrationName;
// Superadmin
@Value("${admin.password}")
String adminPassword;
@Value("${admin.email}")
String adminEmail;
@Value("${admin.fullname}")
String adminFullname;
@Value("${admin.username}")
String adminName;
// Admin pusat
@Value("${pusat.password}")
String pusatPassword;
@Value("${pusat.email}")
String pusatEmail;
@Value("${pusat.fullname}")
String pusatFullname;
@Value("${pusat.username}")
String pusatName;
// Admin kanwil
@Value("#{'${kanwil.password}'.split(',')}")
List<String> kanwilPassword;
@Value("#{'${kanwil.email}'.split(',')}")
List<String> kanwilEmail;
@Value("#{'${kanwil.fullname}'.split(',')}")
List<String> kanwilFullname;
@Value("#{'${kanwil.username}'.split(',')}")
List<String> kanwilName;
// Admin area
@Value("#{'${area.password}'.split(',')}")
List<String> areaPassword;
@Value("#{'${area.email}'.split(',')}")
List<String> areaEmail;
@Value("#{'${area.fullname}'.split(',')}")
List<String> areaFullname;
@Value("#{'${area.username}'.split(',')}")
List<String> areaName;
// Admin cabang
@Value("#{'${cabang.password}'.split(',')}")
List<String> cabangPassword;
@Value("#{'${cabang.email}'.split(',')}")
List<String> cabangEmail;
@Value("#{'${cabang.fullname}'.split(',')}")
List<String> cabangFullname;
@Value("#{'${cabang.username}'.split(',')}")
List<String> cabangName;
// Admin outlet
@Value("#{'${outlet.password}'.split(',')}")
List<String> outletPassword;
@Value("#{'${outlet.email}'.split(',')}")
List<String> outletEmail;
@Value("#{'${outlet.fullname}'.split(',')}")
List<String> outletFullname;
@Value("#{'${outlet.username}'.split(',')}")
List<String> outletName;
//Admin Nostra
@Value("${adminnostra.password}")
String adminNostraPassword;
@Value("${adminnostra.email}")
String adminNostraEmail;
@Value("${adminnostra.fullname}")
String adminNostraFullname;
@Value("${adminnostra.username}")
String adminNostraName;
// End of init admin
@Value("${group.name}")
String groupName;
@Value("${group.accessLevel}")
String groupAccessLevel;
@Value("${client.id.admin}")
String clientIdAdmin;
@Value("${client.id.admin.pusat}")
String clientIdAdminPusat;
@Value("${client.id.admin.kanwil}")
String clientIdAdminKanwil;
@Value("${client.id.admin.area}")
String clientIdAdminArea;
@Value("${client.id.admin.cabang}")
String clientIdAdminCabang;
@Value("${client.id.admin.outlet}")
String clientIdAdminOutlet;
@Value("${client.id.user}")
String clientIdUser;
@Value("${client.id.agent}")
String clientIdAgent;
@Value("${client.id.admin.nostra}")
String clientIdAdminNostra;
/**
* by yohan
*/
// insert into table PATOK_TAKSIR
@Value("#{'${patok.rubrik}'.split(',')}")
List<String> patokrubrik;
@Value("#{'${patok.type}'.split(',')}")
List<String> patoktype;
@Value("#{'${patok.description}'.split(',')}")
List<String> patokdescription;
@Value("#{'${patok.tenor}'.split(',')}")
List<Integer> patoktenor;
@Value("#{'${patok.taksir}'.split(',')}")
List<Integer> patoktaksir;
// insert into table GOLONGAN
@Value("#{'${golongan.code}'.split(',')}")
List<String> golongancode;
@Value("#{'${golongan.min}'.split(',')}")
List<BigDecimal> golonganmin;
@Value("#{'${golongan.max}'.split(',')}")
List<BigDecimal> golonganmax;
@Value("#{'${golongan.tenor}'.split(',')}")
List<Integer> golongantenor;
@Value("#{'${golongan.toplimit}'.split(',')}")
List<Integer> golongantoplimit;
@Value("#{'${golongan.bottomlimit}'.split(',')}")
List<Integer> golonganbottomlimit;
@Value("#{'${golongan.rounding}'.split(',')}")
List<Integer> golonganrounding;
// insert into table parameter
@Value("#{'${jg.code}'.split(',')}")
List<String> jenisGudangCode;
@Value("#{'${jg.desc}'.split(',')}")
List<String> jenisGudangDesc;
@Value("#{'${jg.value}'.split(',')}")
List<String> jenisGudangValue;
// insert into table parameter with PARAMETER_KEPING
@Value("#{'${pkeping.code}'.split(',')}")
List<String> pkepingcode;
@Value("#{'${pkeping.desc}'.split(',')}")
List<String> pkepingdesc;
@Value("#{'${pkeping.value}'.split(',')}")
List<String> pkepingval;
// insert into table parameter with MERK_HANDPONE
@Value("#{'${phandpone.code}'.split(',')}")
List<String> phandponecode;
@Value("#{'${phandpone.desc}'.split(',')}")
List<String> phandponedesc;
@Value("#{'${phandpone.value}'.split(',')}")
List<String> phandponeval;
// insert into table parameter with MERK_LAPTOP
@Value("#{'${plaptop.code}'.split(',')}")
List<String> plaptopcode;
@Value("#{'${plaptop.desc}'.split(',')}")
List<String> plaptopdesc;
@Value("#{'${plaptop.value}'.split(',')}")
List<String> plaptopval;
// insert into table parameter with MERK_MOTOR
@Value("#{'${pmotor.code}'.split(',')}")
List<String> pmotorcode;
@Value("#{'${pmotor.desc}'.split(',')}")
List<String> pmotordesc;
@Value("#{'${pmotor.value}'.split(',')}")
List<String> pmotorval;
// insert into table parameter with MERK_MOBIL
@Value("#{'${pmobil.code}'.split(',')}")
List<String> pmobilcode;
@Value("#{'${pmobil.desc}'.split(',')}")
List<String> pmobildesc;
@Value("#{'${pmobil.value}'.split(',')}")
List<String> pmobilval;
// insert into table parameter with ELEKTRONIK
@Value("#{'${pelek.code}'.split(',')}")
List<String> pelekcode;
@Value("#{'${pelek.desc}'.split(',')}")
List<String> pelekdesc;
@Value("#{'${pelek.value}'.split(',')}")
List<String> pelekval;
// insert into table parameter with KENDARAAN
@Value("#{'${pkendaraan.code}'.split(',')}")
List<String> pkendaraancode;
@Value("#{'${pkendaraan.desc}'.split(',')}")
List<String> pkendaraandesc;
@Value("#{'${pkendaraan.value}'.split(',')}")
List<String> pkendaraanval;
// insert into table parameter with MERK_TELEVISI
@Value("#{'${pmtv.code}'.split(',')}")
List<String> pmtvccode;
@Value("#{'${pmtv.desc}'.split(',')}")
List<String> pmtvdesc;
@Value("#{'${pmtv.value}'.split(',')}")
List<String> pmtvval;
// insert into table parameter with MERK_KAMERA
@Value("#{'${pkam.code}'.split(',')}")
List<String> pkamcode;
@Value("#{'${pkam.desc}'.split(',')}")
List<String> pkamdesc;
@Value("#{'${pkam.value}'.split(',')}")
List<String> pkamval;
// insert into table parameter with MERK_ELEKTRONIKRT
@Value("#{'${pert.code}'.split(',')}")
List<String> pertcode;
@Value("#{'${pert.desc}'.split(',')}")
List<String> pertdesc;
@Value("#{'${pert.value}'.split(',')}")
List<String> pertvalue;
// insert into table PRODUCT
@Value("#{'${product.code}'.split(',')}")
List<String> productCode;
@Value("#{'${product.name}'.split(',')}")
List<String> productName;
@Value("#{'${product.survey}'.split(',')}")
List<String> productSurvey;
// insert into table Munah Amanah
@Value("#{'${munahamanah.batasBawah}'.split(',')}")
List<String> munahAmanahBatasBawah;
@Value("#{'${munahamanah.batasAtas}'.split(',')}")
List<String> munahAmanahBatasAtas;
@Value("#{'${munahamanah.diskon}'.split(',')}")
List<String> munahAmanahDiskon;
// insert into table parameter with Prosentase Munah
@Value("#{'${prosentasemunahamanah.code}'.split(',')}")
List<String> prosentasemMunahCode;
@Value("#{'${prosentasemunahamanah.desc}'.split(',')}")
List<String> prosentasemMunahdesc;
@Value("#{'${prosentasemunahamanah.value}'.split(',')}")
List<String> prosentasemMunahValue;
// insert into table parameter with Uang Muka Amanah
@Value("#{'${uangmukaamanah.code}'.split(',')}")
List<String> uangMukaAmanahCode;
@Value("#{'${uangmukaamanah.desc}'.split(',')}")
List<String> uangMukaAmanahDesc;
@Value("#{'${uangmukaamanah.value}'.split(',')}")
List<String> uangMukaAmanahValue;
// insert into table parameter with Tenor Amanah
@Value("#{'${tenoramanah.code}'.split(',')}")
List<String> tenorAmanahCode;
@Value("#{'${tenoramanah.desc}'.split(',')}")
List<String> tenorAmanahdesc;
@Value("#{'${tenoramanah.value}'.split(',')}")
List<String> tenorAmanahValue;
// insert into table parameter with Nominal Pembukaan Tabungan Emas
@Value("#{'${opentabunganemas.code}'.split(',')}")
List<String> openTabunganEmasCode;
@Value("#{'${opentabunganemas.desc}'.split(',')}")
List<String> openTabunganEmasDesc;
@Value("#{'${opentabunganemas.value}'.split(',')}")
List<String> openTabunganEmasValue;
// insert into table parameter with Nominal Top Up Tabungan Emas
@Value("#{'${topuptabunganemas.code}'.split(',')}")
List<String> topupTabunganEmasCode;
@Value("#{'${topuptabunganemas.desc}'.split(',')}")
List<String> topupTabunganEmasDesc;
@Value("#{'${topuptabunganemas.value}'.split(',')}")
List<String> topupTabunganEmasValue;
// insert into table parameter with Bank Syariah
@Value("#{'${bank.syariah.code}'.split(',')}")
List<String> bankSyariahCode;
@Value("#{'${bank.syariah.desc}'.split(',')}")
List<String> bankSyariahDesc;
@Value("#{'${bank.syariah.value}'.split(',')}")
List<String> bankSyariahValue;
// insert parameter nominal rahn
@Value("#{'${maxmarhunbihrahn.code}'.split(',')}")
List<String> nominalRahnCode;
@Value("#{'${maxmarhunbihrahn.desc}'.split(',')}")
List<String> nominalRahnDesc;
@Value("#{'${maxmarhunbihrahn.value}'.split(',')}")
List<String> nominalRahnValue;
// insert into table Munah Arrum Haji
@Value("#{'${munaharrum.batasBawah}'.split(',')}")
List<String> munahArrumBatasBawah;
@Value("#{'${munaharrum.batasAtas}'.split(',')}")
List<String> munahArrumBatasAtas;
@Value("#{'${munaharrum.diskon}'.split(',')}")
List<String> munahArrumDiskon;
// insert into table Munah Arrum Haji
@Value("#{'${arrumhaji.code}'.split(',')}")
List<String> arrumHajiCode;
@Value("#{'${arrumhaji.desc}'.split(',')}")
List<String> arrumHajiDesc;
@Value("#{'${arrumhaji.value}'.split(',')}")
List<String> arrumHajiValue;
// insert into table Munah Arrum Haji
@Value("#{'${tenorarrumhaji.code}'.split(',')}")
List<String> tenorArrumHajiCode;
@Value("#{'${tenorarrumhaji.desc}'.split(',')}")
List<String> tenorArrumHajiDesc;
@Value("#{'${tenorarrumhaji.value}'.split(',')}")
List<String> tenorArrumHajiValue;
// insert into table Munah Arrum Haji
@Value("#{'${plafonamanah.code}'.split(',')}")
List<String> plafonAmanahCode;
@Value("#{'${plafonamanah.desc}'.split(',')}")
List<String> plafonAmanahDesc;
@Value("#{'${plafonamanah.value}'.split(',')}")
List<String> plafonAmanahValue;
// insert into table Paremeter
@Value("#{'${plafonamanah.code}'.split(',')}")
List<String> parameterArlojiCode;
@Value("#{'${parloji.decs}'.split(',')}")
List<String> parameterArlojiDes;
@Value("#{'${parloji.value}'.split(',')}")
List<String> parameterArlojiVal;
// insert into table Paremeter
@Value("#{'${pelec.code}'.split(',')}")
List<String> parameterElecCode;
@Value("#{'${pelec.decs}'.split(',')}")
List<String> parameterElecDes;
@Value("#{'${pelec.value}'.split(',')}")
List<String> parameterElecVal;
//
// parloji.code=ELAR
// parloji.decs=Lainnya
// parloji.value=N/A
//
//
// pelec.code=ELEL
// pelec.decs=Lainnya
// pelec.value=N/A
@PostConstruct
public void init() {
Authentication authentication = new UserPasswordAuthenticationToken("SYSTEM", "SYSTEM");
SecurityContextHolder.getContext().setAuthentication(authentication);
logger.info("---------------------------------------------------------------");
logger.info("PARAMETER SIZE : {} + {} + {} ", paramsCode.size(), paramsDesc.size(), paramsValue.size());
for (int i = 0; i < paramsCode.size(); i++) {
initParameter(paramsCode.get(i), paramsDesc.get(i), paramsValue.get(i));
}
logger.info("---------------------------------------------------------------");
// createAdmin();
createPrivileges();
initAccessLevel();
// initGroup();
initAdmin();
// initAgen();
// add by yohan
initPatokTaksir();
initGolongan();
initJenisGudang();
initParameterArloji();
initParameterElec();
initParameterKeping();
initParameterHP();
initParameterLaptop();
initParameterMotorDanMobil();
initParameterElektronik();
initParameterKendaraan();
initParameterMerkTV();
initParameterMerkKamera();
initParameterMerkElektronikRT();
initProduct();
initMunahAmanah();
initTenorAmanah();
initProsentaseMunahAmanah();
initUangMukaAmanah();
initOpenTabunganEmas();
initTopupTabunganEmas();
initNominalRahn();
initMunahArrumHaji();
initParamArrumHaji();
initTenorArrumHaji();
initPlafonMarhunBihAmanah();
initBankSyariah();
}
private void initGroup() {
// Group group = groupRepository.findByNameLike(groupName);
// if(group == null){
// group = new Group();
// }
// AccessLevel accessLevel = accessLevelRepository.findByValue(groupAccessLevel);
// group.setName(groupName);
// group.setAccessLevel(accessLevel);
// Collection<Privilege> privilegeCollections = privilegeRepository.findAll();
// group.setPrivileges(privilegeCollections);
// groupRepository.save(group);
}
private void initAdmin() {
User user = null;
List<Privilege> group = new ArrayList<>();
// Init SuperAdmin
user = userRepository.findByUsername(adminName);
group.clear();
group.addAll(privilegeRepository.findByCategory(Constants.PrivilegeCategory.ADMIN_MANAGEMENT));
group.addAll(privilegeRepository.findByCategory(Constants.PrivilegeCategory.CONTENT_MANAGEMENT));
group.addAll(privilegeRepository.findByCategory(Constants.PrivilegeCategory.SURVEY_PRODUCT));
if (user == null && group != null) {
user = new User();
user.setPrivileges(group);
user.setImmediateChangePassword(false);
user.setEmail(adminEmail);
user.setPassword(passwordEncoder.encode(adminPassword));
user.setUsername(adminName);
user.setClientId(clientIdAdmin);
User saved = userRepository.save(user);
ProfileAdmin profileAdmin = new ProfileAdmin();
profileAdmin.setFullName(adminFullname);
profileAdmin.setBranchCode("0");
profileAdmin.setUser(saved);
profileAdminRepository.save(profileAdmin);
}
// Init Admin Pusat
user = userRepository.findByUsername(pusatName);
group.clear();
group.add(privilegeRepository.findTop1ByNameAndCategory(Constants.PrivilegeType.READ_AGENT,
Constants.PrivilegeCategory.AGENT_MANAGEMENT));
group.add(privilegeRepository.findTop1ByNameAndCategory(Constants.PrivilegeType.READ_SURVEY,
Constants.PrivilegeCategory.SURVEY_AGEN));
group.add(privilegeRepository.findTop1ByNameAndCategory(Constants.PrivilegeType.READ_APPROVE,
Constants.PrivilegeCategory.APPROVAL_SURVEY));
group.add(privilegeRepository.findTop1ByNameAndCategory(Constants.PrivilegeType.READ_CONTENT,
Constants.PrivilegeCategory.CONTENT_MANAGEMENT));
group.add(privilegeRepository.findTop1ByNameAndCategory(Constants.PrivilegeType.READ_SURVEY_PRODUCT,
Constants.PrivilegeCategory.SURVEY_PRODUCT));
if (user == null && group != null) {
user = new User();
user.setPrivileges(group);
user.setImmediateChangePassword(false);
user.setEmail(pusatEmail);
user.setPassword(passwordEncoder.encode(pusatPassword));
user.setUsername(pusatName);
user.setClientId(clientIdAdminPusat);
User saved = userRepository.save(user);
ProfileAdmin profileAdmin = new ProfileAdmin();
profileAdmin.setFullName(pusatFullname);
profileAdmin.setBranchCode("0");
profileAdmin.setUser(saved);
profileAdminRepository.save(profileAdmin);
}
// Init Admin Kanwil
for (int index = 0; index < kanwilName.size(); index++) {
user = userRepository.findByUsername(kanwilName.get(index));
group.clear();
group.add(privilegeRepository.findTop1ByNameAndCategory(Constants.PrivilegeType.READ_AREA,
Constants.PrivilegeCategory.AREA_MANAGEMENT));
group.add(privilegeRepository.findTop1ByNameAndCategory(Constants.PrivilegeType.READ_SURVEY,
Constants.PrivilegeCategory.SURVEY_AGEN));
group.add(privilegeRepository.findTop1ByNameAndCategory(Constants.PrivilegeType.READ_APPROVE,
Constants.PrivilegeCategory.APPROVAL_SURVEY));
group.add(privilegeRepository.findTop1ByNameAndCategory(Constants.PrivilegeType.READ_AGENT,
Constants.PrivilegeCategory.AGENT_MANAGEMENT));
if (user == null && group != null) {
user = new User();
user.setPrivileges(group);
user.setImmediateChangePassword(false);
user.setEmail(kanwilEmail.get(index));
user.setPassword(passwordEncoder.encode(kanwilPassword.get(index)));
user.setUsername(kanwilName.get(index));
user.setClientId(clientIdAdminKanwil);
User saved = userRepository.save(user);
ProfileAdmin profileAdmin = new ProfileAdmin();
profileAdmin.setFullName(kanwilFullname.get(index));
profileAdmin.setBranchCode(kanwilName.get(index));
profileAdmin.setUser(saved);
profileAdminRepository.save(profileAdmin);
}
}
// Init Admin Area
for (int index = 0; index < areaName.size(); index++) {
user = userRepository.findByUsername(areaName.get(index));
group.clear();
group.add(privilegeRepository.findTop1ByNameAndCategory(Constants.PrivilegeType.READ_BRANCH,
Constants.PrivilegeCategory.BRANCH_MANAGEMENT));
group.add(privilegeRepository.findTop1ByNameAndCategory(Constants.PrivilegeType.READ_SURVEY,
Constants.PrivilegeCategory.SURVEY_AGEN));
group.add(privilegeRepository.findTop1ByNameAndCategory(Constants.PrivilegeType.READ_APPROVE,
Constants.PrivilegeCategory.APPROVAL_SURVEY));
group.add(privilegeRepository.findTop1ByNameAndCategory(Constants.PrivilegeType.READ_AGENT,
Constants.PrivilegeCategory.AGENT_MANAGEMENT));
if (user == null && group != null) {
user = new User();
user.setPrivileges(group);
user.setImmediateChangePassword(false);
user.setEmail(areaEmail.get(index));
user.setPassword(passwordEncoder.encode(areaPassword.get(index)));
user.setUsername(areaName.get(index));
user.setClientId(clientIdAdminArea);
User saved = userRepository.save(user);
ProfileAdmin profileAdmin = new ProfileAdmin();
profileAdmin.setFullName(areaFullname.get(index));
profileAdmin.setBranchCode(areaName.get(index));
profileAdmin.setUser(saved);
profileAdminRepository.save(profileAdmin);
}
}
// Init Admin Cabang
for (int index = 0; index < cabangName.size(); index++) {
user = userRepository.findByUsername(cabangName.get(index));
group.clear();
group.addAll(privilegeRepository.findByCategory(Constants.PrivilegeCategory.AGENT_MANAGEMENT));
group.addAll(privilegeRepository.findByCategory(Constants.PrivilegeCategory.SURVEY_AGEN));
group.addAll(privilegeRepository.findByCategory(Constants.PrivilegeCategory.APPROVAL_SURVEY));
if (user == null && group != null) {
user = new User();
user.setPrivileges(group);
user.setImmediateChangePassword(false);
user.setEmail(cabangEmail.get(index));
user.setPassword(passwordEncoder.encode(cabangPassword.get(index)));
user.setUsername(cabangName.get(index));
user.setClientId(clientIdAdminCabang);
User saved = userRepository.save(user);
ProfileAdmin profileAdmin = new ProfileAdmin();
profileAdmin.setFullName(cabangFullname.get(index));
profileAdmin.setBranchCode(cabangName.get(index));
profileAdmin.setUser(saved);
profileAdminRepository.save(profileAdmin);
}
}
// Init Admin Outlet
for (int index = 0; index < outletName.size(); index++) {
user = userRepository.findByUsername(outletName.get(index));
group.clear();
group.addAll(privilegeRepository.findByCategory(Constants.PrivilegeCategory.AGENT_MANAGEMENT));
group.addAll(privilegeRepository.findByCategory(Constants.PrivilegeCategory.SURVEY_AGEN));
group.addAll(privilegeRepository.findByCategory(Constants.PrivilegeCategory.APPROVAL_SURVEY));
if (user == null && group != null) {
user = new User();
user.setPrivileges(group);
user.setImmediateChangePassword(false);
user.setEmail(outletEmail.get(index));
user.setPassword(passwordEncoder.encode(outletPassword.get(index)));
user.setUsername(outletName.get(index));
user.setClientId(clientIdAdminOutlet);
User saved = userRepository.save(user);
ProfileAdmin profileAdmin = new ProfileAdmin();
profileAdmin.setFullName(outletFullname.get(index));
profileAdmin.setBranchCode(outletName.get(index));
profileAdmin.setUser(saved);
profileAdminRepository.save(profileAdmin);
}
}
// Init Admin Nostra
user = userRepository.findByUsername(adminNostraName);
group.clear();
group.add(privilegeRepository.findTop1ByNameAndCategory(Constants.PrivilegeType.RAHN_PERHIASAN,
Constants.PrivilegeCategory.AGEN_GADAI));
group.add(privilegeRepository.findTop1ByNameAndCategory(Constants.PrivilegeType.RAHN_LOGAM_MULIA,
Constants.PrivilegeCategory.AGEN_GADAI));
group.add(privilegeRepository.findTop1ByNameAndCategory(Constants.PrivilegeType.RAHN_ELEKTRONIK,
Constants.PrivilegeCategory.AGEN_GADAI));
group.add(privilegeRepository.findTop1ByNameAndCategory(Constants.PrivilegeType.RAHN_LAPTOP,
Constants.PrivilegeCategory.AGEN_GADAI));
group.add(privilegeRepository.findTop1ByNameAndCategory(Constants.PrivilegeType.RAHN_HANDPHONE,
Constants.PrivilegeCategory.AGEN_GADAI));
group.add(privilegeRepository.findTop1ByNameAndCategory(Constants.PrivilegeType.RAHN_KENDARAAN,
Constants.PrivilegeCategory.AGEN_GADAI));
group.add(privilegeRepository.findTop1ByNameAndCategory(Constants.PrivilegeType.RAHN_GUDANG,
Constants.PrivilegeCategory.AGEN_GADAI));
group.add(privilegeRepository.findTop1ByNameAndCategory(Constants.PrivilegeType.PEMASARAN_AMANAH,
Constants.PrivilegeCategory.PEMASARAN));
group.add(privilegeRepository.findTop1ByNameAndCategory(Constants.PrivilegeType.PEMASARAN_ARRUM,
Constants.PrivilegeCategory.PEMASARAN));
group.add(privilegeRepository.findTop1ByNameAndCategory(Constants.PrivilegeType.PEMBAYARAN_RAHN,
Constants.PrivilegeCategory.PEMBAYARAN));
group.add(privilegeRepository.findTop1ByNameAndCategory(Constants.PrivilegeType.PEMBUKAAN_TABUNGAN_EMAS,
Constants.PrivilegeCategory.PEMBAYARAN));
group.add(privilegeRepository.findTop1ByNameAndCategory(Constants.PrivilegeType.TOP_UP_TABUNGAN_EMAS,
Constants.PrivilegeCategory.PEMBAYARAN));
group.add(privilegeRepository.findTop1ByNameAndCategory(Constants.PrivilegeType.CREATE_SURVEY,
Constants.PrivilegeCategory.SURVEY_AGEN));
group.add(privilegeRepository.findTop1ByNameAndCategory(Constants.PrivilegeType.READ_SURVEY,
Constants.PrivilegeCategory.SURVEY_AGEN));
group.add(privilegeRepository.findTop1ByNameAndCategory(Constants.PrivilegeType.UPDATE_SURVEY,
Constants.PrivilegeCategory.SURVEY_AGEN));
group.add(privilegeRepository.findTop1ByNameAndCategory(Constants.PrivilegeType.DELETE_SURVEY,
Constants.PrivilegeCategory.SURVEY_AGEN));
group.add(privilegeRepository.findTop1ByNameAndCategory(Constants.PrivilegeType.CREATE_APPROVE,
Constants.PrivilegeCategory.APPROVAL_SURVEY));
group.add(privilegeRepository.findTop1ByNameAndCategory(Constants.PrivilegeType.READ_APPROVE,
Constants.PrivilegeCategory.APPROVAL_SURVEY));
group.add(privilegeRepository.findTop1ByNameAndCategory(Constants.PrivilegeType.UPDATE_APPROVE,
Constants.PrivilegeCategory.APPROVAL_SURVEY));
group.add(privilegeRepository.findTop1ByNameAndCategory(Constants.PrivilegeType.DELETE_APPROVE,
Constants.PrivilegeCategory.APPROVAL_SURVEY));
group.add(privilegeRepository.findTop1ByNameAndCategory(Constants.PrivilegeType.CREATE_ADMIN,
Constants.PrivilegeCategory.ADMIN_MANAGEMENT));
group.add(privilegeRepository.findTop1ByNameAndCategory(Constants.PrivilegeType.READ_ADMIN,
Constants.PrivilegeCategory.ADMIN_MANAGEMENT));
group.add(privilegeRepository.findTop1ByNameAndCategory(Constants.PrivilegeType.UPDATE_ADMIN,
Constants.PrivilegeCategory.ADMIN_MANAGEMENT));
group.add(privilegeRepository.findTop1ByNameAndCategory(Constants.PrivilegeType.DELETE_ADMIN,
Constants.PrivilegeCategory.ADMIN_MANAGEMENT));
group.add(privilegeRepository.findTop1ByNameAndCategory(Constants.PrivilegeType.CREATE_CONTENT,
Constants.PrivilegeCategory.CONTENT_MANAGEMENT));
group.add(privilegeRepository.findTop1ByNameAndCategory(Constants.PrivilegeType.READ_CONTENT,
Constants.PrivilegeCategory.CONTENT_MANAGEMENT));
group.add(privilegeRepository.findTop1ByNameAndCategory(Constants.PrivilegeType.UPDATE_CONTENT,
Constants.PrivilegeCategory.CONTENT_MANAGEMENT));
group.add(privilegeRepository.findTop1ByNameAndCategory(Constants.PrivilegeType.DELETE_CONTENT,
Constants.PrivilegeCategory.CONTENT_MANAGEMENT));
group.add(privilegeRepository.findTop1ByNameAndCategory(Constants.PrivilegeType.READ_AREA,
Constants.PrivilegeCategory.AREA_MANAGEMENT));
group.add(privilegeRepository.findTop1ByNameAndCategory(Constants.PrivilegeType.READ_BRANCH,
Constants.PrivilegeCategory.BRANCH_MANAGEMENT));
group.add(privilegeRepository.findTop1ByNameAndCategory(Constants.PrivilegeType.CREATE_AGENT,
Constants.PrivilegeCategory.AGENT_MANAGEMENT));
group.add(privilegeRepository.findTop1ByNameAndCategory(Constants.PrivilegeType.READ_AGENT,
Constants.PrivilegeCategory.AGENT_MANAGEMENT));
group.add(privilegeRepository.findTop1ByNameAndCategory(Constants.PrivilegeType.UPDATE_AGENT,
Constants.PrivilegeCategory.AGENT_MANAGEMENT));
group.add(privilegeRepository.findTop1ByNameAndCategory(Constants.PrivilegeType.DELETE_AGENT,
Constants.PrivilegeCategory.AGENT_MANAGEMENT));
group.add(privilegeRepository.findTop1ByNameAndCategory(Constants.PrivilegeType.CREATE_SURVEY_PRODUCT,
Constants.PrivilegeCategory.SURVEY_PRODUCT));
group.add(privilegeRepository.findTop1ByNameAndCategory(Constants.PrivilegeType.READ_SURVEY_PRODUCT,
Constants.PrivilegeCategory.SURVEY_PRODUCT));
group.add(privilegeRepository.findTop1ByNameAndCategory(Constants.PrivilegeType.UPDATE_SURVEY_PRODUCT,
Constants.PrivilegeCategory.SURVEY_PRODUCT));
group.add(privilegeRepository.findTop1ByNameAndCategory(Constants.PrivilegeType.DELETE_SURVEY_PRODUCT,
Constants.PrivilegeCategory.SURVEY_PRODUCT));
if (user == null && group != null) {
user = new User();
// user.setGroup(group);
user.setPrivileges(group);
user.setImmediateChangePassword(false);
user.setEmail(adminNostraEmail);
user.setPassword(passwordEncoder.encode(adminNostraPassword));
user.setUsername(adminNostraName);
user.setClientId(clientIdAdminNostra);
User saved = userRepository.save(user);
ProfileAdmin profileAdmin = new ProfileAdmin();
profileAdmin.setFullName(adminNostraFullname);
profileAdmin.setBranchCode("0");
profileAdmin.setUser(saved);
profileAdminRepository.save(profileAdmin);
}
// Init pegadaian integration user
user = userRepository.findByUsername(integrationName);
group.clear();
group.addAll(privilegeRepository.findByCategory(Constants.PrivilegeCategory.ADMIN_MANAGEMENT));
group.addAll(privilegeRepository.findByCategory(Constants.PrivilegeCategory.CONTENT_MANAGEMENT));
group.addAll(privilegeRepository.findByCategory(Constants.PrivilegeCategory.SURVEY_PRODUCT));
if (user == null && group != null) {
user = new User();
// user.setPrivileges(group);
user.setImmediateChangePassword(false);
user.setEmail("");
user.setPassword(passwordEncoder.encode(integrationPassword));
user.setUsername(integrationName);
user.setClientId(clientIdAdmin);
User saved = userRepository.save(user);
}
}
// Development purpose only
private void initAgen() {
if (userRepository.findAll().size() < 3) {
User user = new User();
user.setImmediateChangePassword(false);
user.setEmail("dev.nostratech@mailinator.com");
user.setPassword(passwordEncoder.encode(adminPassword));
user.setUsername("dev.nostratech@mailinator.com");
user.setClientId(clientIdUser);
User saved = userRepository.save(user);
Agent profileAgent = new Agent();
profileAgent.setAgentName("Mas Eka Setiawan");
profileAgent.setAgentType("3");
profileAgent.setBankCode("002");
profileAgent.setBankCustName("BRI");
profileAgent.setBranch(branchRepository.findByCode("60636"));
profileAgent.setCif("20000000");
profileAgent.setFlagCust("S");
profileAgent.setIbuKandung("ibuKandung");
profileAgent.setIdAgent("140020");
profileAgent.setExpiredDate(new Date(1, 2, 1950));
profileAgent.setIdKelurahan("01021002");
profileAgent.setIdKecamatan("010210");
profileAgent.setIdCity("0102");
profileAgent.setIdProvince("1");
profileAgent.setAddress("Jakarta");
profileAgent.setJenisKelamin("L");
profileAgent.setNoHp("087808953093");
profileAgent.setNoIdentitas("1234787283");
profileAgent.setNoPin("21342");
profileAgent.setNoRekBank("283081389283");
profileAgent.setRegistrationStatus("PENDING");
profileAgent.setStatus("1");
profileAgent.setStatusKawin("1");
profileAgent.setTanggalLahir(new Date(1, 2, 1920));
profileAgent.setTempatLahir("tempatLahir");
profileAgent.setTipeIdentitas("KTP");
profileAgent.setTransactionStatus("1");
profileAgent.setPhotoKtp("url");
profileAgent.setPhotoSelfie("url");
profileAgent.setUser(saved);
profileAgent.setBusinessName("IT Consultant");
profileAgent.setBusinessType("3");
profileAgent.setBusinessAddress("Pondok Pinang");
profileAgent.setBusinessProvince("1");
profileAgent.setBusinessCity("0102");
profileAgent.setBusinessKelurahan("01021002");
profileAgent.setBusinessKecamatan("010210");
profileAgent.setBusinessPhotoFront("url_tampak_depan");
profileAgent.setBusinessPhotoBack("url_tampak_belakang");
agentRepository.save(profileAgent);
}
}
private void initAccessLevel() {
List<AccessLevel> accessLevel = accessLevelRepository.findAll();
if (accessLevel.size() == 0) {
logger.info("CREATE ACCESS LEVEL : {} + {} ", accessLevelDesc.size(), accessLevelValue.size());
if (accessLevelDesc.size() == accessLevelValue.size()) {
int[] idx = {0};
accessLevelDesc.forEach(item -> {
AccessLevel newAccessLevel = new AccessLevel();
newAccessLevel.setInstance(item);
newAccessLevel.setValue(accessLevelValue.get(idx[0]));
newAccessLevel.setKeyName(accessLevelKeyName.get(idx[0]));
idx[0]++;
accessLevelRepository.saveAndFlush(newAccessLevel);
});
} else {
logger.info("ACCESS LEVEL DESC AND VALUE NOT MATCH !!!");
}
}
}
private void initParameter(String code, String desc, String value) {
logger.info("Checking Parameter code {}, desc {}, value {}", code, desc, value);
Parameter parameter = parameterRepository.findByCodeAndValue(code, value);
if (null == parameter) {
parameter = new Parameter();
logger.info("Creating Parameter code {}, desc {}, value {}", code, desc, value);
parameter.setCode(code);
parameter.setDescription(desc);
parameter.setValue(value);
parameterRepository.save(parameter);
}
logger.info("Checking Parameter code {}, desc {}, value {} Done", code, desc, value);
}
private void createPrivileges() {
//privilege gadai
int[] idx = {0};
accessLevelGadai.forEach((privilege) -> {
Privilege privileges = privilegeRepository.findByName(privilege);
if (privileges == null) {
privileges = new Privilege();
}
privileges.setDescription(accessLevelGadaiDesc.get(idx[0]));
privileges.setCategory(Constants.PrivilegeCategory.AGEN_GADAI);
privileges.setName(privilege);
idx[0]++;
privilegeRepository.saveAndFlush(privileges);
});
//privilege pemasaran
idx[0] = 0;
accessLevelPemasaran.forEach((privilege) -> {
Privilege privileges = privilegeRepository.findByName(privilege);
if (privileges == null) {
privileges = new Privilege();
}
privileges.setDescription(accessLevelPemasaranDesc.get(idx[0]));
privileges.setCategory(Constants.PrivilegeCategory.PEMASARAN);
privileges.setName(privilege);
idx[0]++;
privilegeRepository.saveAndFlush(privileges);
});
//privilege pembayaran
idx[0] = 0;
accessLevelPembayaran.forEach((privilege) -> {
Privilege privileges = privilegeRepository.findByName(privilege);
if (privileges == null) {
privileges = new Privilege();
}
privileges.setDescription(accessLevelPembayaranDesc.get(idx[0]));
privileges.setCategory(Constants.PrivilegeCategory.PEMBAYARAN);
privileges.setName(privilege);
idx[0]++;
privilegeRepository.saveAndFlush(privileges);
});
//privilege survey
idx[0] = 0;
accessLevelSurvey.forEach((privilege) -> {
Privilege privileges = privilegeRepository.findByName(privilege);
if (privileges == null) {
privileges = new Privilege();
}
privileges.setDescription(accessLevelSurveyDesc.get(idx[0]));
privileges.setCategory(Constants.PrivilegeCategory.SURVEY_AGEN);
privileges.setName(privilege);
idx[0]++;
privilegeRepository.saveAndFlush(privileges);
});
//privilege approval
idx[0] = 0;
accessLevelApproval.forEach((privilege) -> {
Privilege privileges = privilegeRepository.findByName(privilege);
if (privileges == null) {
privileges = new Privilege();
}
privileges.setDescription(accessLevelApprovalDesc.get(idx[0]));
privileges.setCategory(Constants.PrivilegeCategory.APPROVAL_SURVEY);
privileges.setName(privilege);
idx[0]++;
privilegeRepository.saveAndFlush(privileges);
});
//privilege admin menejemen
idx[0] = 0;
accessLevelAdminManagement.forEach((privilege) -> {
Privilege privileges = privilegeRepository.findByName(privilege);
if (privileges == null) {
privileges = new Privilege();
}
privileges.setDescription(accessLevelAdminManagementDesc.get(idx[0]));
privileges.setCategory(Constants.PrivilegeCategory.ADMIN_MANAGEMENT);
privileges.setName(privilege);
idx[0]++;
privilegeRepository.saveAndFlush(privileges);
});
//privilege konten menejemen
idx[0] = 0;
accessLevelContentManagement.forEach((privilege) -> {
Privilege privileges = privilegeRepository.findByName(privilege);
if (privileges == null) {
privileges = new Privilege();
}
privileges.setDescription(accessLevelContentManagementDesc.get(idx[0]));
privileges.setCategory(Constants.PrivilegeCategory.CONTENT_MANAGEMENT);
privileges.setName(privilege);
idx[0]++;
privilegeRepository.saveAndFlush(privileges);
});
//privilege area menejemen
idx[0] = 0;
accessLevelAreaManagement.forEach((privilege) -> {
Privilege privileges = privilegeRepository.findByName(privilege);
if (privileges == null) {
privileges = new Privilege();
}
privileges.setDescription(accessLevelAreaManagementDesc.get(idx[0]));
privileges.setCategory(Constants.PrivilegeCategory.AREA_MANAGEMENT);
privileges.setName(privilege);
idx[0]++;
privilegeRepository.saveAndFlush(privileges);
});
//privilege cabang menejemen
idx[0] = 0;
accessLevelBranchManagement.forEach((privilege) -> {
Privilege privileges = privilegeRepository.findByName(privilege);
if (privileges == null) {
privileges = new Privilege();
}
privileges.setDescription(accessLevelBranchManagementDesc.get(idx[0]));
privileges.setCategory(Constants.PrivilegeCategory.BRANCH_MANAGEMENT);
privileges.setName(privilege);
idx[0]++;
privilegeRepository.saveAndFlush(privileges);
});
//privilege agen menejemen
idx[0] = 0;
accessLevelAgentManagement.forEach((privilege) -> {
Privilege privileges = privilegeRepository.findByName(privilege);
if (privileges == null) {
privileges = new Privilege();
}
privileges.setDescription(accessLevelAgentManagementDesc.get(idx[0]));
privileges.setCategory(Constants.PrivilegeCategory.AGENT_MANAGEMENT);
privileges.setName(privilege);
idx[0]++;
privilegeRepository.saveAndFlush(privileges);
});
// Privilege survey produk
idx[0] = 0;
accessLevelSurveyProduct.forEach((privilege) -> {
Privilege privileges = privilegeRepository.findByName(privilege);
if (privileges == null) {
privileges = new Privilege();
}
privileges.setDescription(accessLevelSurveyProductDesc.get(idx[0]));
privileges.setCategory(Constants.PrivilegeCategory.SURVEY_PRODUCT);
privileges.setName(privilege);
idx[0]++;
privilegeRepository.saveAndFlush(privileges);
});
}
private void initGolongan() {
logger.error("Jumlah GOlongan = " + golongancode.size());
for (int i = 0; i < this.golongancode.size(); i++) {
Golongan golongan = golonganRepository.findByCodeAndTenor(golongancode.get(i), golongantenor.get(i));
if (golongan == null) {
golongan = new Golongan();
golongan.setCode(golongancode.get(i));
golongan.setMin(golonganmin.get(i));
golongan.setMax(golonganmax.get(i));
golongan.setTenor(golongantenor.get(i));
golongan.setToplimit(golongantoplimit.get(i));
golongan.setBottomlimit(golonganbottomlimit.get(i));
golongan.setRounding(golonganrounding.get(i));
golonganRepository.saveAndFlush(golongan);
}
}
}
private void initJenisGudang() {
for (int i = 0; i < this.jenisGudangCode.size(); i++) {
Parameter parameter = parameterRepository.findByCodeAndValue(jenisGudangCode.get(i), jenisGudangValue.get(i));
if (parameter == null) {
Parameter parameter1 = new Parameter();
parameter1.setCode(jenisGudangCode.get(i));
parameter1.setDescription(jenisGudangDesc.get(i));
parameter1.setValue(jenisGudangValue.get(i));
parameterRepository.saveAndFlush(parameter1);
}
}
}
private void initPatokTaksir() {
List<PatokTaksir> patokTaksirpatokTaksir = taksirRepository.findAll();
if (patokTaksirpatokTaksir.size() == 0) {
for (int i = 0; i < this.patoktype.size(); i++) {
PatokTaksir patokTaksir = new PatokTaksir();
patokTaksir.setRubrik(this.patokrubrik.get(i));
patokTaksir.setDescription(this.patokdescription.get(i));
patokTaksir.setPatok(this.patoktaksir.get(i));
patokTaksir.setTenor(this.patoktenor.get(i));
patokTaksir.setType(this.patoktype.get(i));
taksirRepository.saveAndFlush(patokTaksir);
}
}
}
private void initParameterKeping() {
for (int i = 0; i < pkepingcode.size(); i++) {
if (parameterRepository.findByCodeAndValue(pkepingcode.get(i), pkepingval.get(i)) == null) {
Parameter parameter = new Parameter();
parameter.setCode(pkepingcode.get(i));
parameter.setValue(pkepingval.get(i));
parameter.setDescription(pkepingdesc.get(i));
parameterRepository.saveAndFlush(parameter);
}
}
}
private void initParameterHP() {
for (int i = 0; i < phandponecode.size(); i++) {
if (parameterRepository.findByCodeAndValue(phandponecode.get(i), phandponeval.get(i)) == null) {
Parameter parameter = new Parameter();
parameter.setCode(phandponecode.get(i));
parameter.setDescription(phandponedesc.get(i));
parameter.setValue(phandponeval.get(i));
parameterRepository.saveAndFlush(parameter);
}
}
}
private void initParameterLaptop() {
for (int i = 0; i < plaptopcode.size(); i++) {
if (parameterRepository.findByCodeAndValue(plaptopcode.get(i), plaptopval.get(i)) == null) {
Parameter parameter = new Parameter();
parameter.setCode(plaptopcode.get(i));
parameter.setValue(plaptopval.get(i));
parameter.setDescription(plaptopdesc.get(i));
parameterRepository.saveAndFlush(parameter);
}
}
}
private void initParameterMotorDanMobil() {
for (int i = 0; i < pmotorcode.size(); i++) {
if (parameterRepository.findByCodeAndValue(pmotorcode.get(i), pmotorval.get(i)) == null) {
Parameter parameter = new Parameter();
parameter.setCode(pmotorcode.get(i));
parameter.setValue(pmotorval.get(i));
parameter.setDescription(pmotordesc.get(i));
parameterRepository.saveAndFlush(parameter);
}
}
for (int i = 0; i < pmobilcode.size(); i++) {
if (parameterRepository.findByCodeAndValue(pmobilcode.get(i), pmobilval.get(i)) == null) {
Parameter parameter = new Parameter();
parameter.setCode(pmobilcode.get(i));
parameter.setValue(pmobilval.get(i));
parameter.setDescription(pmobildesc.get(i));
parameterRepository.saveAndFlush(parameter);
}
}
}
private void initParameterElektronik() {
for (int i = 0; i < pelekcode.size(); i++) {
if (parameterRepository.findByCodeAndValue(pelekcode.get(i), pelekval.get(i)) == null) {
Parameter parameter = new Parameter();
parameter.setCode(pelekcode.get(i));
parameter.setValue(pelekval.get(i));
parameter.setDescription(pelekdesc.get(i));
parameterRepository.saveAndFlush(parameter);
}
}
}
private void initParameterKendaraan() {
for (int i = 0; i < pkendaraancode.size(); i++) {
if (parameterRepository.findByCodeAndValue(pkendaraancode.get(i), pkendaraanval.get(i)) == null) {
Parameter parameter = new Parameter();
parameter.setCode(pkendaraancode.get(i));
parameter.setValue(pkendaraanval.get(i));
parameter.setDescription(pkendaraanval.get(i));
parameterRepository.saveAndFlush(parameter);
}
}
}
private void initParameterMerkTV() {
for (int i = 0; i < pmtvccode.size(); i++) {
if (parameterRepository.findByCodeAndValue(pmtvccode.get(i), pmtvval.get(i)) == null) {
Parameter parameter = new Parameter();
parameter.setCode(pmtvccode.get(i));
parameter.setValue(pmtvval.get(i));
parameter.setDescription(pmtvdesc.get(i));
parameterRepository.saveAndFlush(parameter);
}
}
}
private void initParameterMerkKamera() {
for (int i = 0; i < pkamcode.size(); i++) {
if (parameterRepository.findByCodeAndValue(pkamcode.get(i), pkamval.get(i)) == null) {
Parameter parameter = new Parameter();
parameter.setCode(pkamcode.get(i));
parameter.setValue(pkamval.get(i));
parameter.setDescription(pkamdesc.get(i));
parameterRepository.saveAndFlush(parameter);
}
}
}
private void initParameterMerkElektronikRT() {
for (int i = 0; i < pertcode.size(); i++) {
if (parameterRepository.findByCodeAndValue(pertcode.get(i), pertvalue.get(i)) == null) {
Parameter parameter = new Parameter();
parameter.setCode(pertcode.get(i));
parameter.setValue(pertvalue.get(i));
parameter.setDescription(pertdesc.get(i));
parameterRepository.saveAndFlush(parameter);
}
}
}
private void initProduct() {
List<Product> productList = productRepository.findAll();
if (productList.size() == 0) {
for (int i = 0; i < this.productCode.size(); i++) {
Product product = new Product();
product.setProductCode(this.productCode.get(i));
product.setName(this.productName.get(i));
product.setSurvey(this.productSurvey.get(i));
productRepository.saveAndFlush(product);
}
}
}
private void initMunahAmanah() {
List<MunahAmanah> munahAmanahList = munahAmanahRepository.findAll();
if (munahAmanahList.size() == 0) {
for (int i = 0; i < this.munahAmanahDiskon.size(); i++) {
MunahAmanah munahAmanah = new MunahAmanah();
munahAmanah.setTaksiranBawah(new BigDecimal(this.munahAmanahBatasBawah.get(i)));
munahAmanah.setTaksiranAtas(new BigDecimal(this.munahAmanahBatasAtas.get(i)));
munahAmanah.setDiskon(new BigDecimal(this.munahAmanahDiskon.get(i)));
munahAmanahRepository.saveAndFlush(munahAmanah);
}
}
}
private void initProsentaseMunahAmanah() {
for (int i = 0; i < prosentasemMunahCode.size(); i++) {
if (parameterRepository.findByCodeAndValue(prosentasemMunahCode.get(i), prosentasemMunahValue.get(i)) == null) {
Parameter parameter = new Parameter();
parameter.setCode(prosentasemMunahCode.get(i));
parameter.setValue(prosentasemMunahValue.get(i));
parameter.setDescription(prosentasemMunahdesc.get(i));
parameterRepository.saveAndFlush(parameter);
}
}
}
private void initUangMukaAmanah() {
for (int i = 0; i < uangMukaAmanahCode.size(); i++) {
if (parameterRepository.findByCodeAndValue(uangMukaAmanahCode.get(i), uangMukaAmanahValue.get(i)) == null) {
Parameter parameter = new Parameter();
parameter.setCode(uangMukaAmanahCode.get(i));
parameter.setValue(uangMukaAmanahValue.get(i));
parameter.setDescription(uangMukaAmanahDesc.get(i));
parameterRepository.saveAndFlush(parameter);
}
}
}
private void initTenorAmanah() {
for (int i = 0; i < tenorAmanahCode.size(); i++) {
if (parameterRepository.findByCodeAndDescriptionAndValue(tenorAmanahCode.get(i), tenorAmanahdesc.get(i), tenorAmanahValue.get(i)) == null) {
Parameter parameter = new Parameter();
parameter.setCode(tenorAmanahCode.get(i));
parameter.setValue(tenorAmanahValue.get(i));
parameter.setDescription(tenorAmanahdesc.get(i));
parameterRepository.saveAndFlush(parameter);
}
}
}
private void initOpenTabunganEmas() {
for (int i = 0; i < openTabunganEmasCode.size(); i++) {
if (parameterRepository.findByCodeAndValue(openTabunganEmasCode.get(i), openTabunganEmasValue.get(i)) == null) {
Parameter parameter = new Parameter();
parameter.setCode(openTabunganEmasCode.get(i));
parameter.setValue(openTabunganEmasValue.get(i));
parameter.setDescription(openTabunganEmasDesc.get(i));
parameterRepository.saveAndFlush(parameter);
}
}
}
private void initTopupTabunganEmas() {
for (int i = 0; i < topupTabunganEmasCode.size(); i++) {
if (parameterRepository.findByCodeAndValue(topupTabunganEmasCode.get(i), topupTabunganEmasValue.get(i)) == null) {
Parameter parameter = new Parameter();
parameter.setCode(topupTabunganEmasCode.get(i));
parameter.setValue(topupTabunganEmasValue.get(i));
parameter.setDescription(topupTabunganEmasDesc.get(i));
parameterRepository.saveAndFlush(parameter);
}
}
}
private void initNominalRahn() {
for (int i = 0; i < nominalRahnCode.size(); i++) {
if (parameterRepository.findByCodeAndValue(nominalRahnCode.get(i), nominalRahnValue.get(i)) == null) {
Parameter parameter = new Parameter();
parameter.setCode(nominalRahnCode.get(i));
parameter.setValue(nominalRahnValue.get(i));
parameter.setDescription(nominalRahnDesc.get(i));
parameterRepository.saveAndFlush(parameter);
}
}
}
private void initMunahArrumHaji() {
List<MunahArrumHaji> munahArrumHajiList = munahArrumHajiRepository.findAll();
if (munahArrumHajiList.size() == 0) {
for (int i = 0; i < this.munahArrumDiskon.size(); i++) {
MunahArrumHaji munahArrumHaji = new MunahArrumHaji();
munahArrumHaji.setTaksiranBawah(new BigDecimal(this.munahArrumBatasBawah.get(i)));
munahArrumHaji.setTaksiranAtas(new BigDecimal(this.munahArrumBatasAtas.get(i)));
munahArrumHaji.setDiskon(new BigDecimal(this.munahArrumDiskon.get(i)));
munahArrumHajiRepository.saveAndFlush(munahArrumHaji);
}
}
}
private void initParamArrumHaji() {
for (int i = 0; i < arrumHajiCode.size(); i++) {
if (parameterRepository.findByCodeAndValue(arrumHajiCode.get(i), arrumHajiValue.get(i)) == null) {
Parameter parameter = new Parameter();
parameter.setCode(arrumHajiCode.get(i));
parameter.setValue(arrumHajiValue.get(i));
parameter.setDescription(arrumHajiDesc.get(i));
parameterRepository.saveAndFlush(parameter);
}
}
}
private void initTenorArrumHaji() {
for (int i = 0; i < tenorArrumHajiCode.size(); i++) {
if (parameterRepository.findByCodeAndValue(tenorArrumHajiCode.get(i), tenorArrumHajiValue.get(i)) == null) {
Parameter parameter = new Parameter();
parameter.setCode(tenorArrumHajiCode.get(i));
parameter.setValue(tenorArrumHajiValue.get(i));
parameter.setDescription(tenorArrumHajiDesc.get(i));
parameterRepository.saveAndFlush(parameter);
}
}
}
private void initBankSyariah() {
for (int i = 0; i < bankSyariahCode.size(); i++) {
if (parameterRepository.findByCodeAndValue(bankSyariahCode.get(i), bankSyariahValue.get(i)) == null) {
Parameter parameter = new Parameter();
parameter.setCode(bankSyariahCode.get(i));
parameter.setValue(bankSyariahValue.get(i));
parameter.setDescription(bankSyariahDesc.get(i));
parameterRepository.saveAndFlush(parameter);
}
}
}
private void initPlafonMarhunBihAmanah() {
for (int i = 0; i < plafonAmanahCode.size(); i++) {
if (parameterRepository.findByCodeAndValue(plafonAmanahCode.get(i), plafonAmanahValue.get(i)) == null) {
Parameter parameter = new Parameter();
parameter.setCode(plafonAmanahCode.get(i));
parameter.setValue(plafonAmanahValue.get(i));
parameter.setDescription(plafonAmanahDesc.get(i));
parameterRepository.saveAndFlush(parameter);
}
}
}
private void initParameterArloji() {
for (int i = 0; i < parameterArlojiCode.size(); i++) {
if (parameterRepository.findByCodeAndValue(parameterArlojiCode.get(i), parameterArlojiVal.get(i)) == null) {
Parameter parameter = new Parameter();
parameter.setCode(parameterArlojiCode.get(i));
parameter.setValue(parameterArlojiVal.get(i));
parameter.setDescription(parameterArlojiDes.get(i));
parameterRepository.saveAndFlush(parameter);
}
}
}
private void initParameterElec() {
for (int i = 0; i < parameterElecCode.size(); i++) {
if (parameterRepository.findByCodeAndValue(parameterElecCode.get(i), parameterElecVal.get(i)) == null) {
Parameter parameter = new Parameter();
parameter.setCode(parameterElecCode.get(i));
parameter.setValue(parameterElecVal.get(i));
parameter.setDescription(parameterElecDes.get(i));
parameterRepository.saveAndFlush(parameter);
}
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment