winter 1 год назад
Родитель
Сommit
23ec946ebc
10 измененных файлов: 351 добавлений и 1211 удалений
  1. +25
    -0
      mallinkAdmin/src/main/java/com/iformall/controller/contract/WxRentContractController.java
  2. +1
    -1
      mallinkAdmin/src/main/java/com/iformall/tenant/TenantInfoImpl.java
  3. +16
    -0
      mallinkAdmin/src/main/resources/db/migration/V202408000000001.sql
  4. +3
    -0
      mallinkService/src/main/java/com/iformall/domain/po/WxRentContract.java
  5. +41
    -0
      mallinkService/src/main/java/com/iformall/domain/po/WxRentContractFreePeriod.java
  6. +25
    -0
      mallinkService/src/main/java/com/iformall/domain/vo/RentContractFreePeriodVo.java
  7. +21
    -0
      mallinkService/src/main/java/com/iformall/mapper/WxRentContractFreePeriodMapper.java
  8. +7
    -0
      mallinkService/src/main/java/com/iformall/service/WxRentContractService.java
  9. +142
    -1210
      mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java
  10. +70
    -0
      mallinkService/src/main/resources/mapper/WxRentContractFreePeriodMapper.xml

+ 25
- 0
mallinkAdmin/src/main/java/com/iformall/controller/contract/WxRentContractController.java Просмотреть файл

@@ -191,6 +191,31 @@ public class WxRentContractController extends WxContractBaseController {
return new ResultData(wxRentContract.getPrice());
}
/**
* 获取免租期
*/
@GetMapping("getFreePeriod")
public ResultData getFreePeriod(@ModelAttribute WxRentContract wxRentContract) {
//查询
WxRentContract contract = wxRentContractService.selectById(wxRentContract.getId());
return new ResultData(wxRentContractService.getFreePeriods(contract));
}
/**
* 设置免租期
* @param wxRentContract
* @return
*/
@PostMapping("setFreePeriod")
public ResultData setFreePeriod(@RequestBody WxRentContract wxRentContract) {
if (null == wxRentContract.getFreePeriods()) {
return new ResultData(Result.ERROR,"免租期不能为空");
}
wxRentContract.updateTenantInfo(getTenantInfo());
wxRentContractService.saveFreePeriods(wxRentContract);
return new ResultData();
}
/**
* 新增第二步 防止前端3秒重复提交
* @param wxRentContract


+ 1
- 1
mallinkAdmin/src/main/java/com/iformall/tenant/TenantInfoImpl.java Просмотреть файл

@@ -190,7 +190,7 @@ public class TenantInfoImpl implements TenantInfo {
return true;
if ("com.iformall.mapper.WxAllBillMapper.insertBills".equals(ms.getId()))
return true;
if ("com.iformall.mapper.WxBillPropertyMapper.updateBills".equals(ms.getId()))
if ("com.iformall.mapper.WxRentContractFreePeriodMapper.inertPeriods".equals(ms.getId()))
return true;
if ("com.iformall.mapper.WxActivityJoinMapper.updateSendMsg".equals(ms.getId()))
return true;


+ 16
- 0
mallinkAdmin/src/main/resources/db/migration/V202408000000001.sql Просмотреть файл

@@ -107,3 +107,19 @@ create table wx_all_bill_98 like wx_all_bill;
create table wx_all_bill_99 like wx_all_bill;

drop table wx_all_bill;


CREATE TABLE `wx_rent_contract_free_period` (
`id` bigint(20) NOT NULL COMMENT '主键ID',
`tenant_id` varchar(5) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '租户ID',
`parent_tenant_id` varchar(5) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '父租户ID',
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
`start_date` datetime NOT NULL COMMENT '起租开始时间',
`end_date` datetime NOT NULL COMMENT '起租结束时间',
`rent_contract_id` bigint(20) NOT NULL COMMENT '合同编号',
`year_index` int(2) NOT NULL COMMENT '年序号',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci ROW_FORMAT=DYNAMIC COMMENT='租赁合同';



+ 3
- 0
mallinkService/src/main/java/com/iformall/domain/po/WxRentContract.java Просмотреть файл

@@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.iformall.common.SortColumn;
import com.iformall.domain.po.base.TenantEntity;
import com.iformall.domain.vo.RentContractFreePeriodVo;
import com.iformall.enums.EnumPriceUnit;
import com.iformall.enums.EnumRentContractAdjustPeriod;
import com.iformall.enums.EnumRentContractType;
@@ -564,5 +565,7 @@ public class WxRentContract extends TenantEntity {
@TableField(exist = false)
private Long propertyContractId;
@TableField(exist = false)
private List<RentContractFreePeriodVo> freePeriods;
}


+ 41
- 0
mallinkService/src/main/java/com/iformall/domain/po/WxRentContractFreePeriod.java Просмотреть файл

@@ -0,0 +1,41 @@
package com.iformall.domain.po;

import com.baomidou.mybatisplus.annotation.TableName;
import com.iformall.domain.po.base.TenantEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;
import java.util.Date;

/**
*/
@TableName(value = "wx_rent_contract_free_period")
@Data
@ToString(callSuper = true)
@EqualsAndHashCode(callSuper = true)
public class WxRentContractFreePeriod extends TenantEntity {

private static final long serialVersionUID = 7009117540201976664L;

@io.swagger.annotations.ApiModelProperty(value="id",name="id")
private Long id;

@io.swagger.annotations.ApiModelProperty(value="createTime",name="createTime")
private Date createTime;
@io.swagger.annotations.ApiModelProperty(value="updateTime",name="updateTime")
private Date updateTime;
@io.swagger.annotations.ApiModelProperty(value="createTime",name="createTime")
private Date startDate;
@io.swagger.annotations.ApiModelProperty(value="updateTime",name="updateTime")
private Date endDate;
@io.swagger.annotations.ApiModelProperty(value = "合同编号", name = "rentContractId")
private Long rentContractId;
@io.swagger.annotations.ApiModelProperty(value="年序号",name="yearIndex")
private Integer yearIndex;
}

