Kaynağa Gözat

优化代码

java110 2 yıl önce
ebeveyn
işleme
33b8533c9b

+ 1 - 1
java110-bean/src/main/java/com/java110/dto/fee/FeeDetailDto.java

@@ -28,7 +28,7 @@ public class FeeDetailDto extends PageDto implements Serializable {
     public static final String STATE_RETURN_ERROR = "1200";
     public static final String STATE_RETURN_ERROR = "1200";
     public static final String STATE_RETURN_ORDER = "1300";
     public static final String STATE_RETURN_ORDER = "1300";
     public static final String STATE_NORMAL = "1400";
     public static final String STATE_NORMAL = "1400";
-
+    public static final String STATE_OWE = "1500"; // 欠费
     /**
     /**
      * 1000	退费中
      * 1000	退费中
      * 1100	已退费
      * 1100	已退费

+ 2 - 0
java110-db/src/main/resources/mapper/report/ReportFeeMonthStatisticsServiceDaoImplMapper.xml

@@ -1671,6 +1671,7 @@
         left join t_dict d3 on t.state = d3.status_cd and d3.table_name = "pay_fee_detail" and d3.table_columns =
         left join t_dict d3 on t.state = d3.status_cd and d3.table_name = "pay_fee_detail" and d3.table_columns =
         "state"
         "state"
         where t.status_cd = '0' and pf.status_cd = '0'
         where t.status_cd = '0' and pf.status_cd = '0'
+        and t.state != '1500'
         <if test="roomNum !=null and roomNum != ''">
         <if test="roomNum !=null and roomNum != ''">
             and br.room_num= #{roomNum}
             and br.room_num= #{roomNum}
         </if>
         </if>
@@ -1779,6 +1780,7 @@
         fad.status_cd = '0' and fad.state = '1002'
         fad.status_cd = '0' and fad.state = '1002'
         where t.status_cd = '0'
         where t.status_cd = '0'
         and pf.status_cd = '0'
         and pf.status_cd = '0'
+        and t.state != '1500'
         <if test="roomNum !=null and roomNum != ''">
         <if test="roomNum !=null and roomNum != ''">
             and br.room_num= #{roomNum}
             and br.room_num= #{roomNum}
         </if>
         </if>

+ 14 - 4
service-fee/src/main/java/com/java110/fee/cmd/fee/PayFeeCmd.java

@@ -13,10 +13,7 @@ import com.java110.core.log.LoggerFactory;
 import com.java110.core.smo.IComputeFeeSMO;
 import com.java110.core.smo.IComputeFeeSMO;
 import com.java110.dto.account.AccountDto;
 import com.java110.dto.account.AccountDto;
 import com.java110.dto.account.AccountDetailDto;
 import com.java110.dto.account.AccountDetailDto;
-import com.java110.dto.fee.FeeAttrDto;
-import com.java110.dto.fee.FeeConfigDto;
-import com.java110.dto.fee.FeeDto;
-import com.java110.dto.fee.FeeReceiptDetailDto;
+import com.java110.dto.fee.*;
 import com.java110.dto.owner.OwnerCarDto;
 import com.java110.dto.owner.OwnerCarDto;
 import com.java110.dto.parking.ParkingSpaceDto;
 import com.java110.dto.parking.ParkingSpaceDto;
 import com.java110.dto.repair.RepairDto;
 import com.java110.dto.repair.RepairDto;
@@ -1073,6 +1070,7 @@ public class PayFeeCmd extends Cmd {
         tmpPayFeeDetailPo.setPayableAmount("0");
         tmpPayFeeDetailPo.setPayableAmount("0");
         tmpPayFeeDetailPo.setStartTime(DateUtil.getFormatTimeStringB(endTime));
         tmpPayFeeDetailPo.setStartTime(DateUtil.getFormatTimeStringB(endTime));
         tmpPayFeeDetailPo.setEndTime(reqJson.getString("customStartTime"));
         tmpPayFeeDetailPo.setEndTime(reqJson.getString("customStartTime"));
+        tmpPayFeeDetailPo.setState(FeeDetailDto.STATE_OWE);
         tmpPayFeeDetailPo.setRemark("按缴费时间段缴费,这部分费用按欠费的方式重新生成,请在" + payObjNameRemark + "上查看");
         tmpPayFeeDetailPo.setRemark("按缴费时间段缴费,这部分费用按欠费的方式重新生成,请在" + payObjNameRemark + "上查看");
         int flag = payFeeDetailNewV1InnerServiceSMOImpl.savePayFeeDetailNew(tmpPayFeeDetailPo);
         int flag = payFeeDetailNewV1InnerServiceSMOImpl.savePayFeeDetailNew(tmpPayFeeDetailPo);
 
 
@@ -1107,16 +1105,28 @@ public class PayFeeCmd extends Cmd {
 
 
         List<FeeAttrPo> tmpFeeAttrPos = new ArrayList<>();
         List<FeeAttrPo> tmpFeeAttrPos = new ArrayList<>();
         FeeAttrPo tmpFeeAttrPo = null;
         FeeAttrPo tmpFeeAttrPo = null;
+        boolean hasDeadLineTime = false;
         for (FeeAttrDto tmpFeeAttrDto : feeAttrDtos) {
         for (FeeAttrDto tmpFeeAttrDto : feeAttrDtos) {
             tmpFeeAttrDto.setFeeId(tmpPayFeePo.getFeeId());
             tmpFeeAttrDto.setFeeId(tmpPayFeePo.getFeeId());
             tmpFeeAttrDto.setAttrId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_attrId, true));
             tmpFeeAttrDto.setAttrId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_attrId, true));
 
 
             if (FeeAttrDto.SPEC_CD_ONCE_FEE_DEADLINE_TIME.equals(tmpFeeAttrDto.getSpecCd())) {
             if (FeeAttrDto.SPEC_CD_ONCE_FEE_DEADLINE_TIME.equals(tmpFeeAttrDto.getSpecCd())) {
                 tmpFeeAttrDto.setValue(reqJson.getString("customStartTime"));
                 tmpFeeAttrDto.setValue(reqJson.getString("customStartTime"));
+                hasDeadLineTime = true;
             }
             }
             tmpFeeAttrPo = BeanConvertUtil.covertBean(tmpFeeAttrDto, FeeAttrPo.class);
             tmpFeeAttrPo = BeanConvertUtil.covertBean(tmpFeeAttrDto, FeeAttrPo.class);
             tmpFeeAttrPos.add(tmpFeeAttrPo);
             tmpFeeAttrPos.add(tmpFeeAttrPo);
         }
         }
+        //todo 没有结束时间时
+        if(!hasDeadLineTime){
+            tmpFeeAttrPo = new FeeAttrPo();
+            tmpFeeAttrPo.setAttrId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_attrId, true));
+            tmpFeeAttrPo.setFeeId(tmpPayFeePo.getFeeId());
+            tmpFeeAttrPo.setCommunityId(tmpFeeAttrPo.getCommunityId());
+            tmpFeeAttrPo.setSpecCd(FeeAttrDto.SPEC_CD_ONCE_FEE_DEADLINE_TIME);
+            tmpFeeAttrPo.setValue(reqJson.getString("customStartTime"));
+            tmpFeeAttrPos.add(tmpFeeAttrPo);
+        }
 
 
         feeAttrInnerServiceSMOImpl.saveFeeAttrs(tmpFeeAttrPos);
         feeAttrInnerServiceSMOImpl.saveFeeAttrs(tmpFeeAttrPos);