QlbController.java 7.94 KB
package com.bsth.controller.oil;

import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.PageRequest;
import org.springframework.data.domain.Sort;
import org.springframework.data.domain.Sort.Direction;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import com.bsth.controller.BaseController;
import com.bsth.entity.oil.Qlb;
import com.bsth.service.oil.QlbService;
import com.bsth.util.Arith;
import com.bsth.util.ReportUtils;
import com.google.common.base.Splitter;

@RestController
@RequestMapping("qlb")
public class QlbController extends BaseController<Qlb, Integer>{
	@Autowired
	QlbService service;
	/**
	 * 
	 * @Title: list 
	 * @Description: TODO(多条件分页查询) 
	 * @param @param map 查询条件
	 * @param @param page 页码
	 * @param @param size 每页显示数量
	 * @throws
	 */
	@RequestMapping(method = RequestMethod.GET)
	public Page<Qlb> list(@RequestParam Map<String, Object> map,
			@RequestParam(defaultValue = "0") int page,
			@RequestParam(defaultValue = "10") int size,
			@RequestParam(defaultValue = "id") String order,
			@RequestParam(defaultValue = "DESC") String direction){

		Direction d;
//		map.put("xlbm_like", map.get("xlbm_like").toString().trim());
//		try {
		String rq=map.get("rq").toString();
		if(!(rq=="")){
//			
//			SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");
//			  Calendar   calendar   =   new   GregorianCalendar(); 
//			  calendar.setTime(sdf.parse(rq)); 
//			  calendar.add(calendar.DATE,1);
//			  Date date=calendar.getTime();
			map.put("rq_eq", rq);
//			map.put("rq_lt", sdf.format(date));
//			System.out.println(rq);
//			System.out.println(sdf.format(date));
		}
//		} catch (ParseException e) {
//			// TODO Auto-generated catch block
//			e.printStackTrace();
//		}
		if(null != direction && direction.equals("ASC"))
			d = Direction.ASC;
		else
			d = Direction.DESC;

        // 允许多个字段排序,order可以写单个字段,也可以写多个字段
        // 多个字段格式:{col1},{col2},{col3},....,{coln}
        // 每个字段的排序方向都是一致,这个以后再看要不要改
        List<String> list = Splitter.on(",").trimResults().splitToList(order);
        return baseService.list(map, new PageRequest(page, size, new Sort(d, list)));
	}
	@RequestMapping(value = "/qlbList",method = RequestMethod.GET)
	public List<Qlb> qlbList(@RequestParam Map<String, Object> map){
		List<Qlb> list=service.listQlb(map);
		return list;
	}
	
	
	
	@RequestMapping(value = "/obtain",method = RequestMethod.GET)
	public Map<String, Object> obtain(@RequestParam Map<String, Object> map) throws Exception{
		Map<String, Object> list=new HashMap<String, Object>();
		try {
			list = service.obtain(map);
		} catch (Exception e) {
			// TODO Auto-generated catch block
			throw e;
		}
		return list;
	}
	
	/**
	 * 保存氢量
	 * @param map
	 * @return
	 */
	@RequestMapping(value = "/sort",method = RequestMethod.GET)
	public Map<String, Object> sort(@RequestParam Map<String, Object> map){
		Map<String, Object> list=service.sort(map);
		return list;
	}
	
	/**
	 * 核对氢量(有加氢没里程)
	 * @param map
	 * @return
	 */
	@RequestMapping(value = "/checkQl",method = RequestMethod.GET)
	public Map<String, Object> checkQl(@RequestParam Map<String, Object> map){
		Map<String, Object> list=service.checkQl(map);
		return list;
	}
	
	@RequestMapping(value = "/sumQlb",method = RequestMethod.GET)
	public Map<String, Object> sumQlb(@RequestParam Map<String, Object> map){
		Map<String, Object> list=service.sumQlb(map);
		return list;
	}
	
