Compare commits

..

No commits in common. "3fe0fe901d7bf75cdc400d2f1626becaad4f05b2" and "b65007b909fe9dae1b6eeabd53dfa7c801e7d9d4" have entirely different histories.

2 changed files with 40 additions and 70 deletions

View File

@ -80,14 +80,11 @@ function getbaseList(init) {
html += "<td style='vertical-align:middle;' class='center'>"+ JY.Object.notEmpty(l.nums) + "</td>"; html += "<td style='vertical-align:middle;' class='center'>"+ JY.Object.notEmpty(l.nums) + "</td>";
html += "<td style='vertical-align:middle;' class='center'>"+ JY.Object.notEmpty(l.checker) + "</td>"; html += "<td style='vertical-align:middle;' class='center'>"+ JY.Object.notEmpty(l.checker) + "</td>";
html += "<td style='vertical-align:middle;' class='center'>"+ JY.Object.notEmpty(l.customerRep) + "</td>"; html += "<td style='vertical-align:middle;' class='center'>"+ JY.Object.notEmpty(l.customerRep) + "</td>";
if(l.isApproval==0 || l.isApproval=='0'){ if(l.isApproval==0 || l.isApproval=='0'){
html += "<td style='vertical-align:middle;' class='center'><span style='color: red'>未批准</span></td>"; html += "<td style='vertical-align:middle;' class='center'><span style='color: red'>未批准</span></td>";
}else{ }else{
html += "<td style='vertical-align:middle;' class='center'><span style='clolr:green;'>已批准</span></td>"; html += "<td style='vertical-align:middle;' class='center'><span style='clolr:green;'>已批准</span></td>";
} }
html += "<td style='vertical-align:middle;' class='center'>"+ JY.Object.notEmpty(l.auditUser) + "</td>";
html += "<td style='vertical-align:middle;' class='center'>"+ JY.Object.notEmpty(l.auditTime) + "</td>";
html += rowFunction(l.taskId,l.maModelId,l.isApproval,l.nums,l.id); html += rowFunction(l.taskId,l.maModelId,l.isApproval,l.nums,l.id);
html += "</tr>"; html += "</tr>";
} }

View File

@ -192,10 +192,9 @@ public class NewSettlementService {
Comparator.nullsFirst(Comparator.naturalOrder()))); Comparator.nullsFirst(Comparator.naturalOrder())));
ProjectLeaseCostDetail firstItem = items.get(0); ProjectLeaseCostDetail firstItem = items.get(0);
// //
if("612".equals(machineTypeId)) { if("1143".equals(machineTypeId)) {
System.err.println(machineTypeId); System.err.println(machineTypeId);
} }
System.err.println(machineTypeId);
double totalItemAmount = 0.0; double totalItemAmount = 0.0;
//循环逻辑处理 //循环逻辑处理
//默认在操作日期之前 存量 //默认在操作日期之前 存量
@ -384,74 +383,48 @@ public class NewSettlementService {
}else { }else {
if(delNum>0) { if(delNum>0) {
if(fasetStarTime==null &&currentCount==0) { String fasetStarTimeStr1 = formatLocalDateTimeToDate(fasetStarTime);
fasetStarTime=operateTime; String operateTimeStr = formatLocalDateTimeToDate(operateTime);
currentCount=currentCount+addNum; if(fasetStarTimeStr1.equals(operateTimeStr)) {
// 然后将领取的座位最后一天单独计算 operateTime = operateTime.plusDays(1);
double segmentAmount2 = currentCount * unitPrice * 1; }
Map<String, Object> segment2 = new HashMap<>(); //先把领取的
LocalDateTime nextDayTime = operateTime.plusDays(1); long daysBetween=getDay(fasetStarTime,operateTime);
segment2.put("startTime",operateTime.toString()); if(daysBetween==0) {
segment2.put("endTime", nextDayTime.toString()); daysBetween=1;
segment2.put("days", 1); add =false;
segment2.put("count", currentCount); }
segment2.put("amount", segmentAmount2);
segments.add(segment2);
totalItemAmount=totalItemAmount+segmentAmount2;
//然后减去
currentCount=currentCount-delNum;
fasetStarTime=nextDayTime;
String fasetStarTimeStr = formatLocalDateTimeToDate(fasetStarTime);
if(fasetStarTimeStr.equals(endTimeStr)) {
isLast=true;
}
}else {
String fasetStarTimeStr1 = formatLocalDateTimeToDate(fasetStarTime);
String operateTimeStr = formatLocalDateTimeToDate(operateTime);
if(fasetStarTimeStr1.equals(operateTimeStr)) {
operateTime = operateTime.plusDays(1);
}
//先把领取的
long daysBetween=getDay(fasetStarTime,operateTime);
if(daysBetween==0) {
daysBetween=1;
add =false;
}
double segmentAmount = currentCount * unitPrice * daysBetween;
Map<String, Object> segment = new HashMap<>();
segment.put("startTime",fasetStarTime.toString());
segment.put("endTime", operateTime.toString());
segment.put("days", daysBetween);
totalItemAmount=totalItemAmount+segmentAmount;
segment.put("count", currentCount);
segment.put("amount", segmentAmount);
segments.add(segment);
currentCount=currentCount+addNum;
// 然后将领取的座位最后一天单独计算 double segmentAmount = currentCount * unitPrice * daysBetween;
double segmentAmount2 = currentCount * unitPrice * 1; Map<String, Object> segment = new HashMap<>();
Map<String, Object> segment2 = new HashMap<>(); segment.put("startTime",fasetStarTime.toString());
LocalDateTime nextDayTime = operateTime.plusDays(1); segment.put("endTime", operateTime.toString());
segment2.put("startTime",operateTime.toString()); segment.put("days", daysBetween);
segment2.put("endTime", nextDayTime.toString()); totalItemAmount=totalItemAmount+segmentAmount;
segment2.put("days", 1); segment.put("count", currentCount);
segment2.put("count", currentCount); segment.put("amount", segmentAmount);
segment2.put("amount", segmentAmount2); segments.add(segment);
segments.add(segment2); currentCount=currentCount+addNum;
totalItemAmount=totalItemAmount+segmentAmount2;
//然后减去 // 然后将领取的座位最后一天单独计算
currentCount=currentCount-delNum; double segmentAmount2 = currentCount * unitPrice * 1;
fasetStarTime=nextDayTime; Map<String, Object> segment2 = new HashMap<>();
String fasetStarTimeStr = formatLocalDateTimeToDate(fasetStarTime); LocalDateTime nextDayTime = operateTime.plusDays(1);
if(fasetStarTimeStr.equals(endTimeStr)) { segment2.put("startTime",operateTime.toString());
isLast=true; segment2.put("endTime", nextDayTime.toString());
segment2.put("days", 1);
} segment2.put("count", currentCount);
segment2.put("amount", segmentAmount2);
segments.add(segment2);
totalItemAmount=totalItemAmount+segmentAmount2;
//然后减去
currentCount=currentCount-delNum;
fasetStarTime=nextDayTime;
String fasetStarTimeStr = formatLocalDateTimeToDate(fasetStarTime);
if(fasetStarTimeStr.equals(endTimeStr)) {
isLast=true;
} }
}else { }else {
//无之前的数据的 第一次进来的 //无之前的数据的 第一次进来的
if(fasetStarTime==null) { if(fasetStarTime==null) {