Bladeren bron

Excel修改

anderx 5 jaren geleden
bovenliggende
commit
2ce0aa9096

+ 5 - 2
src/main/java/com/goafanti/common/controller/PublicController.java

@@ -7,6 +7,7 @@ import java.io.IOException;
 import java.io.InputStream;
 import java.io.OutputStream;
 import java.util.ArrayList;
+import java.util.Date;
 import java.util.List;
 import java.util.UUID;
 
@@ -34,12 +35,14 @@ import com.goafanti.admin.service.AdminService;
 import com.goafanti.admin.service.AttachmentService;
 import com.goafanti.common.bo.Error;
 import com.goafanti.common.bo.Result;
+import com.goafanti.common.constant.AFTConstants;
 import com.goafanti.common.constant.ErrorConstants;
 import com.goafanti.common.enums.UserType;
 import com.goafanti.common.model.User;
 import com.goafanti.common.service.DistrictGlossoryService;
 import com.goafanti.common.service.FieldGlossoryService;
 import com.goafanti.common.service.IndustryCategoryService;
+import com.goafanti.common.utils.DateUtils;
 import com.goafanti.common.utils.LoggerUtils;
 import com.goafanti.common.utils.MobileMessageUtils;
 import com.goafanti.common.utils.PasswordUtil;
