Browse Source

报销详情修改

anderx 1 year ago
parent
commit
6d0417835c

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

@@ -1108,7 +1108,7 @@
     <select id="releaseAndExpenseCount" resultType="com.goafanti.weChat.bo.releaseAndExpenseCountOut">
         select
         a.order_no orderNo,a.contract_no contractNo,b.buyer_name buyerName,b.salesman_name salesmanName,b.dep_name depName,
-        toc.actual_duration actualDuration ,
+        toc.actual_duration actualDuration ,toc.max_type as maxType,toc.max_status as maxStatus,
         a.total_amount totalAmount,a.settlement_amount settlementAmount,b.bid_type bidType,
         c.expenseCount,c.peopleCount,c.notExamine,c.rejectCount,d.paymentAmount,c.days,c.amount expenseAmount
         from t_order_new a left join t_order_mid b on a.order_no =b.order_no

+ 82 - 55
src/main/java/com/goafanti/weChat/bo/releaseAndExpenseCountOut.java

@@ -18,18 +18,18 @@ public class releaseAndExpenseCountOut {
     private String salesmanName;
 
     @Excel(name = "应公出工时")
-    private String  maxDuration;
+    private String maxDuration;
     @Excel(name = "实际公出工时")
     private String actualDuration;
     @Excel(name = "超出工时")
     private String exceedDuration;
-    @Excel(name = "合同金额",scale = 6)
+    @Excel(name = "合同金额", scale = 6)
     private BigDecimal totalAmount;
-    @Excel(name = "已收款",scale = 6)
+    @Excel(name = "已收款", scale = 6)
     private BigDecimal settlementAmount;
-    @Excel(name = "报销总额",scale = 6)
+    @Excel(name = "报销总额", scale = 6)
     private BigDecimal expenseAmount;
-    @Excel(name = "已付成本",scale = 6)
+    @Excel(name = "已付成本", scale = 6)
     private BigDecimal paymentAmount;
 
     @Excel(name = "报销人数")
@@ -43,6 +43,33 @@ public class releaseAndExpenseCountOut {
     @Excel(name = "驳回单数")
     private Integer rejectCount;
     private Integer exceedType;
+    private Integer maxType;
+    private Integer maxStatus;
+    private Integer bidType;
+
+    public Integer getMaxType() {
+        return maxType;
+    }
+
+    public void setMaxType(Integer maxType) {
+        this.maxType = maxType;
+    }
+
+    public Integer getMaxStatus() {
+        return maxStatus;
+    }
+
+    public void setMaxStatus(Integer maxStatus) {
+        this.maxStatus = maxStatus;
+    }
+
+    public Integer getBidType() {
+        return bidType;
+    }
+
+    public void setBidType(Integer bidType) {
+        this.bidType = bidType;
+    }
 
     public String getDepName() {
         return depName;
@@ -64,184 +91,184 @@ public class releaseAndExpenseCountOut {
         return orderNo;
     }
 
-    
+
     public void setOrderNo(String orderNo) {
         this.orderNo = orderNo;
     }
 
-    
+
     public String getContractNo() {
         return contractNo;
     }
 
-    
+
     public void setContractNo(String contractNo) {
         this.contractNo = contractNo;
     }
 
-    
+
     public String getBuyerName() {
         return buyerName;
     }
 
-    
+
     public void setBuyerName(String buyerName) {
         this.buyerName = buyerName;
     }
 
-    
+
     public String getMaxDuration() {
-        if(maxDuration==null){
-            maxDuration="0";
+        if (maxDuration == null) {
+            maxDuration = "0";
         }
         return maxDuration;
     }
 
-    
+
     public void setMaxDuration(String maxDuration) {
         this.maxDuration = maxDuration;
     }
 
-    
+
     public String getActualDuration() {
-        if(actualDuration==null){
-            actualDuration="0";
+        if (actualDuration == null) {
+            actualDuration = "0";
         }
         return actualDuration;
     }
 
-    
+
     public void setActualDuration(String actualDuration) {
         this.actualDuration = actualDuration;
     }
 
-    
+
     public String getExceedDuration() {
-        if(exceedDuration==null){
-            exceedDuration="0";
+        if (exceedDuration == null) {
+            exceedDuration = "0";
         }
         return exceedDuration;
     }
 
-    
+
     public void setExceedDuration(String exceedDuration) {
         this.exceedDuration = exceedDuration;
     }
 
-    
+
     public BigDecimal getTotalAmount() {
         return totalAmount;
     }
 
-    
+
     public void setTotalAmount(BigDecimal totalAmount) {
         this.totalAmount = totalAmount;
     }
 
-    
+
     public BigDecimal getSettlementAmount() {
         return settlementAmount;
     }
 
-    
+
     public void setSettlementAmount(BigDecimal settlementAmount) {
         this.settlementAmount = settlementAmount;
     }
 
-    
+
     public BigDecimal getExpenseAmount() {
-        if(expenseAmount==null){
+        if (expenseAmount == null) {
             return BigDecimal.ZERO;
         }
         return expenseAmount;
     }
 
-    
+
     public void setExpenseAmount(BigDecimal expenseAmount) {
         this.expenseAmount = expenseAmount;
     }
 
-    
+
     public BigDecimal getPaymentAmount() {
-        if(paymentAmount==null){
-            paymentAmount=BigDecimal.ZERO;
+        if (paymentAmount == null) {
+            paymentAmount = BigDecimal.ZERO;
         }
         return paymentAmount;
     }
 
-    
+
     public void setPaymentAmount(BigDecimal paymentAmount) {
         this.paymentAmount = paymentAmount;
     }
 
-    
+
     public Integer getPeopleCount() {
-        if(peopleCount==null){
-            peopleCount=0;
+        if (peopleCount == null) {
+            peopleCount = 0;
         }
         return peopleCount;
     }
 
-    
+
     public void setPeopleCount(Integer peopleCount) {
         this.peopleCount = peopleCount;
     }
 
-    
+
     public Integer getDays() {
-        if(days==null){
-            days=0;
+        if (days == null) {
+            days = 0;
         }
         return days;
     }
 
-    
+
     public void setDays(Integer days) {
         this.days = days;
     }
 
-    
+
     public Integer getExpenseCount() {
-        if(expenseCount==null){
-            expenseCount=0;
+        if (expenseCount == null) {
+            expenseCount = 0;
         }
         return expenseCount;
     }
 
-    
+
     public void setExpenseCount(Integer expenseCount) {
         this.expenseCount = expenseCount;
     }
 
-    
+
     public Integer getNotExamine() {
-        if(notExamine==null){
-            notExamine=0;
+        if (notExamine == null) {
+            notExamine = 0;
         }
         return notExamine;
     }
 
-    
+
     public void setNotExamine(Integer notExamine) {
         this.notExamine = notExamine;
     }
 
-    
+
     public Integer getRejectCount() {
-        if(rejectCount==null){
-            rejectCount=0;
+        if (rejectCount == null) {
+            rejectCount = 0;
         }
         return rejectCount;
     }
 
-    
+
     public void setRejectCount(Integer rejectCount) {
         this.rejectCount = rejectCount;
     }
 
     public Integer getExceedType() {
-        if(exceedType==null){
-            exceedType=0;
+        if (exceedType == null) {
+            exceedType = 0;
         }
         return exceedType;
     }

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

@@ -32,7 +32,6 @@ import org.springframework.web.socket.TextMessage;
 
 import java.math.BigDecimal;
 import java.text.ParseException;
-import java.time.LocalDate;
 import java.util.*;
 import java.util.concurrent.atomic.AtomicReference;
 import java.util.stream.Collectors;
@@ -2985,37 +2984,19 @@ public class PublicReleaseServiceImpl extends BaseMybatisDao<PublicReleaseMapper
 					e.setExceedType(1);
 				}
 			}
-			//获取年份
 			if (StringUtils.isNotEmpty(e.getOrderNo())){
-				List<OrderYearMaxDuration> yearMaxDurationList = orderYearMaxDurationMapper.selectByOrderNo(e.getOrderNo());
-				int year = LocalDate.now().getYear();
-				OrderYearMaxDuration useOyd = null;
-				for (int i = 0; i < yearMaxDurationList.size(); i++) {
-					OrderYearMaxDuration oyd = yearMaxDurationList.get(i);
-					//年份为0不是会员直接获取跳出循环,否则获取当前年份,获取不到获取最后一年
-					if (oyd.getYear()==0){
-						useOyd=oyd;
-						break;
-					}else {
-						if (oyd.getYear().equals(year)){
-							useOyd = oyd;
-							break;
-						}
-						if(i==yearMaxDurationList.size()-1&&useOyd==null){
-							useOyd = yearMaxDurationList.get(i);
-						}
-					}
-
-				}
-				if(useOyd.getStatus()==1){
-					e.setMaxDuration("不限制");
-					e.setExceedDuration("0");
-				}else {
-					e.setMaxDuration(useOyd.getMaxDuration().toString());
-					if (useOyd.getMaxDuration().compareTo(new BigDecimal(e.getActualDuration()))>=0){
+				BigDecimal maxDuration = new BigDecimal(e.getMaxDuration());
+				if (e.getMaxType()==2){
+					e.setMaxDuration("预"+e.getMaxDuration());
+				} else if (e.getMaxType()==0) {
+					e.setMaxDuration("0");
+				}
+				if(!e.getActualDuration().equals("0")){
+					System.out.println("orderNo="+e.getOrderNo()+",actualDuration="+e.getActualDuration()+",maxDuration="+maxDuration);
+					if (maxDuration.compareTo(new BigDecimal(e.getActualDuration()))>=0){
 						e.setExceedDuration("0");
 					}else {
-						e.setExceedDuration(new BigDecimal(e.getActualDuration()).subtract(useOyd.getMaxDuration()).toString());
+						e.setExceedDuration(new BigDecimal(e.getActualDuration()).subtract(maxDuration).toString());
 					}
 				}
 			}