JdlController.java 2.03 KB
package com.bsth.controller.oil;

import java.io.File;
import java.util.HashMap;
import java.util.Map;

import org.springframework.beans.factory.annotation.Autowired;
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 org.springframework.web.multipart.MultipartFile;
import org.springframework.web.servlet.ModelAndView;

import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.bsth.controller.BaseController;
import com.bsth.entity.oil.Jdl;
import com.bsth.service.oil.JdlService;
import com.google.common.io.Files;

@RestController
@RequestMapping("jdl")
public class JdlController extends BaseController<Jdl, Integer> {

	@Autowired
	JdlService jdlService;

	public String getDataImportClasspath(){
		return this.getClass().getResource("/").getPath() + "/static/pages/electricity/jdl";
	}
	
	@RequestMapping(value = "/uploadFile",method = RequestMethod.POST)
	public String uploadFile(MultipartFile file, String gsbm_, String gsName,
											String fgsbm_, String fgsName) throws Exception{
		Map<String, Object> map = new HashMap<String, Object>();
//		File ktrfile = new File(this.getClass().getResource(getDataImportKtrClasspath()).toURI());
//		System.out.println(ktrfile.getAbsolutePath());
		System.out.println(file.getSize());
        File newFile = new File(
        		getDataImportClasspath() + File.separator +
                        file.getOriginalFilename());
        Files.write(file.getBytes(), newFile);
		String result = jdlService.importExcel(newFile, gsbm_, gsName, fgsbm_, fgsName);
		return "{\"result\":" + "\""+result+"\"}";
	}
	
	@RequestMapping(value = "/query",method = RequestMethod.GET)
	public Map<String, Object> query(@RequestParam Map<String, Object> map) throws Exception{
		return jdlService.query(map);
	}
	
}