	@RequestMapping(value = "/saveQlbList",method = RequestMethod.POST)
	public Map<String, Object> saveQlbList(@RequestParam Map<String, Object> map){
		Map<String, Object> list=new HashMap<String, Object>();
		try {
			list = service.saveQlbList(map);
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		return list;
	}
	

	@RequestMapping(value = "/listExport",method = RequestMethod.POST)
	public List<Map<String, Object>> listExport(@RequestParam Map<String, Object> map){
		SimpleDateFormat sdfMonth = new SimpleDateFormat("yyyy-MM-dd"),
				sdfSimple = new SimpleDateFormat("yyyyMMdd");
		List<Iterator<?>> listI = new ArrayList<Iterator<?>>();
		ReportUtils ee = new ReportUtils();
		List<Qlb> qlb = service.listQlb(map);
//		(new CustomerSpecs<Ylb>(map)).iterator();
		List<Map<String, Object>>  resList = new ArrayList<Map<String, Object>>();
		for (Qlb y : qlb) {
			Map<String, Object> m = new HashMap<String, Object>();
			m.put("rq", y.getRq());
			m.put("gsname",y.getGsname() );
			m.put("fgsname", y.getFgsname());
			if(y.getLinename()==null){
				m.put("xlname", y.getXlname()==null?"":y.getXlname());
			}else{
				m.put("xlname", y.getLinename());
			}			
			m.put("nbbm", y.getNbbm());
			m.put("jsy", y.getJsy());
			m.put("name", y.getName());
			m.put("jql", y.getJql()<=0?"0":y.getJql());
			m.put("czcl", y.getCzcl()<=0?"0":y.getCzcl()+"%");
			m.put("jzcl", y.getJzcl()<=0?"0":y.getJzcl()+"%");
			m.put("czlc", y.getCzlc()<=0?"0":y.getCzlc());
			m.put("jzlc", y.getJzlc()<=0?"0":y.getJzlc());
			m.put("hn", y.getHn()<=0?"0":y.getHn());
			String shyy ="$$$$$${txt-4226}";
			if(y.getShyy()!=null){
				shyy=y.getShyy();
				 if(shyy.equals("1")){shyy="$$$$$${txt-3544}";}
				 else if(shyy.equals("2")){shyy="$$$$$${txt-3543}";}
				 else if(shyy.equals("3")){shyy="$$$$$${txt-2786}";}
				 else if(shyy.equals("4")){shyy="$$$$$${txt-3542}";}
				 else if(shyy.equals("5")){shyy="$$$$$${txt-3541}";}
				 else if(shyy.equals("6")){shyy="$$$$$${txt-3978}";}
				 else if(shyy.equals("7")){shyy="$$$$$${txt-3976}";}
				 else if(shyy.equals("8")){shyy="$$$$$${txt-3975}";}
				 else{shyy ="$$$$$${txt-4226}";}
			}
			m.put("ns", y.getNs()<=0?"0":y.getNs());
			m.put("shyy", shyy);
			m.put("sh", y.getSh()<=0?"0":y.getSh());
			m.put("zlc", y.getZlc()<=0?"0":y.getZlc());
			m.put("rdlx", "");
			m.put("bglnh", y.getBglhn());
			m.put("znh", Arith.add(y.getSh(), y.getHn()));
			resList.add(m);
		}
		try {
			map.put("sheetName", map.get("rq"));
			listI.add(resList.iterator());
			String path = this.getClass().getResource("/").getPath()+"static/pages/forms/";
			ee.excelReplace(listI, new Object[] { map }, path+"mould/listQl.xls",
				path+"export/"+map.get("rq").toString()+ "$$$$$${txt-1654}.xls");
			} catch (Exception e) {
				e.printStackTrace();
			}
			
		return resList;
		
	}
	
	
	@RequestMapping(value = "/checkJsy",method = RequestMethod.GET)
	public String checkJsy(@RequestParam Map<String, Object> map){
		String list=service.checkJsy(map);
		return list;
	}
	
	@RequestMapping(value = "/deleteIds", method = RequestMethod.POST)
    public Map<String, Object> deleteIds(@RequestParam Map<String, Object> map) {
		Map<String, Object> maps=new HashMap<String, Object>();
        try {
        	maps= service.deleteIds(map);
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
        return maps;
    }
	
	@RequestMapping(value = "/saveQlb",method = RequestMethod.POST)
	public Map<String, Object> saveQlb(Qlb t){
//		SysUser user = SecurityUtils.getCurrentUser();
		t.setCreatetime(new Date());
//		Ylb t=new Ylb();
		return service.saveQlb(t);
	}
	
	@RequestMapping(value = "/updateJsy",method = RequestMethod.GET)
	public Map<String, Object> updateJsy(@RequestParam Map<String, Object> map){
		return service.update(map);
	}
}