package com.topsun.posclient.system.service.impl;
import java.io.File;
import com.topsun.posclient.common.AppConstants;
import com.topsun.posclient.common.POSClientApp;
import com.topsun.posclient.common.POSException;
import com.topsun.posclient.common.ProjectUtil;
import com.topsun.posclient.common.dao.BaseDao;
import com.topsun.posclient.common.service.impl.BaseServiceImpl;
import com.topsun.posclient.datamodel.SettingData;
import com.topsun.posclient.system.MessageResources;
import com.topsun.posclient.system.service.ISettingService;
import com.topsun.posclient.webservice.POSServerCaller;
/**
* @author LiLei
*
*/
public class SettingServiceImpl extends BaseServiceImpl implements ISettingService {
BaseDao baseDao = new BaseDao();
/*
* (non-Javadoc)
*
* @see
* com.topsun.posclient.system.service.ISettingService#saveSetting(com.topsun
* .posclient.datamodel.SettingData)
*/
public void saveSetting(SettingData settingData) throws POSException {
try{
POSClientApp.get().updateSysConfig(settingData);
}catch(Exception e){
e.printStackTrace();
throw new POSException(MessageResources.message_error_savefailer);
}
}
/* (non-Javadoc)
* @see com.topsun.posclient.system.service.ISettingService#getSetting()
*/
public SettingData getSetting() throws POSException {
return POSClientApp.get().getSysConfig();
}
/* (non-Javadoc)
* @see com.topsun.posclient.system.service.ISettingService#cleanBackData()
*/
public void cleanBackData() throws POSException {
// 删除公共目录的备份数据,商品数据、用户、店铺、结算方式等
String path = ProjectUtil.getRuntimeClassPath();
File backDataPath = new File(path+AppConstants.DATA_COMMON_PATH_BACK);
if(backDataPath.isDirectory()){
File[] files = backDataPath.listFiles();
for(int i=0; i<files.length; i++){
baseDao.getLocalProcessor().delateDataFile(files[i]);
}
}
//删除零售数据备份
File backDataPartSales = new File(path+AppConstants.DATA_PARTSALES_PATH_BACK);
if(backDataPartSales.isDirectory()){
File[] salesDataFiles = backDataPartSales.listFiles();
for(int i=0; i<salesDataFiles.length; i++){
baseDao.getLocalProcessor().delateDataFile(salesDataFiles[i]);
}
}
//删除退换货数据备份
File backDataReturn = new File(path+AppConstants.DATA_RETURNED_PATH_BACK);
if(backDataReturn.isDirectory()){
File[] returnedFiles = backDataReturn.listFiles();
for(int i=0; i<returnedFiles.length; i++){
baseDao.getLocalProcessor().delateDataFile(returnedFiles[i]);
}
}
//删除投资金条回购数据备份
File backDataGoldBack = new File(path+AppConstants.DATA_GOLDBACK_PATH_BACK);
if(backDataGoldBack.isDirectory()){
File[] backFiles = backDataGoldBack.listFiles();
for(int i=0; i<backFiles.length; i++){
baseDao.getLocalProcessor().delateDataFile(backFiles[i]);
}
}
//删除投资金条预订数据备份
File backDataGoldBooking = new File(path+AppConstants.DATA_GOLDBOOKING_PATH_BACK);
if(backDataGoldBooking.isDirectory()){
File[] bookingFiles = backDataGoldBooking.listFiles();
for(int i=0; i<bookingFiles.length; i++){
baseDao.getLocalProcessor().delateDataFile(bookingFiles[i]);
}
}
//删除投资金条现货数据备份
File backDataGoldSales = new File(path+AppConstants.DATA_GOLDSALES_PATH_BACK);
if(backDataGoldSales.isDirectory()){
File[] goldSalesFiles = backDataGoldSales.listFiles();
for(int i=0; i<goldSalesFiles.length; i++){
baseDao.getLocalProcessor().delateDataFile(goldSalesFiles[i]);
}
}
//删除投资金条到期数据备份
File backDataGoldTimeOut = new File(path+AppConstants.DATA_GOLDTIMEOUT_PATH_BACK);
if(backDataGoldTimeOut.isDirectory()){
File[] goldTimeOutFiles = backDataGoldTimeOut.listFiles();
for(int i=0; i<goldTimeOutFiles.length; i++){
baseDao.getLocalProcessor().delateDataFile(goldTimeOutFiles[i]);
}
}
//删除旧金数据备份
File backDataOG = new File(path+AppConstants.DATA_OLDGOLD_PATH_BACK);
if(backDataOG.isDirectory()){
File[] ogFiles = backDataOG.listFiles();
for(int i=0; i<ogFiles.length; i++){
baseDao.getLocalProcessor().delateDataFile(ogFiles[i]);
}
}
}
/* (non-Javadoc)
* @see com.topsun.posclient.system.service.ISettingService#cleanHisData()
*/
public void cleanHisData() throws POSException {
//删除零售数据历史
String path = ProjectUtil.getRuntimeClassPath();
File backDataPartSales = new File(path+AppConstants.DATA_PARTSALES_HIS_PATH);
if(backDataPartSales.isDirectory()){
File[] salesDataFiles = backDataPartSales.listFiles();
for(int i=0; i<salesDataFiles.length; i++){
baseDao.getLocalProcessor().delateDataFile(salesDataFiles[i]);
}
}
//删除退换货数据历史
File backDataReturned = new File(path+AppConstants.DATA_RETURNED_HIS_PATH);
if(backDataReturned.isDirectory()){
File[] returnedDataFiles = backDataReturned.listFiles();
for(int i=0; i<returnedDataFiles.length; i++){
baseDao.getLocalProcessor().delateDataFile(returnedDataFiles[i]);
}
}
//删除投资金条回购数据历史
File backDataGoldBack = new File(path+AppConstants.DATA_GOLDBACK_HIS_PATH);
if(backDataGoldBack.isDirectory()){
File[] goldbackDataFiles = backDataGoldBack.listFiles();
for(int i=0; i<goldbackDataFiles.length; i++){
baseDao.getLocalProcessor().delateDataFile(goldbackDataFiles[i]);
}
}
//删除旧金鉴定数据历史
File backDataOldGold = new File(path+AppConstants.DATA_OLDGOLD_HIS_PATH);
if(backDataOldGold.isDirectory()){
File[] oldGoldDataFiles = backDataGoldBack.listFiles();
for(int i=0; i<oldGoldDataFiles.length; i++){
baseDao.getLocalProcessor().delateDataFile(oldGoldDataFiles[i]);
}
}
//删除投资金条预订数据历史
File backDataGoldbooking = new File(path+AppConstants.DATA_GOLDBOOKING_HIS_PATH);
if(backDataGoldbooking.isDirectory()){
File[] bookingDataFiles = backDataGoldbooking.listFiles();
for(int i=0; i<bookingDataFiles.length; i++){
baseDao.getLocalProcessor().delateDataFile(bookingDataFiles[i]);
}
}
//删除投资金条到期数据历史
File hisDataGoldTimeOut = new File(path+AppConstants.DATA_GOLDTIMEOUT_HIS_PATH);
if(hisDataGoldTimeOut.isDirectory()){
File[] goldTimeOutFiles = hisDataGoldTimeOut.listFiles();
for(int i=0; i<goldTimeOutFiles.length; i++){
baseDao.getLocalProcessor().delateDataFile(goldTimeOutFiles[i]);
}
}
//删除投资金条现货数据历史
File hisDataGoldSales = new File(path+AppConstants.DATA_GOLDSALES_HIS_PATH);
if(hisDataGoldSales.isDirectory()){
File[] goldSalesFiles = hisDataGoldSales.listFiles();
for(int i=0; i<goldSalesFiles.length; i++){
baseDao.getLocalProcessor().delateDataFile(goldSalesFiles[i]);
}
}
}
/* (non-Javadoc)
* @see com.topsun.posclient.system.service.ISettingService#startAgent(com.topsun.posclient.datamodel.SettingData)
*/
public void startAgent(SettingData settingData) throws POSException {
String agentIp = settingData.getAgentServerIp();
String agentPort = settingData.getAgentServerPort();
}
public boolean testConnect(String ipAddress, String port) throws POSException {
return POSServerCaller.testConnect(ipAddress, port);
}
}