@@ -687,8 +690,8 @@ public class PublicController extends BaseController {
                   {
                       throw new Exception("文件名称({})非法,不允许下载。 ");
                   }
-                  String realFileName = System.currentTimeMillis() + fileName.substring(fileName.indexOf("_") + 1);
-                  String filePath = uploadPath + fileName;
+                  String realFileName =DateUtils.parseDateToStr(AFTConstants.YYYYMMDDHHMMSS, new Date())+fileName.substring(fileName.indexOf("_") + 1);
+                  String filePath = uploadPath +"/"+ fileName;
 
                   response.setContentType(MediaType.APPLICATION_OCTET_STREAM_VALUE);
                   FileUtils.setAttachmentResponseHeader(response, realFileName);

+ 1 - 1
src/main/java/com/goafanti/common/mapper/TOrderTaskMapper.xml

@@ -1400,7 +1400,7 @@
   c.sort cSort,a.commodity_name as commodityName,a.commodity_quantity as commodityQuantity,i.price,a.certificate_number as certificateNumber,
   a.commodity_id as commodityId,a.manager_id managerId,a.consultant_id consultantId,a.project_status as projectStatus,a.set_up_amount setUpAmount,
   a.task_comment as taskComment ,a.commodity_price as commodityPrice, a.task_status as taskStatus,  a.task_receiver as taskReceiver ,
-  a.split_status splitStatus,a.cost_reduction costReduction,a.official_cost officialCost,i.`type` 
+  a.split_status splitStatus,a.cost_reduction costReduction,a.official_cost officialCost,i.`type` ,d.name consultantName
   	 from t_order_task a left join business_project b on a.commodity_id=b.id left join t_order_new e on a.order_no=e.order_no
   	 left join admin f on e.salesman_id=f.id left join department g on e.order_dep=g.id left join user h on e.buyer_id=h.id
   	 left join business_project i on a.commodity_id=i.id left join business_category c on b.cid=c.id left join admin d on a.task_receiver=d.id

+ 12 - 0
src/main/java/com/goafanti/common/model/TOrderTask.java

@@ -4,6 +4,7 @@ import java.math.BigDecimal;
 import java.util.Date;
 
 import com.goafanti.common.utils.StringUtils;
+import com.goafanti.common.utils.Excel.Excel;
 
 public class TOrderTask {
     /**
@@ -15,11 +16,13 @@ public class TOrderTask {
 	 * This field was generated by MyBatis Generator. This field corresponds to the database column t_order_task.order_no
 	 * @mbg.generated  Thu Jun 11 09:59:01 CST 2020
 	 */
+	@Excel(name = "订单编号",sort = 2)
 	private String orderNo;
 	/**
 	 * This field was generated by MyBatis Generator. This field corresponds to the database column t_order_task.main
 	 * @mbg.generated  Thu Jun 11 09:59:01 CST 2020
 	 */
+	@Excel(name="是否主项目",sort = 8,readConverterExp = "0=否,1=是")
 	private Integer main;
 	/**
 	 * This field was generated by MyBatis Generator. This field corresponds to the database column t_order_task.super_id
@@ -35,11 +38,13 @@ public class TOrderTask {
 	 * This field was generated by MyBatis Generator. This field corresponds to the database column t_order_task.commodity_name
 	 * @mbg.generated  Thu Jun 11 09:59:01 CST 2020
 	 */
+	@Excel(name = "项目名称",sort = 10)
 	private String commodityName;
 	/**
 	 * This field was generated by MyBatis Generator. This field corresponds to the database column t_order_task.commodity_quantity
 	 * @mbg.generated  Thu Jun 11 09:59:01 CST 2020
 	 */
+	@Excel(name = "项目数量",sort = 11)
 	private Integer commodityQuantity;
 	/**
 	 * This field was generated by MyBatis Generator. This field corresponds to the database column t_order_task.commodity_mode
@@ -50,6 +55,7 @@ public class TOrderTask {
 	 * This field was generated by MyBatis Generator. This field corresponds to the database column t_order_task.commodity_price
 	 * @mbg.generated  Thu Jun 11 09:59:01 CST 2020
 	 */
+	@Excel(name = "服务市价",sort = 11)
 	private BigDecimal commodityPrice;
 	/**
 	 * This field was generated by MyBatis Generator. This field corresponds to the database column t_order_task.task_status
@@ -75,6 +81,7 @@ public class TOrderTask {
 	 * This field was generated by MyBatis Generator. This field corresponds to the database column t_order_task.task_comment
 	 * @mbg.generated  Thu Jun 11 09:59:01 CST 2020
 	 */
+	@Excel(name = "项目说明",sort = 14)
 	private String taskComment;
 	/**
 	 * This field was generated by MyBatis Generator. This field corresponds to the database column t_order_task.task_start_time
@@ -90,6 +97,7 @@ public class TOrderTask {
 	 * This field was generated by MyBatis Generator. This field corresponds to the database column t_order_task.project_status
 	 * @mbg.generated  Thu Jun 11 09:59:01 CST 2020
 	 */
+	@Excel(name = "项目状态",readConverterExp = "0=项目待提交,1=项目已提交,2=项目评审,3=项目立项,4=项目公示,5=项目抽查,6=项目备案,7=项目下证,8=项目验收,9=项目拨款",sort = 13)
 	private Integer projectStatus;
 	/**
 	 * This field was generated by MyBatis Generator. This field corresponds to the database column t_order_task.accept_time
@@ -115,6 +123,7 @@ public class TOrderTask {
 	 * This field was generated by MyBatis Generator. This field corresponds to the database column t_order_task.certificate_number
 	 * @mbg.generated  Thu Jun 11 09:59:01 CST 2020
 	 */
+	@Excel(name = "证书編号",sort = 12)
 	private String certificateNumber;
 	/**
 	 * This field was generated by MyBatis Generator. This field corresponds to the database column t_order_task.status
@@ -165,11 +174,13 @@ public class TOrderTask {
 	 * This field was generated by MyBatis Generator. This field corresponds to the database column t_order_task.outsource_name
 	 * @mbg.generated  Thu Jun 11 09:59:01 CST 2020
 	 */
+	@Excel(name = "外包(内部)公司",sort = 15)
 	private String outsourceName;
 	/**
 	 * This field was generated by MyBatis Generator. This field corresponds to the database column t_order_task.outsource_price
 	 * @mbg.generated  Thu Jun 11 09:59:01 CST 2020
 	 */
+	@Excel(name = "外包(内部)价格",sort = 16)
 	private BigDecimal outsourcePrice;
 	/**
 	 * This field was generated by MyBatis Generator. This field corresponds to the database column t_order_task.consultant_id
@@ -535,6 +546,7 @@ public class TOrderTask {
 	 * @return  the value of t_order_task.project_status
 	 * @mbg.generated  Thu Jun 11 09:59:01 CST 2020
 	 */
+	
 	public Integer getProjectStatus() {
 		return projectStatus;
 	}

+ 1 - 1
src/main/java/com/goafanti/common/utils/Excel/Excel.java

@@ -37,7 +37,7 @@ public @interface Excel
 
     /**
      *	 读取内容转表达式 (如: 0=男,1=女,2=未知)
-     *	注意逗号是英文逗号
+     *	
      */
     public String readConverterExp() default "";
 

+ 15 - 5
src/main/java/com/goafanti/common/utils/Excel/NewExcelUtil.java

@@ -51,7 +51,6 @@ import org.apache.poi.xssf.usermodel.XSSFClientAnchor;
 import org.apache.poi.xssf.usermodel.XSSFDataValidation;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
-import org.springframework.beans.factory.annotation.Value;
 
 import com.goafanti.common.bo.Result;
 import com.goafanti.common.constant.AFTConstants;
@@ -72,8 +71,9 @@ public class NewExcelUtil<T> {
 	 * Excel sheet最大行数,默认65536
 	 */
 	public static final int sheetSize = 65536;
-	@Value(value = "${upload.path}")
-	public static final String DownloadPath = null;
+	public  String downloadPath = "";
+	
+	
 
 	/**
 	 * 工作表名称
@@ -161,6 +161,12 @@ public class NewExcelUtil<T> {
 		this.init(list, sheetName);
 		exportExcel(response);
 	}
+	
+	public Result exportExcel(List<T> list, String sheetName, String uploadPath) {
+		this.init(list, sheetName);
+		this.downloadPath=uploadPath;
+		return exportExcel();
+	}
 
 	private void exportExcel(HttpServletResponse response) {
 		try {
@@ -230,11 +236,12 @@ public class NewExcelUtil<T> {
 				createSheet(sheetNo, index);
 
 				// 产生一行
-				Row row = sheet.createRow(1);
+				Row row = sheet.createRow(0);
 				int column = 0;
 				// 写入各个字段的列头名称
 				for (Object[] os : fields) {
 					Excel excel = (Excel) os[1];
+					System.out.println(excel.name());
 					this.createCell(excel, row, column++);
 				}
 
@@ -639,11 +646,12 @@ public class NewExcelUtil<T> {
 	 * @param filename 文件名称
 	 */
 	public String getAbsoluteFile(String filename) {
-		String downloadPath = DownloadPath + filename;
+		String downloadPath = this.downloadPath+"/" + filename;
 		File desc = new File(downloadPath);
 		if (!desc.getParentFile().exists()) {
 			desc.getParentFile().mkdirs();
 		}
+		log.debug(downloadPath);
 		return downloadPath;
 	}
 
@@ -999,4 +1007,6 @@ public class NewExcelUtil<T> {
 
 	
 
+	
+
 }

+ 47 - 33
src/main/java/com/goafanti/order/bo/OrderListBo.java

@@ -2,38 +2,61 @@ package com.goafanti.order.bo;
 
 import java.math.BigDecimal;
 
+import com.goafanti.common.utils.Excel.Excel;
+
 /**
  * 订单列表
  * @author Administrator
  *
  */
 public class OrderListBo {
-	/** 订单编号 **/
+
+	@Excel(name = "订单编号")
 	private String orderNo;
+	@Excel(name = "合同编号")
+	private String contractNo;
+	@Excel(name = "客户名称")
+	private String buyerName;
+	@Excel(name = "订单部门")
+	private String departmentName;
+	@Excel(name = "订单负责人")
+	private String sellerName;
+	@Excel(name = "签单日期")
+	private String signTime;
+	@Excel(name = "下单日期")
+	private String createTime;
+	@Excel(name = "签单金额(万元)")
+	private BigDecimal signTotalAmount;
+	@Excel(name = "已开票金额(万元)")
+	private BigDecimal invoiceAmount;
+	@Excel(name = "已收金额(万元)")
+	private BigDecimal actuallyTotalAmount;
+	@Excel(name = "总成本(万元)")
+	private BigDecimal  costAmount;
+	@Excel(name = "已付成本(万元)")
+	private BigDecimal paymentAmount;
+	@Excel(name = "最近收款(万元)")
+	private BigDecimal finalReceivables;
+	@Excel(name = "最近收款时间")
+	private String finalReceivablesTime;
+	@Excel(name="结算状态",readConverterExp = "0=首付待付请,1=尾款待付清,2=已付请,3=部分退款,4=全部退款")
+	private Integer liquidationStatus;
+	@Excel(name="订单流程",readConverterExp = "0=已派营销员,1=已派营销员管理员,2=已派财务管理员,3=已派财务专员,4=已派咨询师管理员,5=已部分派咨询师经理,6=已部全部派咨询师经理")
+	private Integer processStatus;
+	@Excel(name="是否特批" ,readConverterExp = "0=非特批,1=待审核,2=通过,3=驳回")
+	private Integer approval;
 	/** 订单类型 **/
 	private Integer orderType;
 	/** 业务品类 **/
 	private String projectType;
-	/** 订单创建时间 **/
-	private String createTime;
-	/** 签单时间 **/
-	private String signTime;
+	
 	/** 合同首付金额 **/
 	private BigDecimal signFirstPayment;
-	/** 合同订单金额 **/
-	private BigDecimal signTotalAmount;
-	/** 实际付款金额 **/
-	private BigDecimal actuallyTotalAmount;
-	/** 买方姓名 **/
-	private String buyerName;
-	/** 卖方姓名 **/
-	private String sellerName;
+	
 	/** 订单状态 **/
 	private Integer orderStatus;
-	/** 结算状态 **/
-	private Integer liquidationStatus;
-	/** 是否特批 **/
-	private Integer approval;
+	
+	
 	/** 订单渠道 **/
 	private Integer orderChannel;
 	/** 营销员 **/
@@ -43,8 +66,7 @@ public class OrderListBo {
 	private String financeId;
 	/** 技术员 **/
 	private String technicianName;
-	/** 关联部门名称 **/
-	private String departmentName;
+
 	/** 订单阶段 **/
 	private Integer orderStage;
 	/** 项目阶段 **/
@@ -59,8 +81,7 @@ public class OrderListBo {
 	private Integer changeStatus;
 	/** 可操作状态 **/
 	private OperatorActive active;
-	/** 流程状态 **/
-	private Integer processStatus;
+	
 	/** 搜索开始时间 **/
 	private String startTime;
 	/** 搜索结束时间 **/
@@ -70,20 +91,15 @@ public class OrderListBo {
 	private String companyId;
 	/** 收款公司名称 **/
 	private String companyName;
-	/** 合同编号 */
-	private String contractNo;
 	/** 部门编号*/
 	private String departmentId;
 	/** 外包*/
 	private Integer outsource;
 	/** 外包名称*/
 	private String outsourceName;
-	/** 最后收款 */
-	private BigDecimal finalReceivables;
-	/** 最后收款 时间*/
-	private String finalReceivablesTime;
-	/** 开票金额 */
-	private BigDecimal invoiceAmount;
+	
+	
+
 	/** 结束最后收款 时间*/
 	private String endFinalReceivablesTime;
 	/** 开始最后收款 时间*/
@@ -98,10 +114,8 @@ public class OrderListBo {
 	private BigDecimal orderReceivables;
 	/**欠款 */
 	private BigDecimal  orderArrears;
-	/**总成本*/
-	private BigDecimal  costAmount;
-	/**已付成本*/
-	private BigDecimal paymentAmount;
+	
+	
 	
 	public BigDecimal getFinalReceivables() {
 		return finalReceivables;

+ 7 - 0
src/main/java/com/goafanti/order/bo/TOrderInvoiceBo.java

@@ -2,17 +2,24 @@ package com.goafanti.order.bo;
 
 import java.math.BigDecimal;
 
+import com.goafanti.common.utils.Excel.Excel;
+
 public class TOrderInvoiceBo {
+	@Excel(name = "编号")
 	private Integer id;
 	private String unitName;
+	@Excel(name = "订单编号")
 	private String orderno;
 	private String contractNo;
 	private String name;
 	private Integer projectStatus;
 	private Integer processStatus;
 	private BigDecimal sumAmount;
+	@Excel(name = "开票金额(万元)")
 	private BigDecimal amount;
+	@Excel(name = "申请时间")
 	private String createTime;
+	@Excel(name = "开票状态",readConverterExp = "1=处理中,2通过")
 	private Integer status;
 	private BigDecimal notAmount;
 	private BigDecimal settlementAmount;

+ 10 - 4
src/main/java/com/goafanti/order/bo/TOrderTaskBo.java

@@ -3,20 +3,26 @@ package com.goafanti.order.bo;
 import java.math.BigDecimal;
 
 import com.goafanti.common.model.TOrderTask;
+import com.goafanti.common.utils.Excel.Excel;
 
 public class TOrderTaskBo extends TOrderTask{
 	private String contacts;
 	private String contactsMobile;
+	@Excel(name = "合同编号",sort = 9)
 	private String cname;
 	private Integer cSort;
+	
+	@Excel(name = "合同编号",sort = 1)
 	private String contractNo;
-
+	@Excel(name = "订单负责人",sort = 4)
 	private String salesmanName;
-
+	@Excel(name = "项目负责人",sort = 7)
+	private String consultantName;
+	@Excel(name = "订单部门",sort = 5)
 	private String depName;
-
+	@Excel(name = "客户名称",sort = 3)
 	private String userName;
-	
+	@Excel(name = "订单状态",sort = 6,readConverterExp = "0=待签单,1=签单待审,2=签单审核通过,3=签单审核拒绝,4=已结项,5=已驳回,6=已退单")
 	private Integer orderStatus;
 	
 	private Integer type;

+ 10 - 8
src/main/java/com/goafanti/order/controller/AdminNewOrderApiController.java

@@ -5,12 +5,14 @@ package com.goafanti.order.controller;
 import java.io.IOException;
 import java.text.ParseException;
 import java.text.SimpleDateFormat;
+import java.util.List;
 
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestMethod;
 import org.springframework.web.bind.annotation.RestController;
@@ -21,7 +23,10 @@ import com.goafanti.common.controller.CertifyApiController;
 import com.goafanti.common.model.TOrderNewWithBLOBs;
 import com.goafanti.common.model.TOrderRefundWithBLOBs;
 import com.goafanti.common.model.TOrderTask;
+import com.goafanti.common.utils.Excel.NewExcelUtil;
 import com.goafanti.order.bo.InputArrearsDunListBo;
+import com.goafanti.order.bo.OrderListBo;
+import com.goafanti.order.bo.TOrderTaskBo;
 import com.goafanti.order.enums.ApprovalNewState;
 import com.goafanti.order.enums.OrderNewState;
 import com.goafanti.order.service.OrderNewService;
@@ -32,6 +37,8 @@ public class AdminNewOrderApiController extends CertifyApiController {
 	
 	@Autowired
 	private OrderNewService orderNewService;
+	@Value(value = "${upload.path}")
+	private String	uploadPath			= null;
 	/**
 	 * 创建订单
 	 * @param uid
@@ -498,14 +505,9 @@ public class AdminNewOrderApiController extends CertifyApiController {
 	 */
 	@RequestMapping(value = "/exportOrderTaskData", method = RequestMethod.GET)
 	public Result exportOrderTaskData(String orderNo,HttpServletResponse response){
-		 Result res = new Result();
- 		try {
- 			orderNewService.exportOrderTaskData(  orderNo,response);
-		} catch (Exception e) {
-			res.getError().add(buildError("格式不正确"));
-			return res;
-		}
- 		return res;
+		List<TOrderTaskBo> list=orderNewService.selectOrderTask(orderNo);
+		NewExcelUtil<TOrderTaskBo>excel=new NewExcelUtil<>(TOrderTaskBo.class);
+		 return  excel.exportExcel(list,"订单项目列表",uploadPath);
 	}
 	
 	

+ 30 - 32
src/main/java/com/goafanti/order/controller/AdminOrderReceivablesApiController.java

@@ -6,6 +6,7 @@ package com.goafanti.order.controller;
 
 
 import java.util.HashMap;
+import java.util.List;
 import java.util.Map;
 
 import javax.annotation.Resource;
@@ -13,6 +14,7 @@ import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 
 import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.factory.annotation.Value;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestMethod;
 import org.springframework.web.bind.annotation.RequestParam;
@@ -29,10 +31,15 @@ import com.goafanti.common.error.BusinessException;
 import com.goafanti.common.model.Attachment;
 import com.goafanti.common.model.TOrderBillNew;
 import com.goafanti.common.utils.LoggerUtils;
+import com.goafanti.common.utils.Excel.NewExcelUtil;
+import com.goafanti.core.mybatis.page.Pagination;
 import com.goafanti.order.bo.OrderListBo;
 import com.goafanti.order.bo.ReceivablesListBo;
+import com.goafanti.order.bo.TOrderInvoiceBo;
 import com.goafanti.order.bo.TemporaryReceivablesBo;
+import com.goafanti.order.service.FundManageOrderService;
 import com.goafanti.order.service.OrderBillService;
+import com.goafanti.order.service.OrderInvoiceService;
 import com.goafanti.order.service.OrderReceivablesService;
 
 @RestController
@@ -45,6 +52,13 @@ public class AdminOrderReceivablesApiController extends CertifyApiController {
 	private AttachmentService	attachmentService;
 	@Resource
 	private OrderBillService	orderBillService;
+	@Resource
+	private OrderInvoiceService	orderInvoiceService;
+	@Resource
+	private FundManageOrderService	fundManageOrderService;
+	
+	@Value(value = "${upload.path}")
+	private String	uploadPath			= null;
 	/**
 	 * 	新增预计回款信息
 	 * @param t
@@ -198,17 +212,13 @@ public class AdminOrderReceivablesApiController extends CertifyApiController {
      */
     @RequestMapping(value = "/exportReceivables" , method = RequestMethod.GET)
     public Result exportReceivables(HttpServletResponse response,OrderListBo o,Integer pageSize ,Integer pageNo)  {
-    	Result res=new Result();
-			try {
-				orderReceivablesService.exportReceivables( response, o,pageSize,pageNo);
-			} catch (Exception e) {
-				res.getError().add(buildError("格式不正确"));
-				e.printStackTrace();
-				return res;
-			}
-         res.data(1); 
-    	return res;
-    }
+    	@SuppressWarnings("unchecked")
+    	Pagination<OrderListBo> p=(Pagination<OrderListBo>) fundManageOrderService.financeList(o, pageNo, pageSize).get("pagination");
+		@SuppressWarnings("unchecked")
+		List<OrderListBo> list=(List<OrderListBo>)p.getList() ;
+    	NewExcelUtil<OrderListBo>excel=new NewExcelUtil<>(OrderListBo.class);
+		 return  excel.exportExcel(list,"订单回款列表",uploadPath);
+    	}
     
     /**
 	 * 	导出开票
@@ -216,18 +226,12 @@ public class AdminOrderReceivablesApiController extends CertifyApiController {
      * @param response
      * @return
      */
-    @RequestMapping(value = "/exportInvoice" , method = RequestMethod.GET)
+	@RequestMapping(value = "/exportInvoice" , method = RequestMethod.GET)
     public Result exportInvoice(HttpServletResponse response,String orderNo,Integer pageSize ,Integer pageNo)  {
-    	Result res=new Result();
-			try {
-				orderReceivablesService.exportInvoice( response, orderNo,pageSize,pageNo);
-			} catch (Exception e) {
-				res.getError().add(buildError("格式不正确"));
-				e.printStackTrace();
-				return res;
-			}
-         res.data(1); 
-    	return res;
+		@SuppressWarnings("unchecked")
+    	List<TOrderInvoiceBo>list=(List<TOrderInvoiceBo>) orderInvoiceService.salesmanOrderInvoiceList( orderNo, pageNo,pageSize).getList();
+    	NewExcelUtil<TOrderInvoiceBo>excel=new NewExcelUtil<>(TOrderInvoiceBo.class);
+		 return  excel.exportExcel(list,"订单"+orderNo+"开票列表",uploadPath); 
     }
     /**
 	 * 	导出流水
@@ -237,15 +241,9 @@ public class AdminOrderReceivablesApiController extends CertifyApiController {
      */
     @RequestMapping(value = "/exportMyBill" , method = RequestMethod.GET)
     public Result exportMyBill(HttpServletResponse response, TOrderBillNew billNew,Integer pageSize ,Integer pageNo)  {
-    	Result res=new Result();
-			try {
-				orderReceivablesService.exportMyBill( response, billNew,pageSize,pageNo);
-			} catch (Exception e) {
-				res.getError().add(buildError("格式不正确"));
-				e.printStackTrace();
-				return res;
-			}
-         res.data(1); 
-    	return res;
+    	@SuppressWarnings("unchecked")
+		List<TOrderBillNew>list=(List<TOrderBillNew>) orderBillService.myBillList(billNew,pageNo, pageSize).getList();
+    	NewExcelUtil<TOrderBillNew>excel=new NewExcelUtil<>(TOrderBillNew.class);
+		 return  excel.exportExcel(list,"订单流水列表",uploadPath); 
     }
 }

+ 0 - 1
src/main/java/com/goafanti/order/service/OrderNewService.java

@@ -197,7 +197,6 @@ public interface OrderNewService {
 	List<TOrderLogBo> selectOrderLog(String orderNo);
 
 	void pushGeneralSendNoticeAndEmail(List<String> alist, Integer type,String OrderNo,String adminId,Integer approval);
-	void exportOrderTaskData(String orderNo, HttpServletResponse response)throws IOException,BusinessException ;
 	
 	int pushOutsourceProjectAudit(TOrderOutsource o);
 	Pagination<OutArrearsDunListBo> arrearsDunList(InputArrearsDunListBo in);

+ 0 - 3
src/main/java/com/goafanti/order/service/OrderReceivablesService.java

@@ -34,11 +34,8 @@ public interface OrderReceivablesService {
 	Map<String, Object> getCountlistReceivables(ReceivablesListBo rl, Integer status, String adminName, String adminDepId,
 			String orderDepId);
 
-	void exportReceivables(HttpServletResponse response,OrderListBo o, Integer pageSize, Integer pageNo)throws Exception;
 
-	void exportInvoice(HttpServletResponse response, String orderNo, Integer pageSize, Integer pageNo)throws Exception;
 
-	void exportMyBill(HttpServletResponse response, TOrderBillNew billNew, Integer pageSize, Integer pageNo)throws Exception;
 
 
 }

+ 0 - 60
src/main/java/com/goafanti/order/service/impl/OrderNewServiceImpl.java

@@ -1229,67 +1229,7 @@ public class OrderNewServiceImpl extends BaseMybatisDao<TOrderNewMapper> impleme
 
 
 
-	@Override
-	public void exportOrderTaskData(String orderNo, HttpServletResponse response) throws IOException,BusinessException {
-		OutputStream out = response.getOutputStream();
-		try {
-			List<TOrderTaskBo> list=selectOrderTask(orderNo);
-    		String[] comment = {"合同编号","订单编号","客户名称","订单负责人","订单部门","订单状态","项目负责人","是否主项目","项目别类","项目名称","项目数量","服务市价","证书編号","项目状态","项目说明","外包(内部)公司","外包(内部)价格"};
-    		String fileName ="项目信息记录表" + new SimpleDateFormat("yyyy-MM-dd HH:mm").format(new Date()) + ".xls";
-    		//type 0 变更
-    		XSSFWorkbook wb =ExportExcelUtil.exportTemplateInfoS(comment,"项目信息");
-    		//根据列表编写文档
-    		XSSFSheet sheet =wb.getSheetAt(0);
-    		for (TOrderTaskBo ob : list) {
-    			//新增一行
-    			XSSFRow r = sheet.createRow(sheet.getLastRowNum()+1);
-    			for (int i = 0; i < comment.length; i++) {
-    				//当前列的只
-    				String o = "";
-    				switch (comment[i]) {
-//    "合同编号","订单编号","客户名称","订单负责人","订单部门","订单状态","项目负责人","是否主项目","项目别类","项目名称","项目数量",
-//    				"服务市价","证书編号","项目状态","项目说明"
-    				case "合同编号": o = ob.getContractNo(); break;
-    				case "订单编号": o = ob.getOrderNo().toString(); break;
-    				case "客户名称": o = ob.getUserName(); break;
-    				case "订单负责人": o = ob.getSalesmanName(); break;
-    				case "订单部门": o = ob.getDepName(); break;
-    				case "订单状态": o = OrderNewState.getValueByCode(ob.getOrderStatus());break;
-    				case "项目负责人": o = ob.getSalesmanName(); break;
-    				case "是否主项目": o = ob.getMain()==0?"否":"是"; break;
-    				case "项目别类": o = ob.getCname(); break;
-    				case "项目名称": o = ob.getCommodityName(); break;
-    				case "项目数量": o = ob.getCommodityQuantity().toString(); break;
-    				case "服务市价": o = ob.getCommodityPrice()!=null?ob.getCommodityPrice().toString():""; break;
-    				case "证书編号": o = ob.getCertificateNumber(); break;
-    				case "项目状态": o = ProjectNewStage.getValueByCode(ob.getProjectStatus()); break;
-    				case "项目说明": o = ob.getTaskComment(); break;
-    				case "外包(内部)公司": o = ob.getOutsourceName(); break;
-    				case "外包(内部)价格": o = ob.getOutsourcePrice()!=null?ob.getOutsourcePrice().toString():""; break;
-    				default: o = ""; break;
-    				}
-    				XSSFCell c = r.createCell(i);
-    				c.setCellValue(o);
-    			}
-    		}
-    		//返回名称及参数
-			 response.addHeader("Content-Disposition", "attachment;filename="  + new String(fileName.getBytes(),"iso-8859-1"));  
-			 response.setContentType("application/octet-stream;charset=utf-8");
-    		 // 返回数据流
-			 wb.write(out); 
-			 out.flush();
-			 out.close();
-		} catch (Exception e) {
-			throw new BusinessException(new Error("表格生成错误。"));
-		}finally {
-			out.flush(); 
-			 out.close(); 
-		}
-		
 	
-		
-	}
-
 
 
 	@Override

+ 0 - 264
src/main/java/com/goafanti/order/service/impl/OrderReceivablesServiceImpl.java

@@ -2,9 +2,7 @@ package com.goafanti.order.service.impl;
 
 import java.io.IOException;
 import java.io.InputStream;
-import java.io.OutputStream;
 import java.math.BigDecimal;
-import java.text.SimpleDateFormat;
 import java.util.ArrayList;
 import java.util.Date;
 import java.util.HashMap;
@@ -13,7 +11,6 @@ import java.util.Map;
 import java.util.UUID;
 
 import javax.annotation.Resource;
-import javax.servlet.http.HttpServletResponse;
 
 import org.apache.commons.lang3.StringUtils;
 import org.apache.poi.hssf.usermodel.HSSFWorkbook;
@@ -21,11 +18,6 @@ import org.apache.poi.ss.usermodel.Cell;
 import org.apache.poi.ss.usermodel.Row;
 import org.apache.poi.ss.usermodel.Sheet;
 import org.apache.poi.ss.usermodel.Workbook;
-import org.apache.poi.ss.util.CellRangeAddress;
-import org.apache.poi.xssf.usermodel.XSSFCell;
-import org.apache.poi.xssf.usermodel.XSSFCellStyle;
-import org.apache.poi.xssf.usermodel.XSSFRow;
-import org.apache.poi.xssf.usermodel.XSSFSheet;
 import org.apache.poi.xssf.usermodel.XSSFWorkbook;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -49,22 +41,15 @@ import com.goafanti.common.model.TOrderNew;
 import com.goafanti.common.model.TOrderTask;
 import com.goafanti.common.model.TemporaryReceivables;
 import com.goafanti.common.utils.DateUtils;
-import com.goafanti.common.utils.ExportExcelUtil;
 import com.goafanti.common.utils.LoggerUtils;
 import com.goafanti.core.mybatis.BaseMybatisDao;
 import com.goafanti.core.mybatis.page.Pagination;
 import com.goafanti.core.shiro.token.TokenManager;
-import com.goafanti.order.bo.OrderListBo;
 import com.goafanti.order.bo.ReceivablesListBo;
-import com.goafanti.order.bo.TOrderInvoiceBo;
 import com.goafanti.order.bo.TOrderNewBo;
 import com.goafanti.order.bo.TemporaryReceivablesBo;
-import com.goafanti.order.enums.ApprovalNewState;
 import com.goafanti.order.enums.BonusSubject;
-import com.goafanti.order.enums.LiquidationNewState;
-import com.goafanti.order.enums.ProcessStatus;
 import com.goafanti.order.enums.ReceivablesStatus;
-import com.goafanti.order.enums.TransactionSubject;
 import com.goafanti.order.service.FundManageOrderService;
 import com.goafanti.order.service.OrderBillService;
 import com.goafanti.order.service.OrderInvoiceService;
@@ -484,253 +469,4 @@ public class OrderReceivablesServiceImpl extends BaseMybatisDao<TemporaryReceiva
         	        }
         	        return cellValue;
 	}
-        
-		@SuppressWarnings("unchecked")
-		@Override
-		public void exportReceivables(HttpServletResponse response,OrderListBo order, Integer pageSize, Integer pageNo) throws Exception {
-			 OutputStream out = response.getOutputStream();
-			 	//	财务专员自己的id
-				order.setFinanceId(TokenManager.getAdminId());
-				//order.setProcessStatus(3);//分配给自己 改为前端 传3未分配  4已分配
-				order.setOrderStatus(2);//营销管理员审核通过
-				if(pageSize==null||pageSize<0)pageSize=9999;
-				if(pageNo==null||pageNo<0)pageNo=1;
-				Pagination<OrderListBo> p=(Pagination<OrderListBo>) fundManageOrderService.financeList(order, pageNo, pageSize).get("pagination");
-				List<OrderListBo> list=(List<OrderListBo>)p.getList() ;
-				if(list.isEmpty())throw new BusinessException(new Error("数据是空的。","数据是空的。"));
-		    	try {
-		    		//设计表头
-		    		String[] comment = {"订单编号", "合同编号","客户名称","订单部门","订单负责人","签单日期","下单日期", 
-							"签单金额(万元)", "已开票金额(万元)", "已收金额(万元)","总成本(万元)","已付成本(万元)",
-							"最近收款(万元)","最近收款时间","结算状态","订单流程","是否特批"};
-		    		String fileName = "收款结算列表" + new SimpleDateFormat("yyyy-MM-dd HH:mm").format(new Date()) + ".xls";
-		    		XSSFWorkbook wb =exportTemplateInfoS(comment,"收款结算",list,0);
-		    		//根据列表编写文档
-					
-		    		//返回名称及参数
-					 response.addHeader("Content-Disposition", "attachment;filename="  + new String(fileName.getBytes(),"iso-8859-1"));  
-					 response.setContentType("application/octet-stream;charset=utf-8");
-		    		 // 返回数据流
-					 wb.write(out); 
-					 out.flush();
-					 out.close();
-				} catch (Exception e) {
-					throw new BusinessException(new Error("表格生成错误。"));
-				}finally {
-					out.flush(); 
-					 out.close(); 
-				}
-		}
-		
-		@SuppressWarnings("unchecked")
-		@Override
-		public void exportInvoice(HttpServletResponse response, String orderNo, Integer pageSize, Integer pageNo)throws Exception {
-
-			 OutputStream out = response.getOutputStream();
-				if(pageSize==null||pageSize<0)pageSize=9999;
-				if(pageNo==null||pageNo<0)pageNo=1;
-				List<TOrderInvoiceBo>list=(List<TOrderInvoiceBo>) orderInvoiceService.salesmanOrderInvoiceList( orderNo, pageNo,pageSize).getList();
-//				if(list.isEmpty())throw new BusinessException(new Error("数据是空的。"));
-		    	try {
-		    		//设计表头
-		    		String[] comment = {"编号","订单编号","开票金额(万元)","申请时间","开票状态"};
-		    		String fileName = orderNo+"开票记录列表" + new SimpleDateFormat("yyyy-MM-dd HH:mm").format(new Date()) + ".xls";
-		    		//type 0 收款 1开票 2流水
-		    		XSSFWorkbook wb =exportTemplateInfoS(comment,"开票记录",list,1);
-		    		//根据列表编写文档
-					
-		    		//返回名称及参数
-					 response.addHeader("Content-Disposition", "attachment;filename="  + new String(fileName.getBytes(),"iso-8859-1"));  
-					 response.setContentType("application/octet-stream;charset=utf-8");
-		    		 // 返回数据流
-					 wb.write(out); 
-					 out.flush();
-					 out.close();
-				} catch (Exception e) {
-					throw new BusinessException(new Error("表格生成错误。"));
-				}finally {
-					out.flush(); 
-					 out.close(); 
-				}
-		
-		}
-		
-		@SuppressWarnings("unchecked")
-		@Override
-		public void exportMyBill(HttpServletResponse response, TOrderBillNew billNew, Integer pageSize, Integer pageNo)throws Exception {
-
-			 OutputStream out = response.getOutputStream();
-				if(pageSize==null||pageSize<0)pageSize=9999;
-				if(pageNo==null||pageNo<0)pageNo=1;
-				
-				List<TOrderBillNew>list=(List<TOrderBillNew>) orderBillService.myBillList(billNew,pageNo, pageSize).getList();
-		    	try {
-		    		//设计表头
-		    		String[] comment = {"订单编号","合同编号","收款时间","财务流水时间","财务流水号","金额(万元)","收款方","付款方","流水科目","平台流水号","收款类型","备注"};
-		    		String fileName = (billNew.getOrderNo()==null?"":billNew.getOrderNo())+"流水记录列表" + new SimpleDateFormat("yyyy-MM-dd HH:mm").format(new Date()) + ".xls";
-		    		//type 0 收款 1开票 2流水
-		    		XSSFWorkbook wb =exportTemplateInfoS(comment,"流水记录",list,2);
-		    		//根据列表编写文档
-		    		//返回名称及参数
-					 response.addHeader("Content-Disposition", "attachment;filename="  + new String(fileName.getBytes(),"iso-8859-1"));  
-					 response.setContentType("application/octet-stream;charset=utf-8");
-		    		 // 返回数据流
-					 wb.write(out); 
-				} catch (Exception e) {
-					throw new BusinessException(new Error("表格生成错误。"));
-				}finally {
-					out.flush(); 
-					 out.close(); 
-				}
-		
-		}
-		/**
-		 * 
-		 * @param comment
-		 * @param fileName
-		 * @param list
-		 * @param type  0收款  1开票 2流水
-		 * @return
-		 */
-		public static XSSFWorkbook exportTemplateInfoS(String[] comment,String fileName,List<?> list,Integer type){
-			 
-			//map 数据 ,comment表头 (列名称)
-			//1,创建一个workbook,对应的是一个excel文件
-			XSSFWorkbook wb = new XSSFWorkbook();
-			//遍历map
-			XSSFSheet sheet = wb.createSheet(fileName);
-			//3。创建一个row
-			XSSFRow row = sheet.createRow(0);
-			//4.创建一个cell
-			XSSFCell cell = row.createCell(0);
-			cell.setCellValue(fileName+"列表");
-			XSSFCellStyle style1 = ExportExcelUtil.setCellStyle1(wb);//标题
-			XSSFCellStyle style2 = ExportExcelUtil.setCellStyle2(wb);//正文
-			cell.setCellStyle(style1);
-			//合并列
-			sheet.addMergedRegion(new CellRangeAddress(0, 0, 0, comment.length-1));//合并单元格
-			//设置其他单位格式
-			//创建表头
-			XSSFRow row2 = sheet.createRow(1);
-			for(int i = 0; i < comment.length; i++){
-				sheet.setColumnWidth(i, 3000);//设置列宽
-				XSSFCell c = row2.createCell(i);
-				c.setCellValue(comment[i]);
-				c.setCellStyle(style2);
-			}
-			switch (type) {
-			case 0:
-				addSettlementReceivablesList(comment, list, sheet);
-				break;
-			case 1:
-				addSettlementInvoiceList(comment, list, sheet);
-				break;
-			case 2:
-				addSettlementMyBillList(comment, list, sheet);
-				break;
-			}
-			
-			return wb;
-		}
-		
-		@SuppressWarnings("unchecked")
-		private static void addSettlementMyBillList(String[] comment, List<?> list, XSSFSheet sheet) {
-			for (TOrderBillNew ob : (List<TOrderBillNew>)list) {
-				//新增一行
-				XSSFRow r = sheet.createRow(sheet.getLastRowNum()+1);
-				for (int i = 0; i < comment.length; i++) {
-					//当前列的只
-					String o = "";
-					switch (comment[i]) {
-//					String[] comment = {"订单编号","合同编号","收款时间","财务流水时间","财务流水号","金额(万元)","收款方","付款方","流水科目","平台流水号","收款类型","备注"};
-					case "订单编号": o = ob.getOrderNo(); break;
-					case "合同编号": o = ob.getContractNo(); break;
-					case "收款时间": o = ob.getCreateTimes(); break;
-					case "财务流水时间": o = ob.getFinancialPayTimes(); break;
-					case "财务流水号": o = ob.getFinancialPayNo(); break;
-					case "金额(万元)": o = ob.getTransactionAmount().toString(); break;
-					case "收款方": o = ob.getPayeeName(); break;
-					case "付款方": o = ob.getPayerName(); break;
-					case "流水科目": o = TransactionSubject.getValueByCode(ob.getTransactionSubject()); break;
-					case "平台流水号": o = ob.getBillNo(); break;
-					case "收款类型": 
-						if(ob.getType()==0) {
-							o = "手工收款"; break;
-						}else if(ob.getType()==1) {
-							o = "批量收款"; break;
-						}
-					case "备注": o = ob.getRemarks(); break;
-					default: o = ""; break;
-					}
-					XSSFCell c = r.createCell(i);
-					c.setCellValue(o);
-				}
-			}
-		}
-		@SuppressWarnings("unchecked")
-		private static void addSettlementInvoiceList(String[] comment, List<?> list, XSSFSheet sheet) {
-			for (TOrderInvoiceBo ob : (List<TOrderInvoiceBo>)list) {
-				//新增一行
-				XSSFRow r = sheet.createRow(sheet.getLastRowNum()+1);
-				for (int i = 0; i < comment.length; i++) {
-					//当前列的只
-					String o = "";
-					switch (comment[i]) {
-//					String[] comment = {"编号","订单编号","开票金额(万元)","申请时间","开票状态"};
-					case "编号": o = ob.getId().toString(); break;
-					case "订单编号": o = ob.getOrderno(); break;
-					case "开票金额(万元)": o = ob.getAmount().toString(); break;
-					case "申请时间": o = ob.getCreateTime(); break;
-					case "开票状态":
-//						状态 0未提交 1处理中 2通过 3拒绝 4 撤销
-						switch(ob.getStatus()) {
-						case 1 :o = "处理中"; break;
-						case 2 :o = "通过"; break;
-						}
-						break;
-					default: o = ""; break;
-					}
-					XSSFCell c = r.createCell(i);
-					c.setCellValue(o);
-				}
-			}
-		}
-		@SuppressWarnings("unchecked")
-		private static void addSettlementReceivablesList(String[] comment, List<?> list, XSSFSheet sheet) {
-			for (OrderListBo ob : (List<OrderListBo>)list) {
-				//新增一行
-				XSSFRow r = sheet.createRow(sheet.getLastRowNum()+1);
-				for (int i = 0; i < comment.length; i++) {
-					//当前列的只
-					String o = "";
-					switch (comment[i]) {
-//					"订单编号", "合同编号","客户名称","订单部门","订单负责人","签单日期","下单日期", 
-//					"签单金额(万元)", "已开票金额(万元)", "已收金额(万元)","最近收款(万元)","结算状态","订单流程","是否特批"}
-					case "订单编号": o = ob.getOrderNo().toString(); break;
-					case "合同编号": o = ob.getContractNo(); break;
-					case "客户名称": o = ob.getBuyerName(); break;
-					case "订单部门": o = ob.getDepartmentName(); break;
-					case "订单负责人": o = ob.getSellerName(); break;
-					case "签单日期": o = ob.getSignTime(); break;
-					case "下单日期": o = ob.getCreateTime(); break;
-					case "签单金额(万元)":o=ob.getSignTotalAmount().toString();break;
-					case "已开票金额(万元)":o=ob.getInvoiceAmount().toString();break;
-					case "已收金额(万元)":o=ob.getActuallyTotalAmount().toString();break;
-					case "总成本(万元)":o=ob.getCostAmount().toString();break;
-					case "已付成本(万元)":o=ob.getPaymentAmount().toString();break;
-					case "最近收款(万元)":o=ob.getFinalReceivables().toString();break;
-					case "最近收款时间":o=ob.getFinalReceivablesTime();break;
-					case "结算状态":o=LiquidationNewState.getValueByCode(ob.getLiquidationStatus());break;
-					case "订单流程":o=ProcessStatus.getValueByCode(ob.getProcessStatus());break;
-					case "是否特批":o=ApprovalNewState.getValueByCode(ob.getApproval());break;
-					default: o = ""; break;
-					}
-					XSSFCell c = r.createCell(i);
-					c.setCellValue(o);
-				}
-			}
-		}
-
-		
-
 }