You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
			
				
					
					
						
							135 lines
						
					
					
						
							5.1 KiB
						
					
					
				
			
		
		
	
	
							135 lines
						
					
					
						
							5.1 KiB
						
					
					
				package com.ynxbd.common.helper.common;
 | 
						|
 | 
						|
 | 
						|
import com.ynxbd.common.bean.pay.Order;
 | 
						|
import com.ynxbd.common.dao.RecipeDao;
 | 
						|
import com.ynxbd.common.dao.RegisterDao;
 | 
						|
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
 | 
						|
import org.apache.poi.ss.usermodel.Row;
 | 
						|
import org.apache.poi.ss.usermodel.Sheet;
 | 
						|
import org.apache.poi.ss.usermodel.Workbook;
 | 
						|
 | 
						|
import java.io.FileInputStream;
 | 
						|
import java.math.BigDecimal;
 | 
						|
import java.util.ArrayList;
 | 
						|
import java.util.List;
 | 
						|
 | 
						|
public class AccountsExcel {
 | 
						|
 | 
						|
    /**
 | 
						|
     * 根据文件路径读取Excel
 | 
						|
     */
 | 
						|
    private static void readFile() {
 | 
						|
        String path = "C:\\Users\\Administrator\\Desktop\\11-05.xls";
 | 
						|
        Workbook work = null;
 | 
						|
        List<Order> orderList = new ArrayList<>();
 | 
						|
        Order order;
 | 
						|
        try {
 | 
						|
            work = new HSSFWorkbook(new FileInputStream(path));// 得到这个excel表格对象
 | 
						|
            Sheet sheet = work.getSheetAt(0);//得到第一个sheet
 | 
						|
            for (int i = 3; i < sheet.getLastRowNum(); i++) {
 | 
						|
                Row row = sheet.getRow(i);
 | 
						|
                short lastCellNum = row.getLastCellNum();
 | 
						|
                if (lastCellNum == 14) {
 | 
						|
                    String msgInterface = row.getCell(6).getStringCellValue();
 | 
						|
                    if ("缴费".equals(msgInterface.trim())) {
 | 
						|
                        order = new Order();
 | 
						|
                        order.setOpenid(msgInterface);
 | 
						|
                        order.setTradeNo(row.getCell(10).getStringCellValue());
 | 
						|
                        order.setPatientId(row.getCell(0).getStringCellValue());
 | 
						|
                        order.setPayMoney(new BigDecimal(row.getCell(9).getStringCellValue()));
 | 
						|
                        orderList.add(order);
 | 
						|
                    }
 | 
						|
                }
 | 
						|
            }
 | 
						|
        } catch (Exception e) {
 | 
						|
            e.printStackTrace();
 | 
						|
        }
 | 
						|
 | 
						|
        List<Order> recipeList = new RecipeDao().selectList("2021-11-05", "2021-11-05");
 | 
						|
        List<Order> resultList = new ArrayList<>();
 | 
						|
        boolean isHas = false;
 | 
						|
        for (Order hisOrder : orderList) {
 | 
						|
            isHas = false;
 | 
						|
            for (Order recipeItem : recipeList) {
 | 
						|
                if (hisOrder.getTradeNo().equals(recipeItem.getTradeNo())) {
 | 
						|
                    if (hisOrder.getPayMoney().compareTo(recipeItem.getPayMoney()) != 0) {
 | 
						|
                        System.out.println(hisOrder);
 | 
						|
                        System.out.println(recipeItem);
 | 
						|
                        System.out.println("=================================");
 | 
						|
                    }
 | 
						|
                    isHas = true;
 | 
						|
                    break;
 | 
						|
                }
 | 
						|
            }
 | 
						|
            if (!isHas) {
 | 
						|
                resultList.add(hisOrder);
 | 
						|
            }
 | 
						|
        }
 | 
						|
        System.out.println(resultList);
 | 
						|
    }
 | 
						|
 | 
						|
    public static void main(String[] args) {
 | 
						|
        reg();
 | 
						|
        readFile();
 | 
						|
    }
 | 
						|
 | 
						|
 | 
						|
    /**
 | 
						|
     * 根据文件路径读取Excel
 | 
						|
     */
 | 
						|
    private static void reg() {
 | 
						|
        String path = "C:\\Users\\Administrator\\Desktop\\11-05.xls";
 | 
						|
        Workbook work = null;
 | 
						|
        List<Order> orderList = new ArrayList<>();
 | 
						|
        Order order;
 | 
						|
        try {
 | 
						|
            work = new HSSFWorkbook(new FileInputStream(path));// 得到这个excel表格对象
 | 
						|
            Sheet sheet = work.getSheetAt(0);//得到第一个sheet
 | 
						|
            for (int i = 3; i < sheet.getLastRowNum(); i++) {
 | 
						|
                Row row = sheet.getRow(i);
 | 
						|
                short lastCellNum = row.getLastCellNum();
 | 
						|
                if (lastCellNum == 14) {
 | 
						|
                    String msgInterface = row.getCell(6).getStringCellValue();
 | 
						|
                    if (msgInterface.contains("挂号")) {
 | 
						|
                        order = new Order();
 | 
						|
                        order.setOpenid(msgInterface);
 | 
						|
                        order.setTradeNo(row.getCell(10).getStringCellValue());
 | 
						|
                        order.setPatientId(row.getCell(0).getStringCellValue());
 | 
						|
                        order.setPayMoney(new BigDecimal(row.getCell(9).getStringCellValue()));
 | 
						|
                        orderList.add(order);
 | 
						|
                    }
 | 
						|
                }
 | 
						|
            }
 | 
						|
        } catch (Exception e) {
 | 
						|
            e.printStackTrace();
 | 
						|
        }
 | 
						|
 | 
						|
        System.out.println(orderList.size());
 | 
						|
        List<Order> regList = new RegisterDao().selectList("2021-11-05", "2021-11-05");
 | 
						|
        List<Order> resultList = new ArrayList<>();
 | 
						|
        boolean isHas = false;
 | 
						|
        for (Order hisOrder : orderList) {
 | 
						|
            isHas = false;
 | 
						|
            for (Order item : regList) {
 | 
						|
                if (hisOrder.getTradeNo().equals(item.getTradeNo())) {
 | 
						|
                    if (hisOrder.getPayMoney().compareTo(item.getPayMoney()) != 0) {
 | 
						|
                        System.out.println(hisOrder);
 | 
						|
                        System.out.println(item);
 | 
						|
                        System.out.println("=================================");
 | 
						|
                    }
 | 
						|
 | 
						|
                    isHas = true;
 | 
						|
                    break;
 | 
						|
                }
 | 
						|
            }
 | 
						|
            if (!isHas) {
 | 
						|
                resultList.add(hisOrder);
 | 
						|
            }
 | 
						|
        }
 | 
						|
        for (Order a : resultList) {
 | 
						|
            System.out.println(a);
 | 
						|
        }
 | 
						|
    }
 | 
						|
 | 
						|
}
 | 
						|
 |