瀏覽代碼

Merge branch 'feature-bieao' of lift-manager/lift-server into develop

bieao 5 年之前
父節點
當前提交
ba4da7ee0e
共有 17 個文件被更改,包括 273 次插入75 次删除
  1. 1 1
      lift-business-service/src/main/java/cn/com/ty/lift/business/capital/controller/CapitalRepairController.java
  2. 10 0
      lift-business-service/src/main/java/cn/com/ty/lift/business/capital/dao/mapper/CapitalRepairLiftRelevanceMapper.java
  3. 41 3
      lift-business-service/src/main/java/cn/com/ty/lift/business/capital/service/SignInService.java
  4. 4 4
      lift-business-service/src/main/java/cn/com/ty/lift/business/contract/controller/PaymentController.java
  5. 11 1
      lift-business-service/src/main/java/cn/com/ty/lift/business/contract/dao/entity/Payment.java
  6. 7 0
      lift-business-service/src/main/java/cn/com/ty/lift/business/contract/dao/entity/model/request/PaymentDetailRequest.java
  7. 0 7
      lift-business-service/src/main/java/cn/com/ty/lift/business/contract/dao/entity/model/response/PaymentDetailResponse.java
  8. 55 0
      lift-business-service/src/main/java/cn/com/ty/lift/business/contract/dao/entity/model/response/PaymentListResponse.java
  9. 10 40
      lift-business-service/src/main/java/cn/com/ty/lift/business/contract/dao/entity/model/response/PaymentResponse.java
  10. 7 3
      lift-business-service/src/main/java/cn/com/ty/lift/business/contract/dao/mapper/PaymentMapper.java
  11. 16 4
      lift-business-service/src/main/java/cn/com/ty/lift/business/contract/service/PaymentService.java
  12. 16 6
      lift-business-service/src/main/java/cn/com/ty/lift/business/project/controller/ProjectAppController.java
  13. 10 0
      lift-business-service/src/main/java/cn/com/ty/lift/business/project/service/ProjectAppService.java
  14. 7 0
      lift-business-service/src/main/java/cn/com/ty/lift/business/project/service/ProjectUserService.java
  15. 3 1
      lift-business-service/src/main/resources/locale/response.properties
  16. 19 0
      lift-business-service/src/main/resources/mapper/capital/CapitalRepairLiftRelevanceMapper.xml
  17. 56 5
      lift-business-service/src/main/resources/mapper/contract/PaymentMapper.xml

+ 1 - 1
lift-business-service/src/main/java/cn/com/ty/lift/business/capital/controller/CapitalRepairController.java