+ 25
- 0
mallinkService/src/main/java/com/iformall/domain/vo/RentContractFreePeriodVo.java Просмотреть файл

@@ -0,0 +1,25 @@
package com.iformall.domain.vo;

import com.iformall.domain.po.WxRentContractFreePeriod;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
import java.util.List;

/**
*/

@Data
public class RentContractFreePeriodVo implements Serializable{
private static final long serialVersionUID = 4494858079134918638L;
//核销金额记录
private Integer yearIndex;
private Date start;
private Date end;

private List<WxRentContractFreePeriod> periods;

}

+ 21
- 0
mallinkService/src/main/java/com/iformall/mapper/WxRentContractFreePeriodMapper.java Просмотреть файл

@@ -0,0 +1,21 @@
package com.iformall.mapper;

import com.iformall.common.CommonMapper;
import com.iformall.domain.po.WxRentContractFreePeriod;

import org.apache.ibatis.annotations.Param;
import java.util.List;

/**
*/
public interface WxRentContractFreePeriodMapper extends CommonMapper<WxRentContractFreePeriod, Long> {

List<WxRentContractFreePeriod> findList(WxRentContractFreePeriod wxBillRent);

WxRentContractFreePeriod selectById(@Param("id")Long id,@Param("tenantId")String tenantId);
void inertPeriods(@Param("tenantId")String tenantId,@Param("list")List<WxRentContractFreePeriod> list);
void deleteByContract(WxRentContractFreePeriod wxBillRent);
}

+ 7
- 0
mallinkService/src/main/java/com/iformall/service/WxRentContractService.java Просмотреть файл

