Browse Source

修改开发

anderx 3 years ago
parent
commit
c0b1ca5c20

+ 10 - 0
src/main/java/com/goafanti/weChat/bo/OutPublicRelease.java

@@ -3,6 +3,7 @@ package com.goafanti.weChat.bo;
 import com.goafanti.common.model.PublicRelease;
 
 import java.util.Date;
+import java.util.List;
 
 public class OutPublicRelease extends PublicRelease {
 	/**
@@ -34,6 +35,15 @@ public class OutPublicRelease extends PublicRelease {
 	 */
 	private String assistAidName;
 	private String uids;
+	private List<OutPublicReleaseDetails> prdList;
+
+	public List<OutPublicReleaseDetails> getPrdList() {
+		return prdList;
+	}
+
+	public void setPrdList(List<OutPublicReleaseDetails> prdList) {
+		this.prdList = prdList;
+	}
 
 	public String getUids() {
 		return uids;

+ 21 - 10
src/main/java/com/goafanti/weChat/service/impl/PublicReleaseServiceImpl.java

@@ -79,6 +79,8 @@ public class PublicReleaseServiceImpl extends BaseMybatisDao<PublicReleaseMapper
 			List<String> split = Arrays.asList(in.getUids().split(","));
 			int userCount=split.size();
 			Double duration = in.getDuration();
+			//计算平均
+			double d = durationSum(duration, userCount);
 			Integer index=1;
 			for (String s : split) {
 				PublicReleaseDetails prd=new PublicReleaseDetails();
@@ -92,12 +94,22 @@ public class PublicReleaseServiceImpl extends BaseMybatisDao<PublicReleaseMapper
 				prd.setPrid(in.getId());
 				prd.setUid(s);
 				prd.setSignSum(0);
+				prd.setClockIn(0);
 				prd.setDistrictName(in.getDistrictName());
 				prd.setLatitude(in.getLatitude());
 				prd.setLongitude(in.getLongitude());
 				prd.setClockIn(in.getClockIn());
-				prd.setClockInTime(in.getClockInTime());
-				prd.setDuration(durationSum(duration,userCount,index));
+				if (index<userCount){
+					if (duration==0){
+						prd.setDuration(duration);
+					} else {
+						prd.setDuration(d);
+						duration=duration-d;
+					}
+					index++;
+				}else {
+					prd.setDuration(duration);
+				}
 				prdList.add(prd);
 			}
 			publicReleaseDetailsMapper.insertBatch(prdList);
@@ -114,20 +126,16 @@ public class PublicReleaseServiceImpl extends BaseMybatisDao<PublicReleaseMapper
 
 
 
-	private  double durationSum(Double duration, Integer sum,Integer index) {
-		if (sum==index){
-			return duration;
-		}else {
-			//获取有多少个0.5(打卡最小单位)
+	private  double durationSum(Double duration, Integer sum) {
 			Double counts= Math.floor(duration/0.5);
 			//计算当前时间
 			Double my=Math.floor(counts/sum)*0.5;
-			duration=duration-my;
+			if (my<0.5)return 0.5;
 			return my;
-		}
 	}
 
 
+
 	/**
 	 *
 	 * @param my 我的相关人员
@@ -637,6 +645,7 @@ public class PublicReleaseServiceImpl extends BaseMybatisDao<PublicReleaseMapper
 				}
 			}
 		}
+		out.setPrdList(publicReleaseDetailsMapper.selectByPCid(out.getId()));
 		return out;
 	}
 
@@ -644,7 +653,9 @@ public class PublicReleaseServiceImpl extends BaseMybatisDao<PublicReleaseMapper
 
 	@Override
 	public OutPublicRelease followDtails(String id) {
-		return	publicReleaseMapper.selectDtails(null,id);
+		OutPublicRelease out = publicReleaseMapper.selectDtails(null, id);
+		out.setPrdList(publicReleaseDetailsMapper.selectByPCid(out.getId()));
+		return out;
 	}
 
 	@SuppressWarnings("unchecked")