ruanqi 3 years ago
parent
commit
1d86e1851f
  1. 484
      xujie-common/src/main/java/com/xujie/common/utils/DateUtil.java
  2. 47
      xujie-pms/src/main/java/com/xujie/pms/controller/EamController.java
  3. 51
      xujie-pms/src/main/java/com/xujie/pms/data/EamWorkPlanInData.java
  4. 15
      xujie-pms/src/main/java/com/xujie/pms/mapper/EamMapper.java
  5. 33
      xujie-pms/src/main/java/com/xujie/pms/service/EamService.java
  6. 99
      xujie-pms/src/main/java/com/xujie/pms/service/Impl/EamServiceImpl.java
  7. 32
      xujie-pms/src/main/resources/mapper/EamMapper.xml

484
xujie-common/src/main/java/com/xujie/common/utils/DateUtil.java

@ -0,0 +1,484 @@
package com.xujie.common.utils;
import java.text.DecimalFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.time.LocalDate;
import java.time.temporal.ChronoUnit;
import java.util.*;
import java.util.stream.Collectors;
import java.util.stream.Stream;
public class DateUtil {
/**
* 将时间转为小数
*
* @param date
* @return
*/
public static double getTimeforDoule(Date date) {
SimpleDateFormat sdf = new SimpleDateFormat("HH:mm");
String start = sdf.format(date);
String[] strs = start.split(":");
int a = Integer.parseInt(strs[0]);
int b = Integer.parseInt(strs[1]);
DecimalFormat df = new DecimalFormat("0.00");
String num = df.format((float) b / 60);
double c = Double.valueOf(num).doubleValue();
double d = a + c;
return d;
}
/**
* @author LR
* @Description: 获取当前时间的年月日时分秒
* @UpdateUser LR
* @UpdateRemark [说明本次修改内容]
*/
public static String getStringNow() {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
return sdf.format(new Date());
}
/**
* @param @param date
* @param @return 设定文件
* @return String 返回类型
* @throws
* @Title: getStringDate
* @author LR
* @Description: 返回String类型的yyyy-MM-dd的日期
*/
public static String getStringDate(Date date) {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
return sdf.format(date);
}
/**
* 获取日期戳
*
* @param date
* @return
*/
public static String getSDate(Date date) {
SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd");
return sdf.format(date);
}
/**
* 获取时间戳
*
* @param date
* @return
*/
public static String getSTime(Date date) {
SimpleDateFormat sdf = new SimpleDateFormat("HHmmss");
return sdf.format(date);
}
/**
* @param @param date
* @param @param parten
* @param @return 设定文件
* @return String 返回类型
* @throws
* @Title: getStringDate
* @author LR
* @Description: 根据模版获取相应时间的格式
*/
public static String getStringDate(Date date, String parten) {
SimpleDateFormat sdf = new SimpleDateFormat(parten);
return sdf.format(date);
}
/**
* @param @return 设定文件
* @return String 返回类型
* @throws
* @Title: getYesterday
* @author LR
* @Description: 获取昨日的String类型的yyyy-MM-dd的日期
*/
public static String getStringYesterday() {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Calendar cal = Calendar.getInstance();
cal.add(Calendar.DAY_OF_MONTH, -1);
return sdf.format(cal.getTime());
}
/**
* @param @return 设定文件
* @return String 返回类型
* @throws
* @Title: getYesterday
* @author LR
* @Description: 获取明天的String类型的yyyy-MM-dd的日期
*/
public static String getStringTomorrow() {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Calendar cal = Calendar.getInstance();
cal.add(Calendar.DAY_OF_MONTH, +1);
return sdf.format(cal.getTime());
}
/**
* @throws ParseException
* @author LR
* @Description: String转换date
* @UpdateUser LR
* @UpdateRemark [说明本次修改内容]
*/
public static Date getDate(String time) throws ParseException {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
return sdf.parse(time);
}
/**
* @throws
* @author RQ
* @Description: String转换date
* @UpdateUser rq
* @UpdateRemark [说明本次修改内容]
*/
public static Date getDate2(String time) throws ParseException {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
return sdf.parse(time);
}
/**
* @param @param date
* @param @return 设定文件
* @return String 返回类型
* @throws
* @Title: getLastMonth
* @author LR
* @Description: 获取上一个月的YYYY-MM
*/
public static String getLastMonth(Date date) {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM");
Calendar cal = Calendar.getInstance();
cal.setTime(date);
cal.add(Calendar.MONTH, -1);
Date lastDate = cal.getTime();
return sdf.format(lastDate);
}
public static Date getDateByParten(String date, String parten)
throws ParseException {
SimpleDateFormat sdf = new SimpleDateFormat(parten);
return sdf.parse(date);
}
/**
* 获取两个日期之间的日期
*
* @param start 开始日期
* @param end 结束日期
* @return 日期集合
*/
public static List<Date> getBetweenDates(Date start, Date end) {
List<Date> result = new ArrayList<Date>();
Calendar tempStart = Calendar.getInstance();
tempStart.setTime(start);
tempStart.add(Calendar.DAY_OF_YEAR, 1);
Calendar tempEnd = Calendar.getInstance();
tempEnd.setTime(end);
while (tempStart.before(tempEnd)) {
result.add(tempStart.getTime());
tempStart.add(Calendar.DAY_OF_YEAR, 1);
}
return result;
}
/**
* 获取两个日期之间的日期(包含)
*
* @param start 开始日期
* @param end 结束日期
* @return 日期集合
*/
public static List<String> collectLocalDates(LocalDate start, LocalDate end) {
// 用起始时间作为流的源头按照每次加一天的方式创建一个无限流
return Stream.iterate(start, localDate -> localDate.plusDays(1))
// 截断无限流长度为起始时间和结束时间的差+1个
.limit(ChronoUnit.DAYS.between(start, end) + 1)
// 由于最后要的是字符串所以map转换一下
.map(LocalDate::toString)
// 把流收集为List
.collect(Collectors.toList());
}
/**
* 判断当前时间是否在[startTime, endTime]区间注意时间格式要一致
*
* @param nowTime 当前时间
* @param startTime 开始时间
* @param endTime 结束时间
*/
public static boolean isEffectiveDate(Date nowTime, Date startTime, Date endTime) {
if (nowTime.getTime() == startTime.getTime()
|| nowTime.getTime() == endTime.getTime()) {
return true;
}
Calendar date = Calendar.getInstance();
date.setTime(nowTime);
Calendar begin = Calendar.getInstance();
begin.setTime(startTime);
Calendar end = Calendar.getInstance();
end.setTime(endTime);
if (date.after(begin) && date.before(end)) {
return true;
} else {
return false;
}
}
/**
* 判断当前时间有没有超过有效期
*
* @param nowTime
* @param termOfValidity
* @return
*/
public static boolean termOfValidity(Date nowTime, Date termOfValidity) {
if (nowTime.getTime() == termOfValidity.getTime()) {
return true;
}
Calendar date = Calendar.getInstance();
date.setTime(nowTime);
;
Calendar end = Calendar.getInstance();
end.setTime(termOfValidity);
if (date.before(end)) {
return true;
} else {
return false;
}
}
/**
* 判断时间
*
* @param startTime
* @param endTime
* @return
*/
public static boolean compareDate(Date startTime, Date endTime) {
if (startTime.getTime() > endTime.getTime()) {
return true;
} else {
return false;
}
}
/**
* String date
*
* @param time
* @return
* @throws ParseException
*/
public static Date getDateTime(String time) throws ParseException {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
return sdf.parse(time);
}
/**
* @param date1
* @param date2
* @return double
* @throws
* @Method getHour
* @Description: 根据开始时间结束时间获取相差小时数
* @author zuowenwen
* @Version 1.0
* @date 2020/7/21
*/
public static double getHour(Date date1, Date date2) throws ParseException {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm");
long startTime = date1.getTime();
long endTime = date2.getTime();
Long Intervals = endTime - startTime;
Double hour = (double) Intervals / 1000 / 3600;
DecimalFormat decimalFormat = new DecimalFormat(".0");
String p = decimalFormat.format(hour);
hour = Double.parseDouble(p);
return hour;
}
/**
* @param date
* @return java.lang.String
* @throws
* @Method getWeek
* @Description: 根据时间获取星期几
* @author zuowenwen
* @Version 1.0
* @date 2020/7/21
*/
public static String getWeek(Date date) {
SimpleDateFormat sdf = new SimpleDateFormat("EEEE");
String week = sdf.format(date);
return week;
}
/**
* @param date
* @return java.lang.Integer
* @throws
* @Method getWeekDay
* @Description: 根据时间获取一周的第几天
* @author zuowenwen
* @Version 1.0
* @date 2020/7/21
*/
public static Integer getWeekDay(Date date) {
Calendar calendar = Calendar.getInstance();
calendar.setTime(date);
int weekDay = calendar.get(Calendar.DAY_OF_WEEK);
if (weekDay == 1) {
weekDay = 7;
} else {
weekDay--;
}
return weekDay;
}
/**
* @param date
* @param num
* @return java.util.Date
* @throws
* @Method getAddDate
* @Description: 根据时间 获取num之前的时间
* @author zuowenwen
* @Version 1.0
* @date 2020/7/23
*/
public static Date getAddDate(Date date, Integer num) {
Calendar calendar = new GregorianCalendar();
calendar.setTime(date);
calendar.add(calendar.DATE, num); //把日期往后增加一天,整数 往后推,负数往前移动
date = calendar.getTime(); //这个时间就是日期往后推一天的结果
return date;
}
public static Date getDateTime(String time, String parten) throws ParseException {
SimpleDateFormat sdf = new SimpleDateFormat(parten);
return sdf.parse(time);
}
public String DateToStringBeginOrEnd(Date date, Boolean flag) {
String time = null;
SimpleDateFormat dateformat1 = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss");
Calendar calendar1 = Calendar.getInstance();
//获取某一天的0点0分0秒 或者 23点59分59秒
if (flag) {
calendar1.setTime(date);
calendar1.set(calendar1.get(Calendar.YEAR), calendar1.get(Calendar.MONTH), calendar1.get(Calendar.DAY_OF_MONTH),
0, 0, 0);
Date beginOfDate = calendar1.getTime();
time = dateformat1.format(beginOfDate);
System.out.println(time);
} else {
Calendar calendar2 = Calendar.getInstance();
calendar2.setTime(date);
calendar1.set(calendar2.get(Calendar.YEAR), calendar2.get(Calendar.MONTH), calendar2.get(Calendar.DAY_OF_MONTH),
23, 59, 59);
Date endOfDate = calendar1.getTime();
time = dateformat1.format(endOfDate);
System.out.println(time);
}
return time;
}
/**
* 得到某年某周的第一天
*
* @param year
* @param week
* @return
*/
public static Date getFirstDayOfWeek(int year, int week) {
Calendar c = new GregorianCalendar();
c.set(Calendar.YEAR, year);
c.set(Calendar.MONTH, Calendar.JANUARY);
c.set(Calendar.DATE, 1);
Calendar cal = (GregorianCalendar) c.clone();
cal.add(Calendar.DATE, week * 7);
return getFirstDayOfWeek(cal.getTime());
}
/**
* 取得当前日期所在周的第一天
*
* @param date
* @return
*/
public static Date getFirstDayOfWeek(Date date) {
Calendar c = new GregorianCalendar();
c.setFirstDayOfWeek(Calendar.MONDAY);
c.setTime(date);
c.set(Calendar.DAY_OF_WEEK, c.getFirstDayOfWeek()); // Monday
return c.getTime ();
}
/*
输入日期字符串比如201703返回当月第一天的Date
*/
public static Date getMinDateMonth(String month){
try {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Date nowDate=sdf.parse(month);
Calendar calendar = Calendar.getInstance();
calendar.setTime(nowDate);
calendar.set(Calendar.DAY_OF_MONTH, calendar.getActualMinimum(Calendar.DAY_OF_MONTH));
return calendar.getTime();
} catch (ParseException e) {
e.printStackTrace();
}
return null;
}
/*
输入日期字符串返回当月最后一天的Date
*/
public static Date getMaxDateMonth(String month){
try {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Date nowDate=sdf.parse(month);
Calendar calendar = Calendar.getInstance();
calendar.setTime(nowDate);
calendar.set(Calendar.DAY_OF_MONTH, calendar.getActualMaximum(Calendar.DAY_OF_MONTH));
return calendar.getTime();
} catch (ParseException e) {
e.printStackTrace();
}
return null;
}
}

