Browse Source

增加时间限制

Administrator 4 years ago
parent
commit
b00a0b1b4b

+ 4 - 0
src/main/java/com/goafanti/admin/controller/AdminReleaseApiController.java

@@ -44,6 +44,10 @@ public class AdminReleaseApiController extends CertifyApiController{
 			res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR,"公出地点"));
 			return res;
 		}
+		if (publicReleaseService.checkTime(in)) {
+			res.getError().add(buildError("公出时段已经被使用!","公出时段已经被使用!"));
+			return res;
+		}
 		
 		res.setData(publicReleaseService.addPublicRelease(in));
 		return res;

+ 2 - 0
src/main/java/com/goafanti/admin/service/PublicReleaseService.java

@@ -34,4 +34,6 @@ public interface PublicReleaseService {
 
 	OutPublicRelease followDtails(String id);
 
+	boolean checkTime(InputPublicRelease in);
+
 }

+ 25 - 7
src/main/java/com/goafanti/admin/service/impl/PublicReleaseServiceImpl.java

@@ -76,13 +76,6 @@ public class PublicReleaseServiceImpl extends BaseMybatisDao<PublicReleaseMapper
 		in.setCreateTime(date);
 		in.setStatus(1);
 		in.setAid(TokenManager.getAdminId());
-		try {
-			in.setReleaseStart(DateUtils.parseDate(in.getReleaseStarts(), AFTConstants.YYYYMMDDHHMMSS));
-			in.setReleaseEnd(DateUtils.parseDate(in.getReleaseEnds(), AFTConstants.YYYYMMDDHHMMSS));
-		} catch (ParseException e) {
-			e.printStackTrace();
-			throw new BusinessException("转换异常");
-		}
 		publicReleaseMapper.insertSelectiveGetId(in);
 		AdminListBo my = adminMapper.getDeptNameByAid(TokenManager.getAdminId());
 		Admin a=adminMapper.selectByPrimaryKey(my.getSuperiorId());
@@ -310,6 +303,31 @@ public class PublicReleaseServiceImpl extends BaseMybatisDao<PublicReleaseMapper
 		return (Pagination<OutPublicDtails>) findPage("listPublicDtails", "countPublicDtails", map, in.getPageNo(), in.getPageSize());
 	}
 
+
+
+
+
+
+
+
+	@Override
+	public boolean checkTime(InputPublicRelease in) {
+		try {
+			in.setReleaseStart(DateUtils.parseDate(in.getReleaseStarts(), AFTConstants.YYYYMMDDHHMMSS));
+			in.setReleaseEnd(DateUtils.parseDate(in.getReleaseEnds(), AFTConstants.YYYYMMDDHHMMSS));
+		} catch (ParseException e) {
+			e.printStackTrace();
+			throw new BusinessException("转换异常");
+		}
+		Long l=in.getReleaseEnd().getTime()-in.getReleaseStart().getTime();
+		Date x=new Date(in.getReleaseStart().getTime()+(l/2));
+		int i=publicReleaseMapper.checkTime(x);
+		if (i>0) {
+			return true;
+		}
+		return false;
+	}
+
 	
 
 	

+ 4 - 0
src/main/java/com/goafanti/common/dao/PublicReleaseMapper.java

@@ -1,5 +1,7 @@
 package com.goafanti.common.dao;
 
+import java.util.Date;
+
 import org.apache.ibatis.annotations.Param;
 
 import com.goafanti.admin.bo.OutPublicRelease;
@@ -52,4 +54,6 @@ public interface PublicReleaseMapper {
 
 	OutPublicRelease selectDtails(@Param("id") Integer id,@Param("ufid")String ufid);
 
+	int checkTime(Date x);
+
 }

+ 4 - 0
src/main/java/com/goafanti/common/mapper/PublicReleaseMapper.xml

@@ -613,4 +613,8 @@ a.annex_url annexUrl ,a.remarks,a.duration ,a.valid_date validDate ,a.latitude ,
 	</if>
   </select>
   
+  <select id="checkTime" resultType="java.lang.Integer">
+  select count(*) from public_release where release_start &gt; #{start} and release_start &lt; #{end} 
+  </select>
+  
 </mapper>