Created
April 22, 2024 06:21
-
-
Save SinTeZWh1te/b1b2516afaa7417662cf06254d9c7167 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
package ru.test.bgbilling.kernel.scripts.global; | |
import au.com.bytecode.opencsv.CSVReader; | |
import bitel.billing.server.contract.bean.Contract; | |
import bitel.billing.server.contract.bean.ContractManager; | |
import org.apache.logging.log4j.LogManager; | |
import org.apache.logging.log4j.Logger; | |
import ru.bitel.bgbilling.kernel.container.managed.ServerContext; | |
import ru.bitel.bgbilling.kernel.contract.api.common.bean.ContractTariff; | |
import ru.bitel.bgbilling.kernel.contract.api.common.service.ContractTariffService; | |
import ru.bitel.bgbilling.kernel.script.server.dev.GlobalScriptBase; | |
import ru.bitel.bgbilling.modules.inet.common.bean.InetServ; | |
import ru.bitel.bgbilling.modules.inet.common.service.InetServService; | |
import ru.bitel.bgbilling.server.util.PswdGen; | |
import ru.bitel.bgbilling.server.util.Setup; | |
import ru.bitel.common.Utils; | |
import ru.bitel.common.model.Period; | |
import ru.bitel.common.sql.ConnectionSet; | |
import java.io.FileInputStream; | |
import java.io.InputStreamReader; | |
import java.nio.charset.StandardCharsets; | |
import java.sql.Connection; | |
import java.util.Calendar; | |
import java.util.Collections; | |
public class CreateClientForDhcpTest | |
extends GlobalScriptBase { | |
private static final Logger logger = LogManager.getLogger(); | |
@Override | |
public void execute(Setup setup, ConnectionSet connectionSet) throws Exception { | |
final Calendar cal = Calendar.getInstance(); | |
Connection con = connectionSet.getConnection(); | |
ServerContext serverContext = ServerContext.get(); | |
InetServService inetServService = serverContext.getService(InetServService.class, 5); | |
ContractTariffService contractTariffService = serverContext.getService(ContractTariffService.class, 0); | |
try (ContractManager contractManager = new ContractManager(con); | |
CSVReader csvReader = new CSVReader(new InputStreamReader(new FileInputStream("/opt/BG/mac_address.txt"), StandardCharsets.UTF_8), ';')) { | |
for (String[] value : csvReader.readAll()) { | |
Contract contract = contractManager.createFromPattern(5, null, cal, PswdGen.generatePassword(setup)); | |
InetServ inetServ = new InetServ(); | |
inetServ.setDateFrom(cal.getTime()); | |
inetServ.setContractId(contract.getId()); | |
inetServ.setTypeId(1); | |
inetServ.setDeviceId(92); | |
inetServ.setInterfaceId(1); | |
inetServ.setMacAddressList(Collections.singletonList(Utils.stringToBytes(value[0], ""))); | |
inetServService.inetServUpdate(inetServ, Collections.emptyList(), false, false, 0); | |
serverContext.commit(); | |
} | |
} | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment