工具类和layui-v2.9.6提交
This commit is contained in:
parent
4c8dcecebb
commit
46fe5363ed
|
|
@ -0,0 +1,61 @@
|
|||
package com.bonus.leader.performance.manager.manager.utils;
|
||||
|
||||
import lombok.Data;
|
||||
import lombok.experimental.Accessors;
|
||||
|
||||
@Data
|
||||
@Accessors(chain = true)
|
||||
public class Ajax<T> {
|
||||
private Integer res;
|
||||
private String resMsg;
|
||||
private T obj;
|
||||
|
||||
/**
|
||||
* ok
|
||||
*
|
||||
* @param <T> the type parameter
|
||||
* @return result the result
|
||||
* @author zys
|
||||
* @date 2021-12-17 16:45:00
|
||||
*/
|
||||
public static <T> Ajax<T> ok() {
|
||||
return new Ajax<T>().setRes(1).setResMsg("success");
|
||||
}
|
||||
|
||||
/**
|
||||
* error
|
||||
*
|
||||
* @param <T> the type parameter
|
||||
* @return result the result
|
||||
* @author zys
|
||||
* @date 2021-12-17 16:45:00
|
||||
*/
|
||||
public static <T> Ajax<T> error() {
|
||||
return new Ajax<T>().setRes(0).setResMsg("error");
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* ok
|
||||
*
|
||||
* @param <T> the type parameter
|
||||
* @return result the result
|
||||
* @author zys
|
||||
* @date 2021-12-17 16:45:00
|
||||
*/
|
||||
public static <T> Ajax<T> ok(T succeed) {
|
||||
return new Ajax<T>().setRes(1).setResMsg("success").setObj(succeed);
|
||||
}
|
||||
|
||||
/**
|
||||
* error
|
||||
*
|
||||
* @param <T> the type parameter
|
||||
* @return result the result
|
||||
* @author zys
|
||||
* @date 2021-12-17 16:45:00
|
||||
*/
|
||||
public static <T> Ajax<T> error(T succeed) {
|
||||
return new Ajax<T>().setRes(0).setResMsg("error").setObj(succeed);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,114 @@
|
|||
package com.bonus.leader.performance.manager.manager.utils;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
public class AjaxRes implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
/**
|
||||
* 返回码值,默认值Const.FAI
|
||||
*/
|
||||
private int res = GlobalConst.FAIL;
|
||||
/**
|
||||
* 返回码值解析
|
||||
*/
|
||||
private String resMsg;
|
||||
/**
|
||||
* 返回对象
|
||||
*/
|
||||
private Object obj;
|
||||
|
||||
public int getRes() {
|
||||
return res;
|
||||
}
|
||||
|
||||
public void setRes(int res) {
|
||||
this.res = res;
|
||||
}
|
||||
|
||||
public String getResMsg() {
|
||||
return resMsg;
|
||||
}
|
||||
|
||||
public void setResMsg(String resMsg) {
|
||||
this.resMsg = resMsg;
|
||||
}
|
||||
|
||||
public Object getObj() {
|
||||
return obj;
|
||||
}
|
||||
|
||||
public void setObj(Object obj) {
|
||||
this.obj = obj;
|
||||
}
|
||||
|
||||
/**
|
||||
* 设置没有权限返回值
|
||||
*
|
||||
* @param auth
|
||||
* 原值返回
|
||||
* @return
|
||||
*/
|
||||
public boolean setNoAuth(boolean auth) {
|
||||
if (!auth) {
|
||||
this.obj = null;
|
||||
this.setRes(GlobalConst.NO_AUTHORIZED);
|
||||
this.setResMsg(GlobalConst.NO_AUTHORIZED_MSG);
|
||||
}
|
||||
return auth;
|
||||
}
|
||||
|
||||
/**
|
||||
* 设置成功值
|
||||
*
|
||||
* @param obj
|
||||
* 设置对象
|
||||
* @param resMsg
|
||||
* 设置码值解析
|
||||
*/
|
||||
public void setSucceed(Object obj, String resMsg) {
|
||||
this.setResMsg(resMsg);
|
||||
this.setSucceed(obj);
|
||||
}
|
||||
|
||||
/**
|
||||
* 设置成功值
|
||||
*
|
||||
* @param obj
|
||||
* 设置对象
|
||||
*/
|
||||
public void setSucceed(Object obj) {
|
||||
this.obj = obj;
|
||||
this.setRes(GlobalConst.SUCCEED);
|
||||
}
|
||||
|
||||
/**
|
||||
* 设置成功值
|
||||
*
|
||||
* @param resMsg
|
||||
* 返回码值解析
|
||||
*/
|
||||
public void setSucceedMsg(String resMsg) {
|
||||
this.setRes(GlobalConst.SUCCEED);
|
||||
this.setResMsg(resMsg);
|
||||
}
|
||||
|
||||
/**
|
||||
* 设置失败值
|
||||
*
|
||||
* @param resMsg
|
||||
* 返回码值解析
|
||||
*/
|
||||
public void setFailMsg(String resMsg) {
|
||||
this.obj = null;
|
||||
this.setRes(GlobalConst.FAIL);
|
||||
this.setResMsg(resMsg);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return "AjaxRes [res=" + res + ", resMsg=" + resMsg + ", obj=" + obj
|
||||
+ "]";
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,523 @@
|
|||
package com.bonus.leader.performance.manager.manager.utils;
|
||||
|
||||
|
||||
import java.text.DateFormat;
|
||||
import java.text.ParseException;
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.time.LocalDate;
|
||||
import java.time.format.DateTimeFormatter;
|
||||
import java.util.*;
|
||||
|
||||
/**
|
||||
* 时间操作类
|
||||
*
|
||||
* @author cshu
|
||||
*/
|
||||
@SuppressWarnings("deprecation")
|
||||
public class DateTimeHelper {
|
||||
|
||||
/**
|
||||
* 获取当前时间的年份
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
public static String getNowYear() {
|
||||
return format(new Date(), "yyyy");
|
||||
}
|
||||
|
||||
public static String getYMDToYMDHMS(String time) {
|
||||
String ymdhms = time+ " 00:00:01";
|
||||
return ymdhms;
|
||||
}
|
||||
public static String getYMDToYMDHMS2(String time) {
|
||||
String ymdhms = time+ " 23:59:59";
|
||||
return ymdhms;
|
||||
}
|
||||
/**
|
||||
* 获取当前月份
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
public static String getNowMonths() {
|
||||
return format(new Date(), "MM");
|
||||
}
|
||||
|
||||
public static String getYear(Date d) {
|
||||
int year = d.getYear() + 1900;
|
||||
return year + "";
|
||||
}
|
||||
|
||||
public static String getMonth(Date d) {
|
||||
int month = d.getMonth() + 1;
|
||||
return StringHelper.fillPrefixZero(month, 2);
|
||||
}
|
||||
|
||||
public static String getDay() {
|
||||
return format(new Date(),"dd");
|
||||
}
|
||||
/**
|
||||
* 格式化 时间
|
||||
*
|
||||
* @param format
|
||||
* @return
|
||||
*/
|
||||
public static String format(Date d, String format) {
|
||||
SimpleDateFormat df = new SimpleDateFormat(format);
|
||||
return df.format(d);
|
||||
}
|
||||
|
||||
public static String format(String str, String format, String disFormat) {
|
||||
Date d = parse(str, format);
|
||||
return format(d, disFormat);
|
||||
}
|
||||
|
||||
/**
|
||||
* 格式化 时间
|
||||
*
|
||||
* @param format
|
||||
* @return
|
||||
*/
|
||||
public static String format(Date d, DateFormat format) {
|
||||
return format.format(d);
|
||||
}
|
||||
|
||||
/**
|
||||
* 格式化 时间
|
||||
*
|
||||
* @param format
|
||||
* @return Date
|
||||
* @throws ParseException
|
||||
*/
|
||||
public static Date parse(String dateStr, String format) {
|
||||
SimpleDateFormat df = new SimpleDateFormat(format);
|
||||
try {
|
||||
return df.parse(dateStr);
|
||||
} catch (ParseException e) {
|
||||
return new Date();
|
||||
}
|
||||
}
|
||||
|
||||
public static Date parse(String dateStr, String format, Date d) {
|
||||
try {
|
||||
SimpleDateFormat df = new SimpleDateFormat(format);
|
||||
return df.parse(dateStr);
|
||||
} catch (Exception e) {
|
||||
return d;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 解析时间
|
||||
*
|
||||
* @return Date
|
||||
* @throws ParseException
|
||||
*/
|
||||
public static Date parse(String dateStr, DateFormat format)
|
||||
throws ParseException {
|
||||
return format.parse(dateStr);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取当前时间的上个年月
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
public static String getPrevMonth() {
|
||||
return minusMonth(new Date(), 1);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取当前时间的年月
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
public static String getNowMonth() {
|
||||
return format(new Date(), "yyyy-MM");
|
||||
}
|
||||
|
||||
public static String getNowDay() {
|
||||
return format(new Date(),"dd");
|
||||
}
|
||||
|
||||
/**
|
||||
* 当前时间的上一年的年月日
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
public static String getPrevDate() {
|
||||
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
|
||||
Calendar c = Calendar.getInstance();
|
||||
|
||||
|
||||
c.setTime(new Date());
|
||||
c.add(Calendar.YEAR, -1);
|
||||
Date y = c.getTime();
|
||||
String year = format.format(y);
|
||||
return year;
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取当前时间的年月日
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
public static String getNowDate() {
|
||||
return format(new Date(), "yyyy-MM-dd");
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取当前为本年的第几周
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
public static String getNowWeek() {
|
||||
Calendar ca = Calendar.getInstance();
|
||||
ca.setTime(new Date());
|
||||
int week = ca.get(Calendar.WEEK_OF_YEAR);
|
||||
return format(new Date(), "yyyy") + "-" + week;
|
||||
}
|
||||
|
||||
public static String getNowDayHMS() {
|
||||
String time = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date());
|
||||
return time;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return
|
||||
*/
|
||||
public static String minusMonth(Date date, int c) {
|
||||
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM");
|
||||
try {
|
||||
Calendar cal = Calendar.getInstance();
|
||||
cal.setTime(date);
|
||||
cal.add(Calendar.MONTH, -c);
|
||||
return format(cal.getTime(), df);
|
||||
} catch (Exception e) {
|
||||
return format(date, df);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @param month
|
||||
* @return
|
||||
*/
|
||||
public static String minusMonth(String month, int c) {
|
||||
try {
|
||||
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM");
|
||||
Date date = parse(month, df);
|
||||
|
||||
Calendar cal = Calendar.getInstance();
|
||||
cal.setTime(date);
|
||||
cal.add(Calendar.MONTH, -c);
|
||||
|
||||
return format(cal.getTime(), df);
|
||||
} catch (Exception e) {
|
||||
return month;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @return
|
||||
*/
|
||||
public static Date minus(Date d, int type, int c) {
|
||||
try {
|
||||
Calendar cal = Calendar.getInstance();
|
||||
cal.setTime(d);
|
||||
cal.add(type, -c);
|
||||
return cal.getTime();
|
||||
} catch (Exception e) {
|
||||
return new Date();
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 得到前一个月
|
||||
*
|
||||
* @param month
|
||||
* @return
|
||||
*/
|
||||
public static String prevMonth(String month) {
|
||||
return minusMonth(month, 1);
|
||||
}
|
||||
|
||||
/**
|
||||
* 得到前一个月
|
||||
*
|
||||
* @param month
|
||||
* @return
|
||||
*/
|
||||
public static String prevMonth(String month, int c) {
|
||||
return minusMonth(month, c);
|
||||
}
|
||||
|
||||
public static float duration(String startTime, String stopTime) {
|
||||
Date sd = DateTimeHelper.parse(startTime, "yyyy-MM-dd HH:mm");
|
||||
long sl = sd.getTime();
|
||||
|
||||
Date ed = DateTimeHelper.parse(stopTime, "yyyy-MM-dd HH:mm");
|
||||
long el = ed.getTime();
|
||||
|
||||
float l = el - sl;
|
||||
if (l <= 0) {
|
||||
l = 0;
|
||||
}
|
||||
l = l / (1000 * 60);
|
||||
return l;
|
||||
}
|
||||
|
||||
public static String getStartYearMonthBySeason(String year, int season) {
|
||||
switch (season) {
|
||||
case 1:
|
||||
return getYearMonth(year, "01");
|
||||
case 2:
|
||||
return getYearMonth(year, "04");
|
||||
case 3:
|
||||
return getYearMonth(year, "07");
|
||||
case 4:
|
||||
return getYearMonth(year, "10");
|
||||
default:
|
||||
return getYearMonth(year, "01");
|
||||
}
|
||||
}
|
||||
|
||||
private static String getYearMonth(String year, String month) {
|
||||
return year + "-" + month;
|
||||
}
|
||||
|
||||
public static String getEndYearMonthBySeason(String year, int season) {
|
||||
switch (season) {
|
||||
case 1:
|
||||
return getYearMonth(year, "03");
|
||||
case 2:
|
||||
return getYearMonth(year, "06");
|
||||
case 3:
|
||||
return getYearMonth(year, "09");
|
||||
case 4:
|
||||
return getYearMonth(year, "12");
|
||||
default:
|
||||
return getYearMonth(year, "03");
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取当年初始时间
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
public static String getYearStart() {
|
||||
Calendar calendar = Calendar.getInstance();
|
||||
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
|
||||
calendar.setTime(new Date());
|
||||
calendar.set(Calendar.HOUR_OF_DAY, 0);
|
||||
calendar.set(Calendar.MINUTE, 0);
|
||||
calendar.set(Calendar.SECOND, 0);
|
||||
calendar.set(Calendar.DATE, 1);
|
||||
calendar.set(Calendar.MONTH, Calendar.JANUARY);
|
||||
return format.format(calendar.getTime());
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取当前日期周一
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
public static String getMonday() {
|
||||
Calendar cal = Calendar.getInstance(Locale.CHINA);
|
||||
// 如果当前时间是星期天,则向上移动一天,再取本周的星期一,老外用周日到周六为一周,向前移动一天,则是中国人的本周
|
||||
if (cal.get(Calendar.DAY_OF_WEEK) == Calendar.SUNDAY) {
|
||||
cal.add(Calendar.DATE, -1);
|
||||
}
|
||||
cal.set(Calendar.DAY_OF_WEEK, Calendar.MONDAY);
|
||||
SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy-MM-dd");
|
||||
return sdf1.format(cal.getTime());
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取当前时间的年月
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
public static String getYmDate() {
|
||||
return format(new Date(), "yyyy-MM");
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 将时间转换为时间戳
|
||||
*/
|
||||
public static String dateToStamp(String time) {
|
||||
String stap;
|
||||
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
||||
Date date = null;
|
||||
try {
|
||||
date = simpleDateFormat.parse(time);
|
||||
} catch (ParseException e) {
|
||||
// TODO Auto-generated catch block
|
||||
e.printStackTrace();
|
||||
}
|
||||
//获取时间的时间戳
|
||||
long ts = date.getTime() / 1000;
|
||||
stap = String.valueOf(ts);
|
||||
return stap;
|
||||
}
|
||||
|
||||
/**
|
||||
* 将时间戳转换为时间
|
||||
*/
|
||||
public static String stampToDate(String stap) {
|
||||
String time;
|
||||
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
||||
long lt = new Long(stap);
|
||||
Date date = new Date(lt * 1000);
|
||||
time = simpleDateFormat.format(date);
|
||||
return time;
|
||||
}
|
||||
|
||||
|
||||
|
||||
public static List<String> findDates(String stime, String etime)
|
||||
throws ParseException {
|
||||
List<String> allDate = new ArrayList();
|
||||
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
|
||||
|
||||
Date dBegin = sdf.parse(stime);
|
||||
Date dEnd = sdf.parse(etime);
|
||||
allDate.add(sdf.format(dBegin));
|
||||
Calendar calBegin = Calendar.getInstance();
|
||||
// 使用给定的 Date 设置此 Calendar 的时间
|
||||
calBegin.setTime(dBegin);
|
||||
Calendar calEnd = Calendar.getInstance();
|
||||
// 使用给定的 Date 设置此 Calendar 的时间
|
||||
calEnd.setTime(dEnd);
|
||||
// 测试此日期是否在指定日期之后
|
||||
while (dEnd.after(calBegin.getTime())) {
|
||||
// 根据日历的规则,为给定的日历字段添加或减去指定的时间量
|
||||
calBegin.add(Calendar.DAY_OF_MONTH, 1);
|
||||
allDate.add(sdf.format(calBegin.getTime()));
|
||||
}
|
||||
return allDate;
|
||||
}
|
||||
|
||||
public static String getDate(String date) throws ParseException {
|
||||
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
|
||||
Date dates = DateTimeHelper.parse(date, sdf);
|
||||
return DateTimeHelper.format(dates, "yyyy-MM-dd");
|
||||
}
|
||||
|
||||
public static int dateCompare(Date date1, Date date2) {
|
||||
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMdd");
|
||||
String dateFirst = dateFormat.format(date1);
|
||||
String dateLast = dateFormat.format(date2);
|
||||
int dateFirstIntVal = Integer.parseInt(dateFirst);
|
||||
int dateLastIntVal = Integer.parseInt(dateLast);
|
||||
if (dateFirstIntVal > dateLastIntVal) {
|
||||
return 1;
|
||||
} else if (dateFirstIntVal < dateLastIntVal) {
|
||||
return -1;
|
||||
}else if (dateFirstIntVal == dateLastIntVal){
|
||||
return 2;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* 传入两个时间参数,返回需要的值
|
||||
* @param date1
|
||||
* @param date2
|
||||
* @return
|
||||
*/
|
||||
public static int dateCompare(String date1, String date2){
|
||||
try {
|
||||
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
|
||||
Date parse1 = sdf.parse(date1);
|
||||
Date parse2 = sdf.parse(date2);
|
||||
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMdd");
|
||||
String dateFirst = dateFormat.format(parse1);
|
||||
String dateLast = dateFormat.format(parse2);
|
||||
int dateFirstIntVal = Integer.parseInt(dateFirst);
|
||||
int dateLastIntVal = Integer.parseInt(dateLast);
|
||||
if (dateFirstIntVal > dateLastIntVal) {
|
||||
return 1;
|
||||
} else if (dateFirstIntVal < dateLastIntVal) {
|
||||
return -1;
|
||||
} else {
|
||||
return 0;
|
||||
}
|
||||
}catch (ParseException e){
|
||||
//假设转换错误,按照第一个时间来
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 传入两个时间参数,返回需要的值
|
||||
* @param date1
|
||||
* @param date2
|
||||
* @param i>0 true 返回大的 ,false返回小的
|
||||
* @return
|
||||
*/
|
||||
public static String getNeedDate(String date1, String date2,int i){
|
||||
try {
|
||||
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
|
||||
Date parse1 = sdf.parse(date1);
|
||||
Date parse2 = sdf.parse(date2);
|
||||
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMdd");
|
||||
String dateFirst = dateFormat.format(parse1);
|
||||
String dateLast = dateFormat.format(parse2);
|
||||
int dateFirstIntVal = Integer.parseInt(dateFirst);
|
||||
int dateLastIntVal = Integer.parseInt(dateLast);
|
||||
if (dateFirstIntVal > dateLastIntVal && i > 0) {
|
||||
return date1;
|
||||
} else if (dateFirstIntVal < dateLastIntVal && i>0) {
|
||||
return date2;
|
||||
} else if (dateFirstIntVal < dateLastIntVal && i<0) {
|
||||
return date1;
|
||||
} else if (dateFirstIntVal > dateLastIntVal && i < 0) {
|
||||
return date2;
|
||||
} else {
|
||||
return date1;
|
||||
}
|
||||
}catch (ParseException e){
|
||||
//假设转换错误,按照第一个时间来
|
||||
return date1;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 计算两个时间点之间的天数
|
||||
*/
|
||||
public static long getBetweenDay(LocalDate start, LocalDate end) {
|
||||
return end.toEpochDay() - start.toEpochDay();
|
||||
}
|
||||
|
||||
/**
|
||||
* 计算两个时间点之间的天数
|
||||
*/
|
||||
public static long getBetweenDay(String start, String end) {
|
||||
LocalDate date1 = LocalDate.parse(start, DateTimeFormatter.ofPattern("yyyy-MM-dd"));
|
||||
LocalDate date2 = LocalDate.parse(end, DateTimeFormatter.ofPattern("yyyy-MM-dd"));
|
||||
return date2.toEpochDay() - date1.toEpochDay();
|
||||
}
|
||||
|
||||
|
||||
public static String getNowTime() {
|
||||
return format(new Date(), "yyyy-MM-dd HH:mm:ss");
|
||||
}
|
||||
|
||||
public static String getNowTime2() {
|
||||
return format(new Date(), "yyyyMMddHHmmss");
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取当前时间毫秒
|
||||
* @return
|
||||
*/
|
||||
public static String getNowTimestamp() {
|
||||
|
||||
return String.valueOf(System.currentTimeMillis());
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,297 @@
|
|||
package com.bonus.leader.performance.manager.manager.utils;
|
||||
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import java.io.*;
|
||||
import java.math.BigDecimal;
|
||||
import java.sql.Blob;
|
||||
import java.sql.SQLException;
|
||||
import java.util.List;
|
||||
import java.util.regex.Matcher;
|
||||
import java.util.regex.Pattern;
|
||||
|
||||
|
||||
public class StringHelper {
|
||||
|
||||
static final Logger log = LoggerFactory.getLogger(StringHelper.class);
|
||||
|
||||
private static String hexString = "0123456789ABCDEF";
|
||||
|
||||
public static String replaceAll(String str, String oldStr, String newStr) {
|
||||
return str.replaceAll(oldStr, newStr);
|
||||
}
|
||||
|
||||
public static boolean contains(String s1, String s2) {
|
||||
if (isEmpty(s1)) {
|
||||
return false;
|
||||
}
|
||||
return s1.contains(s2);
|
||||
|
||||
}
|
||||
|
||||
public static void writeText(String args) {
|
||||
File fp = new File("F:\\1.txt");
|
||||
PrintWriter pfp;
|
||||
try {
|
||||
pfp = new PrintWriter(fp);
|
||||
pfp.print(args);
|
||||
pfp.close();
|
||||
} catch (FileNotFoundException e) {
|
||||
// TODO Auto-generated catch block
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* 集合转数组
|
||||
*
|
||||
* @param list
|
||||
* @param separator
|
||||
* @return
|
||||
*/
|
||||
public static String listToString(List<String> list, char separator) {
|
||||
return StringUtils.join(list.toArray(), separator);
|
||||
}
|
||||
|
||||
/**
|
||||
* blob中文乱码转码
|
||||
*
|
||||
* @param
|
||||
* @return
|
||||
*/
|
||||
public static String blobToStrings(Blob b) {
|
||||
try {
|
||||
if (b == null) {
|
||||
return null;
|
||||
}
|
||||
String content = new String(b.getBytes((long) 1, (int) b.length()), "UTF-8");
|
||||
return content;
|
||||
} catch (SQLException | UnsupportedEncodingException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
/**
|
||||
* blob中文乱码转码
|
||||
*
|
||||
* @param content
|
||||
* @return
|
||||
*/
|
||||
public static String blobToString(String content) {
|
||||
try {
|
||||
return new String(content.getBytes("ISO_8859_1"), "UTF-8");
|
||||
} catch (UnsupportedEncodingException e) {
|
||||
// TODO Auto-generated catch block
|
||||
e.printStackTrace();
|
||||
}
|
||||
return content;
|
||||
}
|
||||
|
||||
/**
|
||||
* unicode转字符串
|
||||
*
|
||||
* @param unicode
|
||||
* @return
|
||||
*/
|
||||
public static String unicodeToString(String unicode) {
|
||||
StringBuffer sb = new StringBuffer();
|
||||
String[] hex = unicode.split("\\\\u");
|
||||
for (int i = 1; i < hex.length; i++) {
|
||||
int index = Integer.parseInt(hex[i], 16);
|
||||
sb.append((char) index);
|
||||
}
|
||||
return sb.toString();
|
||||
}
|
||||
|
||||
/**
|
||||
* * 含有unicode 的字符串转一般字符串 * @param unicodeStr 混有 Unicode 的字符串
|
||||
* * @return
|
||||
*/
|
||||
public static String unicodeStr2String(String unicodeStr) {
|
||||
int length = unicodeStr.length();
|
||||
int count = 0;
|
||||
// 正则匹配条件,可匹配“\\u”1到4位,一般是4位可直接使用 String regex = "\\\\u[a-f0-9A-F]{4}";
|
||||
String regex = "\\\\u[a-f0-9A-F]{1,4}";
|
||||
Pattern pattern = Pattern.compile(regex);
|
||||
Matcher matcher = pattern.matcher(unicodeStr);
|
||||
StringBuffer sb = new StringBuffer();
|
||||
|
||||
while (matcher.find()) {
|
||||
// 原本的Unicode字符
|
||||
String oldChar = matcher.group();
|
||||
// 转换为普通字符
|
||||
String newChar = unicode2String(oldChar);
|
||||
// int index = unicodeStr.indexOf(oldChar);
|
||||
// 在遇见重复出现的unicode代码的时候会造成从源字符串获取非unicode编码字符的时候截取索引越界等
|
||||
int index = matcher.start();
|
||||
// 添加前面不是unicode的字符
|
||||
sb.append(unicodeStr.substring(count, index));
|
||||
// 添加转换后的字符
|
||||
sb.append(newChar);
|
||||
// 统计下标移动的位置
|
||||
count = index + oldChar.length();
|
||||
}
|
||||
// 添加末尾不是Unicode的字符
|
||||
sb.append(unicodeStr.substring(count, length));
|
||||
return sb.toString();
|
||||
}
|
||||
|
||||
/**
|
||||
* unicode 转字符串
|
||||
*
|
||||
* @param unicode 全为 Unicode 的字符串
|
||||
* @return
|
||||
*/
|
||||
public static String unicode2String(String unicode) {
|
||||
StringBuffer string = new StringBuffer();
|
||||
String[] hex = unicode.split("\\\\u");
|
||||
|
||||
for (int i = 1; i < hex.length; i++) {
|
||||
// 转换出每一个代码点
|
||||
int data = Integer.parseInt(hex[i], 16);
|
||||
// 追加成string
|
||||
string.append((char) data);
|
||||
}
|
||||
|
||||
return string.toString();
|
||||
}
|
||||
|
||||
/*
|
||||
* 将字符串编码成16进制数字,适用于所有字符(包括中文)
|
||||
*/
|
||||
public static String encode(String str) {
|
||||
// 根据默认编码获取字节数组
|
||||
byte[] bytes = str.getBytes();
|
||||
StringBuilder sb = new StringBuilder(bytes.length * 2);
|
||||
// 将字节数组中每个字节拆解成2位16进制整数
|
||||
for (int i = 0; i < bytes.length; i++) {
|
||||
sb.append(hexString.charAt((bytes[i] & 0xf0) >> 4));
|
||||
sb.append(hexString.charAt((bytes[i] & 0x0f) >> 0));
|
||||
}
|
||||
return sb.toString();
|
||||
}
|
||||
|
||||
public static String decode(String bytes) {
|
||||
ByteArrayOutputStream baos = new ByteArrayOutputStream(bytes.length() / 2);
|
||||
// 将每2位16进制整数组装成一个字节
|
||||
for (int i = 0; i < bytes.length(); i += 2) {
|
||||
baos.write((hexString.indexOf(bytes.charAt(i)) << 4 | hexString.indexOf(bytes.charAt(i + 1))));
|
||||
}
|
||||
return new String(baos.toByteArray());
|
||||
}
|
||||
|
||||
public static String fillPrefixZero(int v, int len) {
|
||||
String vStr = v + "";
|
||||
while (vStr.length() < len) {
|
||||
vStr = "0" + vStr;
|
||||
}
|
||||
return vStr;
|
||||
}
|
||||
|
||||
public static boolean isEmpty(String str) {
|
||||
if (str == null || "" .equals(str.trim()) || "null".equals(str.trim())) {
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
/**
|
||||
* 判断字符串 不为空
|
||||
*/
|
||||
public static boolean isNotEmpty(String str) {
|
||||
return !isEmpty(str);
|
||||
}
|
||||
|
||||
/**
|
||||
* 判断是否是汉字数字
|
||||
* @param str
|
||||
* @return
|
||||
*/
|
||||
public static boolean isChineseNumber(String str) {
|
||||
String regex = "^[一二三四五六七八九十]+$";
|
||||
Pattern p = Pattern.compile(regex);
|
||||
Matcher m = p.matcher(str);
|
||||
if (m.matches()) {
|
||||
return true;
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
private static Pattern NUMBER_null = Pattern.compile("^[-\\+]?[\\d]*$");
|
||||
/**
|
||||
* 判断是否是数字
|
||||
* @param str
|
||||
* @return
|
||||
*/
|
||||
public static boolean isInteger(String str) {
|
||||
if(str == null || str == ""){
|
||||
return false;
|
||||
}
|
||||
return NUMBER_null.matcher(str).matches();
|
||||
}
|
||||
|
||||
private static Pattern NUMBER_PATTERN = Pattern.compile("[0-9]+(\\.[0-9]+)?");
|
||||
|
||||
/**
|
||||
* 判断字符串是否为全部为数字
|
||||
* @param str
|
||||
* @return
|
||||
*/
|
||||
public static boolean StringIsNum(String str) {
|
||||
String bigStr;
|
||||
try {
|
||||
/** 先将str转成BigDecimal,然后在转成String */
|
||||
bigStr = new BigDecimal(str).toString();
|
||||
} catch (Exception e) {
|
||||
/** 如果转换数字失败,说明该str并非全部为数字 */
|
||||
return false;
|
||||
}
|
||||
Matcher isNum = NUMBER_PATTERN.matcher(str);
|
||||
if (!isNum.matches()) {
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
//截取字符串之前的值
|
||||
public static String subStringfront(String str,String param){
|
||||
return str.substring(0, str.indexOf(param));
|
||||
}
|
||||
|
||||
//截取字符串之后的值
|
||||
public static String subStringAfter(String str, String param){
|
||||
return str.substring(str.indexOf(param));
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 解析text/plain格式请求中的json
|
||||
*
|
||||
* @param request
|
||||
* @return
|
||||
*/
|
||||
public static String fetchPostByTextPlain(HttpServletRequest request) {
|
||||
try {
|
||||
BufferedReader reader = request.getReader();
|
||||
char[] buf = new char[512];
|
||||
int len = 0;
|
||||
StringBuffer contentBuffer = new StringBuffer();
|
||||
while ((len = reader.read(buf)) != -1) {
|
||||
contentBuffer.append(buf, 0, len);
|
||||
}
|
||||
return contentBuffer.toString();
|
||||
|
||||
} catch (IOException e) {
|
||||
e.printStackTrace();
|
||||
log.error("[获取request中用POST方式“Content-type”是“text/plain”发送的json数据]异常:{}", e.getCause());
|
||||
}
|
||||
return "";
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,45 @@
|
|||
package com.bonus.leader.performance.manager.manager.utils.json;
|
||||
|
||||
import org.codehaus.jackson.map.ObjectMapper;
|
||||
import org.codehaus.jackson.type.TypeReference;
|
||||
|
||||
import java.io.IOException;
|
||||
|
||||
public class JacksonHelper implements JsonHelper {
|
||||
|
||||
@Override
|
||||
public String jsonSerialize(Object value) {
|
||||
ObjectMapper objectMapper = new ObjectMapper();
|
||||
try {
|
||||
return objectMapper.writeValueAsString(value);
|
||||
} catch (IOException e) {
|
||||
e.printStackTrace();
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
@SuppressWarnings("unchecked")
|
||||
public <T> T jsonDeserialize(String value, Class<?> tClass) {
|
||||
ObjectMapper objectMapper = new ObjectMapper();
|
||||
try {
|
||||
return (T) objectMapper.readValue(value, tClass);
|
||||
} catch (IOException e) {
|
||||
e.printStackTrace();
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
@SuppressWarnings("unchecked")
|
||||
public <T> T jsonDeserialize(String value,
|
||||
TypeReference<T> typeReference) {
|
||||
ObjectMapper objectMapper = new ObjectMapper();
|
||||
try {
|
||||
return (T) objectMapper.readValue(value, typeReference);
|
||||
} catch (IOException e) {
|
||||
e.printStackTrace();
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,159 @@
|
|||
package com.bonus.leader.performance.manager.manager.utils.json;
|
||||
|
||||
import com.alibaba.fastjson.JSON;
|
||||
import com.alibaba.fastjson.JSONArray;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public interface JsonHelper {
|
||||
|
||||
public String jsonSerialize(Object value);
|
||||
|
||||
public <T> T jsonDeserialize(String value, Class<?> tClass);
|
||||
|
||||
/**
|
||||
* 将任意bean转换成json字符串
|
||||
* fast json
|
||||
* @param bean
|
||||
* @param <T>
|
||||
* @return
|
||||
*/
|
||||
public static <T> String beanToJsonStr(T bean) {
|
||||
String jsonStr = JSON.toJSONString(bean);
|
||||
return jsonStr;
|
||||
}
|
||||
|
||||
/**
|
||||
* 把一个json字符串转换成bean对象
|
||||
* fast json
|
||||
* @param str
|
||||
* @param <T>
|
||||
* @return
|
||||
*/
|
||||
public static <T> T jsonStrToBean(String str, Class<T> clazz) {
|
||||
T bean = JSON.parseObject(str, clazz);
|
||||
return bean;
|
||||
}
|
||||
|
||||
/**
|
||||
* 把一个jsonObj转换成bean对象
|
||||
* fast json
|
||||
* @param jsonObj
|
||||
* @param <T>
|
||||
* @return
|
||||
*/
|
||||
public static <T> T jsonObjToBean(JSONObject jsonObj, Class<T> clazz) {
|
||||
String s = jsonObj.toJSONString();
|
||||
T bean = JSON.parseObject(s, clazz);
|
||||
return bean;
|
||||
}
|
||||
|
||||
/**
|
||||
* 把一个bean对象转换成jsonObj
|
||||
* fast json
|
||||
* @param bean
|
||||
* @param <T>
|
||||
* @return
|
||||
*/
|
||||
public static <T> JSONObject beanToJsonObj(T bean) {
|
||||
Object o = JSON.toJSON(bean);
|
||||
return (JSONObject) o;
|
||||
}
|
||||
|
||||
/**
|
||||
* 把一个jsonStr转换成jsonObj
|
||||
* fast json
|
||||
* @param str
|
||||
* @return
|
||||
*/
|
||||
public static JSONObject jsonStrToJsonObj(String str) {
|
||||
Object o = JSON.parseObject(str);
|
||||
return (JSONObject) o;
|
||||
}
|
||||
|
||||
/**
|
||||
* 把一个jsonObj转换成jsonStr
|
||||
* fast json
|
||||
* @param jsonObj
|
||||
* @return
|
||||
*/
|
||||
public static String jsonObjToJsonStr(JSONObject jsonObj) {
|
||||
String s = jsonObj.toJSONString();
|
||||
return s;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 把一个beanList对象转换成jsonArrStr
|
||||
* fast json
|
||||
* @param beanList
|
||||
* @param <T>
|
||||
* @return
|
||||
*/
|
||||
public static <T> JSONArray beanListToJsonArrStr(List<T> beanList) {
|
||||
Object o = JSON.toJSON(beanList);
|
||||
return (JSONArray) o;
|
||||
}
|
||||
|
||||
/**
|
||||
* 把一个jsonArrStr转换成beanList对象
|
||||
* fast json
|
||||
* @param jsonArrStr
|
||||
* @param <T>
|
||||
* @return
|
||||
*/
|
||||
public static <T> List<T> jsonArrStrToBeanList(String jsonArrStr,Class<T> clazz) {
|
||||
List<T> ts = JSON.parseArray(jsonArrStr, clazz);
|
||||
return ts;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 把一个JsonArr转换成JsonArrStr
|
||||
* fast json
|
||||
* @param jsonArr
|
||||
* @return
|
||||
*/
|
||||
public static String jsonArrToJsonArrStr(JSONArray jsonArr) {
|
||||
String s = JSON.toJSONString(jsonArr);
|
||||
return s;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 把一个JsonArrStr文本转换成JsonArr
|
||||
* fast json
|
||||
* @param jsonArrStr
|
||||
* @return
|
||||
*/
|
||||
public static JSONArray jsonArrStrToJsonArr(String jsonArrStr) {
|
||||
Object o = JSON.parse(jsonArrStr);
|
||||
return (JSONArray) o;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 把一个JsonArr转换成beanList
|
||||
* fast json
|
||||
* @param jsonArr
|
||||
* @return
|
||||
*/
|
||||
public static <T> List<T> jsonArrToBeanList(JSONArray jsonArr,Class<T> clazz) {
|
||||
String s = JSON.toJSONString(jsonArr);
|
||||
List<T> ts = JSON.parseArray(s, clazz);
|
||||
return ts;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 把一个beanList文本转换成JsonArr
|
||||
* fast json
|
||||
* @param beanList
|
||||
* @return
|
||||
*/
|
||||
public static <T> JSONArray beanListToJsonArr(List<T> beanList) {
|
||||
Object o = JSON.toJSON(beanList);
|
||||
return (JSONArray) o;
|
||||
}
|
||||
}
|
||||
|
|
@ -10,7 +10,7 @@
|
|||
<meta name="apple-mobile-web-app-capable" content="yes">
|
||||
<meta name="format-detection" content="telephone=no">
|
||||
<title>后台管理系统</title>
|
||||
<link rel="stylesheet" href="layui/css/layui.css" media="all" />
|
||||
<link rel="stylesheet" href="js/layui-v2.9.6/css/layui.css" media="all" />
|
||||
<link rel="stylesheet" href="css/global.css" media="all" />
|
||||
<link rel="stylesheet" href="css/font-awesome/css/font-awesome.css" media="all" />
|
||||
</head>
|
||||
|
|
@ -84,8 +84,8 @@
|
|||
</div>
|
||||
<div class="site-mobile-shade"></div>
|
||||
|
||||
<script type="text/javascript" src="layui/layui.js"></script>
|
||||
<script type="text/javascript" src="js/libs/jquery-2.1.1.min.js"></script>
|
||||
<script type="text/javascript" src="js/layui-v2.9.6/layui.js"></script>
|
||||
<script type="text/javascript" src="js/jquery-3.6.0.js"></script>
|
||||
<script type="text/javascript" src="js/jq.js"></script>
|
||||
<script type="text/javascript" src="js/publicJs.js"></script>
|
||||
<script type="text/javascript" src="js/main.js"></script>
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
Binary file not shown.
File diff suppressed because one or more lines are too long
|
After Width: | Height: | Size: 322 KiB |
Binary file not shown.
Binary file not shown.
Binary file not shown.
File diff suppressed because one or more lines are too long
|
|
@ -13,8 +13,6 @@
|
|||
<div class="login">
|
||||
<div class="message">后台管理系统</div>
|
||||
<div id="darkbannerwrap"></div>
|
||||
|
||||
<form id="login-form" method="post" onsubmit="return false;">
|
||||
<input id="username" name="username" placeholder="用户名" type="text"
|
||||
autocomplete="off">
|
||||
<hr class="hr15">
|
||||
|
|
@ -25,13 +23,10 @@
|
|||
onclick="login(this)">登录</button>
|
||||
<hr class="hr20">
|
||||
<span id="info" style="color: red"></span>
|
||||
</form>
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
</body>
|
||||
<script src="js/libs/jquery-2.1.1.min.js"></script>
|
||||
<script src="js/jquery-3.6.0.js"></script>
|
||||
<script src="js/publicJs.js"></script>
|
||||
<script type="text/javascript">
|
||||
if (top != self) {
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<title></title>
|
||||
<link rel="stylesheet" href="../layui/css/layui.css" media="all" />
|
||||
<link rel="stylesheet" href="../js/layui-v2.9.6/css/layui.css" media="all" />
|
||||
<link rel="stylesheet" href="../css/global.css" media="all" />
|
||||
</head>
|
||||
|
||||
|
|
|
|||
|
|
@ -100,9 +100,9 @@
|
|||
</form>
|
||||
</div>
|
||||
|
||||
<script type="text/javascript" src="../../js/libs/jquery-2.1.1.min.js"></script>
|
||||
<script type="text/javascript" src="../../js/jquery-3.6.0.js"></script>
|
||||
<script type="text/javascript" src="../../js/jq.js"></script>
|
||||
<script type="text/javascript" src="../../layui/layui.js"></script>
|
||||
<script type="text/javascript" src="../../js/layui-v2.9.6/layui.js"></script>
|
||||
<script type="text/javascript" src="../../js/plugin/bootstrapvalidator/bootstrapValidator.min.js"></script>
|
||||
<script type="text/javascript" src="../../js/common.js"></script>
|
||||
<script type="text/javascript">
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@
|
|||
<title>Insert title here</title>
|
||||
<link rel="stylesheet" type="text/css" media="screen" href="../../css/bootstrap.min.css">
|
||||
<link rel="stylesheet" type="text/css" media="screen" href="../../css/dataTables.bootstrap.min.css">
|
||||
<link rel="stylesheet" href="../../layui/css/layui.css" media="all" />
|
||||
<link rel="stylesheet" href="../../js/layui-v2.9.6/css/layui.css" media="all" />
|
||||
</head>
|
||||
<body>
|
||||
<div>
|
||||
|
|
@ -64,9 +64,9 @@
|
|||
</body>
|
||||
</html>
|
||||
|
||||
<script type="text/javascript" src="../../js/libs/jquery-2.1.1.min.js"></script>
|
||||
<script type="text/javascript" src="../../js/jquery-3.6.0.js"></script>
|
||||
<script type="text/javascript" src="../../js/jq.js"></script>
|
||||
<script type="text/javascript" src="../../layui/layui.js"></script>
|
||||
<script type="text/javascript" src="../../js/layui-v2.9.6/layui.js"></script>
|
||||
<script type="text/javascript" src="../../js/plugin/datatables/jquery.dataTables.min.js"></script>
|
||||
<script type="text/javascript" src="../../js/plugin/datatables/dataTables.bootstrap.min.js"></script>
|
||||
<script type="text/javascript" src="../../js/my/permission.js"></script>
|
||||
|
|
|
|||
|
|
@ -76,12 +76,12 @@
|
|||
</form>
|
||||
</div>
|
||||
|
||||
<script type="text/javascript" src="../../js/libs/jquery-2.1.1.min.js"></script>
|
||||
<script type="text/javascript" src="../../js/jquery-3.6.0.js"></script>
|
||||
<script type="text/javascript" src="../../js/jq.js"></script>
|
||||
<script type="text/javascript" src="../../js/plugin/bootstrapvalidator/bootstrapValidator.min.js"></script>
|
||||
<script type="text/javascript" src="../../js/common.js"></script>
|
||||
<script type="text/javascript" src="../../js/my/ztree-menu.js"></script>
|
||||
<script type="text/javascript" src="../../layui/layui.js"></script>
|
||||
<script type="text/javascript" src="../../js/layui-v2.9.6/layui.js"></script>
|
||||
<script type="text/javascript" src="../../js/publicJs.js"></script>
|
||||
<script type="text/javascript">
|
||||
layui.use('layer', function(){
|
||||
|
|
|
|||
|
|
@ -1733,7 +1733,7 @@
|
|||
</div>
|
||||
</body>
|
||||
</html>
|
||||
<script src="../../js/libs/jquery-2.1.1.min.js"></script>
|
||||
<script src="../../js/jquery-3.6.0.js"></script>
|
||||
<script type="text/javascript">
|
||||
$(".demo-icon-font").click(function(){
|
||||
var cla = $(this).children("i:first").attr("class").split(" ");
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@
|
|||
<link rel="stylesheet" type="text/css" media="screen" href="../../css/bootstrap.min.css">
|
||||
<link rel="stylesheet" href="../../css/treetable/jquery.treetable.css" />
|
||||
<link rel="stylesheet" href="../../css/treetable/jquery.treetable.theme.default.css" />
|
||||
<link rel="stylesheet" type="text/css" media="screen" href="../../layui/css/layui.css">
|
||||
<link rel="stylesheet" type="text/css" media="screen" href="../../js/layui-v2.9.6/css/layui.css">
|
||||
</head>
|
||||
<body>
|
||||
<div>
|
||||
|
|
@ -47,9 +47,9 @@
|
|||
</body>
|
||||
</html>
|
||||
|
||||
<script type="text/javascript" src="../../js/libs/jquery-2.1.1.min.js"></script>
|
||||
<script type="text/javascript" src="../../js/jquery-3.6.0.js"></script>
|
||||
<script type="text/javascript" src="../../js/jq.js"></script>
|
||||
<script type="text/javascript" src="../../layui/layui.js"></script>
|
||||
<script type="text/javascript" src="../../js/layui-v2.9.6/layui.js"></script>
|
||||
<script type="text/javascript" src="../../js/my/permission.js"></script>
|
||||
<script src="../../js/libs/jquery.treetable.js"></script>
|
||||
<script src="../../js/publicJs.js"></script>
|
||||
|
|
|
|||
|
|
@ -77,12 +77,12 @@
|
|||
</form>
|
||||
</div>
|
||||
|
||||
<script type="text/javascript" src="../../js/libs/jquery-2.1.1.min.js"></script>
|
||||
<script type="text/javascript" src="../../js/jquery-3.6.0.js"></script>
|
||||
<script type="text/javascript" src="../../js/jq.js"></script>
|
||||
<script type="text/javascript" src="../../js/plugin/bootstrapvalidator/bootstrapValidator.min.js"></script>
|
||||
<script type="text/javascript" src="../../js/common.js"></script>
|
||||
<script type="text/javascript" src="../../js/my/ztree-menu.js"></script>
|
||||
<script type="text/javascript" src="../../layui/layui.js"></script>
|
||||
<script type="text/javascript" src="../../js/layui-v2.9.6/layui.js"></script>
|
||||
<script type="text/javascript" src="../../js/publicJs.js"></script>
|
||||
<script type="text/javascript">
|
||||
layui.use('layer', function(){
|
||||
|
|
|
|||
|
|
@ -48,11 +48,11 @@
|
|||
</form>
|
||||
</div>
|
||||
|
||||
<script type="text/javascript" src="../../js/libs/jquery-2.1.1.min.js"></script>
|
||||
<script type="text/javascript" src="../../js/jquery-3.6.0.js"></script>
|
||||
<script type="text/javascript" src="../../js/jq.js"></script>
|
||||
<script type="text/javascript" src="../../js/plugin/bootstrapvalidator/bootstrapValidator.min.js"></script>
|
||||
<script type="text/javascript" src="../../js/common.js"></script>
|
||||
<script type="text/javascript" src="../../layui/layui.js"></script>
|
||||
<script type="text/javascript" src="../../js/layui-v2.9.6/layui.js"></script>
|
||||
<script type="text/javascript" src="../../js/libs/jquery.ztree.all-3.5.min.js"></script>
|
||||
<script type="text/javascript" src="../../js/my/ztree-menu.js"></script>
|
||||
<script type="text/javascript" src="../../js/publicJs.js"></script>
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@
|
|||
<title>Insert title here</title>
|
||||
<link rel="stylesheet" type="text/css" media="screen" href="../../css/bootstrap.min.css">
|
||||
<link rel="stylesheet" type="text/css" media="screen" href="../../css/dataTables.bootstrap.min.css">
|
||||
<link rel="stylesheet" type="text/css" media="screen" href="../../layui/css/layui.css">
|
||||
<link rel="stylesheet" type="text/css" media="screen" href="../../js/layui-v2.9.6/css/layui.css">
|
||||
</head>
|
||||
<body>
|
||||
<div>
|
||||
|
|
@ -56,11 +56,11 @@
|
|||
</body>
|
||||
</html>
|
||||
|
||||
<script type="text/javascript" src="../../js/libs/jquery-2.1.1.min.js"></script>
|
||||
<script type="text/javascript" src="../../js/jquery-3.6.0.js"></script>
|
||||
<script type="text/javascript" src="../../js/jq.js"></script>
|
||||
<script type="text/javascript" src="../../js/plugin/datatables/jquery.dataTables.min.js"></script>
|
||||
<script type="text/javascript" src="../../js/plugin/datatables/dataTables.bootstrap.min.js"></script>
|
||||
<script type="text/javascript" src="../../layui/layui.js"></script>
|
||||
<script type="text/javascript" src="../../js/layui-v2.9.6/layui.js"></script>
|
||||
<script type="text/javascript" src="../../js/my/permission.js"></script>
|
||||
<script type="text/javascript" src="../../js/publicJs.js"></script>
|
||||
<script type="text/javascript">
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<link rel="stylesheet" type="text/css" media="screen" href="../../css/bootstrap.min.css">
|
||||
<link rel="stylesheet" type="text/css" media="screen" href="../../layui/css/layui.css">
|
||||
<link rel="stylesheet" type="text/css" media="screen" href="../../js/layui-v2.9.6/css/layui.css">
|
||||
</head>
|
||||
<body>
|
||||
<div class="col-xs-12 col-sm-12 col-md-12 col-lg-12">
|
||||
|
|
@ -84,12 +84,12 @@
|
|||
</form>
|
||||
</div>
|
||||
<script type="text/javascript" src="../../js/publicJs.js"></script>
|
||||
<script type="text/javascript" src="../../js/libs/jquery-2.1.1.min.js"></script>
|
||||
<script type="text/javascript" src="../../js/jquery-3.6.0.js"></script>
|
||||
<script type="text/javascript" src="../../js/jq.js"></script>
|
||||
<script type="text/javascript" src="../../js/plugin/bootstrapvalidator/bootstrapValidator.min.js"></script>
|
||||
<script type="text/javascript" src="../../js/common.js"></script>
|
||||
<script type="text/javascript" src="../../js/my/roles/role.js"></script>
|
||||
<script type="text/javascript" src="../../layui/layui.js"></script>
|
||||
<script type="text/javascript" src="../../js/layui-v2.9.6/layui.js"></script>
|
||||
<script type="text/javascript" src="../../js/dict.js"></script>
|
||||
<script type="text/javascript">
|
||||
layui.use(['layer','laydate'], function(){
|
||||
|
|
|
|||
|
|
@ -61,9 +61,9 @@
|
|||
</fieldset>
|
||||
</form>
|
||||
</div>
|
||||
<script type="text/javascript" src="../../js/libs/jquery-2.1.1.min.js"></script>
|
||||
<script type="text/javascript" src="../../js/jquery-3.6.0.js"></script>
|
||||
<script type="text/javascript" src="../../js/jq.js"></script>
|
||||
<script type="text/javascript" src="../../layui/layui.js"></script>
|
||||
<script type="text/javascript" src="../../js/layui-v2.9.6/layui.js"></script>
|
||||
<script type="text/javascript" src="../../js/plugin/bootstrapvalidator/bootstrapValidator.min.js"></script>
|
||||
<script type="text/javascript" src="../../js/publicJs.js"></script>
|
||||
<script type="text/javascript">
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<link rel="stylesheet" type="text/css" media="screen" href="../../layui/css/layui.css">
|
||||
<link rel="stylesheet" type="text/css" media="screen" href="../../js/layui-v2.9.6/css/layui.css">
|
||||
<link rel="stylesheet" type="text/css" media="screen" href="../../css/bootstrap.min.css">
|
||||
</head>
|
||||
<body>
|
||||
|
|
@ -11,9 +11,9 @@
|
|||
<div id="headImgDiv">
|
||||
</div>
|
||||
|
||||
<script type="text/javascript" src="../../js/libs/jquery-2.1.1.min.js"></script>
|
||||
<script type="text/javascript" src="../../js/jquery-3.6.0.js"></script>
|
||||
<script type="text/javascript" src="../../js/jq.js"></script>
|
||||
<script type="text/javascript" src="../../layui/layui.js"></script>
|
||||
<script type="text/javascript" src="../../js/layui-v2.9.6/layui.js"></script>
|
||||
<script type="text/javascript">
|
||||
var pro = window.location.protocol;
|
||||
var host = window.location.host;
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@
|
|||
<html>
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<link rel="stylesheet" type="text/css" media="screen" href="../../layui/css/layui.css">
|
||||
<link rel="stylesheet" type="text/css" media="screen" href="../../js/layui-v2.9.6/css/layui.css">
|
||||
<link rel="stylesheet" type="text/css" media="screen" href="../../css/bootstrap.min.css">
|
||||
</head>
|
||||
<body>
|
||||
|
|
@ -70,9 +70,9 @@
|
|||
</form>
|
||||
</div>
|
||||
<script type="text/javascript" src="../../js/publicJs.js"></script>
|
||||
<script type="text/javascript" src="../../js/libs/jquery-2.1.1.min.js"></script>
|
||||
<script type="text/javascript" src="../../js/jquery-3.6.0.js"></script>
|
||||
<script type="text/javascript" src="../../js/jq.js"></script>
|
||||
<script type="text/javascript" src="../../layui/layui.js"></script>
|
||||
<script type="text/javascript" src="../../js/layui-v2.9.6/layui.js"></script>
|
||||
<script type="text/javascript" src="../../js/plugin/bootstrapvalidator/bootstrapValidator.min.js"></script>
|
||||
<script type="text/javascript" src="../../js/common.js"></script>
|
||||
<script type="text/javascript" src="../../js/dict.js"></script>
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<link rel="stylesheet" type="text/css" media="screen" href="../../css/bootstrap.min.css">
|
||||
<link rel="stylesheet" type="text/css" media="screen" href="../../layui/css/layui.css">
|
||||
<link rel="stylesheet" type="text/css" media="screen" href="../../js/layui-v2.9.6/css/layui.css">
|
||||
</head>
|
||||
<body>
|
||||
<div class="col-xs-12 col-sm-12 col-md-12 col-lg-12">
|
||||
|
|
@ -80,12 +80,12 @@
|
|||
</fieldset>
|
||||
</form>
|
||||
</div>
|
||||
<script type="text/javascript" src="../../js/libs/jquery-2.1.1.min.js"></script>
|
||||
<script type="text/javascript" src="../../js/jquery-3.6.0.js"></script>
|
||||
<script type="text/javascript" src="../../js/jq.js"></script>
|
||||
<script type="text/javascript" src="../../js/plugin/bootstrapvalidator/bootstrapValidator.min.js"></script>
|
||||
<script type="text/javascript" src="../../js/common.js"></script>
|
||||
<script type="text/javascript" src="../../js/my/roles/role.js"></script>
|
||||
<script type="text/javascript" src="../../layui/layui.js"></script>
|
||||
<script type="text/javascript" src="../../js/layui-v2.9.6/layui.js"></script>
|
||||
<script type="text/javascript" src="../../js/dict.js"></script>
|
||||
<script type="text/javascript" src="../../js/publicJs.js"></script>
|
||||
<script type="text/javascript">
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@
|
|||
<title>Insert title here</title>
|
||||
<link rel="stylesheet" type="text/css" media="screen" href="../../css/bootstrap.min.css">
|
||||
<link rel="stylesheet" type="text/css" media="screen" href="../../css/dataTables.bootstrap.min.css">
|
||||
<link rel="stylesheet" type="text/css" media="screen" href="../../layui/css/layui.css">
|
||||
<link rel="stylesheet" type="text/css" media="screen" href="../../js/layui-v2.9.6/css/layui.css">
|
||||
</head>
|
||||
<body>
|
||||
<div>
|
||||
|
|
@ -64,12 +64,12 @@
|
|||
</html>
|
||||
|
||||
<script type="text/javascript" src="../../js/publicJs.js"></script>
|
||||
<script type="text/javascript" src="../../js/libs/jquery-2.1.1.min.js"></script>
|
||||
<script type="text/javascript" src="../../js/jquery-3.6.0.js"></script>
|
||||
<script type="text/javascript" src="../../js/jq.js"></script>
|
||||
<script type="text/javascript" src="../../js/plugin/datatables/jquery.dataTables.min.js"></script>
|
||||
<script type="text/javascript" src="../../js/plugin/datatables/dataTables.bootstrap.min.js"></script>
|
||||
<script type="text/javascript" src="../../js/my/permission.js"></script>
|
||||
<script type="text/javascript" src="../../layui/layui.js"></script>
|
||||
<script type="text/javascript" src="../../js/layui-v2.9.6/layui.js"></script>
|
||||
<script type="text/javascript" src="../../js/dict.js"></script>
|
||||
<script type="text/javascript">
|
||||
layui.use([ 'layer' ], function() {
|
||||
|
|
|
|||
Loading…
Reference in New Issue