wuheng 2 lat temu
rodzic
commit
35118798e4
26 zmienionych plików z 356 dodań i 55 usunięć
  1. 1 1
      travel/admin/src/main/java/com/lc/admin/config/QuartzConfig.java
  2. 1 1
      travel/admin/src/main/java/com/lc/admin/config/XxlConfig.java
  3. 40 0
      travel/admin/src/main/java/com/lc/admin/controller/OrdersettingController.java
  4. 4 0
      travel/admin/src/main/java/com/lc/admin/controller/StaticController.java
  5. BIN
      travel/admin/src/main/resources/static/temp/ordersetting_template.xlsx
  6. 1 1
      travel/admin/src/main/resources/templates/ordersetting.html
  7. 0 1
      travel/common/${project.build.directory}/classes/application.properties
  8. BIN
      travel/common/${project.build.directory}/classes/com/lc/common/Application.class
  9. BIN
      travel/common/${project.build.directory}/classes/com/lc/common/pojo/QueryString.class
  10. BIN
      travel/common/${project.build.directory}/classes/com/lc/common/pojo/TravelParams.class
  11. BIN
      travel/common/${project.build.directory}/classes/com/lc/common/utils/Result.class
  12. BIN
      travel/common/${project.build.directory}/test-classes/com/lc/common/CommonApplicationTests.class
  13. 119 0
      travel/common/src/main/java/com/lc/common/utils/DataUtil.java
  14. 63 0
      travel/common/src/main/java/com/lc/common/utils/DateTimeUtils.java
  15. 0 1
      travel/dao/${project.build.directory}/classes/application.properties
  16. BIN
      travel/dao/${project.build.directory}/classes/com/lc/Application.class
  17. BIN
      travel/dao/${project.build.directory}/classes/com/lc/dao/TravelGroupDao.class
  18. 0 22
      travel/dao/${project.build.directory}/classes/com/lc/dao/TravelGroupDao.xml
  19. BIN
      travel/dao/${project.build.directory}/classes/com/lc/dao/TravelItemDao.class
  20. 0 28
      travel/dao/${project.build.directory}/classes/com/lc/dao/TravelItemDao.xml
  21. BIN
      travel/dao/${project.build.directory}/classes/com/lc/pojo/TravelGroupPojo.class
  22. BIN
      travel/dao/${project.build.directory}/classes/com/lc/pojo/TravelItemPojo.class
  23. BIN
      travel/dao/${project.build.directory}/test-classes/com/lc/dao/DaoApplicationTests.class
  24. 11 0
      travel/pom.xml
  25. 14 0
      travel/service/src/main/java/com/lc/service/OrderSettingService.java
  26. 102 0
      travel/service/src/main/java/com/lc/service/impl/OrderSettingServiceImpl.java

+ 1 - 1
travel/admin/src/main/java/com/lc/admin/config/QuartzConfig.java

@@ -6,7 +6,7 @@ import org.springframework.context.annotation.Bean;
 import org.springframework.context.annotation.Configuration;
 import org.springframework.scheduling.quartz.CronTriggerFactoryBean;
 
