package com.jeeplus.modules.sg.web; import com.jeeplus.common.utils.excel.ImportExcel; import com.jeeplus.core.web.BaseController; import com.jeeplus.modules.sg.entity.JkxlData; import com.jeeplus.modules.sg.entity.WbsProject; import com.jeeplus.modules.sg.service.JkxlService; import com.jeeplus.modules.sg.util.BashInfo; import org.apache.poi.openxml4j.exceptions.InvalidFormatException; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.multipart.MultipartFile; import org.springframework.web.servlet.mvc.support.RedirectAttributes; import javax.servlet.http.HttpServletRequest; import java.io.IOException; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Date; import java.util.List; import java.util.Random; /** * 架空线路 */ @Controller @RequestMapping(value = "${adminPath}/jkxl") public class JkxlController extends BaseController { @Autowired private JkxlService jkxlService; @RequestMapping("/import") public String importFile(String file, RedirectAttributes redirectAttributes, HttpServletRequest request, Model model){ double sl = Double.valueOf(request.getParameter("jxsl")); String projectName = request.getParameter("name"); String id = getId(); try { double[] rate = getRate(); WbsProject wbsProject = new WbsProject(); wbsProject.setId(id); wbsProject.setName(projectName); wbsProject.setCreateDate(new Date()); List list = getData(file,rate,id,sl); for(JkxlData jkxlData : list){ jkxlService.save(jkxlData); } } catch (Exception e){ addMessage(redirectAttributes, "导入失败"); } addMessage(redirectAttributes, "导入成功"); return "redirect:/a/jkxl/list?id="+id; } @RequestMapping("/list") public String list(HttpServletRequest request,Model model){ String id = request.getParameter("id"); return ""; } public List getData(String file,double[] rate,String id,double sl) throws IOException, InvalidFormatException { ImportExcel importExcel = new ImportExcel(file,1,3); ImportExcel csqd = new ImportExcel(file,1,8); ImportExcel gf = new ImportExcel(file,1,17); ImportExcel qt = new ImportExcel(file,1,10); ImportExcel total = new ImportExcel(file,1,1); double[] csRate = getCsRate(csqd); double[] gfRate = getGfRate(gf); double[] qtFees = getQtFees(qt); double bzFees = getFees(total); double totalFee = 0.00; List list = new ArrayList<>(); int lastRow = importExcel.getLastDataRowNum(); int[] row = new int[6]; for(int i=0;i