47
xujie-pms/src/main/java/com/xujie/pms/controller/EamController.java

@ -918,4 +918,51 @@ public class EamController {
eamService.deleteModalDetails(inData);
return R.ok();
}
//---------------点检计划-------------------
/**
* @Description 查询点检或者其他计划
* @Title eamPropertiesModelSearch
* @param data
* @author rq
* @date 2023/2/23 17:15
* @return R
* @throw
*/
@PostMapping(value="/eamWorkPlanSearch")
public R eamWorkPlanSearch(@RequestBody EamWorkPlanInData data){
PageUtils page = eamService.eamWorkPlanSearch(data);
return R.ok().put("page", page);
}
/**
* @Description TODO
* @Title eamWorkPlanSave
* @param inData
* @author rq
* @date 2023/2/23 17:40
* @return R
* @throw
*/
@PostMapping("/eamWorkPlanSave")
public R eamWorkPlanSave(@RequestBody EamWorkPlanInData inData){
eamService.eamWorkPlanSave(inData);
return R.ok();
}
/**
* @Description TODO
* @Title eamWorkPlanEdit
* @param inData
* @author rq
* @date 2023/2/23 17:40
* @return R
* @throw
*/
@PostMapping("/eamWorkPlanEdit")
public R eamWorkPlanEdit(@RequestBody EamWorkPlanInData inData){
eamService.eamWorkPlanEdit(inData);
return R.ok();
}
}