-@Configuration
+//@Configuration
 public class QuartzConfig {
 
     @Bean

+ 1 - 1
travel/admin/src/main/java/com/lc/admin/config/XxlConfig.java

@@ -5,7 +5,7 @@ import org.springframework.beans.factory.annotation.Value;
 import org.springframework.context.annotation.Bean;
 import org.springframework.context.annotation.Configuration;
 
-@Configuration
+//@Configuration
 public class XxlConfig {
 
     @Value("${xxl.job.admin.addresses}")

+ 40 - 0
travel/admin/src/main/java/com/lc/admin/controller/OrdersettingController.java

@@ -0,0 +1,40 @@
+package com.lc.admin.controller;
+
+import com.cl.mbg.model.TOrdersetting;
+import com.lc.common.utils.Result;
+import com.lc.service.OrderSettingService;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.multipart.MultipartFile;
+
+import javax.annotation.Resource;
+import java.io.InputStream;
+import java.text.ParseException;
+import java.text.SimpleDateFormat;
+import java.util.List;
+
+@RestController
+@RequestMapping("/ordersetting")
+public class OrdersettingController {
+
+    @Resource
+    OrderSettingService orderSettingService;
+
+    @RequestMapping("/upload.do")
+    public Result importExcel(MultipartFile excelFile) throws Exception {
+        InputStream inputStream = excelFile.getInputStream();
+        Boolean aBoolean = orderSettingService.importExcelOrderSetting(inputStream);
+        inputStream.close();
+        return Result.ok();
+
+    }
+
+    @RequestMapping("/getOrderSettingByMonth.do")
+    public Result getOrderSettingByMonth(@RequestParam String date ) throws ParseException {
+        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM");
+        List<TOrdersetting> orderSettingByMonth = orderSettingService.getOrderSettingByMonth(simpleDateFormat.parse(date));
+        return Result.data(orderSettingByMonth);
+    }
+
+}

+ 4 - 0
travel/admin/src/main/java/com/lc/admin/controller/StaticController.java

@@ -26,4 +26,8 @@ public class StaticController {
         return "setmeal";
     }
 
+    @RequestMapping("/ordersetting.html")
+    public String ordersetting(){
+        return "ordersetting";
+    }
 }

BIN
travel/admin/src/main/resources/static/temp/ordersetting_template.xlsx


+ 1 - 1
travel/admin/src/main/resources/templates/ordersetting.html

@@ -214,7 +214,7 @@
 								//获取当前月份的数据
 								currentData(){
 									this.leftobj = [];
-									axios.get('/ordersetting/getOrderSettingByMonth.do?date='+this.currentYear+'-'+this.currentMonth).then( res =>{
+									axios.get('/ordersetting/getOrderSettingByMonth.do?date='+this.currentYear+'-0'+this.currentMonth).then( res =>{
 										if(res.data.flag){
 											//赋值
 											this.leftobj = res.data.data

+ 0 - 1
travel/common/${project.build.directory}/classes/application.properties

@@ -1 +0,0 @@
-

BIN
travel/common/${project.build.directory}/classes/com/lc/common/Application.class


BIN
travel/common/${project.build.directory}/classes/com/lc/common/pojo/QueryString.class


BIN
travel/common/${project.build.directory}/classes/com/lc/common/pojo/TravelParams.class


BIN
travel/common/${project.build.directory}/classes/com/lc/common/utils/Result.class


BIN
travel/common/${project.build.directory}/test-classes/com/lc/common/CommonApplicationTests.class


+ 119 - 0
travel/common/src/main/java/com/lc/common/utils/DataUtil.java

@@ -0,0 +1,119 @@
+package com.lc.common.utils;
+
+import java.text.DateFormat;
+import java.text.ParseException;
+import java.text.SimpleDateFormat;
+import java.util.Calendar;
+import java.util.Date;
+
+public class DataUtil {
+    public static String getFormatDate(){
+        Date date = new Date();
+        SimpleDateFormat formatter = new SimpleDateFormat("yyyyMMdd");
+        return formatter.format(date);
+    }
+
+    public static Date getDateYyyyMmDd(Date date){
+        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
+        String format = sdf.format(date);
+        Date parse = null;
+        try {
+            parse = sdf.parse(format);
+        } catch (ParseException e) {
+            e.printStackTrace();
+        }
+        return parse;
+    }
+
+    public static String getStringYyyyMmDd(Date date){
+        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
+        String format = sdf.format(date);
+        return format;
+    }
+
+    public static String getStringYyyyMmDd(String date){
+        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
+        String format = sdf.format(date);
+        return format;
+    }
+
+
+    public static Date StringParseDate(String date){
+        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
+        Date parse = null;
+        try {
+            parse = simpleDateFormat.parse(date);
+        } catch (ParseException e) {
+            e.printStackTrace();
+        }
+        return parse;
+    }
+
+    public static String StringParseString(String date){
+        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
+        Date parse = null;
+        try {
+            parse = simpleDateFormat.parse(date);
+        } catch (ParseException e) {
+            e.printStackTrace();
+        }
+        return simpleDateFormat.format(parse);
+    }
+
+
+    public static String StringParseString2(String date){
+        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+        Date parse = null;
+        try {
+            parse = simpleDateFormat.parse(date);
+        } catch (ParseException e) {
+            e.printStackTrace();
+        }
+        return simpleDateFormat.format(parse);
+    }
+    /**
+     * @param date1 需要比较的时间 不能为空(null),需要正确的日期格式
+     * @param date2 被比较的时间  为空(null)则为当前时间
+     * @param stype 返回值类型   0为多少天,1为多少个月,2为多少年
+     * @return
+     */
+    public static int compareDate(String date1, String date2,int stype){
+        int n = 0;
+        String[] u = {"天","月","年"};
+        String formatStyle = stype==1?"yyyy-MM":"yyyy-MM-dd";
+        date2 = date2==null ? getCurrentDate(): date2;
+        DateFormat df = new SimpleDateFormat(formatStyle);
+        Calendar c1 = Calendar.getInstance();
+        Calendar c2 = Calendar.getInstance();
+        try {
+            c1.setTime(df.parse(date1));
+            c2.setTime(df.parse(date2));
+        } catch (Exception e3) {}
+        while (!c1.after(c2)) {
+            n++;
+            if(stype==1){
+                c1.add(Calendar.MONTH, 1);
+            }
+            else{
+                c1.add(Calendar.DATE, 1);
+            }
+        }
+        n = n-1;
+        if ( stype==2 ) {
+            n = (int)n/365;
+        }
+        //System.out.println(date1+" -- "+date2+" 相差多少"+u[stype]+":"+n);
+        return n;
+    }
+
+    /**
+     * 得到当前日期
+     * @return
+     */
+    public static String getCurrentDate() {
+        Calendar c = Calendar.getInstance();
+        Date date = c.getTime();
+        SimpleDateFormat simple = new SimpleDateFormat("yyyy-MM-dd");
+        return simple.format(date);
+    }
+}

+ 63 - 0
travel/common/src/main/java/com/lc/common/utils/DateTimeUtils.java

@@ -0,0 +1,63 @@
+package com.lc.common.utils;
+
+import java.text.SimpleDateFormat;
+import java.util.Calendar;
+import java.util.Date;
+
+/**
+ * 功能:通用的静态工具函数(用于日期和时间处理)
+ * <p>Title: 宝易互通支付平台</p>
+ * <p>Description: 通用工具类</p>
+ */
+public class DateTimeUtils {
+
+	public final static String DATE_FORMAT_YYYYMMDD = "yyyyMMdd";
+	public final static String DATE_FORMAT_YYYY_MM_DD = "yyyy-MM-dd";
+	public final static String DATETIME_FORMAT_HHMMSS = "HHmmss";
+	public final static String DATETIME_FORMAT_HHMMSSsss = "HHmmssSSS";
+	public final static String DATETIME_FORMAT_YYYY_MM_DD_HH_MM_SS = "yyyy-MM-dd HH:mm:ss";
+	public final static String DATETIME_FORMAT_YYYY_MM_DD_HH_MM = "yyyy-MM-dd HH:mm";
+	public final static String DATETIME_FORMAT_YYYYMMDDHHMMSS = "yyyyMMddHHmmss";
+	public final static String DATETIME_FORMAT_YYYYMMDDHH = "yyyyMMddHH";
+	public final static String DATETIME_FORMAT_YYYYMMDDHHMMSSSSS = "yyyyMMddHHmmssSSS";
+	public final static String DATETIME_FORMAT_YYYY = "yyyy";
+	public final static String DATETIME_FORMAT_YYYY_MM_DD_CN = "yyyy年MM月dd日";
+	public final static String DATETIME_FORMAT_HH_MM_SS = "HH:mm:ss";
+	public final static String DATE_FORMAT_YYYYPOINTMMPOINTDD = "yyyy.MM.dd";
+	public final static String DATETIME_FORMAT_YYYY_MM_DD_HH_MM_SS_SSS = "yyyy-MM-dd HH:mm:ss,SSS";
+	public final static String DATE_FORMAT_YYMMDD = "yyMMdd";
+	public final static String DATETIME_FORMAT_YYYYTMM_DD_HH_MM_SS = "yyyy-MM-dd'T'HH:mm:ss";
+	/** AOP Date默认时区 **/
+	public static final String DATE_TIMEZONE = "GMT+8";
+
+
+	/**
+	 * 获得当前时间字符串
+	 * @param formatStr 日期格式
+	 * @return string yyyy-MM-dd
+	 */
+	public static String getNowDateStr(String formatStr) {
+		SimpleDateFormat format = new SimpleDateFormat(formatStr);
+		return format.format(getNowDate());
+	}
+
+	/**
+	 * 获得系统当前时间
+	 * @return Date
+	 */
+	public static Date getNowDate(){
+		Calendar c = Calendar.getInstance();
+		return c.getTime();
+	}
+
+	public static Date getDateByString(String dateTimeString,SimpleDateFormat format){
+		try {
+			return format.parse(dateTimeString);
+		} catch (Exception e) {
+			e.printStackTrace();
+		}
+		return null;
+	}
+
+	
+}

+ 0 - 1
travel/dao/${project.build.directory}/classes/application.properties

@@ -1 +0,0 @@
-

BIN
travel/dao/${project.build.directory}/classes/com/lc/Application.class


BIN
travel/dao/${project.build.directory}/classes/com/lc/dao/TravelGroupDao.class


+ 0 - 22
travel/dao/${project.build.directory}/classes/com/lc/dao/TravelGroupDao.xml

@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-
-<mapper namespace="com.lc.dao.TravelGroupDao">
-
-    <resultMap id="BaseResultMap" type="com.lc.pojo.TravelGroupPojo">
-        <id column="id" jdbcType="INTEGER" property="id" />
-        <result column="code" jdbcType="VARCHAR" property="code" />
-        <result column="name" jdbcType="VARCHAR" property="name" />
-        <result column="helpCode" jdbcType="VARCHAR" property="helpCode" />
-        <result column="sex" jdbcType="CHAR" property="sex" />
-        <result column="remark" jdbcType="VARCHAR" property="remark" />
-        <result column="attention" jdbcType="VARCHAR" property="attention" />
-        <collection property="travelItems" ofType="com.lc.pojo.TravelItemPojo"
-                    column="id" select="com.lc.dao.TravelItemDao.getTravelItemByGroupId" />
-    </resultMap>
-
-    <select id="getAllTravelGroup" resultMap="BaseResultMap" >
-        SELECT * FROM `travel`.`t_travelgroup`
-    </select>
-
-</mapper>

BIN
travel/dao/${project.build.directory}/classes/com/lc/dao/TravelItemDao.class


+ 0 - 28
travel/dao/${project.build.directory}/classes/com/lc/dao/TravelItemDao.xml

@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="com.lc.dao.TravelItemDao">
-
-    <resultMap id="BaseResultMap" type="com.lc.pojo.TravelItemPojo">
-        <id column="id" jdbcType="INTEGER" property="id" />
-        <result column="code" jdbcType="VARCHAR" property="code" />
-        <result column="name" jdbcType="VARCHAR" property="name" />
-        <result column="sex" jdbcType="CHAR" property="sex" />
-        <result column="age" jdbcType="VARCHAR" property="age" />
-        <result column="price" jdbcType="REAL" property="price" />
-        <result column="type" jdbcType="CHAR" property="type" />
-        <result column="attention" jdbcType="VARCHAR" property="attention" />
-        <result column="remark" jdbcType="VARCHAR" property="remark" />
-    </resultMap>
-
-    <select id="getTravelItemByGroupId" resultMap="BaseResultMap" >
-        SELECT
-            tl.*
-        FROM
-            t_travelgroup_travelitem AS tt
-                JOIN t_travelitem AS tl ON tl.id = tt.travelitem_id
-        WHERE
-            tt.travelgroup_id = #{id}
-    </select>
-
-
-</mapper>

BIN
travel/dao/${project.build.directory}/classes/com/lc/pojo/TravelGroupPojo.class


BIN
travel/dao/${project.build.directory}/classes/com/lc/pojo/TravelItemPojo.class


BIN
travel/dao/${project.build.directory}/test-classes/com/lc/dao/DaoApplicationTests.class


+ 11 - 0
travel/pom.xml

@@ -54,6 +54,17 @@
             <version>${oss.version}</version>
         </dependency>
 
+        <dependency>
+            <groupId>org.apache.poi</groupId>
+            <artifactId>poi</artifactId>
+            <version>5.2.2</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.poi</groupId>
+            <artifactId>poi-ooxml</artifactId>
+            <version>5.2.2</version>
+        </dependency>
+
         <dependency>
             <groupId>org.springframework.boot</groupId>
             <artifactId>spring-boot-starter-thymeleaf</artifactId>

+ 14 - 0
travel/service/src/main/java/com/lc/service/OrderSettingService.java

@@ -0,0 +1,14 @@
+package com.lc.service;
+
+import com.cl.mbg.model.TOrdersetting;
+
+import java.io.InputStream;
+import java.util.Date;
+import java.util.List;
+
+public interface OrderSettingService {
+
+    Boolean importExcelOrderSetting(InputStream inputStream);
+
+    List<TOrdersetting> getOrderSettingByMonth(Date parse);
+}

+ 102 - 0
travel/service/src/main/java/com/lc/service/impl/OrderSettingServiceImpl.java

@@ -0,0 +1,102 @@
+package com.lc.service.impl;
+
+import com.cl.mbg.mapper.TOrdersettingMapper;
+import com.cl.mbg.model.TOrdersetting;
+import com.cl.mbg.model.TOrdersettingExample;
+import com.lc.service.OrderSettingService;
+import org.apache.poi.ss.usermodel.CellType;
+import org.apache.poi.ss.usermodel.DateUtil;
+import org.apache.poi.xssf.usermodel.XSSFRow;
+import org.apache.poi.xssf.usermodel.XSSFSheet;
+import org.apache.poi.xssf.usermodel.XSSFWorkbook;
+import org.springframework.stereotype.Service;
+
+import javax.annotation.Resource;
+import java.io.IOException;
+import java.io.InputStream;
+import java.util.ArrayList;
+import java.util.Calendar;
+import java.util.Date;
+import java.util.List;
+
+@Service
+public class OrderSettingServiceImpl implements OrderSettingService {
+
+    @Resource
+    TOrdersettingMapper ordersettingMapper;
+
+    @Override
+    public Boolean importExcelOrderSetting(InputStream inputStream) {
+        try {
+            //创建了一个 execel 实体
+            XSSFWorkbook sheets = new XSSFWorkbook(inputStream);
+            //获取第一个页面
+            XSSFSheet sheetAt = sheets.getSheetAt(0);
+            //获取他有多少行
+            int lastRowNum = sheetAt.getLastRowNum();
+            //循环表格row
+            for (int i = 1; i < lastRowNum; i++) {
+                //取每一行
+                XSSFRow row = sheetAt.getRow(i);
+                //取一共多少列
+                short lastCellNum = row.getLastCellNum();
+                //循环表格列数
+                TOrdersetting tOrdersetting = new TOrdersetting();
+                for (int j = 0; j < lastCellNum; j++) {
+                    //创建一个 list 来装每一行数据
+                    CellType cellType = row.getCell(j).getCellType();
+                    switch ( cellType ) {
+                        case  _NONE:
+                            //cellList.add( "" );
+                            break;
+                        case  NUMERIC:
+                            if ( DateUtil.isCellDateFormatted( row.getCell(j) ) ) {
+                                Date javaDate = DateUtil.getJavaDate(row.getCell(j).getNumericCellValue());
+                                //cellList.add( javaDate );
+                                tOrdersetting.setOrderdate( javaDate );
+                            } else {
+                                //cellList.add( (int) row.getCell(j).getNumericCellValue());
+                                if ( j == 1 ) {
+                                    tOrdersetting.setNumber((int) row.getCell(j).getNumericCellValue());
+                                } else {
+                                    tOrdersetting.setReservations((int) row.getCell(j).getNumericCellValue());
+                                }
+                            }
+                            break;
+                        case  STRING:
+                            //cellList.add( row.getCell(j).getStringCellValue() );
+                            break;
+                        case  FORMULA:
+                            //cellList.add( row.getCell(j).getCellFormula() );
+                            break;
+                        case  BLANK:
+                            //cellList.add( row.getCell(j).getStringCellValue() );
+                            break;
+                        case  BOOLEAN:
+                            //cellList.add( row.getCell(j).getBooleanCellValue() );
+                            break;
+                        case  ERROR:
+                            //cellList.add( row.getCell(j).getErrorCellValue() );
+                            break;
+                    }
+                }
+                ordersettingMapper.insert(tOrdersetting);
+            }
+        } catch (IOException e) {
+            e.printStackTrace();
+        }
+        return true;
+    }
+
+    @Override
+    public List<TOrdersetting> getOrderSettingByMonth(Date parse) {
+        TOrdersettingExample tOrdersettingExample = new TOrdersettingExample();
+        TOrdersettingExample.Criteria criteria = tOrdersettingExample.createCriteria();
+        criteria.andOrderdateGreaterThanOrEqualTo( parse );
+
+        //Calendar.getInstance()
+
+        List<TOrdersetting> tOrdersettings = ordersettingMapper.selectByExample(tOrdersettingExample);
+        return tOrdersettings;
+    }
+}