123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189 |
- package com.tld.service.impl;
- import com.github.pagehelper.PageHelper;
- import com.github.pagehelper.PageInfo;
- import com.tld.excel.ExcelUtils;
- import com.tld.mapper.ContainerMapper;
- import com.tld.model.Container;
- import com.tld.model.Department;
- import com.tld.model.Scrap;
- import com.tld.service.ContainerService;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.stereotype.Service;
- import org.springframework.transaction.annotation.Transactional;
- import javax.servlet.http.HttpServletResponse;
- import java.text.SimpleDateFormat;
- import java.util.*;
- @Service
- public class ContainerServiceImpl implements ContainerService {
- @Autowired
- private ContainerMapper containerMapper;
- @Override
- public Map<String, Object> getContainer(Container container) {
- Map<String, Object> map = new HashMap<>();
- try{
- PageHelper.startPage(container.getPage(), container.getLimit());
- PageInfo<Container> pageInfo = new PageInfo<>(containerMapper.getContainer(container));
- map.put("data", pageInfo);
- map.put("msg", "200");
- }catch (Exception e){
- e.printStackTrace();
- map.put("msg", "500");
- map.put("errMsg", "服务器请求异常,请稍后再试");
- }
- return map;
- }
- @Override
- @Transactional(rollbackFor = Exception.class)
- public Map<String, Object> addContainer(Container container) {
- Map<String, Object> map = new HashMap<>();
- try{
- containerMapper.addContainer(container);
- map.put("msg", "200");
- }catch (Exception e){
- e.printStackTrace();
- map.put("msg", "500");
- map.put("errMsg", "服务器请求异常,请稍后再试");
- }
- return map;
- }
- @Override
- @Transactional(rollbackFor = Exception.class)
- public Map<String, Object> updateContainer(Container container) {
- Map<String, Object> map = new HashMap<>();
- try{
- containerMapper.updateContainer(container);
- map.put("msg", "200");
- }catch (Exception e){
- e.printStackTrace();
- map.put("msg", "500");
- map.put("errMsg", "服务器请求异常,请稍后再试");
- }
- return map;
- }
- @Override
- @Transactional(rollbackFor = Exception.class)
- public Map<String, Object> delContainer(Map<String, Object> param) {
- Map<String, Object> map = new HashMap<>();
- try{
- //新增报废日志
- Scrap scrap = new Scrap()
- .setOperationName(param.get("userId").toString())
- .setScrapCause(param.get("scrapCause").toString())
- .setScrapNum(param.get("scrapNum").toString())
- .setContainerName(param.get("id").toString());
- containerMapper.addScrap(scrap);
- //删除容器
- Container container = new Container()
- .setId(param.get("id").toString());
- List<Container> list = containerMapper.getContainer(container);
- if(Integer.parseInt(list.get(0).getNum()) < Integer.parseInt(param.get("scrapNum").toString())){
- map.put("msg", "500");
- map.put("errMsg", "库存数量不足");
- return map;
- }
- //剩余数量 总数量 - 报废数量
- int num = Integer.parseInt(list.get(0).getNum()) - Integer.parseInt(param.get("scrapNum").toString());
- container.setNum(String.valueOf(num));
- containerMapper.updateContainer(container);
- map.put("msg", "200");
- }catch (Exception e){
- e.printStackTrace();
- map.put("msg", "500");
- map.put("errMsg", "服务器请求异常,请稍后再试");
- }
- return map;
- }
- @Override
- public void export(Container container, HttpServletResponse response) {
- try{
- //导出数据汇总
- List<List<Object>> sheetDataList = new ArrayList<>();
- //表头数据
- List<Object> head = Arrays.asList("部门", "类别", "容器编号","容器名称","数量","创建时间");
- //查询数据
- PageHelper.startPage(container.getPage(), container.getLimit());
- PageInfo<Map<String, Object>> list = new PageInfo<>(containerMapper.export(container));
- sheetDataList.add(head);
- for(Map<String, Object> userMap : list.getList()){
- List<Object> listSheet = new ArrayList<>();
- for(String key: userMap.keySet()){
- listSheet.add(userMap.get(key));
- }
- sheetDataList.add(listSheet);
- }
- //当前时间
- Date time = new Date();
- SimpleDateFormat sdf = new SimpleDateFormat("yyyyMddHHmmss");
- ExcelUtils.export(response, "仓库容器信息数据导出" + sdf.format(time), sheetDataList);
- }catch (Exception e){
- e.printStackTrace();
- }
- }
- @Override
- public Map<String, Object> getScrap(Scrap scrap) {
- Map<String, Object> map = new HashMap<>();
- try{
- PageHelper.startPage(scrap.getPage(), scrap.getLimit());
- PageInfo<Scrap> pageInfo = new PageInfo<>(containerMapper.getScrap(scrap));
- map.put("data", pageInfo);
- map.put("msg", "200");
- }catch (Exception e){
- e.printStackTrace();
- map.put("msg", "500");
- map.put("errMsg", "服务器请求异常,请稍后再试");
- }
- return map;
- }
- @Override
- public void exportScrap(Scrap scrap, HttpServletResponse response) {
- try{
- //导出数据汇总
- List<List<Object>> sheetDataList = new ArrayList<>();
- //表头数据
- List<Object> head = Arrays.asList("操作人", "报废原因", "报废时间","报废数量","容器名称");
- //查询数据
- PageHelper.startPage(scrap.getPage(), scrap.getLimit());
- PageInfo<Map<String, Object>> list = new PageInfo<>(containerMapper.exportScrap(scrap));
- sheetDataList.add(head);
- for(Map<String, Object> userMap : list.getList()){
- List<Object> listSheet = new ArrayList<>();
- for(String key: userMap.keySet()){
- listSheet.add(userMap.get(key));
- }
- sheetDataList.add(listSheet);
- }
- //当前时间
- Date time = new Date();
- SimpleDateFormat sdf = new SimpleDateFormat("yyyyMddHHmmss");
- ExcelUtils.export(response, "废弃信息数据导出" + sdf.format(time), sheetDataList);
- }catch (Exception e){
- e.printStackTrace();
- }
- }
- @Override
- @Transactional(rollbackFor = Exception.class)
- public Map<String, Object> delCon(String id) {
- Map<String, Object> map = new HashMap<>();
- try{
- containerMapper.delContainer(id);
- map.put("msg", "200");
- }catch (Exception e){
- e.printStackTrace();
- map.put("msg", "500");
- map.put("errMsg", "服务器请求异常,请稍后再试");
- }
- return map;
- }
- }
|