@@ -121,7 +121,7 @@ public class CapitalRepairController {
      */
     @PostMapping("userList")
     public RestResponse userList(@Valid @RequestBody CapitalDetailRequest request){
-        List<ProjectUserResponse> userList = projectUserService.getUserList(request.getId(), request.getMtCompanyId());
+        List<ProjectUserResponse> userList = projectUserService.getCapitalUserList(request.getId(), request.getMtCompanyId());
         if (CollUtil.isEmpty(userList)) {
             return RestResponse.success();
         }

+ 10 - 0
lift-business-service/src/main/java/cn/com/ty/lift/business/capital/dao/mapper/CapitalRepairLiftRelevanceMapper.java

@@ -2,6 +2,8 @@ package cn.com.ty.lift.business.capital.dao.mapper;
 
 import cn.com.ty.lift.business.capital.dao.entity.CapitalRepairLiftRelevance;
 import cn.com.ty.lift.business.capital.dao.entity.model.request.CapitalLiftRequest;
+import cn.com.ty.lift.business.project.dao.entity.model.request.CompanyRequest;
+import cn.com.ty.lift.business.project.dao.entity.model.response.ProjectCompanyResponse;
 import cn.com.ty.lift.business.project.dao.entity.model.response.ProjectLiftResponse;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
@@ -21,4 +23,12 @@ public interface CapitalRepairLiftRelevanceMapper extends BaseMapper<CapitalRepa
      * @date 2020/4/15 4:15 下午
      */
     IPage<ProjectLiftResponse> findListByProjectId(IPage<ProjectLiftResponse> page, @Param("request") CapitalLiftRequest request);
+
+    /**
+     * @param request 公司id
+     * @return IPage<ProjectCompanyResponse> 公司项目分页列表
+     * @description app端 根据公司id查询公司大修项目列表
+     * @date 2019/12/31 4:23 PM
+     */
+    IPage<ProjectCompanyResponse> findCapitalListByCompanyId(IPage<ProjectCompanyResponse> page, @Param("request") CompanyRequest request);
 }

+ 41 - 3
lift-business-service/src/main/java/cn/com/ty/lift/business/capital/service/SignInService.java

@@ -8,9 +8,13 @@ import cn.com.ty.lift.business.capital.dao.entity.model.response.SignInResponse;
 import cn.com.ty.lift.business.capital.dao.entity.model.response.SignRecord;
 import cn.com.ty.lift.business.capital.dao.entity.model.response.SignRecordGroupResult;
 import cn.com.ty.lift.business.capital.dao.mapper.SignInMapper;
+import cn.com.ty.lift.business.framework.util.MessageUtils;
 import cn.com.ty.lift.business.project.dao.entity.model.response.ProjectUserResponse;
 import cn.com.ty.lift.business.project.service.ProjectUserService;
 import cn.com.ty.lift.common.constants.CommonEnum;
+import cn.com.xwy.boot.web.dto.RestResponse;
+import cn.hutool.core.collection.CollUtil;
+import cn.hutool.core.util.ObjectUtil;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@@ -19,6 +23,7 @@ import org.springframework.stereotype.Service;
 
 import javax.annotation.Resource;
 import java.time.LocalDate;
+import java.time.LocalTime;
 import java.util.*;
 import java.util.stream.Collectors;
 
@@ -36,14 +41,46 @@ public class SignInService extends ServiceImpl<SignInMapper, SignIn> {
      @Resource
      private CapitalRepairService capitalRepairService;
 
+    /**
+     * @param mtCompanyId 公司id
+     * @param projectId 项目id
+     * @param userId 用户id
+     * @return 签到记录
+     * @description 用户签到记录
+     * @date 2020/4/20 9:29 下午
+     */
+    public SignIn getOne(Long mtCompanyId, Long projectId, Long userId) {
+        LambdaQueryWrapper<SignIn> lambdaQueryWrapper = new QueryWrapper<SignIn>().lambda();
+        lambdaQueryWrapper.eq(SignIn::getProjectId, projectId);
+        lambdaQueryWrapper.eq(SignIn::getMtCompanyId, mtCompanyId);
+        lambdaQueryWrapper.eq(SignIn::getUserId, userId);
+        lambdaQueryWrapper.eq(SignIn::getSignDate, LocalDate.now());
+        return getOne(lambdaQueryWrapper);
+    }
+
     /**
      * @param entry 用户签到信息
      * @return 是否成功
      * @description 大修签到
-     * @date 2020/2/5 12:42 下午
+     * @date 2020/4/20 9:29 下午
      */
-    public boolean add(SignIn entry) {
-        return save(entry);
+    public RestResponse signIn(SignIn entry) {
+        SignIn signIn = getOne(entry.getMtCompanyId(), entry.getProjectId(), entry.getUserId());
+        if (ObjectUtil.isNotEmpty(signIn)) {
+            LocalTime approachTime = signIn.getApproachTime();
+            LocalTime leavingTime = signIn.getLeavingTime();
+            if (approachTime != null && leavingTime != null) {
+                //今日已签到
+                return RestResponse.success(null, MessageUtils.get("msg.sign.limit"));
+            }
+            signIn.setLeavingTime(LocalTime.now());
+            saveOrUpdate(signIn);
+        } else {
+            entry.setSignDate(LocalDate.now());
+            entry.setApproachTime(LocalTime.now());
+            save(entry);
+        }
+        return  RestResponse.success(null, MessageUtils.get("msg.sign.success"));
     }
 
 
@@ -113,6 +150,7 @@ public class SignInService extends ServiceImpl<SignInMapper, SignIn> {
         response.setCapitalRepair(capital);
         List<LocalDate> list = getSignDate(request);
         int size = list.size();
+        if (CollUtil.isEmpty(list)) return response;
         int count = size / (int) request.getPageSize();
         Map<String, Object> paramMap = new HashMap<>();
         int minIndex = (int) ((request.getPageNum() - 1) * request.getPageSize());

+ 4 - 4
lift-business-service/src/main/java/cn/com/ty/lift/business/contract/controller/PaymentController.java

@@ -5,7 +5,7 @@ import cn.com.ty.lift.business.contract.dao.entity.model.request.ContractsHistor
 import cn.com.ty.lift.business.contract.dao.entity.model.request.PaymentDetailRequest;
 import cn.com.ty.lift.business.contract.dao.entity.model.request.PaymentModifyRequest;
 import cn.com.ty.lift.business.contract.dao.entity.model.request.PaymentRequest;
-import cn.com.ty.lift.business.contract.dao.entity.model.response.PaymentDetailResponse;
+import cn.com.ty.lift.business.contract.dao.entity.model.response.PaymentListResponse;
 import cn.com.ty.lift.business.contract.dao.entity.model.response.PaymentResponse;
 import cn.com.ty.lift.business.contract.service.PaymentHistoryService;
 import cn.com.ty.lift.business.contract.service.PaymentService;
@@ -25,7 +25,7 @@ import javax.validation.Valid;
 /**
  * @author bieao
  * @date 2020/2/20
- * @description 款管理控制层
+ * @description 款管理控制层
  */
 @RestController
 @RequestMapping("payment")
@@ -45,7 +45,7 @@ public class PaymentController {
      */
     @PostMapping("list")
     public RestResponse list(@Valid @RequestBody PaymentRequest request) {
-        IPage<PaymentResponse> page = paymentService.list(request);
+        IPage<PaymentListResponse> page = paymentService.list(request);
         if (CollUtil.isEmpty(page.getRecords())) {
             return RestResponse.success();
         }
@@ -60,7 +60,7 @@ public class PaymentController {
      */
     @PostMapping("detail")
     public RestResponse detail(@Valid @RequestBody PaymentDetailRequest request){
-       PaymentDetailResponse response = paymentService.detail(request);
+        PaymentResponse response = paymentService.detail(request);
        if (ObjectUtil.isEmpty(response)){
            return RestResponse.success();
        }

+ 11 - 1
lift-business-service/src/main/java/cn/com/ty/lift/business/contract/dao/entity/Payment.java

@@ -114,5 +114,15 @@ public class Payment extends BaseEntity {
 	/**
 	 * 期数
 	 */
-	private Integer numberPeriods;
+	private String periods;
+
+	/**
+	 * 项目名称
+	 */
+	private String CostName;
+
+	/**
+	 * 项目描述
+	 */
+	private String CostDesc;
 }

+ 7 - 0
lift-business-service/src/main/java/cn/com/ty/lift/business/contract/dao/entity/model/request/PaymentDetailRequest.java

@@ -2,6 +2,7 @@ package cn.com.ty.lift.business.contract.dao.entity.model.request;
 
 import lombok.Data;
 
+import javax.validation.constraints.NotEmpty;
 import javax.validation.constraints.NotNull;
 
 /**
@@ -23,4 +24,10 @@ public class PaymentDetailRequest {
      */
     @NotNull(message = "notEmpty")
     private Long mtCompanyId;
+
+    /**
+     * 付款类型  (1:维保,2:大修)
+     */
+    @NotEmpty(message = "notEmpty")
+    private String paymentType;
 }

+ 0 - 7
lift-business-service/src/main/java/cn/com/ty/lift/business/contract/dao/entity/model/response/PaymentDetailResponse.java

@@ -1,11 +1,9 @@
 package cn.com.ty.lift.business.contract.dao.entity.model.response;
 
-import cn.com.ty.lift.business.contract.dao.entity.Payment;
 import lombok.Data;
 
 import java.math.BigDecimal;
 import java.time.LocalDate;
-import java.util.List;
 
 /**
  * @author bieao
@@ -66,9 +64,4 @@ public class PaymentDetailResponse {
      * 备注
      */
     private String remarks;
-
-    /**
-     * 付款明细
-     */
-    private List<Payment> paymentList;
 }

+ 55 - 0
lift-business-service/src/main/java/cn/com/ty/lift/business/contract/dao/entity/model/response/PaymentListResponse.java

@@ -0,0 +1,55 @@
+package cn.com.ty.lift.business.contract.dao.entity.model.response;
+
+import lombok.Data;
+
+import java.math.BigDecimal;
+import java.time.LocalDate;
+
+/**
+ * @author bieao
+ * @date 2020/2/20
+ * @description 收款列表返回体
+ */
+@Data
+public class PaymentListResponse {
+    /**
+     * 合同id
+     */
+    private Long contractId;
+    /**
+     * 项目id
+     */
+    private Long projectId;
+    /**
+     * 合同编号
+     */
+    private String contractCode;
+    /**
+     * 项目名称
+     */
+    private String projectName;
+    /**
+     * 收款单号
+     */
+    private String code;
+    /**
+     * 应收金额
+     */
+    private BigDecimal planMoney;
+    /**
+     * 实收金额
+     */
+    private BigDecimal workMoney;
+    /**
+     * 应收时间
+     */
+    private LocalDate planDate;
+    /**
+     * 实收时间
+     */
+    private LocalDate workDate;
+    /**
+     * 收款人
+     */
+    private String cashierUser;
+}

+ 10 - 40
lift-business-service/src/main/java/cn/com/ty/lift/business/contract/dao/entity/model/response/PaymentResponse.java

@@ -1,55 +1,25 @@
 package cn.com.ty.lift.business.contract.dao.entity.model.response;
 
+import cn.com.ty.lift.business.contract.dao.entity.Payment;
 import lombok.Data;
 
-import java.math.BigDecimal;
-import java.time.LocalDate;
+import java.util.List;
 
 /**
  * @author bieao
- * @date 2020/2/20
- * @description 付款列表返回体
+ * @date 2020/4/20
+ * @description 维保付款详情
  */
 @Data
 public class PaymentResponse {
+
     /**
-     * 合同id
-     */
-    private Long contractId;
-    /**
-     * 项目id
-     */
-    private Long projectId;
-    /**
-     * 合同编号
-     */
-    private String contractCode;
-    /**
-     * 项目名称
-     */
-    private String projectName;
-    /**
-     * 收款单号
-     */
-    private String paymentCode;
-    /**
-     * 应收金额
-     */
-    private BigDecimal receivableAmount;
-    /**
-     * 已收金额
-     */
-    private BigDecimal receivedAmount;
-    /**
-     * 未收金额
-     */
-    private BigDecimal unCollectedAmount;
-    /**
-     * 应收时间
+     * 维保付款详情
      */
-    private LocalDate planDate;
+   private PaymentDetailResponse detail;
+
     /**
-     * 收款人
+     * 付款列表
      */
-    private String cashierUser;
+   private List<Payment> paymentList;
 }

+ 7 - 3
lift-business-service/src/main/java/cn/com/ty/lift/business/contract/dao/mapper/PaymentMapper.java

@@ -4,7 +4,7 @@ import cn.com.ty.lift.business.contract.dao.entity.Payment;
 import cn.com.ty.lift.business.contract.dao.entity.model.request.PaymentDetailRequest;
 import cn.com.ty.lift.business.contract.dao.entity.model.request.PaymentRequest;
 import cn.com.ty.lift.business.contract.dao.entity.model.response.PaymentDetailResponse;
-import cn.com.ty.lift.business.contract.dao.entity.model.response.PaymentResponse;
+import cn.com.ty.lift.business.contract.dao.entity.model.response.PaymentListResponse;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import org.apache.ibatis.annotations.Param;
@@ -16,8 +16,12 @@ import org.apache.ibatis.annotations.Param;
  */
 public interface PaymentMapper extends BaseMapper<Payment> {
 
-    IPage<PaymentResponse> findByCondition(IPage<PaymentResponse> page, @Param("request") PaymentRequest request);
+    IPage<PaymentListResponse> findProjectByCondition(IPage<PaymentListResponse> page, @Param("request") PaymentRequest request);
 
-    PaymentDetailResponse queryContractDetailById(@Param("request") PaymentDetailRequest request);
+    IPage<PaymentListResponse> findCapitalByCondition(IPage<PaymentListResponse> page, @Param("request") PaymentRequest request);
+
+    PaymentDetailResponse queryProjectDetailById(@Param("request") PaymentDetailRequest request);
+
+    PaymentDetailResponse queryCapitalDetailById(@Param("request") PaymentDetailRequest request);
 
 }

+ 16 - 4
lift-business-service/src/main/java/cn/com/ty/lift/business/contract/service/PaymentService.java

@@ -4,6 +4,7 @@ import cn.com.ty.lift.business.contract.dao.entity.Payment;
 import cn.com.ty.lift.business.contract.dao.entity.model.request.PaymentDetailRequest;
 import cn.com.ty.lift.business.contract.dao.entity.model.request.PaymentRequest;
 import cn.com.ty.lift.business.contract.dao.entity.model.response.PaymentDetailResponse;
+import cn.com.ty.lift.business.contract.dao.entity.model.response.PaymentListResponse;
 import cn.com.ty.lift.business.contract.dao.entity.model.response.PaymentResponse;
 import cn.com.ty.lift.business.contract.dao.mapper.PaymentMapper;
 import cn.com.ty.lift.common.utils.DateUtils;
@@ -29,8 +30,12 @@ public class PaymentService extends ServiceImpl<PaymentMapper, Payment> {
      * @description 查询付款列表
      * @date 2020/2/20 3:10 下午
      */
-    public IPage<PaymentResponse> list(PaymentRequest request){
-        return baseMapper.findByCondition(request.getPage(),request);
+    public IPage<PaymentListResponse> list(PaymentRequest request){
+        //大修列表
+        if ("2".equals(request.getPaymentType())) {
+            return baseMapper.findCapitalByCondition(request.getPage(), request);
+        }
+        return baseMapper.findProjectByCondition(request.getPage(), request);
     }
 
     /**
@@ -39,12 +44,19 @@ public class PaymentService extends ServiceImpl<PaymentMapper, Payment> {
      * @description 查询付款详情
      * @date 2020/2/24 10:47 上午
      */
-    public PaymentDetailResponse detail(PaymentDetailRequest request){
-        PaymentDetailResponse response = baseMapper.queryContractDetailById(request);
+    public PaymentResponse detail(PaymentDetailRequest request){
+        PaymentResponse response = new PaymentResponse();
+        PaymentDetailResponse detail = new PaymentDetailResponse();
+        //大修收款详情
+        if ("2".equals(request.getPaymentType())) {
+            detail = baseMapper.queryCapitalDetailById(request);
+        }
+        detail = baseMapper.queryProjectDetailById(request);
         LambdaQueryWrapper<Payment> lambdaQueryWrapper = new QueryWrapper<Payment>().lambda();
         lambdaQueryWrapper.eq(Payment::getContractsId, request.getId());
         List<Payment> paymentList = list(lambdaQueryWrapper);
         response.setPaymentList(paymentList);
+        response.setDetail(detail);
         return response;
     }
 

+ 16 - 6
lift-business-service/src/main/java/cn/com/ty/lift/business/project/controller/ProjectAppController.java

@@ -210,12 +210,7 @@ public class ProjectAppController {
      */
     @PostMapping("capital/sign/in")
     public RestResponse signIn(@RequestBody SignIn entry){
-        boolean result = signInService.add(entry);
-        if (result) {
-            return RestResponse.success(null, MessageUtils.get("msg.add.success"));
-        } else {
-            return RestResponse.fail(MessageUtils.get("msg.add.fail"));
-        }
+       return signInService.signIn(entry);
     }
 
     /**
@@ -248,6 +243,21 @@ public class ProjectAppController {
         return RestResponse.success(list, MessageUtils.get("msg.query.success"));
     }
 
+   /**
+    * @param request 公司id
+    * @return RestResponse 项目列表
+    * @description 根据公司id查询公司下大修项目列表
+    * @date 2020/4/20 8:18 下午
+    */
+    @PostMapping("capital/project/list")
+    public RestResponse capitalProjectList(@Valid @RequestBody CompanyRequest request) {
+        IPage<ProjectCompanyResponse> page = projectAppService.capitalProjectList(request);
+        if (CollUtil.isEmpty(page.getRecords())) {
+            return RestResponse.success();
+        }
+        return RestResponse.success(page, MessageUtils.get("msg.query.success"));
+    }
+
     /**
      * @param request 大修项目id
      * @return RestResponse 电梯列表

+ 10 - 0
lift-business-service/src/main/java/cn/com/ty/lift/business/project/service/ProjectAppService.java

@@ -131,4 +131,14 @@ public class ProjectAppService extends ServiceImpl<ProjectMapper, Project> {
         return capitalRepairLiftRelevanceMapper.findListByProjectId(request.getPage(), request);
     }
 
+    /**
+     * @param request 公司id
+     * @return RestResponse 项目列表
+     * @description 根据公司id查询公司下大修项目列表
+     * @date 2020/4/20 8:18 下午
+     */
+    public IPage<ProjectCompanyResponse> capitalProjectList(CompanyRequest request) {
+        return capitalRepairLiftRelevanceMapper.findCapitalListByCompanyId(request.getPage(), request);
+    }
+
 }

+ 7 - 0
lift-business-service/src/main/java/cn/com/ty/lift/business/project/service/ProjectUserService.java

@@ -33,6 +33,13 @@ public class ProjectUserService extends ServiceImpl<ProjectUserMapper, ProjectUs
         return baseMapper.findUserListById(projectId);
     }
 
+    public List<ProjectUserResponse> getCapitalUserList(Long projectId, Long mtCompanyId) {
+        List<ProjectUserResponse> userList = baseMapper.findUserListById(projectId, mtCompanyId);
+        return userList.stream().filter(user -> (
+                CommonEnum.DefaultRole.MTWORK.getCode().equals(user.getUserRole())
+        )).sorted(Comparator.comparing(ProjectUserResponse::getUserRole)).collect(Collectors.toList());
+    }
+
     /**
      * @param request 项目ID、公司ID
      * @return List<ProjectUser> userList项目组成员列表

+ 3 - 1
lift-business-service/src/main/resources/locale/response.properties

@@ -23,4 +23,6 @@ msg.error.time=\u9996\u4FDD\u65F6\u95F4\u5E94\u5728\u9879\u76EE\u5F00\u59CB\u65F
 msg.error.lift.status=\u8BE5\u7535\u68AF\u5DF2\u5F03\u7528
 msg.error.person.scope=\u4EBA\u5458\u4E0D\u5728\u7535\u68AF\u9644\u8FD1\uFF0C\u65E0\u6CD5\u5F00\u59CB\u4FDD\u517B
 msg.project.operate.success=\u670D\u52A1\u64CD\u4F5C\u6210\u529F
-msg.exist.record=\u8BE5\u4FDD\u517B\u8BB0\u5F55\u5DF2\u5B58\u5728\uFF0C\u4E0D\u80FD\u91CD\u590D\u4FDD\u517B
+msg.exist.record=\u8BE5\u4FDD\u517B\u8BB0\u5F55\u5DF2\u5B58\u5728\uFF0C\u4E0D\u80FD\u91CD\u590D\u4FDD\u517B
+msg.sign.success=\u7B7E\u5230\u6210\u529F
+msg.sign.limit=\u4ECA\u65E5\u5DF2\u7B7E\u5230

+ 19 - 0
lift-business-service/src/main/resources/mapper/capital/CapitalRepairLiftRelevanceMapper.xml

@@ -38,4 +38,23 @@
             AND l.registration_code LIKE CONCAT('%',#{request.registrationCode,jdbcType=VARCHAR},'%')
         </if>
     </select>
+
+    <!--app端 根据公司id查询公司下大修项目列表 -->
+    <select id="findCapitalListByCompanyId" parameterType="cn.com.ty.lift.business.project.dao.entity.model.request.CompanyRequest"
+            resultType="cn.com.ty.lift.business.project.dao.entity.model.response.ProjectCompanyResponse">
+        SELECT
+        cr.id            AS projectId,
+        cr.project_code  AS projectCode,
+        cr.project_name  AS projectName,
+        cr.project_usage AS projectUsage,
+        FROM capital_repair_lift_relevance crlr
+        LEFT JOIN capital_repair cr ON crlr.project_id = cr.id
+        WHERE 1=1
+        <if test="request.mtCompanyId!=null and request.mtCompanyId!=''">
+            AND crlr.mt_company_id = #{request.mtCompanyId,jdbcType=BIGINT}
+        </if>
+        <if test="request.projectName!=null and request.projectName!=''">
+            AND cr.project_name LIKE CONCAT('%',#{request.projectName,jdbcType=VARCHAR},'%')
+        </if>
+    </select>
 </mapper>

+ 56 - 5
lift-business-service/src/main/resources/mapper/contract/PaymentMapper.xml

@@ -21,17 +21,19 @@
 		<result column="code" property="code" jdbcType="VARCHAR" />
 		<result column="amount_invoice" property="amountInvoice" jdbcType="DECIMAL" />
 		<result column="billing_date" property="billingDate" jdbcType="TIMESTAMP" />
-		<result column="number_periods" property="numberPeriods" jdbcType="INTEGER" />
+		<result column="periods" property="periods" jdbcType="VARCHAR" />
+		<result column="cost_name" property="CostName" jdbcType="VARCHAR" />
+		<result column="cost_desc" property="CostDesc" jdbcType="VARCHAR" />
 	</resultMap>
 
 	<sql id="Base_Column_List" >
 		id, contracts_id, type, summary, plan_money, work_money, plan_date, work_date, cashier_user, 
 		is_ticket, is_collection, remarks, status, note_img_url, bank_img_url, create_date, code, amount_invoice, billing_date,
-		number_periods
+		periods, cost_name, cost_desc
 	</sql>
 
-	<select id="findByCondition" parameterType="cn.com.ty.lift.business.contract.dao.entity.model.request.PaymentRequest"
-			resultType="cn.com.ty.lift.business.contract.dao.entity.model.response.PaymentResponse">
+	<select id="findProjectByCondition" parameterType="cn.com.ty.lift.business.contract.dao.entity.model.request.PaymentRequest"
+			resultType="cn.com.ty.lift.business.contract.dao.entity.model.response.PaymentListResponse">
 		SELECT
 		       p.id                            AS projectId,
 		       c.id                            AS contractId,
@@ -55,7 +57,32 @@
 		</if>
 	</select>
 
-	<select id="queryContractDetailById" parameterType="cn.com.ty.lift.business.contract.dao.entity.model.request.PaymentRequest"
+	<select id="findCapitalByCondition" parameterType="cn.com.ty.lift.business.contract.dao.entity.model.request.PaymentRequest"
+			resultType="cn.com.ty.lift.business.contract.dao.entity.model.response.PaymentListResponse">
+		SELECT
+		cr.id                           AS projectId,
+		c.id                            AS contractId,
+		c.code                          AS contractCode,
+		cr.project_name                 AS projectName,
+		pa.code                         AS paymentCode,
+		pa.plan_money                   AS planMoney,
+		pa.work_money                   AS workMoney,
+		pa.plan_date                    AS planDate,
+		pa.work_date                    AS workDate,
+		pa.cashier_user                 AS cashierUser
+		FROM contracts c
+		LEFT JOIN payment pa ON c.id = pa.contracts_id
+		LEFT JOIN capital_repair cr ON c.project_id = cr.id
+		WHERE c.mt_company_id = #{request.mtCompanyId,jdbcType=BIGINT}
+		<if test="request.projectName!=null and request.projectName!=''">
+			AND cr.project_name LIKE CONCAT('%',#{request.projectName,jdbcType=VARCHAR},'%')
+		</if>
+		<if test="request.paymentType!=null and request.paymentType!=''">
+			AND pa.type = #{request.paymentType,jdbcType=VARCHAR}
+		</if>
+	</select>
+
+	<select id="queryProjectDetailById" parameterType="cn.com.ty.lift.business.contract.dao.entity.model.request.PaymentRequest"
 			resultType="cn.com.ty.lift.business.contract.dao.entity.model.response.PaymentDetailResponse">
 		SELECT
 		       p.project_name AS projectName,
@@ -79,4 +106,28 @@
 		</if>
 	</select>
 
+	<select id="queryCapitalDetailById" parameterType="cn.com.ty.lift.business.contract.dao.entity.model.request.PaymentRequest"
+			resultType="cn.com.ty.lift.business.contract.dao.entity.model.response.PaymentDetailResponse">
+		SELECT
+		cr.project_name AS projectName,
+		cr.project_address AS projectAddress,
+		c.code         AS contractCode,
+		c.source       AS contractSource,
+		c.type         AS contractType,
+		c.lift_num     AS liftNum,
+		c.star_date    AS starDate,
+		c.end_date     AS endDate,
+		c.pay_mode     AS payMode,
+		c.moneys       AS moneys,
+		c.given_date   AS givenDate,
+		c.given_user   AS givenUser,
+		c.remarks      AS remarks
+		FROM contracts c
+		LEFT JOIN capital_repair cr ON c.project_id = cr.id
+		WHERE c.mt_company_id = #{request.mtCompanyId,jdbcType=BIGINT}
+		<if test="request.id!=null and request.id!=''">
+			AND c.id =  #{request.id,jdbcType=BIGINT}
+		</if>
+	</select>
+
 </mapper>