|
@@ -13,6 +13,7 @@ import com.caimei.modules.user.dao.CmUserDao;
|
|
|
import com.caimei.modules.user.entity.CmUser;
|
|
|
import com.caimei.utils.AppKeys;
|
|
|
import com.caimei.utils.AppUtils;
|
|
|
+import com.caimei.utils.MathUtil;
|
|
|
import com.caimei.utils.SysConfig;
|
|
|
import com.thinkgem.jeesite.common.persistence.Page;
|
|
|
import com.thinkgem.jeesite.common.service.CrudService;
|
|
@@ -27,6 +28,7 @@ import org.springframework.transaction.annotation.Transactional;
|
|
|
|
|
|
import javax.annotation.Resource;
|
|
|
import java.io.OutputStream;
|
|
|
+import java.math.BigDecimal;
|
|
|
import java.util.ArrayList;
|
|
|
import java.util.List;
|
|
|
import java.util.stream.Collectors;
|
|
@@ -320,6 +322,8 @@ public class HeHeNewOrderService extends CrudService<HeHeNewOrderDao, NewOrder>
|
|
|
productTopRowCell.setCellValue(columnText);
|
|
|
productTopRowCell.setCellStyle(topCellStyle);
|
|
|
}
|
|
|
+ // 合计
|
|
|
+ BigDecimal totalAmount = BigDecimal.ZERO;
|
|
|
int productRowNum = 1;
|
|
|
for (NewOrder order : orderList) {
|
|
|
List<NewOrderProduct> orderProducts = order.getNewOrderProducts();
|
|
@@ -328,31 +332,39 @@ public class HeHeNewOrderService extends CrudService<HeHeNewOrderDao, NewOrder>
|
|
|
// 订单下商品数量+1
|
|
|
NewOrderProduct product = orderProducts.get(i);
|
|
|
// 组装商品数据
|
|
|
- List<String> productData = new ArrayList<>();
|
|
|
- productData.add(order.getOrderID().toString());
|
|
|
+ List<Object> productData = new ArrayList<>();
|
|
|
+ productData.add(order.getOrderID());
|
|
|
productData.add(order.getOrderTime());
|
|
|
productData.add(product.getOrderNo());
|
|
|
productData.add(product.getName());
|
|
|
productData.add(product.getProductUnit());
|
|
|
- productData.add(product.getDiscountPrice().toString());
|
|
|
+ productData.add(product.getDiscountPrice());
|
|
|
productData.add(order.getReceiver());
|
|
|
- productData.add(product.getNum().toString());
|
|
|
- productData.add(product.getTotalAmount().toString());
|
|
|
+ productData.add(product.getNum());
|
|
|
+ productData.add(product.getTotalFee());
|
|
|
+ totalAmount = MathUtil.add(totalAmount, product.getTotalFee());
|
|
|
// 创建商品行
|
|
|
HSSFRow productRow = productSheet.createRow(productRowNum);
|
|
|
+ // 设置行高度
|
|
|
+ productRow.setHeight((short) 1000);
|
|
|
if (i == 0) {
|
|
|
// 订单的第一个商品行存入公用单元格数据
|
|
|
for (int j = 0; j < 3; j++) {
|
|
|
HSSFCell productCell = productRow.createCell(j);
|
|
|
productCell.setCellType(CellType.valueOf("STRING"));
|
|
|
- productCell.setCellValue(productData.get(j));
|
|
|
+ productCell.setCellValue(productData.get(j).toString());
|
|
|
productCell.setCellStyle(customCellStyle);
|
|
|
}
|
|
|
}
|
|
|
for (int j = 3; j < 9; j++) {
|
|
|
HSSFCell productCell = productRow.createCell(j);
|
|
|
- productCell.setCellType(CellType.valueOf("STRING"));
|
|
|
- productCell.setCellValue(productData.get(j));
|
|
|
+ if (j == 5 || j == 8) {
|
|
|
+ productCell.setCellValue((Double) productData.get(j));
|
|
|
+ } else if (j == 7) {
|
|
|
+ productCell.setCellValue((Integer)productData.get(j));
|
|
|
+ } else {
|
|
|
+ productCell.setCellValue(productData.get(j).toString());
|
|
|
+ }
|
|
|
productCell.setCellStyle(customCellStyle);
|
|
|
}
|
|
|
productRowNum++;
|
|
@@ -364,6 +376,18 @@ public class HeHeNewOrderService extends CrudService<HeHeNewOrderDao, NewOrder>
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
+ // 创建合计行
|
|
|
+ HSSFRow sumRow = productSheet.createRow(productRowNum);
|
|
|
+ // 设置行高度
|
|
|
+ sumRow.setHeight((short) 1000);
|
|
|
+ HSSFCell cell1 = sumRow.createCell(1);
|
|
|
+ HSSFCell cell2 = sumRow.createCell(8);
|
|
|
+ cell1.setCellType(CellType.valueOf("STRING"));
|
|
|
+ cell1.setCellValue("合计");
|
|
|
+ cell1.setCellStyle(customCellStyle);
|
|
|
+ cell2.setCellType(CellType.valueOf("STRING"));
|
|
|
+ cell2.setCellValue(totalAmount.toString());
|
|
|
+ cell2.setCellStyle(customCellStyle);
|
|
|
// 让列宽随着导出的列长自动适应
|
|
|
for (int colNum = 0; colNum< 9; colNum++) {
|
|
|
int productColumnWidth = productSheet.getColumnWidth(colNum) / 256;
|
|
@@ -449,11 +473,11 @@ public class HeHeNewOrderService extends CrudService<HeHeNewOrderDao, NewOrder>
|
|
|
// 设置字体
|
|
|
HSSFFont font = workbook.createFont();
|
|
|
// 设置字体大小
|
|
|
- // font.setFontHeightInPoints((short)10);
|
|
|
+ font.setFontHeightInPoints((short)11);
|
|
|
// 字体加粗
|
|
|
// font.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD);
|
|
|
// 设置字体名字
|
|
|
- font.setFontName("Courier New");
|
|
|
+ font.setFontName("宋体");
|
|
|
// 设置样式;
|
|
|
HSSFCellStyle style = workbook.createCellStyle();
|
|
|
// 设置底边框;
|