升级代码结构,采用Maven来管理jar包(10)
This commit is contained in:
30
src/main/java/com/jsh/service/asset/AssetIService.java
Normal file
30
src/main/java/com/jsh/service/asset/AssetIService.java
Normal file
@@ -0,0 +1,30 @@
|
||||
package com.jsh.service.asset;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.InputStream;
|
||||
|
||||
import com.jsh.base.BaseIService;
|
||||
import com.jsh.util.JshException;
|
||||
import com.jsh.model.po.Asset;
|
||||
import com.jsh.util.PageUtil;
|
||||
|
||||
public interface AssetIService extends BaseIService<Asset>
|
||||
{
|
||||
/**
|
||||
* 导出信息
|
||||
* @return
|
||||
*/
|
||||
InputStream exmportExcel(String isAllPage,PageUtil<Asset> pageUtil)throws JshException;
|
||||
|
||||
/**
|
||||
* 导入资产excel文件--表格格式 同 媒资列表 || 资产名称-资产类型-单价-用户-购买时间-状态-位置-资产编号-序列号-有效日期-保修日期-供应商-标签-描述
|
||||
* 业务规则:导入时,检查资产名称是否存在,如存在就不考虑表格中资产类型。如资产名不存在,就新建资产名,类型用表格中的,但类型必须是系统中存在的,不存在的不能导入。
|
||||
* 资产名称,用户可以添加,其他的应该不能填
|
||||
*
|
||||
* @param assetFile excel表格文件
|
||||
* @param isCheck 是否检查 0--手工确定 1--直接导入数据库中
|
||||
* @return 错误的表格数据
|
||||
* @throws JshException
|
||||
*/
|
||||
InputStream importExcel(File assetFile,int isCheck)throws JshException;
|
||||
}
|
||||
746
src/main/java/com/jsh/service/asset/AssetService.java
Normal file
746
src/main/java/com/jsh/service/asset/AssetService.java
Normal file
@@ -0,0 +1,746 @@
|
||||
package com.jsh.service.asset;
|
||||
|
||||
import java.io.ByteArrayInputStream;
|
||||
import java.io.ByteArrayOutputStream;
|
||||
import java.io.File;
|
||||
import java.io.FileInputStream;
|
||||
import java.io.FileNotFoundException;
|
||||
import java.io.IOException;
|
||||
import java.io.InputStream;
|
||||
import java.io.OutputStream;
|
||||
import java.sql.Timestamp;
|
||||
import java.text.ParseException;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Calendar;
|
||||
import java.util.HashMap;
|
||||
import java.util.Iterator;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import jxl.Workbook;
|
||||
import jxl.format.Colour;
|
||||
import jxl.write.Label;
|
||||
import jxl.write.WritableCellFormat;
|
||||
import jxl.write.WritableSheet;
|
||||
import jxl.write.WritableWorkbook;
|
||||
import jxl.write.WriteException;
|
||||
|
||||
import org.apache.poi.hssf.usermodel.HSSFSheet;
|
||||
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
|
||||
import org.apache.poi.ss.usermodel.Cell;
|
||||
import org.apache.poi.ss.usermodel.DateUtil;
|
||||
import org.apache.poi.ss.usermodel.Row;
|
||||
|
||||
import com.jsh.base.BaseService;
|
||||
import com.jsh.base.Log;
|
||||
import com.jsh.util.AssetConstants;
|
||||
import com.jsh.dao.asset.AssetIDAO;
|
||||
import com.jsh.dao.basic.AssetNameIDAO;
|
||||
import com.jsh.dao.basic.CategoryIDAO;
|
||||
import com.jsh.dao.basic.SupplierIDAO;
|
||||
import com.jsh.dao.basic.UserIDAO;
|
||||
import com.jsh.util.JshException;
|
||||
import com.jsh.model.po.Asset;
|
||||
import com.jsh.model.po.Assetname;
|
||||
import com.jsh.model.po.Category;
|
||||
import com.jsh.model.po.Supplier;
|
||||
import com.jsh.util.PageUtil;
|
||||
import com.jsh.util.Tools;
|
||||
|
||||
public class AssetService extends BaseService<Asset> implements AssetIService
|
||||
{
|
||||
private AssetIDAO assetDao;
|
||||
|
||||
private AssetNameIDAO assetNameDao;
|
||||
|
||||
private CategoryIDAO categoryDao;
|
||||
|
||||
private SupplierIDAO supplierDao;
|
||||
|
||||
private UserIDAO userDao;
|
||||
|
||||
/**
|
||||
* 初始化加载所有系统基础数据
|
||||
*/
|
||||
@SuppressWarnings({"rawtypes"})
|
||||
private static Map<String,List> mapData = new HashMap<String, List>();
|
||||
|
||||
/**
|
||||
* 错误的表格数据
|
||||
*/
|
||||
private static List<Asset> wrongData = new ArrayList<Asset>();
|
||||
|
||||
/**
|
||||
* 导出Excel表格
|
||||
*/
|
||||
@Override
|
||||
public InputStream exmportExcel(String isAllPage,PageUtil<Asset> pageUtil)throws JshException
|
||||
{
|
||||
try
|
||||
{
|
||||
if("currentPage".equals(isAllPage))
|
||||
{
|
||||
assetDao.find(pageUtil);
|
||||
}
|
||||
else
|
||||
{
|
||||
pageUtil.setCurPage(0);
|
||||
pageUtil.setPageSize(0);
|
||||
assetDao.find(pageUtil);
|
||||
}
|
||||
|
||||
//将OutputStream转化为InputStream
|
||||
ByteArrayOutputStream out = new ByteArrayOutputStream();
|
||||
putDataOnOutputStream(out,pageUtil.getPageList());
|
||||
return new ByteArrayInputStream(out.toByteArray());
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
Log.errorFileSync(">>>>>>>>>>>>>>>>>>>>>>>导出资产信息为excel表格异常", e);
|
||||
throw new JshException("export asset info to excel exception",e);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public InputStream importExcel(File assetFile,int isCheck) throws JshException
|
||||
{
|
||||
//全局变量--每次调用前需要清空数据
|
||||
mapData.clear();
|
||||
//1、加载系统基础数据
|
||||
loadSystemData();
|
||||
//2、解析文件成资产数据
|
||||
parseFile(assetFile);
|
||||
|
||||
if(null != wrongData && wrongData.size()>0)
|
||||
{
|
||||
//将OutputStream转化为InputStream
|
||||
ByteArrayOutputStream out = new ByteArrayOutputStream();
|
||||
putDataOnOutputStream(out,wrongData);
|
||||
return new ByteArrayInputStream(out.toByteArray());
|
||||
}
|
||||
else
|
||||
return null;
|
||||
//2、是否直接插入数据库中
|
||||
// if(0 == isCheck)
|
||||
// System.out.println("手动检查");
|
||||
// else
|
||||
// System.out.println("自动检查插入");
|
||||
}
|
||||
|
||||
/**
|
||||
* 初始加载系统基础数据--导入过程中,不用频繁查询数据库内容,影响系统性能。
|
||||
* @throws JshException
|
||||
*/
|
||||
@SuppressWarnings({ "unchecked", "rawtypes" })
|
||||
private void loadSystemData()throws JshException
|
||||
{
|
||||
PageUtil pageUtil = new PageUtil();
|
||||
pageUtil.setPageSize(0);
|
||||
pageUtil.setCurPage(0);
|
||||
try
|
||||
{
|
||||
Map<String,Object> condition = pageUtil.getAdvSearch();
|
||||
condition.put("id_s_order", "desc");
|
||||
categoryDao.find(pageUtil);
|
||||
mapData.put("categoryList", pageUtil.getPageList());
|
||||
|
||||
supplierDao.find(pageUtil);
|
||||
mapData.put("supplierList", pageUtil.getPageList());
|
||||
|
||||
condition.put("isystem_n_eq", 1);
|
||||
condition.put("id_s_order", "desc");
|
||||
userDao.find(pageUtil);
|
||||
mapData.put("userList", pageUtil.getPageList());
|
||||
|
||||
//清除搜索条件 防止对查询有影响
|
||||
condition.remove("isystem_n_eq");
|
||||
|
||||
assetNameDao.find(pageUtil);
|
||||
mapData.put("assetnameList", pageUtil.getPageList());
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
Log.errorFileSync(">>>>>>>>>>>>>查找系统基础数据信息异常", e);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 解析excel表格
|
||||
* @param assetFile
|
||||
*/
|
||||
@SuppressWarnings("unchecked")
|
||||
private void parseFile(File assetFile)
|
||||
{
|
||||
//每次调用前清空
|
||||
wrongData.clear();
|
||||
int totalRow = 0;
|
||||
try
|
||||
{
|
||||
//创建对Excel工作簿文件的引用
|
||||
HSSFWorkbook workbook = new HSSFWorkbook(new FileInputStream(assetFile));
|
||||
//创建对工作表的引用,获取第一个工作表的内容
|
||||
HSSFSheet sheet = workbook.getSheetAt(0);
|
||||
/**
|
||||
* =====================================
|
||||
* 1、此处要增加文件的验证,如果不是资产文件需要进行特殊的处理,13列
|
||||
* 2、文件内容为空处理
|
||||
* 3、如果是修改过的文件内容
|
||||
*/
|
||||
Iterator<Row> itsheet = sheet.rowIterator();
|
||||
while(itsheet.hasNext())
|
||||
{
|
||||
//获取当前行数据
|
||||
Row row = itsheet.next();
|
||||
//获取一行有多少单元格
|
||||
// System.out.println(row.getLastCellNum());
|
||||
|
||||
//excel表格第几行数据 从1开始 0 是表头
|
||||
int rowNum = row.getRowNum();
|
||||
/**
|
||||
* 表头跳过不读
|
||||
*/
|
||||
if(AssetConstants.BusinessForExcel.EXCEL_TABLE_HEAD == rowNum)
|
||||
continue;
|
||||
|
||||
//开始处理excel表格内容 --每行数据读取,同时统计总共行数
|
||||
totalRow ++;
|
||||
|
||||
//获取excel表格的每格数据内容
|
||||
Iterator<Cell> it = row.cellIterator();
|
||||
//资产子类型--添加了一些excel表格数据
|
||||
Asset asset = new Asset();
|
||||
//保存每个单元格错误类型
|
||||
Map<Integer,String> cellType = new HashMap<Integer,String>();
|
||||
|
||||
//名称需要类型字段
|
||||
Assetname nameModel = null;
|
||||
//资产名称
|
||||
@SuppressWarnings("unused")
|
||||
String assetname = "";
|
||||
|
||||
//资产类型
|
||||
String categoryStr = "";
|
||||
//设置列号
|
||||
asset.setRowLineNum(rowNum);
|
||||
|
||||
Cell cell = null;
|
||||
//判断列号--从零开始
|
||||
int cellIndex = 0;
|
||||
while(it.hasNext())
|
||||
{
|
||||
//获取每个单元格对象
|
||||
cell = it.next();
|
||||
//获取列号
|
||||
cellIndex = cell.getColumnIndex();
|
||||
//设置此单元格为字符串类型
|
||||
cell.setCellType(Cell.CELL_TYPE_STRING);
|
||||
|
||||
Log.infoFileSync("==================excel表格中第" + totalRow + "行的第 " + cellIndex + "列的值为" + cell.getStringCellValue());
|
||||
|
||||
//每行中数据顺序 资产名称-资产类型-单价-用户-购买时间-状态-位置-资产编号-序列号-有效日期-保修日期-供应商-标签-描述
|
||||
switch(cellIndex)
|
||||
{
|
||||
case AssetConstants.BusinessForExcel.EXCEL_ASSETNAME :
|
||||
//资产名称是否存在
|
||||
boolean isAssetnameExist = false;
|
||||
//此处添加资产名称处理
|
||||
String nameValue = cell.getStringCellValue();
|
||||
if(null == nameValue || "".equals(nameValue))
|
||||
{
|
||||
Log.errorFileSync(">>>>>>>>>>>>>>>>资产名称没有填写");
|
||||
cellType.put(cellIndex, "wrong");
|
||||
break;
|
||||
}
|
||||
assetname = nameValue;
|
||||
|
||||
List<Assetname> nameList = mapData.get("assetnameList");
|
||||
for(Assetname name:nameList)
|
||||
{
|
||||
//表示名称存在--直接进行保存,不需要判断类型字段
|
||||
if(nameValue.equals(name.getAssetname()))
|
||||
{
|
||||
isAssetnameExist = true;
|
||||
//直接进行设置
|
||||
asset.setAssetname(name);
|
||||
break;
|
||||
}
|
||||
}
|
||||
//名称不存在 重新创建
|
||||
if(!isAssetnameExist)
|
||||
{
|
||||
isAssetnameExist = false;
|
||||
nameModel = new Assetname();
|
||||
nameModel.setAssetname(nameValue);
|
||||
nameModel.setIsconsumables((short)0);
|
||||
nameModel.setIsystem((short)1);
|
||||
nameModel.setDescription("");
|
||||
|
||||
asset.setAssetnameStr(nameValue);
|
||||
}
|
||||
break;
|
||||
case AssetConstants.BusinessForExcel.EXCEL_CATEGORY :
|
||||
//此处添加资产类型处理
|
||||
//类型信息是否存在
|
||||
boolean isCategoryExist = false;
|
||||
String categoryValue = cell.getStringCellValue();
|
||||
if((null == categoryValue || "".equals(categoryValue)) && null != nameModel)
|
||||
{
|
||||
Log.errorFileSync(">>>>>>>>>>>>>>>>资产名称没有指定类型");
|
||||
cellType.put(cellIndex, "wrong");
|
||||
break;
|
||||
}
|
||||
categoryStr = categoryValue;
|
||||
|
||||
List<Category> categoryList = mapData.get("categoryList");
|
||||
for(Category category:categoryList)
|
||||
{
|
||||
//表示新创建 --名称设置过 不需要再进行处理
|
||||
if(category.getAssetname().equals(categoryValue) && null != nameModel)
|
||||
{
|
||||
isCategoryExist = true;
|
||||
nameModel.setCategory(category);
|
||||
asset.setAssetname(nameModel);
|
||||
assetNameDao.create(nameModel);
|
||||
break;
|
||||
}
|
||||
}
|
||||
//重新创建
|
||||
if(null != nameModel && !isCategoryExist)
|
||||
{
|
||||
//首先创建类型信息
|
||||
Category canew = new Category();
|
||||
canew.setAssetname(categoryValue);
|
||||
canew.setIsystem((short)1);
|
||||
canew.setDescription("");
|
||||
categoryDao.create(canew);
|
||||
|
||||
nameModel.setCategory(canew);
|
||||
|
||||
assetNameDao.create(nameModel);
|
||||
|
||||
asset.setAssetname(nameModel);
|
||||
}
|
||||
//nameModel为空表示 已经处理过类型信息 --此处不需要进行处理
|
||||
else
|
||||
{
|
||||
asset.setCategory(categoryStr);
|
||||
}
|
||||
break;
|
||||
case AssetConstants.BusinessForExcel.EXCEL_PRICE:
|
||||
//此处添加单价处理
|
||||
String priceValue = cell.getStringCellValue();
|
||||
//String priceValue = getCellFormatValue(cell);
|
||||
if(null == priceValue || "".equals(priceValue))
|
||||
{
|
||||
Log.errorFileSync(">>>>>>>>>>>>>>>>资产没有填写单价");
|
||||
break;
|
||||
}
|
||||
//解析价格
|
||||
if(Tools.checkStrIsNum(priceValue))
|
||||
asset.setPrice(Double.parseDouble(priceValue));
|
||||
else
|
||||
{
|
||||
Log.errorFileSync(">>>>>>>>>>>>>>>>>资产价格不是数字格式");
|
||||
cellType.put(cellIndex, "wrong");
|
||||
asset.setPrice(0.00d);
|
||||
asset.setPriceStr(priceValue);
|
||||
}
|
||||
break;
|
||||
case AssetConstants.BusinessForExcel.EXCEL_USER :
|
||||
//此处添加用户处理--用户信息不需要进行处理
|
||||
break;
|
||||
case AssetConstants.BusinessForExcel.EXCEL_PURCHASE_DATE :
|
||||
//此处添加购买时间处理--时间不需要处理
|
||||
String purchaseValue = cell.getStringCellValue();
|
||||
if(null == purchaseValue || "".equals(purchaseValue))
|
||||
{
|
||||
Log.errorFileSync(">>>>>>>>>>>>>>>>资产没有填写购买日期");
|
||||
break;
|
||||
}
|
||||
try
|
||||
{
|
||||
asset.setPurchasedate(new Timestamp(Tools.parse(purchaseValue, "yyyy-MM-dd").getTime()));
|
||||
}
|
||||
catch (ParseException e)
|
||||
{
|
||||
Log.errorFileSync(">>>>>>>>>>>>>>>>>解析购买日期异常", e);
|
||||
try
|
||||
{
|
||||
asset.setPurchasedate(new Timestamp(DateUtil.getJavaDate(Double.parseDouble(purchaseValue)).getTime()));
|
||||
}
|
||||
catch (Exception t)
|
||||
{
|
||||
asset.setPurchasedateStr(purchaseValue);
|
||||
cellType.put(cellIndex, "wrong");
|
||||
}
|
||||
}
|
||||
break;
|
||||
case AssetConstants.BusinessForExcel.EXCEL_STATUS :
|
||||
//此处添加状态处理--默认为在库状态
|
||||
asset.setStatus((short)0);
|
||||
break;
|
||||
case AssetConstants.BusinessForExcel.EXCEL_LOCATION :
|
||||
//此处添加位置处理--不需要进行处理
|
||||
String locationValue = cell.getStringCellValue();
|
||||
if(null == locationValue || "".equals(locationValue))
|
||||
{
|
||||
Log.errorFileSync(">>>>>>>>>>>>>>>>资产没有填写位置信息");
|
||||
break;
|
||||
}
|
||||
asset.setLocation(locationValue);
|
||||
break;
|
||||
case AssetConstants.BusinessForExcel.EXCEL_NUM :
|
||||
//此处添加资产编号处理
|
||||
String assetnumValue = cell.getStringCellValue();
|
||||
if(null == assetnumValue || "".equals(assetnumValue))
|
||||
{
|
||||
Log.errorFileSync(">>>>>>>>>>>>>>>>资产没有填写资产编号");
|
||||
break;
|
||||
}
|
||||
//设置资产编号
|
||||
asset.setAssetnum(assetnumValue);
|
||||
break;
|
||||
case AssetConstants.BusinessForExcel.EXCEL_SERIALNO :
|
||||
//此处添加序列号处理
|
||||
String assetseriValue = cell.getStringCellValue();
|
||||
if(null == assetseriValue || "".equals(assetseriValue))
|
||||
{
|
||||
Log.errorFileSync(">>>>>>>>>>>>>>>>资产没有填写序列号");
|
||||
break;
|
||||
}
|
||||
//设置资产编号
|
||||
asset.setSerialnum(assetseriValue);
|
||||
break;
|
||||
case AssetConstants.BusinessForExcel.EXCEL_EXPIRATION_DATE :
|
||||
//此处添加有效日期处理--不需要处理
|
||||
String expirationValue = cell.getStringCellValue();
|
||||
if(null == expirationValue || "".equals(expirationValue))
|
||||
{
|
||||
Log.errorFileSync(">>>>>>>>>>>>>>>>资产没有有效日期");
|
||||
break;
|
||||
}
|
||||
|
||||
try
|
||||
{
|
||||
asset.setPeriodofvalidity(new Timestamp(Tools.parse(expirationValue, "yyyy-MM-dd").getTime()));
|
||||
}
|
||||
catch (ParseException e)
|
||||
{
|
||||
try
|
||||
{
|
||||
asset.setPeriodofvalidity(new Timestamp(DateUtil.getJavaDate(Double.parseDouble(expirationValue)).getTime()));
|
||||
}
|
||||
catch (Exception t)
|
||||
{
|
||||
Log.errorFileSync(">>>>>>>>>>>>>>>>>解析有效日期异常", t);
|
||||
asset.setPeriodofvalidityStr(expirationValue);
|
||||
cellType.put(cellIndex, "wrong");
|
||||
}
|
||||
}
|
||||
break;
|
||||
case AssetConstants.BusinessForExcel.EXCEL_WARRANTY_DATE :
|
||||
//此处添加保修日期处理--不需要处理
|
||||
String warrantyValue = cell.getStringCellValue();
|
||||
if(null == warrantyValue || "".equals(warrantyValue))
|
||||
{
|
||||
Log.errorFileSync(">>>>>>>>>>>>>>>>资产没有保修日期");
|
||||
break;
|
||||
}
|
||||
try
|
||||
{
|
||||
asset.setWarrantydate(new Timestamp(Tools.parse(warrantyValue, "yyyy-MM-dd").getTime()));
|
||||
}
|
||||
catch (ParseException e)
|
||||
{
|
||||
try
|
||||
{
|
||||
asset.setWarrantydate(new Timestamp(DateUtil.getJavaDate(Double.parseDouble(warrantyValue)).getTime()));
|
||||
}
|
||||
catch (Exception t)
|
||||
{
|
||||
Log.errorFileSync(">>>>>>>>>>>>>>>>>解析保修日期异常", t);
|
||||
asset.setWarrantydateStr(warrantyValue);
|
||||
cellType.put(cellIndex, "wrong");
|
||||
}
|
||||
}
|
||||
break;
|
||||
case AssetConstants.BusinessForExcel.EXCEL_SUPPLIER :
|
||||
//此处添加供应商处理
|
||||
|
||||
String supplierValue = cell.getStringCellValue();
|
||||
if(null == supplierValue || "".equals(supplierValue))
|
||||
{
|
||||
Log.errorFileSync(">>>>>>>>>>>>>>>>资产没有填写供应商");
|
||||
cellType.put(cellIndex, "wrong");
|
||||
break;
|
||||
}
|
||||
//供应商
|
||||
List<Supplier> supplierList = mapData.get("supplierList");
|
||||
boolean isSupplerExist =false;
|
||||
for(Supplier supplier:supplierList)
|
||||
{
|
||||
if(supplierValue.equals(supplier.getSupplier()))
|
||||
{
|
||||
isSupplerExist =true;
|
||||
asset.setSupplier(supplier);
|
||||
break;
|
||||
}
|
||||
}
|
||||
if(!isSupplerExist)
|
||||
{
|
||||
Supplier sup = new Supplier();
|
||||
sup.setIsystem((short)1);
|
||||
sup.setSupplier(supplierValue);
|
||||
sup.setDescription("");
|
||||
supplierDao.create(sup);
|
||||
//保存供应商信息
|
||||
asset.setSupplier(sup);
|
||||
}
|
||||
break;
|
||||
case AssetConstants.BusinessForExcel.EXCEL_LABLE :
|
||||
//此处添加标签处理
|
||||
String lableValue = cell.getStringCellValue();
|
||||
if(null == lableValue || "".equals(lableValue))
|
||||
{
|
||||
Log.errorFileSync(">>>>>>>>>>>>>>>>资产没有填写标签信息");
|
||||
break;
|
||||
}
|
||||
asset.setLabels(lableValue);
|
||||
break;
|
||||
case AssetConstants.BusinessForExcel.EXCEL_DESC :
|
||||
//此处添加描述信息处理
|
||||
String descValue = cell.getStringCellValue();
|
||||
if(null == descValue || "".equals(descValue))
|
||||
{
|
||||
Log.errorFileSync(">>>>>>>>>>>>>>>>资产没有填写描述信息");
|
||||
break;
|
||||
}
|
||||
asset.setDescription(descValue);
|
||||
break;
|
||||
}
|
||||
}
|
||||
asset.setCreatetime(new Timestamp(Calendar.getInstance().getTime().getTime()));
|
||||
asset.setUpdatetime(new Timestamp(Calendar.getInstance().getTime().getTime()));
|
||||
asset.setCellInfo(cellType);
|
||||
|
||||
Log.infoFileSync(totalRow + "行总共有" + cellIndex + "列");
|
||||
//资产文件为13列,否则不是资产模板文件--不输入的时候 判断会有问题 暂时去掉
|
||||
// if(cellIndex != 13)
|
||||
// {
|
||||
// Log.errorFileSync(">>>>>>>>>>>>>>>>>>>>>>导入文件格式不合法,请重新选择文件进行操作!");
|
||||
// return;
|
||||
// }
|
||||
|
||||
//判断完成后增加数据
|
||||
if((null!=cellType && cellType.size() >0)
|
||||
|| asset.getAssetname() == null || asset.getAssetname().getCategory() == null)
|
||||
wrongData.add(asset);
|
||||
else
|
||||
{
|
||||
if(null == asset.getStatus())
|
||||
asset.setStatus((short)0);
|
||||
assetDao.save(asset);
|
||||
}
|
||||
}
|
||||
}
|
||||
catch (FileNotFoundException e)
|
||||
{
|
||||
Log.errorFileSync(">>>>>>>>>>>>>>>>>>读取excel文件异常:找不到指定文件!",e);
|
||||
}
|
||||
catch (IOException e)
|
||||
{
|
||||
Log.errorFileSync(">>>>>>>>>>>>>>>>>>读取excel文件异常,请确认文件格式是否正确 !",e);
|
||||
}
|
||||
Log.infoFileSync("===================excel表格总共有 " + totalRow + " 条记录!");
|
||||
}
|
||||
|
||||
/**
|
||||
* 生成excel表格
|
||||
* @param os
|
||||
*/
|
||||
private void putDataOnOutputStream(OutputStream os,List<Asset> dataList)
|
||||
{
|
||||
WritableWorkbook workbook = null;
|
||||
try
|
||||
{
|
||||
workbook = Workbook.createWorkbook(os);
|
||||
WritableSheet sheet = workbook.createSheet("资产详细信息", 0);
|
||||
//增加列头
|
||||
int[] colunmWidth = {30,30,10,15,20,10,30,30,30,20,20,20,30,80};
|
||||
String[] colunmName = {"资产名称","资产类型","单价","用户","购买时间","状态","位置","资产编号","序列号","有效日期","保修日期","供应商","标签","描述"};
|
||||
for(int i = 0 ;i < colunmWidth.length;i ++)
|
||||
{
|
||||
sheet.setColumnView(i,colunmWidth[i]);
|
||||
sheet.addCell(new Label(i, 0, colunmName[i]));
|
||||
}
|
||||
|
||||
if (null != dataList &&dataList.size() > 0)
|
||||
{
|
||||
int i = 1;
|
||||
for (Asset asset: dataList)
|
||||
{
|
||||
int j = 0;
|
||||
Map<Integer,String> cellInfo = asset.getCellInfo();
|
||||
|
||||
//第一列,填充 数据, Label(列,行,值)
|
||||
sheet.addCell(getLabelInfo(cellInfo,j++,i,asset.getAssetname() == null ?"":asset.getAssetname().getAssetname(),asset));
|
||||
sheet.addCell(getLabelInfo(cellInfo,j++,i,asset.getAssetname() == null || asset.getAssetname().getCategory() == null ?"":asset.getAssetname().getCategory().getAssetname(),asset));
|
||||
sheet.addCell(getLabelInfo(cellInfo,j++,i,asset.getPrice() == null?"":asset.getPrice().toString(),asset));
|
||||
sheet.addCell(new Label(j++, i, asset.getUser()==null?"":asset.getUser().getUsername()));
|
||||
sheet.addCell(getLabelInfo(cellInfo,j++,i,asset.getPurchasedate() == null ?"":Tools.getCurrentMonth(asset.getPurchasedate()),asset));
|
||||
Short status = asset.getStatus();
|
||||
if(null == status)
|
||||
status = 0 ;
|
||||
if(AssetConstants.BusinessForExcel.EXCEl_STATUS_ZAIKU == status)
|
||||
sheet.addCell(new Label(j++, i, "在库"));
|
||||
else if(AssetConstants.BusinessForExcel.EXCEl_STATUS_INUSE == status)
|
||||
sheet.addCell(new Label(j++, i, "在用"));
|
||||
else if(AssetConstants.BusinessForExcel.EXCEl_STATUS_CONSUME == status)
|
||||
sheet.addCell(new Label(j++, i, "消费"));
|
||||
sheet.addCell(new Label(j++, i, asset.getLocation()));
|
||||
sheet.addCell(new Label(j++, i, asset.getAssetnum()));
|
||||
sheet.addCell(new Label(j++, i, asset.getSerialnum()));
|
||||
sheet.addCell(getLabelInfo(cellInfo,j++,i, asset.getPeriodofvalidity() == null ?"":Tools.getCurrentMonth(asset.getPeriodofvalidity()),asset));
|
||||
sheet.addCell(getLabelInfo(cellInfo,j++,i,asset.getWarrantydate() == null ?"":Tools.getCurrentMonth(asset.getWarrantydate()),asset));
|
||||
sheet.addCell(new Label(j++, i, asset.getSupplier()==null?"":asset.getSupplier().getSupplier()));
|
||||
sheet.addCell(new Label(j++, i, asset.getLabels()));
|
||||
sheet.addCell(new Label(j++, i, asset.getDescription()));
|
||||
|
||||
i++;
|
||||
}
|
||||
}
|
||||
workbook.write();
|
||||
workbook.close();
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
Log.errorFileSync(">>>>>>>>>>>>>>>>>>>>>>>导出资产信息为excel表格异常", e);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据错误信息进行提示--execel表格背景设置为红色,表示导入信息有误
|
||||
* @param cellInfo
|
||||
* @param cellNum
|
||||
* @param columnNum
|
||||
* @param value
|
||||
* @return
|
||||
*/
|
||||
private Label getLabelInfo(Map<Integer,String> cellInfo,int cellNum,int columnNum,String value,Asset asset)
|
||||
{
|
||||
Label label = null;
|
||||
|
||||
//设置背景颜色
|
||||
WritableCellFormat cellFormat = new WritableCellFormat();
|
||||
try
|
||||
{
|
||||
cellFormat.setBackground(Colour.RED);
|
||||
}
|
||||
catch (WriteException e)
|
||||
{
|
||||
Log.errorFileSync(">>>>>>>>>>>>>>>>>>>>>设置单元格背景颜色错误", e);
|
||||
}
|
||||
|
||||
if(null == cellInfo || cellInfo.size() == 0)
|
||||
{
|
||||
if(cellNum == AssetConstants.BusinessForExcel.EXCEL_ASSETNAME)
|
||||
{
|
||||
if(null == asset.getAssetname() && null != asset.getAssetnameStr())
|
||||
label = new Label(cellNum, columnNum,asset.getAssetnameStr());
|
||||
else if(null != asset.getAssetname())
|
||||
label = new Label(cellNum, columnNum, value);
|
||||
else
|
||||
label = new Label(cellNum, columnNum, null,cellFormat);
|
||||
}
|
||||
else if(cellNum == AssetConstants.BusinessForExcel.EXCEL_CATEGORY)
|
||||
{
|
||||
if(null != asset.getAssetnameStr() && null == asset.getAssetname())
|
||||
label = new Label(cellNum, columnNum, null,cellFormat);
|
||||
else if(null == asset.getAssetnameStr() && null == asset.getAssetname()
|
||||
&& asset.getCategory() != null &&asset.getCategory().length()>0)
|
||||
label = new Label(cellNum, columnNum, asset.getCategory());
|
||||
else
|
||||
label = new Label(cellNum, columnNum, value);
|
||||
}
|
||||
else
|
||||
label = new Label(cellNum, columnNum, value);
|
||||
}
|
||||
else
|
||||
{
|
||||
//表示此单元格有错误
|
||||
if(cellInfo.containsKey(cellNum))
|
||||
{
|
||||
if(cellNum == AssetConstants.BusinessForExcel.EXCEL_ASSETNAME)
|
||||
{
|
||||
if(null == asset.getAssetname() && null != asset.getAssetnameStr())
|
||||
label = new Label(cellNum, columnNum,asset.getAssetnameStr());
|
||||
if(null != asset.getAssetname())
|
||||
label = new Label(cellNum, columnNum,asset.getAssetname().getAssetname());
|
||||
else
|
||||
label = new Label(cellNum, columnNum, value,cellFormat);
|
||||
}
|
||||
else if(cellNum == AssetConstants.BusinessForExcel.EXCEL_CATEGORY)
|
||||
{
|
||||
if(null != asset.getAssetnameStr() && null == asset.getAssetname())
|
||||
label = new Label(cellNum, columnNum, null,cellFormat);
|
||||
else if(null == asset.getAssetnameStr() && null == asset.getAssetname()
|
||||
&& asset.getCategory() != null &&asset.getCategory().length()>0)
|
||||
label = new Label(cellNum, columnNum, asset.getCategory());
|
||||
}
|
||||
else if(cellNum == AssetConstants.BusinessForExcel.EXCEL_PRICE)
|
||||
label = new Label(cellNum, columnNum,asset.getPriceStr(),cellFormat);
|
||||
else if(cellNum == AssetConstants.BusinessForExcel.EXCEL_PURCHASE_DATE)
|
||||
label = new Label(cellNum, columnNum,asset.getPurchasedateStr(),cellFormat);
|
||||
else if(cellNum == AssetConstants.BusinessForExcel.EXCEL_WARRANTY_DATE)
|
||||
label = new Label(cellNum, columnNum,asset.getWarrantydateStr(),cellFormat);
|
||||
else if(cellNum == AssetConstants.BusinessForExcel.EXCEL_EXPIRATION_DATE)
|
||||
label = new Label(cellNum, columnNum,asset.getPeriodofvalidityStr(),cellFormat);
|
||||
else
|
||||
label = new Label(cellNum, columnNum, value,cellFormat);
|
||||
}
|
||||
else
|
||||
{
|
||||
if(null == asset.getAssetname() && null != asset.getAssetnameStr()&& cellNum == 0)
|
||||
label = new Label(cellNum, columnNum,asset.getAssetnameStr());
|
||||
else if(null == asset.getAssetnameStr() && null == asset.getAssetname()
|
||||
&& asset.getCategory() != null &&asset.getCategory().length()>0&& cellNum == 1)
|
||||
label = new Label(cellNum, columnNum, asset.getCategory());
|
||||
else
|
||||
label = new Label(cellNum, columnNum, value);
|
||||
}
|
||||
}
|
||||
return label;
|
||||
}
|
||||
|
||||
/*=====================以下处理与业务无关的共用方法=================================*/
|
||||
public void setAssetDao(AssetIDAO assetDao)
|
||||
{
|
||||
this.assetDao = assetDao;
|
||||
}
|
||||
|
||||
public void setAssetNameDao(AssetNameIDAO assetNameDao)
|
||||
{
|
||||
this.assetNameDao = assetNameDao;
|
||||
}
|
||||
|
||||
public void setCategoryDao(CategoryIDAO categoryDao)
|
||||
{
|
||||
this.categoryDao = categoryDao;
|
||||
}
|
||||
|
||||
public void setSupplierDao(SupplierIDAO supplierDao)
|
||||
{
|
||||
this.supplierDao = supplierDao;
|
||||
}
|
||||
|
||||
public void setUserDao(UserIDAO userDao)
|
||||
{
|
||||
this.userDao = userDao;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected Class<Asset> getEntityClass()
|
||||
{
|
||||
return Asset.class;
|
||||
}
|
||||
}
|
||||
15
src/main/java/com/jsh/service/asset/ReportIService.java
Normal file
15
src/main/java/com/jsh/service/asset/ReportIService.java
Normal file
@@ -0,0 +1,15 @@
|
||||
package com.jsh.service.asset;
|
||||
|
||||
import com.jsh.util.JshException;
|
||||
import com.jsh.model.po.Asset;
|
||||
import com.jsh.util.PageUtil;
|
||||
|
||||
public interface ReportIService
|
||||
{
|
||||
/**
|
||||
* 查找报表数据
|
||||
* @param asset
|
||||
* @throws JshException
|
||||
*/
|
||||
void find(PageUtil<Asset> asset,String reportType,String reportName)throws JshException;
|
||||
}
|
||||
23
src/main/java/com/jsh/service/asset/ReportService.java
Normal file
23
src/main/java/com/jsh/service/asset/ReportService.java
Normal file
@@ -0,0 +1,23 @@
|
||||
package com.jsh.service.asset;
|
||||
|
||||
import com.jsh.dao.asset.ReportIDAO;
|
||||
import com.jsh.util.JshException;
|
||||
import com.jsh.model.po.Asset;
|
||||
import com.jsh.util.PageUtil;
|
||||
|
||||
public class ReportService implements ReportIService
|
||||
{
|
||||
private ReportIDAO reportDao;
|
||||
|
||||
public void setReportDao(ReportIDAO reportDao)
|
||||
{
|
||||
this.reportDao = reportDao;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void find(PageUtil<Asset> pageUtil, String reportType,String reportName) throws JshException
|
||||
{
|
||||
reportDao.find(pageUtil, reportType,reportName);
|
||||
}
|
||||
|
||||
}
|
||||
9
src/main/java/com/jsh/service/basic/AccountIService.java
Normal file
9
src/main/java/com/jsh/service/basic/AccountIService.java
Normal file
@@ -0,0 +1,9 @@
|
||||
package com.jsh.service.basic;
|
||||
|
||||
import com.jsh.base.BaseIService;
|
||||
import com.jsh.model.po.Account;
|
||||
|
||||
public interface AccountIService extends BaseIService<Account>
|
||||
{
|
||||
|
||||
}
|
||||
22
src/main/java/com/jsh/service/basic/AccountService.java
Normal file
22
src/main/java/com/jsh/service/basic/AccountService.java
Normal file
@@ -0,0 +1,22 @@
|
||||
package com.jsh.service.basic;
|
||||
import com.jsh.base.BaseService;
|
||||
import com.jsh.dao.basic.AccountIDAO;
|
||||
import com.jsh.model.po.Account;
|
||||
|
||||
public class AccountService extends BaseService<Account> implements AccountIService
|
||||
{
|
||||
@SuppressWarnings("unused")
|
||||
private AccountIDAO accountDao;
|
||||
|
||||
public void setAccountDao(AccountIDAO accountDao)
|
||||
{
|
||||
this.accountDao = accountDao;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected Class<Account> getEntityClass()
|
||||
{
|
||||
return Account.class;
|
||||
}
|
||||
|
||||
}
|
||||
9
src/main/java/com/jsh/service/basic/AppIService.java
Normal file
9
src/main/java/com/jsh/service/basic/AppIService.java
Normal file
@@ -0,0 +1,9 @@
|
||||
package com.jsh.service.basic;
|
||||
|
||||
import com.jsh.base.BaseIService;
|
||||
import com.jsh.model.po.App;
|
||||
|
||||
public interface AppIService extends BaseIService<App>
|
||||
{
|
||||
|
||||
}
|
||||
31
src/main/java/com/jsh/service/basic/AppService.java
Normal file
31
src/main/java/com/jsh/service/basic/AppService.java
Normal file
@@ -0,0 +1,31 @@
|
||||
package com.jsh.service.basic;
|
||||
|
||||
import com.jsh.base.BaseService;
|
||||
import com.jsh.dao.basic.AppIDAO;
|
||||
import com.jsh.dao.basic.UserBusinessIDAO;
|
||||
import com.jsh.model.po.App;
|
||||
|
||||
public class AppService extends BaseService<App> implements AppIService
|
||||
{
|
||||
@SuppressWarnings("unused")
|
||||
private AppIDAO appDao;
|
||||
@SuppressWarnings("unused")
|
||||
private UserBusinessIDAO userBusinessDao;
|
||||
|
||||
|
||||
public void setAppDao(AppIDAO appDao)
|
||||
{
|
||||
this.appDao = appDao;
|
||||
}
|
||||
|
||||
public void setUserBusinessDao(UserBusinessIDAO userBusinessDao) {
|
||||
this.userBusinessDao = userBusinessDao;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected Class<App> getEntityClass()
|
||||
{
|
||||
return App.class;
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
package com.jsh.service.basic;
|
||||
|
||||
import com.jsh.base.BaseIService;
|
||||
import com.jsh.model.po.Assetname;
|
||||
|
||||
public interface AssetNameIService extends BaseIService<Assetname>
|
||||
{
|
||||
|
||||
}
|
||||
22
src/main/java/com/jsh/service/basic/AssetNameService.java
Normal file
22
src/main/java/com/jsh/service/basic/AssetNameService.java
Normal file
@@ -0,0 +1,22 @@
|
||||
package com.jsh.service.basic;
|
||||
|
||||
import com.jsh.base.BaseService;
|
||||
import com.jsh.dao.basic.AssetNameIDAO;
|
||||
import com.jsh.model.po.Assetname;
|
||||
|
||||
public class AssetNameService extends BaseService<Assetname> implements AssetNameIService
|
||||
{
|
||||
@SuppressWarnings("unused")
|
||||
private AssetNameIDAO assetNameDao;
|
||||
|
||||
public void setAssetNameDao(AssetNameIDAO assetNameDao)
|
||||
{
|
||||
this.assetNameDao = assetNameDao;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected Class<Assetname> getEntityClass()
|
||||
{
|
||||
return Assetname.class;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
package com.jsh.service.basic;
|
||||
|
||||
import com.jsh.base.BaseIService;
|
||||
import com.jsh.model.po.Category;
|
||||
|
||||
public interface CategoryIService extends BaseIService<Category>
|
||||
{
|
||||
|
||||
}
|
||||
23
src/main/java/com/jsh/service/basic/CategoryService.java
Normal file
23
src/main/java/com/jsh/service/basic/CategoryService.java
Normal file
@@ -0,0 +1,23 @@
|
||||
package com.jsh.service.basic;
|
||||
|
||||
import com.jsh.base.BaseService;
|
||||
import com.jsh.dao.basic.CategoryIDAO;
|
||||
import com.jsh.model.po.Category;
|
||||
|
||||
public class CategoryService extends BaseService<Category> implements CategoryIService
|
||||
{
|
||||
@SuppressWarnings("unused")
|
||||
private CategoryIDAO categoryDao;
|
||||
|
||||
public void setCategoryDao(CategoryIDAO categoryDao)
|
||||
{
|
||||
this.categoryDao = categoryDao;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected Class<Category> getEntityClass()
|
||||
{
|
||||
return Category.class;
|
||||
}
|
||||
|
||||
}
|
||||
9
src/main/java/com/jsh/service/basic/DepotIService.java
Normal file
9
src/main/java/com/jsh/service/basic/DepotIService.java
Normal file
@@ -0,0 +1,9 @@
|
||||
package com.jsh.service.basic;
|
||||
|
||||
import com.jsh.base.BaseIService;
|
||||
import com.jsh.model.po.Depot;
|
||||
|
||||
public interface DepotIService extends BaseIService<Depot>
|
||||
{
|
||||
|
||||
}
|
||||
32
src/main/java/com/jsh/service/basic/DepotService.java
Normal file
32
src/main/java/com/jsh/service/basic/DepotService.java
Normal file
@@ -0,0 +1,32 @@
|
||||
package com.jsh.service.basic;
|
||||
|
||||
import com.jsh.base.BaseService;
|
||||
import com.jsh.dao.basic.DepotIDAO;
|
||||
import com.jsh.dao.basic.UserBusinessIDAO;
|
||||
import com.jsh.model.po.Depot;
|
||||
|
||||
public class DepotService extends BaseService<Depot> implements DepotIService
|
||||
{
|
||||
@SuppressWarnings("unused")
|
||||
private DepotIDAO depotDao;
|
||||
@SuppressWarnings("unused")
|
||||
private UserBusinessIDAO userBusinessDao;
|
||||
|
||||
|
||||
public void setDepotDao(DepotIDAO depotDao)
|
||||
{
|
||||
this.depotDao = depotDao;
|
||||
}
|
||||
|
||||
public void setUserBusinessDao(UserBusinessIDAO userBusinessDao) {
|
||||
this.userBusinessDao = userBusinessDao;
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
protected Class<Depot> getEntityClass()
|
||||
{
|
||||
return Depot.class;
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
package com.jsh.service.basic;
|
||||
|
||||
import com.jsh.base.BaseIService;
|
||||
import com.jsh.model.po.Functions;
|
||||
|
||||
public interface FunctionsIService extends BaseIService<Functions>
|
||||
{
|
||||
|
||||
}
|
||||
31
src/main/java/com/jsh/service/basic/FunctionsService.java
Normal file
31
src/main/java/com/jsh/service/basic/FunctionsService.java
Normal file
@@ -0,0 +1,31 @@
|
||||
package com.jsh.service.basic;
|
||||
|
||||
import com.jsh.base.BaseService;
|
||||
import com.jsh.dao.basic.FunctionsIDAO;
|
||||
import com.jsh.dao.basic.UserBusinessIDAO;
|
||||
import com.jsh.model.po.Functions;
|
||||
|
||||
public class FunctionsService extends BaseService<Functions> implements FunctionsIService
|
||||
{
|
||||
@SuppressWarnings("unused")
|
||||
private FunctionsIDAO functionsDao;
|
||||
@SuppressWarnings("unused")
|
||||
private UserBusinessIDAO userBusinessDao;
|
||||
|
||||
|
||||
public void setFunctionsDao(FunctionsIDAO functionsDao)
|
||||
{
|
||||
this.functionsDao = functionsDao;
|
||||
}
|
||||
|
||||
public void setUserBusinessDao(UserBusinessIDAO userBusinessDao) {
|
||||
this.userBusinessDao = userBusinessDao;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected Class<Functions> getEntityClass()
|
||||
{
|
||||
return Functions.class;
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
package com.jsh.service.basic;
|
||||
|
||||
import com.jsh.base.BaseIService;
|
||||
import com.jsh.model.po.InOutItem;
|
||||
|
||||
public interface InOutItemIService extends BaseIService<InOutItem>
|
||||
{
|
||||
|
||||
}
|
||||
23
src/main/java/com/jsh/service/basic/InOutItemService.java
Normal file
23
src/main/java/com/jsh/service/basic/InOutItemService.java
Normal file
@@ -0,0 +1,23 @@
|
||||
package com.jsh.service.basic;
|
||||
|
||||
import com.jsh.base.BaseService;
|
||||
import com.jsh.dao.basic.InOutItemIDAO;
|
||||
import com.jsh.model.po.InOutItem;
|
||||
|
||||
public class InOutItemService extends BaseService<InOutItem> implements InOutItemIService
|
||||
{
|
||||
@SuppressWarnings("unused")
|
||||
private InOutItemIDAO inOutItemDao;
|
||||
|
||||
public void setInOutItemDao(InOutItemIDAO inOutItemDao)
|
||||
{
|
||||
this.inOutItemDao = inOutItemDao;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected Class<InOutItem> getEntityClass()
|
||||
{
|
||||
return InOutItem.class;
|
||||
}
|
||||
|
||||
}
|
||||
16
src/main/java/com/jsh/service/basic/LogIService.java
Normal file
16
src/main/java/com/jsh/service/basic/LogIService.java
Normal file
@@ -0,0 +1,16 @@
|
||||
package com.jsh.service.basic;
|
||||
|
||||
import com.jsh.base.BaseIService;
|
||||
import com.jsh.util.JshException;
|
||||
import com.jsh.model.po.Logdetails;
|
||||
|
||||
public interface LogIService extends BaseIService<Logdetails>
|
||||
{
|
||||
/**
|
||||
* 增加
|
||||
* @param t 对象
|
||||
* @throws JshException
|
||||
*/
|
||||
@Override
|
||||
void save(Logdetails t);
|
||||
}
|
||||
36
src/main/java/com/jsh/service/basic/LogService.java
Normal file
36
src/main/java/com/jsh/service/basic/LogService.java
Normal file
@@ -0,0 +1,36 @@
|
||||
package com.jsh.service.basic;
|
||||
|
||||
import com.jsh.base.BaseService;
|
||||
import com.jsh.base.Log;
|
||||
import com.jsh.dao.basic.LogIDAO;
|
||||
import com.jsh.model.po.Logdetails;
|
||||
|
||||
public class LogService extends BaseService<Logdetails> implements LogIService
|
||||
{
|
||||
@SuppressWarnings("unused")
|
||||
private LogIDAO logDao;
|
||||
|
||||
public void setLogDao(LogIDAO logDao)
|
||||
{
|
||||
this.logDao = logDao;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected Class<Logdetails> getEntityClass()
|
||||
{
|
||||
return Logdetails.class;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void save(Logdetails t)
|
||||
{
|
||||
try
|
||||
{
|
||||
super.save(t);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
Log.errorFileSync(">>>>>>>>>>>>>>>>创建操作日志异常", e);
|
||||
}
|
||||
}
|
||||
}
|
||||
9
src/main/java/com/jsh/service/basic/RoleIService.java
Normal file
9
src/main/java/com/jsh/service/basic/RoleIService.java
Normal file
@@ -0,0 +1,9 @@
|
||||
package com.jsh.service.basic;
|
||||
|
||||
import com.jsh.base.BaseIService;
|
||||
import com.jsh.model.po.Role;
|
||||
|
||||
public interface RoleIService extends BaseIService<Role>
|
||||
{
|
||||
|
||||
}
|
||||
30
src/main/java/com/jsh/service/basic/RoleService.java
Normal file
30
src/main/java/com/jsh/service/basic/RoleService.java
Normal file
@@ -0,0 +1,30 @@
|
||||
package com.jsh.service.basic;
|
||||
|
||||
import com.jsh.base.BaseService;
|
||||
import com.jsh.dao.basic.RoleIDAO;
|
||||
import com.jsh.dao.basic.UserBusinessIDAO;
|
||||
import com.jsh.model.po.Role;
|
||||
|
||||
public class RoleService extends BaseService<Role> implements RoleIService
|
||||
{
|
||||
@SuppressWarnings("unused")
|
||||
private RoleIDAO roleDao;
|
||||
@SuppressWarnings("unused")
|
||||
private UserBusinessIDAO userBusinessDao;
|
||||
|
||||
public void setRoleDao(RoleIDAO roleDao)
|
||||
{
|
||||
this.roleDao = roleDao;
|
||||
}
|
||||
|
||||
public void setUserBusinessDao(UserBusinessIDAO userBusinessDao) {
|
||||
this.userBusinessDao = userBusinessDao;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected Class<Role> getEntityClass()
|
||||
{
|
||||
return Role.class;
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
package com.jsh.service.basic;
|
||||
|
||||
import com.jsh.base.BaseIService;
|
||||
import com.jsh.model.po.Supplier;
|
||||
|
||||
public interface SupplierIService extends BaseIService<Supplier>
|
||||
{
|
||||
|
||||
}
|
||||
25
src/main/java/com/jsh/service/basic/SupplierService.java
Normal file
25
src/main/java/com/jsh/service/basic/SupplierService.java
Normal file
@@ -0,0 +1,25 @@
|
||||
package com.jsh.service.basic;
|
||||
|
||||
import com.jsh.base.BaseService;
|
||||
import com.jsh.dao.basic.SupplierIDAO;
|
||||
import com.jsh.model.po.Supplier;
|
||||
|
||||
public class SupplierService extends BaseService<Supplier> implements SupplierIService
|
||||
{
|
||||
@SuppressWarnings("unused")
|
||||
private SupplierIDAO supplierDao;
|
||||
|
||||
public void setSupplierDao(SupplierIDAO supplierDao)
|
||||
{
|
||||
this.supplierDao = supplierDao;
|
||||
}
|
||||
/**
|
||||
* 设置映射基类
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
protected Class<Supplier> getEntityClass()
|
||||
{
|
||||
return Supplier.class;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
package com.jsh.service.basic;
|
||||
|
||||
import com.jsh.base.BaseIService;
|
||||
import com.jsh.util.JshException;
|
||||
import com.jsh.model.po.UserBusiness;
|
||||
import com.jsh.util.PageUtil;
|
||||
|
||||
public interface UserBusinessIService extends BaseIService<UserBusiness>
|
||||
{
|
||||
/*
|
||||
* 测试一下自定义hql语句
|
||||
*/
|
||||
void find(PageUtil<UserBusiness> userBusiness,String ceshi)throws JshException;
|
||||
|
||||
}
|
||||
32
src/main/java/com/jsh/service/basic/UserBusinessService.java
Normal file
32
src/main/java/com/jsh/service/basic/UserBusinessService.java
Normal file
@@ -0,0 +1,32 @@
|
||||
package com.jsh.service.basic;
|
||||
|
||||
import com.jsh.base.BaseService;
|
||||
import com.jsh.dao.basic.UserBusinessIDAO;
|
||||
import com.jsh.util.JshException;
|
||||
import com.jsh.model.po.UserBusiness;
|
||||
import com.jsh.util.PageUtil;
|
||||
|
||||
public class UserBusinessService extends BaseService<UserBusiness> implements UserBusinessIService
|
||||
{
|
||||
@SuppressWarnings("unused")
|
||||
private UserBusinessIDAO userBusinessDao;
|
||||
|
||||
public void setUserBusinessDao(UserBusinessIDAO userBusinessDao)
|
||||
{
|
||||
this.userBusinessDao = userBusinessDao;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected Class<UserBusiness> getEntityClass()
|
||||
{
|
||||
return UserBusiness.class;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void find(PageUtil<UserBusiness> pageUtil, String ceshi) throws JshException
|
||||
{
|
||||
userBusinessDao.find(pageUtil, ceshi);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
33
src/main/java/com/jsh/service/basic/UserIService.java
Normal file
33
src/main/java/com/jsh/service/basic/UserIService.java
Normal file
@@ -0,0 +1,33 @@
|
||||
package com.jsh.service.basic;
|
||||
|
||||
import com.jsh.base.BaseIService;
|
||||
import com.jsh.util.JshException;
|
||||
import com.jsh.model.po.Basicuser;
|
||||
|
||||
public interface UserIService extends BaseIService<Basicuser>
|
||||
{
|
||||
/**
|
||||
* 判断用户名是否符合登录条件
|
||||
* @param username 用户名 String password
|
||||
* @return int 1、用户名不存在 2、密码不正确 3、黑名单用户 4、符合条件 5、访问后台异常
|
||||
*/
|
||||
int validateUser(String username,String password)throws JshException;
|
||||
|
||||
/**
|
||||
* 获取用户信息
|
||||
* @param username
|
||||
* @return 用户信息
|
||||
* @throws JshException
|
||||
*/
|
||||
public Basicuser getUser(String username) throws JshException;
|
||||
|
||||
/**
|
||||
* 检查用户名称是否存在
|
||||
* @param field 用户属性
|
||||
* @param username 用户名称
|
||||
* @param userID 供应商ID
|
||||
* @return true==存在重名 false==不存在
|
||||
* @throws JshException
|
||||
*/
|
||||
Boolean checkIsNameExist(String field,String username,Long userID)throws JshException;
|
||||
}
|
||||
114
src/main/java/com/jsh/service/basic/UserService.java
Normal file
114
src/main/java/com/jsh/service/basic/UserService.java
Normal file
@@ -0,0 +1,114 @@
|
||||
package com.jsh.service.basic;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import com.jsh.base.BaseService;
|
||||
import com.jsh.base.Log;
|
||||
import com.jsh.util.ExceptionCodeConstants;
|
||||
import com.jsh.dao.basic.UserBusinessIDAO;
|
||||
import com.jsh.dao.basic.UserIDAO;
|
||||
import com.jsh.util.JshException;
|
||||
import com.jsh.model.po.Basicuser;
|
||||
import com.jsh.util.PageUtil;
|
||||
|
||||
public class UserService extends BaseService<Basicuser> implements UserIService
|
||||
{
|
||||
private PageUtil<Basicuser> pageUtil = new PageUtil<Basicuser>();
|
||||
private Map<String,Object> condition = new HashMap<String,Object>();
|
||||
private UserIDAO userDao;
|
||||
|
||||
@Override
|
||||
public int validateUser(String username, String password)throws JshException
|
||||
{
|
||||
try
|
||||
{
|
||||
//全局变量 每次使用前清除
|
||||
condition.clear();
|
||||
|
||||
/**默认是可以登录的*/
|
||||
List<Basicuser> list = null ;
|
||||
try
|
||||
{
|
||||
|
||||
condition.put("loginame_s_eq", username);
|
||||
pageUtil.setAdvSearch(condition);
|
||||
userDao.find(pageUtil);
|
||||
list = pageUtil.getPageList();
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
Log.errorFileSync(">>>>>>>>访问验证用户姓名是否存在后台信息异常",e);
|
||||
return ExceptionCodeConstants.UserExceptionCode.USER_ACCESS_EXCEPTION;
|
||||
}
|
||||
|
||||
if(null !=list && list.size() == 0)
|
||||
return ExceptionCodeConstants.UserExceptionCode.USER_NOT_EXIST ;
|
||||
|
||||
try
|
||||
{
|
||||
condition.put("loginame_s_eq", username);
|
||||
condition.put("password_s_eq", password);
|
||||
pageUtil.setAdvSearch(condition);
|
||||
userDao.find(pageUtil);
|
||||
list = pageUtil.getPageList();
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
Log.errorFileSync(">>>>>>>>>>访问验证用户密码后台信息异常",e);
|
||||
return ExceptionCodeConstants.UserExceptionCode.USER_ACCESS_EXCEPTION;
|
||||
}
|
||||
|
||||
if(null !=list && list.size() == 0)
|
||||
return ExceptionCodeConstants.UserExceptionCode.USER_PASSWORD_ERROR;
|
||||
return ExceptionCodeConstants.UserExceptionCode.USER_CONDITION_FIT;
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
throw new JshException("unknown exception",e);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public Basicuser getUser(String username) throws JshException
|
||||
{
|
||||
//全局变量 每次使用前清除
|
||||
condition.clear();
|
||||
condition.put("loginame_s_eq", username);
|
||||
pageUtil.setAdvSearch(condition);
|
||||
userDao.find(pageUtil);
|
||||
List<Basicuser> list = pageUtil.getPageList();
|
||||
if(null != list && list.size() >0)
|
||||
return list.get(0);
|
||||
else
|
||||
throw new JshException("no username exist");
|
||||
}
|
||||
|
||||
@Override
|
||||
public Boolean checkIsNameExist(String field,String username, Long userID)throws JshException
|
||||
{
|
||||
condition.clear();
|
||||
condition.put(field + "_s_eq", username);
|
||||
condition.put("id_n_neq", userID);
|
||||
pageUtil.setAdvSearch(condition);
|
||||
userDao.find(pageUtil);
|
||||
|
||||
List<Basicuser> dataList = pageUtil.getPageList();
|
||||
if(null != dataList && dataList.size() > 0)
|
||||
return true;
|
||||
return false;
|
||||
}
|
||||
|
||||
//==============spring注入等公共方法,与业务无关=========================
|
||||
public void setUserDao(UserIDAO userDao)
|
||||
{
|
||||
this.userDao = userDao;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected Class<Basicuser> getEntityClass()
|
||||
{
|
||||
return Basicuser.class;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
package com.jsh.service.materials;
|
||||
|
||||
import com.jsh.base.BaseIService;
|
||||
import com.jsh.util.JshException;
|
||||
import com.jsh.model.po.AccountHead;
|
||||
import com.jsh.model.po.UserBusiness;
|
||||
import com.jsh.util.PageUtil;
|
||||
|
||||
public interface AccountHeadIService extends BaseIService<AccountHead>
|
||||
{
|
||||
/*
|
||||
* 获取MaxId
|
||||
*/
|
||||
void find(PageUtil<AccountHead> accountHead,String maxid)throws JshException;
|
||||
}
|
||||
@@ -0,0 +1,32 @@
|
||||
package com.jsh.service.materials;
|
||||
|
||||
import com.jsh.base.BaseService;
|
||||
import com.jsh.dao.materials.AccountHeadIDAO;
|
||||
import com.jsh.util.JshException;
|
||||
import com.jsh.model.po.AccountHead;
|
||||
import com.jsh.model.po.UserBusiness;
|
||||
import com.jsh.util.PageUtil;
|
||||
|
||||
public class AccountHeadService extends BaseService<AccountHead> implements AccountHeadIService
|
||||
{
|
||||
@SuppressWarnings("unused")
|
||||
private AccountHeadIDAO accountHeadDao;
|
||||
|
||||
|
||||
public void setAccountHeadDao(AccountHeadIDAO accountHeadDao) {
|
||||
this.accountHeadDao = accountHeadDao;
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
protected Class<AccountHead> getEntityClass()
|
||||
{
|
||||
return AccountHead.class;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void find(PageUtil<AccountHead> pageUtil, String maxid) throws JshException
|
||||
{
|
||||
accountHeadDao.find(pageUtil, maxid);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
package com.jsh.service.materials;
|
||||
|
||||
import java.io.InputStream;
|
||||
import java.util.List;
|
||||
|
||||
import net.sf.json.JSONArray;
|
||||
|
||||
import com.jsh.base.BaseIService;
|
||||
import com.jsh.util.JshException;
|
||||
import com.jsh.model.po.Asset;
|
||||
import com.jsh.model.po.AccountHead;
|
||||
import com.jsh.model.po.AccountItem;
|
||||
import com.jsh.util.PageUtil;
|
||||
|
||||
public interface AccountItemIService extends BaseIService<AccountItem>
|
||||
{
|
||||
|
||||
}
|
||||
@@ -0,0 +1,38 @@
|
||||
package com.jsh.service.materials;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import net.sf.json.JSONArray;
|
||||
import net.sf.json.JSONObject;
|
||||
|
||||
import com.jsh.base.BaseService;
|
||||
import com.jsh.base.Log;
|
||||
import com.jsh.util.AssetConstants;
|
||||
import com.jsh.dao.materials.AccountItemIDAO;
|
||||
import com.jsh.util.JshException;
|
||||
import com.jsh.model.po.Asset;
|
||||
import com.jsh.model.po.AccountHead;
|
||||
import com.jsh.model.po.AccountItem;
|
||||
import com.jsh.util.PageUtil;
|
||||
import com.jsh.util.Tools;
|
||||
|
||||
public class AccountItemService extends BaseService<AccountItem> implements AccountItemIService
|
||||
{
|
||||
@SuppressWarnings("unused")
|
||||
private AccountItemIDAO accoumtItemDao;
|
||||
|
||||
|
||||
public void setAccountItemDao(AccountItemIDAO accoumtItemDao) {
|
||||
this.accoumtItemDao = accoumtItemDao;
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
protected Class<AccountItem> getEntityClass()
|
||||
{
|
||||
return AccountItem.class;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
package com.jsh.service.materials;
|
||||
|
||||
import com.jsh.base.BaseIService;
|
||||
import com.jsh.util.JshException;
|
||||
import com.jsh.model.po.DepotHead;
|
||||
import com.jsh.model.po.UserBusiness;
|
||||
import com.jsh.util.PageUtil;
|
||||
|
||||
public interface DepotHeadIService extends BaseIService<DepotHead>
|
||||
{
|
||||
/*
|
||||
* 获取MaxId
|
||||
*/
|
||||
void find(PageUtil<DepotHead> depotHead,String maxid)throws JshException;
|
||||
}
|
||||
@@ -0,0 +1,32 @@
|
||||
package com.jsh.service.materials;
|
||||
|
||||
import com.jsh.base.BaseService;
|
||||
import com.jsh.dao.materials.DepotHeadIDAO;
|
||||
import com.jsh.util.JshException;
|
||||
import com.jsh.model.po.DepotHead;
|
||||
import com.jsh.model.po.UserBusiness;
|
||||
import com.jsh.util.PageUtil;
|
||||
|
||||
public class DepotHeadService extends BaseService<DepotHead> implements DepotHeadIService
|
||||
{
|
||||
@SuppressWarnings("unused")
|
||||
private DepotHeadIDAO depotHeadDao;
|
||||
|
||||
|
||||
public void setDepotHeadDao(DepotHeadIDAO depotHeadDao) {
|
||||
this.depotHeadDao = depotHeadDao;
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
protected Class<DepotHead> getEntityClass()
|
||||
{
|
||||
return DepotHead.class;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void find(PageUtil<DepotHead> pageUtil, String maxid) throws JshException
|
||||
{
|
||||
depotHeadDao.find(pageUtil, maxid);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,26 @@
|
||||
package com.jsh.service.materials;
|
||||
|
||||
import java.io.InputStream;
|
||||
import java.util.List;
|
||||
|
||||
import net.sf.json.JSONArray;
|
||||
|
||||
import com.jsh.base.BaseIService;
|
||||
import com.jsh.util.JshException;
|
||||
import com.jsh.model.po.Asset;
|
||||
import com.jsh.model.po.DepotHead;
|
||||
import com.jsh.model.po.DepotItem;
|
||||
import com.jsh.util.PageUtil;
|
||||
|
||||
public interface DepotItemIService extends BaseIService<DepotItem>
|
||||
{
|
||||
void findByType(PageUtil<DepotItem> depotItem, String type, Long MId, String MonthTime,Boolean isPrev)throws JshException;
|
||||
|
||||
void buyOrSale(PageUtil<DepotItem> depotItem, String type, String subType, Long MId, String MonthTime, String sumType)throws JshException;
|
||||
|
||||
/**
|
||||
* 导出信息
|
||||
* @return
|
||||
*/
|
||||
InputStream exmportExcel(String isAllPage,JSONArray dataArray)throws JshException;
|
||||
}
|
||||
124
src/main/java/com/jsh/service/materials/DepotItemService.java
Normal file
124
src/main/java/com/jsh/service/materials/DepotItemService.java
Normal file
@@ -0,0 +1,124 @@
|
||||
package com.jsh.service.materials;
|
||||
|
||||
import java.io.ByteArrayInputStream;
|
||||
import java.io.ByteArrayOutputStream;
|
||||
import java.io.InputStream;
|
||||
import java.io.OutputStream;
|
||||
import java.text.DecimalFormat;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import net.sf.json.JSONArray;
|
||||
import net.sf.json.JSONObject;
|
||||
|
||||
import jxl.Workbook;
|
||||
import jxl.write.Label;
|
||||
import jxl.write.WritableSheet;
|
||||
import jxl.write.WritableWorkbook;
|
||||
|
||||
import com.jsh.base.BaseService;
|
||||
import com.jsh.base.Log;
|
||||
import com.jsh.util.AssetConstants;
|
||||
import com.jsh.dao.materials.DepotItemIDAO;
|
||||
import com.jsh.util.JshException;
|
||||
import com.jsh.model.po.Asset;
|
||||
import com.jsh.model.po.DepotHead;
|
||||
import com.jsh.model.po.DepotItem;
|
||||
import com.jsh.util.PageUtil;
|
||||
import com.jsh.util.Tools;
|
||||
|
||||
public class DepotItemService extends BaseService<DepotItem> implements DepotItemIService
|
||||
{
|
||||
@SuppressWarnings("unused")
|
||||
private DepotItemIDAO depotItemDao;
|
||||
|
||||
|
||||
public void setDepotItemDao(DepotItemIDAO depotItemDao) {
|
||||
this.depotItemDao = depotItemDao;
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
protected Class<DepotItem> getEntityClass()
|
||||
{
|
||||
return DepotItem.class;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void findByType(PageUtil<DepotItem> pageUtil, String type,Long MId, String MonthTime,Boolean isPrev) throws JshException
|
||||
{
|
||||
depotItemDao.findByType(pageUtil, type, MId, MonthTime,isPrev);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void buyOrSale(PageUtil<DepotItem> pageUtil, String type,String subType, Long MId, String MonthTime, String sumType) throws JshException
|
||||
{
|
||||
depotItemDao.buyOrSale(pageUtil, type, subType, MId, MonthTime, sumType);
|
||||
}
|
||||
|
||||
/**
|
||||
* 导出Excel表格
|
||||
*/
|
||||
@Override
|
||||
public InputStream exmportExcel(String isAllPage,JSONArray dataArray)throws JshException
|
||||
{
|
||||
try
|
||||
{
|
||||
//将OutputStream转化为InputStream
|
||||
ByteArrayOutputStream out = new ByteArrayOutputStream();
|
||||
putDataOnOutputStream(out,dataArray);
|
||||
return new ByteArrayInputStream(out.toByteArray());
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
Log.errorFileSync(">>>>>>>>>>>>>>>>>>>>>>>导出信息为excel表格异常", e);
|
||||
throw new JshException("export asset info to excel exception",e);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 生成excel表格
|
||||
* @param os
|
||||
*/
|
||||
@SuppressWarnings("deprecation")
|
||||
private void putDataOnOutputStream(OutputStream os,JSONArray dataArray)
|
||||
{
|
||||
WritableWorkbook workbook = null;
|
||||
try
|
||||
{
|
||||
workbook = Workbook.createWorkbook(os);
|
||||
WritableSheet sheet = workbook.createSheet("进销存报表", 0);
|
||||
//增加列头
|
||||
int[] colunmWidth = {10,10,10,10,15,15,15,15,15};
|
||||
String[] colunmName = {"名称","款号","颜色","单价","上月结存数量","入库数量","出库数量","本月结存数量","结存金额"};
|
||||
for(int i = 0 ;i < colunmWidth.length;i ++)
|
||||
{
|
||||
sheet.setColumnView(i,colunmWidth[i]);
|
||||
sheet.addCell(new Label(i, 0, colunmName[i]));
|
||||
}
|
||||
if (null != dataArray &&dataArray.size() > 0)
|
||||
{
|
||||
for(int j=0; j < dataArray.size(); j++){
|
||||
JSONObject jo = JSONObject.fromObject(dataArray.get(j));
|
||||
sheet.addCell(new Label(0, j+1, jo.getString("MaterialName")));
|
||||
sheet.addCell(new Label(1, j+1, jo.getString("MaterialModel")));
|
||||
sheet.addCell(new Label(2, j+1, jo.getString("MaterialColor")));
|
||||
sheet.addCell(new Label(3, j+1, jo.getString("UnitPrice")));
|
||||
sheet.addCell(new Label(4, j+1, jo.getString("prevSum")));
|
||||
sheet.addCell(new Label(5, j+1, jo.getString("InSum")));
|
||||
sheet.addCell(new Label(6, j+1, jo.getString("OutSum")));
|
||||
sheet.addCell(new Label(7, j+1, jo.getString("thisSum")));
|
||||
double d = Double.parseDouble(jo.getString("thisAllPrice").toString());
|
||||
String s1 = String.format("%.2f", d);
|
||||
sheet.addCell(new Label(8, j+1, s1));
|
||||
}
|
||||
}
|
||||
workbook.write();
|
||||
workbook.close();
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
Log.errorFileSync(">>>>>>>>>>>>>>>>>>>>>>>导出资产信息为excel表格异常", e);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
package com.jsh.service.materials;
|
||||
|
||||
import com.jsh.base.BaseIService;
|
||||
import com.jsh.model.po.MaterialCategory;
|
||||
|
||||
public interface MaterialCategoryIService extends BaseIService<MaterialCategory>
|
||||
{
|
||||
|
||||
}
|
||||
@@ -0,0 +1,24 @@
|
||||
package com.jsh.service.materials;
|
||||
|
||||
import com.jsh.base.BaseService;
|
||||
import com.jsh.dao.materials.MaterialCategoryIDAO;
|
||||
import com.jsh.model.po.MaterialCategory;
|
||||
|
||||
public class MaterialCategoryService extends BaseService<MaterialCategory> implements MaterialCategoryIService
|
||||
{
|
||||
@SuppressWarnings("unused")
|
||||
private MaterialCategoryIDAO materialCategoryDao;
|
||||
|
||||
|
||||
public void setMaterialCategoryDao(MaterialCategoryIDAO materialCategoryDao) {
|
||||
this.materialCategoryDao = materialCategoryDao;
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
protected Class<MaterialCategory> getEntityClass()
|
||||
{
|
||||
return MaterialCategory.class;
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
package com.jsh.service.materials;
|
||||
|
||||
import com.jsh.base.BaseIService;
|
||||
import com.jsh.model.po.Material;
|
||||
|
||||
public interface MaterialIService extends BaseIService<Material>
|
||||
{
|
||||
|
||||
}
|
||||
24
src/main/java/com/jsh/service/materials/MaterialService.java
Normal file
24
src/main/java/com/jsh/service/materials/MaterialService.java
Normal file
@@ -0,0 +1,24 @@
|
||||
package com.jsh.service.materials;
|
||||
|
||||
import com.jsh.base.BaseService;
|
||||
import com.jsh.dao.materials.MaterialIDAO;
|
||||
import com.jsh.model.po.Material;
|
||||
|
||||
public class MaterialService extends BaseService<Material> implements MaterialIService
|
||||
{
|
||||
@SuppressWarnings("unused")
|
||||
private MaterialIDAO materialDao;
|
||||
|
||||
|
||||
public void setMaterialDao(MaterialIDAO materialDao) {
|
||||
this.materialDao = materialDao;
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
protected Class<Material> getEntityClass()
|
||||
{
|
||||
return Material.class;
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
package com.jsh.service.materials;
|
||||
|
||||
import com.jsh.base.BaseIService;
|
||||
import com.jsh.model.po.Person;
|
||||
|
||||
public interface PersonIService extends BaseIService<Person>
|
||||
{
|
||||
|
||||
}
|
||||
24
src/main/java/com/jsh/service/materials/PersonService.java
Normal file
24
src/main/java/com/jsh/service/materials/PersonService.java
Normal file
@@ -0,0 +1,24 @@
|
||||
package com.jsh.service.materials;
|
||||
|
||||
import com.jsh.base.BaseService;
|
||||
import com.jsh.dao.materials.PersonIDAO;
|
||||
import com.jsh.model.po.Person;
|
||||
|
||||
public class PersonService extends BaseService<Person> implements PersonIService
|
||||
{
|
||||
@SuppressWarnings("unused")
|
||||
private PersonIDAO personDao;
|
||||
|
||||
|
||||
public void setPersonDao(PersonIDAO personDao) {
|
||||
this.personDao = personDao;
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
protected Class<Person> getEntityClass()
|
||||
{
|
||||
return Person.class;
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user