From 2f3fa592eb9d8edd9b4af8cdecbf1e2e6e5fc016 Mon Sep 17 00:00:00 2001 From: 935090232@qq.com <ak473600000> Date: Tue, 11 Jan 2022 23:24:00 +0800 Subject: [PATCH] 新增固定资产导出功能 --- zq-erp/src/main/java/com/matrix/system/oa/actions/OaFixedAssetsAction.java | 273 +++++++++++++++++++++++++++++++++--------------------- 1 files changed, 166 insertions(+), 107 deletions(-) diff --git a/zq-erp/src/main/java/com/matrix/system/oa/actions/OaFixedAssetsAction.java b/zq-erp/src/main/java/com/matrix/system/oa/actions/OaFixedAssetsAction.java index befc7c8..546bb82 100644 --- a/zq-erp/src/main/java/com/matrix/system/oa/actions/OaFixedAssetsAction.java +++ b/zq-erp/src/main/java/com/matrix/system/oa/actions/OaFixedAssetsAction.java @@ -8,134 +8,193 @@ import com.matrix.core.exception.GlobleException; import com.matrix.core.pojo.AjaxResult; import com.matrix.core.pojo.PaginationVO; +import com.matrix.core.tools.DateUtil; import com.matrix.core.tools.ModelUtils; import com.matrix.core.tools.StringUtils; import com.matrix.core.tools.WebUtil; +import com.matrix.core.tools.excl.ExcelSheetPO; +import com.matrix.core.tools.excl.ExcelUtil; +import com.matrix.core.tools.excl.ExcelVersion; import com.matrix.system.common.bean.SysUsers; +import com.matrix.system.common.tools.ResponseHeadUtil; import com.matrix.system.oa.bean.OaFixedAssets; import com.matrix.system.oa.dao.OaFixedAssetsDao; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; +import org.springframework.ui.ModelMap; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; import org.springframework.web.servlet.ModelAndView; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import java.io.IOException; +import java.io.OutputStream; +import java.net.URLEncoder; +import java.util.ArrayList; import java.util.List; import java.util.Map; /** + * @author * @description 固定资产 - * @author * @date 2019-12-13 07:19 */ @Controller @RequestMapping(value = "admin/oaFixedAssets") public class OaFixedAssetsAction { - @Autowired - private OaFixedAssetsDao oaFixedAssetsDao; - - //记录编辑前的值Before_Edit_Value - public static final String BEV="OaFixedAssets_BEV"; - - - /** - * 列表显示 - */ - @RequestMapping(value = "/showList") - public @ResponseBody AjaxResult showList(OaFixedAssets oaFixedAssets, PaginationVO pageVo) { - SysUsers user = WebUtil.getSessionAttribute(MatrixConstance.LOGIN_KEY); - oaFixedAssets.setCompanyId(user.getCompanyId()); - List<OaFixedAssets> dataList = oaFixedAssetsDao.selectInPage(oaFixedAssets, pageVo); - AjaxResult result = new AjaxResult(AjaxResult.STATUS_SUCCESS, dataList, - oaFixedAssetsDao.selectTotalRecord(oaFixedAssets)); - return result; - } - - /** - * 新增 - */ - @RemoveRequestToken - @RequestMapping(value = "/addOaFixedAssets") - public @ResponseBody AjaxResult addOaFixedAssets(OaFixedAssets oaFixedAssets) { - SysUsers user = WebUtil.getSessionAttribute(MatrixConstance.LOGIN_KEY); - oaFixedAssets.setCreateBy(user.getSuName()); - oaFixedAssets.setUpdateBy(user.getSuName()); - oaFixedAssets.setCompanyId(user.getCompanyId()); - int i=oaFixedAssetsDao.insert(oaFixedAssets); - if(i > 0){ - return new AjaxResult(AjaxResult.STATUS_SUCCESS, SystemMessageCode.ADD_SUCCES, "固定资产"); - }else { - throw new GlobleException(SystemErrorCode.DATA_ADD_FAIL); - } - } - - - - - - /** - * 修改 - */ - @RemoveRequestToken - @RequestMapping(value = "/modifyOaFixedAssets") - public @ResponseBody AjaxResult modifyOaFixedAssets(OaFixedAssets newOaFixedAssets) { - OaFixedAssets oldOaFixedAssets = WebUtil.getSessionAttribute(BEV); - int i = 0; - Map<String, Object> modifyMap = null; - try { - if (!ModelUtils.isModified(oldOaFixedAssets, newOaFixedAssets)) { - i = MatrixConstance.DML_SUCCESSS; - } - modifyMap = ModelUtils.comparePojo2Map(oldOaFixedAssets, newOaFixedAssets); - } catch (Exception e) { - throw new GlobleException(SystemErrorCode.DATA_UPDATE_FAIL, e, newOaFixedAssets); - } - if (modifyMap.size() > 0) { - modifyMap.put("id", oldOaFixedAssets.getId()); - oaFixedAssetsDao.updateByMap(modifyMap); - } - i = MatrixConstance.DML_SUCCESSS; - WebUtil.removeSessionAttribute(BEV); - if (i > 0) { - return new AjaxResult(AjaxResult.STATUS_SUCCESS, SystemMessageCode.UPDATE_SUCCES, "固定资产"); - } else { - throw new GlobleException(SystemErrorCode.DATA_UPDATE_FAIL); - } - } - - - - - /** - * 进入修改界面 - */ - @SaveRequestToken - @RequestMapping(value = "/editForm") - public ModelAndView editForm(String id) { - OaFixedAssets oaFixedAssets = new OaFixedAssets(); - ModelAndView modelAndView = new ModelAndView("admin/oa/assets/fixeAssets-form"); - if (id != null) { - oaFixedAssets = oaFixedAssetsDao.selectById(id); - WebUtil.setSessionAttribute(BEV, oaFixedAssets); - } - modelAndView.addObject("obj",oaFixedAssets); - return modelAndView; - } - - - /** - * 删除 - */ - @RequestMapping(value = "/del") - public @ResponseBody AjaxResult del(String keys) { - List<String> ids = StringUtils.strToCollToString(keys, ","); - int i = oaFixedAssetsDao.deleteByIds(ids); - if (i > 0) { - return new AjaxResult(AjaxResult.STATUS_SUCCESS, SystemMessageCode.DELETE_SUCCES, i); - } else { - throw new GlobleException(SystemErrorCode.DATA_DELETE_FAIL); - } - } - + @Autowired + private OaFixedAssetsDao oaFixedAssetsDao; + + //记录编辑前的值Before_Edit_Value + public static final String BEV = "OaFixedAssets_BEV"; + + + /** + * 列表显示 + */ + @RequestMapping(value = "/showList") + public @ResponseBody + AjaxResult showList(OaFixedAssets oaFixedAssets, PaginationVO pageVo) { + SysUsers user = WebUtil.getSessionAttribute(MatrixConstance.LOGIN_KEY); + oaFixedAssets.setCompanyId(user.getCompanyId()); + List<OaFixedAssets> dataList = oaFixedAssetsDao.selectInPage(oaFixedAssets, pageVo); + AjaxResult result = new AjaxResult(AjaxResult.STATUS_SUCCESS, dataList, + oaFixedAssetsDao.selectTotalRecord(oaFixedAssets)); + return result; + } + + /** + * 新增 + */ + @RemoveRequestToken + @RequestMapping(value = "/addOaFixedAssets") + public @ResponseBody + AjaxResult addOaFixedAssets(OaFixedAssets oaFixedAssets) { + SysUsers user = WebUtil.getSessionAttribute(MatrixConstance.LOGIN_KEY); + oaFixedAssets.setCreateBy(user.getSuName()); + oaFixedAssets.setUpdateBy(user.getSuName()); + oaFixedAssets.setCompanyId(user.getCompanyId()); + int i = oaFixedAssetsDao.insert(oaFixedAssets); + if (i > 0) { + return new AjaxResult(AjaxResult.STATUS_SUCCESS, SystemMessageCode.ADD_SUCCES, "固定资产"); + } else { + throw new GlobleException(SystemErrorCode.DATA_ADD_FAIL); + } + } + + + /** + * 修改 + */ + @RemoveRequestToken + @RequestMapping(value = "/modifyOaFixedAssets") + public @ResponseBody + AjaxResult modifyOaFixedAssets(OaFixedAssets newOaFixedAssets) { + OaFixedAssets oldOaFixedAssets = WebUtil.getSessionAttribute(BEV); + int i = 0; + Map<String, Object> modifyMap = null; + try { + if (!ModelUtils.isModified(oldOaFixedAssets, newOaFixedAssets)) { + i = MatrixConstance.DML_SUCCESSS; + } + modifyMap = ModelUtils.comparePojo2Map(oldOaFixedAssets, newOaFixedAssets); + } catch (Exception e) { + throw new GlobleException(SystemErrorCode.DATA_UPDATE_FAIL, e, newOaFixedAssets); + } + if (modifyMap.size() > 0) { + modifyMap.put("id", oldOaFixedAssets.getId()); + oaFixedAssetsDao.updateByMap(modifyMap); + } + i = MatrixConstance.DML_SUCCESSS; + WebUtil.removeSessionAttribute(BEV); + if (i > 0) { + return new AjaxResult(AjaxResult.STATUS_SUCCESS, SystemMessageCode.UPDATE_SUCCES, "固定资产"); + } else { + throw new GlobleException(SystemErrorCode.DATA_UPDATE_FAIL); + } + } + + + /** + * 进入修改界面 + */ + @SaveRequestToken + @RequestMapping(value = "/editForm") + public ModelAndView editForm(String id) { + OaFixedAssets oaFixedAssets = new OaFixedAssets(); + ModelAndView modelAndView = new ModelAndView("admin/oa/assets/fixeAssets-form"); + if (id != null) { + oaFixedAssets = oaFixedAssetsDao.selectById(id); + WebUtil.setSessionAttribute(BEV, oaFixedAssets); + } + modelAndView.addObject("obj", oaFixedAssets); + return modelAndView; + } + + + /** + * 删除 + */ + @RequestMapping(value = "/del") + public @ResponseBody + AjaxResult del(String keys) { + List<String> ids = StringUtils.strToCollToString(keys, ","); + int i = oaFixedAssetsDao.deleteByIds(ids); + if (i > 0) { + return new AjaxResult(AjaxResult.STATUS_SUCCESS, SystemMessageCode.DELETE_SUCCES, i); + } else { + throw new GlobleException(SystemErrorCode.DATA_DELETE_FAIL); + } + } + + /** + * 总部导出服务单导出,不限门店 + */ + @RequestMapping(value = "/exportExcel") + public void erpExportExcel(ModelMap model, HttpServletRequest request, HttpServletResponse response, OaFixedAssets oaFixedAssets) throws Exception { + + + doExportServiceOrder(response, oaFixedAssets); + } + + + private void doExportServiceOrder(HttpServletResponse response, OaFixedAssets oaFixedAssets) throws IOException { + + List<ExcelSheetPO> res = new ArrayList<>(); + ExcelSheetPO orderSheet = new ExcelSheetPO(); + String title = "固定资产明细"; + orderSheet.setSheetName(title); + orderSheet.setTitle(title); + String[] header = {"资产类型", "资产编号", "资产型号", "所在部门", "成本价", "数量", "往来单位", "使用人"}; + orderSheet.setHeaders(header); + + List<OaFixedAssets> dataList = oaFixedAssetsDao.selectByModel(oaFixedAssets); + List<List<Object>> list = new ArrayList<>(); + if (dataList.size() > 0) { + for (OaFixedAssets item : dataList) { + List<Object> temp = new ArrayList<>(); + temp.add(item.getAssetsType()); + temp.add(item.getName()); + temp.add(item.getNumber()); + temp.add(item.getModel()); + temp.add(item.getDepartment()); + temp.add(item.getPrice()); + temp.add(item.getCount()); + temp.add(item.getSupplier()); + temp.add(item.getUser()); + list.add(temp); + } + } + orderSheet.setDataList(list); + res.add(orderSheet); + response = ResponseHeadUtil.setExcelHead(response); + response.setHeader("Content-Disposition", + "attachment;filename=" + URLEncoder.encode(title + DateUtil.getTimeMark() + ".xlsx".trim(), "UTF-8")); + OutputStream os = response.getOutputStream(); + ExcelUtil.createWorkbookAtOutStream(ExcelVersion.V2007, res, os, true); + } + + } \ No newline at end of file -- Gitblit v1.9.1