@@ -6,7 +6,9 @@ import com.iformall.domain.po.MallUserInfo;
import com.iformall.domain.po.WxAllBill;
import com.iformall.domain.po.WxMall;
import com.iformall.domain.po.WxRentContract;
import com.iformall.domain.po.WxRentContractFreePeriod;
import com.iformall.domain.po.base.TenantEntity;
import com.iformall.domain.vo.RentContractFreePeriodVo;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@@ -38,6 +40,7 @@ public interface WxRentContractService {
* @return
*/
Map<String, Object> getById(Long id);
WxRentContract selectById(Long id);

/**
* 保存或更新实体
@@ -147,4 +150,8 @@ public interface WxRentContractService {
void deletePrewBill(WxRentContract wxRentContract);
List<RentContractFreePeriodVo> getFreePeriods(WxRentContract wxRentContract);
void saveFreePeriods(WxRentContract wxRentContract);
}

+ 142
- 1210
mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java
Разница между файлами не показана из-за своего большого размера
Просмотреть файл


+ 70
- 0
mallinkService/src/main/resources/mapper/WxRentContractFreePeriodMapper.xml Просмотреть файл

@@ -0,0 +1,70 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.iformall.mapper.WxRentContractFreePeriodMapper">
<resultMap id="BaseResultMap" type="com.iformall.domain.po.WxRentContractFreePeriod">
<id column="id" jdbcType="BIGINT" property="id"/>
<result column="tenant_id" jdbcType="VARCHAR" property="tenantId"/>
<result column="parent_tenant_id" jdbcType="VARCHAR" property="parentTenantId" />
<result column="create_time" jdbcType="TIMESTAMP" property="createTime"/>
<result column="update_time" jdbcType="TIMESTAMP" property="updateTime"/>
<result column="start_date" jdbcType="TIMESTAMP" property="startDate"/>
<result column="end_date" jdbcType="TIMESTAMP" property="endDate"/>
<result column="rent_contract_id" jdbcType="BIGINT" property="rentContractId"/>
<result column="year_index" jdbcType="INTEGER" property="yearIndex"/>
</resultMap>

<sql id="allColumns">
`id`,`tenant_id`,`parent_tenant_id`,`create_time`,`update_time`,`start_date`,`end_date`,`rent_contract_id`,`year_index`
</sql>

<sql id="dynamicWhereConditions">
where 1=1
<if test=" null != id ">and `id` = #{id}</if>
<if test=" null != tenantId and '' != tenantId">
and `tenant_id` = #{tenantId}
</if>
<if test=" null != parentTenantId and '' != parentTenantId">
and `parent_tenant_id` = #{parentTenantId}
</if>
<if test=" null != rentContractId ">and `rent_contract_id` = #{rentContractId}</if>
<if test=" null != yearIndex ">and `year_index` = #{yearIndex}</if>
<if test=" null != ids ">
and id in
<foreach collection="ids" index="index" item="idItem" open="(" separator="," close=")">
#{idItem}
</foreach>
</if>
<if test=" null != sortColumns">order by ${sortColumns}</if>
</sql>

<select id="findList" parameterType="com.iformall.domain.po.WxRentContractFreePeriod" resultMap="BaseResultMap">
select
<include refid="allColumns"/>
from wx_rent_contract_free_period
<include refid="dynamicWhereConditions"/>
</select>
<select id="selectById" parameterType="HashMap" resultMap="BaseResultMap">
select
<include refid="allColumns"/>
from wx_rent_contract_free_period where id = #{id} and `tenant_id` = #{tenantId}
</select>
<insert id="inertPeriods" parameterType="HashMap">
INSERT INTO wx_rent_contract_free_period (
<include refid="allColumns"/>
)
VALUES
<foreach collection="list" item="item" index="index" separator=",">
(
#{item.id},#{item.tenantId},#{item.parentTenantId},#{item.createTime},#{item.updateTime},
#{item.startDate},#{item.endDate},#{item.rentContractId},#{item.yearIndex}
)
</foreach>
</insert>
<delete id="deleteByContract" parameterType="com.iformall.domain.po.WxRentContractFreePeriod">
delete from wx_rent_contract_free_period where `rent_contract_id` = #{rentContractId}
</delete>
</mapper>


Загрузка…
Отмена
Сохранить