51
xujie-pms/src/main/java/com/xujie/pms/data/EamWorkPlanInData.java

@ -0,0 +1,51 @@
package com.xujie.pms.data;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import java.util.Date;
public class EamWorkPlanInData extends EamWorkPlanData{
private String objectDesc;
@DateTimeFormat(pattern = "yyyy-MM-dd")
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
private Date startDate;
@DateTimeFormat(pattern = "yyyy-MM-dd")
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
private Date endDate;
private String userId;
public String getObjectDesc() {
return objectDesc;
}
public void setObjectDesc(String objectDesc) {
this.objectDesc = objectDesc;
}
public Date getStartDate() {
return startDate;
}
public void setStartDate(Date startDate) {
this.startDate = startDate;
}
public Date getEndDate() {
return endDate;
}
public void setEndDate(Date endDate) {
this.endDate = endDate;
}
public String getUserId() {
return userId;
}
public void setUserId(String userId) {
this.userId = userId;
}
}

15
xujie-pms/src/main/java/com/xujie/pms/mapper/EamMapper.java

@ -267,4 +267,19 @@ public interface EamMapper {
* @throw
*/
void deleteModalDetails(EamPropertiesModelDetailData data);
//---------------点检计划-------------------
/**
* @param IPage<EamWorkPlanInData>
* @return List<EamWorkPlanInData>
* @Description 查询点检或者其他计划
* @Title
* @author rq
* @date 2023/1/29 13:34
* @throw
*/
IPage<EamWorkPlanInData> eamWorkPlanSearch(Page<EamWorkPlanInData> page, @Param("query") EamWorkPlanInData inData);
}

33
xujie-pms/src/main/java/com/xujie/pms/service/EamService.java

@ -502,4 +502,37 @@ public interface EamService {
* @throw
*/
void deleteModalDetails(EamPropertiesModelDetailData data);
//---------------点检计划-------------------
/**
* @param EamWorkPlanInData
* @return List<EamWorkPlanInData>
* @Description 查询点检或者其他计划
* @Title
* @author rq
* @date 2023/1/29 13:34
* @throw
*/
PageUtils eamWorkPlanSearch(EamWorkPlanInData inData);
/**
* @Description 保存计划
* @Title eamWorkPlanSave
* @param inData
* @author rq
* @date 2023/2/28 16:23
* @return void
* @throw
*/
void eamWorkPlanSave(EamWorkPlanInData inData);
/**
* @Description 修改计划
* @Title eamWorkPlanEdit
* @param inData
* @author rq
* @date 2023/2/28 16:23
* @return void
* @throw
*/
void eamWorkPlanEdit(EamWorkPlanInData inData);
}

99
xujie-pms/src/main/java/com/xujie/pms/service/Impl/EamServiceImpl.java

@ -2,7 +2,10 @@ package com.xujie.pms.service.Impl;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.xujie.common.exception.XJException;
import com.xujie.common.utils.DateUtil;
import com.xujie.common.utils.PageUtils;
import com.xujie.pms.dao.ProcedureDao;
import com.xujie.pms.data.*;
import com.xujie.pms.mapper.EamDao;
import com.xujie.pms.mapper.EamMapper;
@ -13,12 +16,12 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.*;
@Service
public class EamServiceImpl implements EamService {
@Autowired
private ProcedureDao procedureDao;
@Autowired
private EamDao eamDao;
@Autowired
@ -360,7 +363,12 @@ public class EamServiceImpl implements EamService {
}
List<EamPropertiesItemData> checkPropertiesItemLevel=eamDao.checkEamPropertiesItem(inData);
if(checkPropertiesItemLevel.size()>0){
throw new RuntimeException("该点检项目编码已存在!");
if("A".equals(inData.getItemType())) {
throw new RuntimeException("该点检项目编码已存在!");
}
if("B".equals(inData.getItemType())) {
throw new RuntimeException("该维保项目编码已存在!");
}
}
eamDao.saveNewEamPropertiesItem(inData);
responseData.setMsg("保存成功!");
@ -383,7 +391,12 @@ public class EamServiceImpl implements EamService {
}
List<EamPropertiesItemData> checkEamPropertiesItem=eamDao.checkEamPropertiesItem(inData);
if(checkEamPropertiesItem.size()==0){
throw new RuntimeException("该点检项目不存在请刷新数据!");
if("A".equals(inData.getItemType())) {
throw new RuntimeException("该点检项目不存在请刷新数据!");
}
if("B".equals(inData.getItemType())) {
throw new RuntimeException("该维保项目不存在请刷新数据!");
}
}
eamDao.eamPropertiesItemEdit(inData);
responseData.setMsg("修改成功!");
@ -445,7 +458,13 @@ public class EamServiceImpl implements EamService {
public void eamPropertiesModelSave(EamPropertiesModelHeaderData inData){
List<EamPropertiesModelHeaderData>checkPropertiesModel= eamMapper.checkPropertiesModel(inData);
if(checkPropertiesModel.size()>0){
throw new RuntimeException("该点检模板编码已存在!");
if("A".equals(inData.getFunctionType())) {
throw new RuntimeException("该点检模板编码已存在!");
}
if("B".equals(inData.getFunctionType())) {
throw new RuntimeException("该维保模板编码已存在!");
}
}
eamMapper.eamPropertiesModelSave(inData);
}
@ -467,11 +486,21 @@ public class EamServiceImpl implements EamService {
public void saveModalDetails(EamPropertiesModelDetailData inData){
List<EamPropertiesModelDetailData> checkDetail=eamMapper.checkModalDetails(inData);
if(checkDetail.size()>0){
throw new RuntimeException("该点检项目已存在在这个模板中!");
if("A".equals(inData.getFunctionType())) {
throw new RuntimeException("该点检项目已存在在这个模板中!");
}
if("B".equals(inData.getFunctionType())) {
throw new RuntimeException("该维保项目已存在在这个模板中!");
}
}
List<EamPropertiesModelDetailData> checkItem=eamMapper.checkItem(inData);
if(checkItem.size()==0){
throw new RuntimeException("该点检项目编码不存在!");
if("A".equals(inData.getFunctionType())) {
throw new RuntimeException("该点检项目编码不存在!");
}
if("B".equals(inData.getFunctionType())) {
throw new RuntimeException("该维保项目编码不存在!");
}
}
inData.setSeqNo(eamMapper.getModalDetailSeqNo(inData));
eamMapper.saveModalDetails(inData);
@ -481,4 +510,58 @@ public class EamServiceImpl implements EamService {
eamMapper.deleteModalDetails(inData);
}
//---------------点检计划-------------------
@Override
public PageUtils eamWorkPlanSearch(EamWorkPlanInData inData){
IPage<EamWorkPlanInData> resultList = this.eamMapper.eamWorkPlanSearch(
new Page<EamWorkPlanInData>(inData.getPage(), inData.getLimit()), inData);
return new PageUtils(resultList);
}
@Override
public void eamWorkPlanSave(EamWorkPlanInData inData){
//调用存储过程 执行
String site = inData.getSite();
String planDesc = inData.getPlanDesc();
String objectID = inData.getObjectID();
String functionType = inData.getFunctionType();
String propertiesCode = inData.getPropertiesCode();
String operator = inData.getOperator();
Integer planPeriod = inData.getPlanPeriod();
String planStartDate = DateUtil.getStringDate(inData.getPlanStartDate());
String planEndDate ="";
if(inData.getPlanEndDate()==null){
planEndDate ="";
}else {
planEndDate = DateUtil.getStringDate(inData.getPlanEndDate());
}
String userId = inData.getUserId();
String remark = inData.getRemark();
List<Object> params = new ArrayList<>();
params.add(site);
params.add(planDesc);
params.add(objectID);
params.add(functionType);
params.add(propertiesCode);
params.add(operator);
params.add(planPeriod);
params.add(planStartDate);
params.add(planEndDate);
params.add(userId);
params.add(remark);
//执行方法
List<Map<String, Object>> resultList = procedureDao.getProcedureData("eamWorkPlanSave", params);
//判断是否检验成功
String code = String.valueOf(resultList.get(0).get("resultCode"));
if ("400".equalsIgnoreCase(code)) {
String msg = String.valueOf(resultList.get(0).get("resultMsg"));
throw new XJException(msg, Integer.parseInt(code));
}
}
@Override
public void eamWorkPlanEdit(EamWorkPlanInData inData){
}
}

32
xujie-pms/src/main/resources/mapper/EamMapper.xml

@ -166,6 +166,7 @@
<if test="query.active != null and query.active != ''">
AND active = #{query.active}
</if>
and function_type =#{query.functionType}
</where>
</select>
@ -218,4 +219,35 @@ b.MinValue,b.ItemRemark,b.ItemType
</delete>
<select id="eamWorkPlanSearch" parameterType="com.xujie.pms.data.EamWorkPlanInData" resultType="com.xujie.pms.data.EamWorkPlanInData">
SELECT a.Site,a.PlanID,a.PlanDesc,a.ObjectID,a.FunctionType,a.PropertiesCode,a.Operator,a.PlanPeriod,a.Status,
a.PlanStartDate,a.PlanEndDate,a.CreatedDate,a.CreatedBy,a.UpdateDate,a.UpdateBy,a.Version,a.Remark
,a.NextWorkDate,b.ObjectDesc
FROM eam_workPlan a
left join eam_object b on a.Site=b.Site and a.ObjectID=b.ObjectID
<where>
AND a.FunctionType = #{query.functionType}
<if test="query.planID != null and query.planID != ''">
AND a.PlanID like '%' + #{query.planID} +'%'
</if>
<if test="query.planDesc != null and query.planDesc != ''">
AND a.PlanDesc like '%' + #{query.planDesc}+'%'
</if>
<if test="query.objectID != null and query.objectID != ''">
AND a.ObjectID like '%' + #{query.objectID} +'%'
</if>
<if test="query.status != null and query.status != ''">
AND a.status = #{query.status}
</if>
<if test="query.startDate != null ">
AND a.PlanStartDate >= #{query.startDate}
</if>
<if test="query.endDate != null ">
AND #{query.endDate} >= a.PlanStartDate
</if>
</where>
</select>
</mapper>
Loading…
Cancel
Save