소스 검색

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

bieao 5 년 전
부모
커밋
edaa63b8b9

+ 6 - 7
lift-business-service/src/main/java/cn/com/ty/lift/business/common/CommonController.java

@@ -7,8 +7,9 @@ import cn.com.ty.lift.business.framework.conf.SystemConfiguration;
 import cn.com.ty.lift.business.framework.util.MessageUtils;
 import cn.com.ty.lift.business.library.dao.entity.LiftBrand;
 import cn.com.ty.lift.business.maintenance.service.MaintenancePlanService;
+import cn.com.ty.lift.business.project.dao.entity.model.AreaCodeDTO;
+import cn.com.ty.lift.business.project.dao.mapper.AreaCodeMapper;
 import cn.com.ty.lift.common.constants.RedisConstants;
-import cn.com.ty.lift.common.model.AreaCode;
 import cn.com.ty.lift.common.utils.ValuePool;
 import cn.com.ty.lift.common.verify.Validate;
 import cn.com.ty.lift.common.verify.Validation;
@@ -47,6 +48,7 @@ public class CommonController {
     private EmergencyRepairService        emergencyRepairService;
     private CapitalRepairLiftRelevanceService capitalRepairLiftRelevanceService;
     private MaintenancePlanService maintenancePlanService;
+    private AreaCodeMapper codeMapper;
 
     /**
      * @return RestResponse 省、市、区树形结构列表
@@ -54,12 +56,9 @@ public class CommonController {
      * @date 2019/12/4 10:23 AM
      */
     @PostMapping("area/list")
-    @SuppressWarnings("unchecked")
-    public RestResponse areaList() {
-        List<AreaCode> areaCodeList = (List<AreaCode>) redisTemplate.opsForValue().get(RedisConstants.RK_AREA_LIST);
-        if (ObjectUtil.isEmpty(areaCodeList)) {
-            return RestResponse.success();
-        }
+    @Validation(fields = {"code"})
+    public RestResponse areaList(@Val @RequestBody CommonRequest commonRequest) {
+        List<AreaCodeDTO> areaCodeList = codeMapper.queryAreaList(commonRequest.getCode());
         return RestResponse.success(areaCodeList, MessageUtils.get("msg.query.success"));
     }
 

+ 7 - 0
lift-business-service/src/main/java/cn/com/ty/lift/business/common/CommonRequest.java

@@ -3,6 +3,7 @@ package cn.com.ty.lift.business.common;
 import lombok.Data;
 
 import javax.validation.constraints.Min;
+import javax.validation.constraints.NotEmpty;
 
 /**
  * TODO
@@ -26,4 +27,10 @@ public class CommonRequest {
      * 当前用户角色code
      */
     private String currentRoleCode;
+
+    /**
+     * 省市区编码
+     */
+    @NotEmpty(message = "省市区编码不能为空")
+    private String code;
 }

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

@@ -18,7 +18,6 @@ import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
 
 import javax.annotation.Resource;
-import javax.validation.Valid;
 
 /**
  * @author bieao
@@ -113,7 +112,7 @@ public class PaymentController {
      */
     @PostMapping("history/list")
     @Validation(fields = {"contractId"})
-    public RestResponse historyList(@Valid @RequestBody PaymentRequest request) {
+    public RestResponse historyList(@Val @RequestBody PaymentRequest request) {
         IPage<PaymentHistoryResponse> page = paymentHistoryService.list(request);
         return RestResponse.success(page, MessageUtils.get("msg.query.success"));
     }

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

@@ -40,6 +40,10 @@ public class PaymentListResponse {
      * 实收金额
      */
     private BigDecimal workMoney;
+    /**
+     * 未收金额
+     */
+    private BigDecimal uncollectedMoney;
     /**
      * 应收时间
      */

+ 23 - 0
lift-business-service/src/main/java/cn/com/ty/lift/business/contract/service/PaymentService.java

@@ -21,10 +21,13 @@ import org.springframework.transaction.annotation.Transactional;
 import org.springframework.transaction.interceptor.TransactionAspectSupport;
 
 import javax.annotation.Resource;
+import java.math.BigDecimal;
 import java.time.LocalDateTime;
 import java.util.*;
 import java.util.stream.Collectors;
 
+import static java.math.BigDecimal.ZERO;
+
 /**
  * @author bieao
  * @date 2019/12/11
@@ -36,6 +39,9 @@ public class PaymentService extends ServiceImpl<PaymentMapper, Payment> {
     @Resource
     private PaymentHistoryService paymentHistoryService;
 
+    @Resource
+    private ContractService contractService;
+
     /**
      * @param request 付款列表查询条件
      * @return RestResponse 付款分页列表结果
@@ -211,6 +217,23 @@ public class PaymentService extends ServiceImpl<PaymentMapper, Payment> {
             entry.setCode("PA" + DateUtils.generateCode());
             entry.setType(request.getContractType());
         });
+        Long contractId = request.getContractId();
+        Contracts contracts = contractService.getOne(contractId);
+        if (Objects.nonNull(contracts)) {
+            //应收金额总计
+            BigDecimal planMoneyTotal = paymentList.stream().map(Payment::getPlanMoney).reduce(ZERO, BigDecimal::add);
+            contracts.setPlanMoneyTotal(planMoneyTotal);
+            //实收金额总计
+            BigDecimal workMoneyTotal = paymentList.stream().map(Payment::getWorkMoney).reduce(ZERO, BigDecimal::add);
+            contracts.setWorkMoneyTotal(workMoneyTotal);
+            //开票金额总计
+            BigDecimal invoiceTotal = paymentList.stream().map(Payment::getAmountInvoice).reduce(ZERO, BigDecimal::add);
+            contracts.setInvoiceMoneyTotal(invoiceTotal);
+            boolean result = contractService.updateById(contracts);
+            if (result) {
+                return RestResponse.fail(MessageUtils.get("msg.modify.fail"));
+            }
+        }
         return modifyPayment(oldPaymentList, paymentList);
     }
 

+ 2 - 1
lift-business-service/src/main/java/cn/com/ty/lift/business/maintenance/controller/MaintenanceRecordController.java

@@ -226,7 +226,8 @@ public class MaintenanceRecordController {
      * @return RestResponse
      */
     @PostMapping("tofill")
-    public RestResponse tofill(@Valid @RequestBody MaintenanceRecord entity) {
+    @Validation(fields = {"mtCompanyId", "mtPlanId", "liftId", "liftType", "type", "workDate", "stopDate", "mtRecordCosts", "sparepart", "partsCost"})
+    public RestResponse tofill(@Val @RequestBody MaintenanceRecord entity) {
         MaintenancePlan plan = maintenancePlanService.getById(entity.getMtPlanId());
         Validate.notNull(plan, ValuePool.MAINTENANCE_PLAN_NOT_EXIST);
         entity.setWorkerId(plan.getWorkerId());

+ 22 - 0
lift-business-service/src/main/java/cn/com/ty/lift/business/project/dao/entity/model/AreaCodeDTO.java

@@ -0,0 +1,22 @@
+package cn.com.ty.lift.business.project.dao.entity.model;
+
+import lombok.Data;
+
+/**
+ * @author bieao
+ * @date 2020/5/19
+ * @description 省市区返回实体
+ */
+@Data
+public class AreaCodeDTO {
+
+    /**
+     * 编码
+     */
+    private String code;
+
+    /**
+     * 名称
+     */
+    private String name;
+}

+ 6 - 0
lift-business-service/src/main/java/cn/com/ty/lift/business/project/dao/mapper/AreaCodeMapper.java

@@ -1,7 +1,11 @@
 package cn.com.ty.lift.business.project.dao.mapper;
 
 import cn.com.ty.lift.business.project.dao.entity.AreaCode;
+import cn.com.ty.lift.business.project.dao.entity.model.AreaCodeDTO;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Select;
+
+import java.util.List;
 
 /**
  * <p>
@@ -13,4 +17,6 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
  */
 public interface AreaCodeMapper extends BaseMapper<AreaCode> {
 
+    @Select("SELECT code,name FROM area_code WHERE parent = #{code}")
+    List<AreaCodeDTO> queryAreaList(String code);
 }

+ 2 - 0
lift-business-service/src/main/resources/mapper/contract/PaymentMapper.xml

@@ -41,6 +41,7 @@
 			   p.project_name                  AS projectName,
 			   c.plan_money_total              AS planMoney,
 			   c.work_money_total              AS workMoney,
+		       (c.plan_money_total - c.work_money_total) as uncollectedMoney,
 		       c.end_date                      AS endDate,
 		       ui.name                         AS cashierUser
 		FROM contracts c
@@ -62,6 +63,7 @@
 			cr.project_name                 AS projectName,
 			c.plan_money_total              AS planMoney,
 			c.work_money_total              AS workMoney,
+		   (c.plan_money_total - c.work_money_total) as uncollectedMoney,
 			c.end_date                      AS endDate,
 			ui.name                         AS cashierUser
 		FROM contracts c

+ 1 - 1
lift-system-service/src/main/java/cn/com/ty/lift/system/framework/runner/SystemServiceRunner.java

@@ -43,7 +43,7 @@ public class SystemServiceRunner implements ApplicationRunner {
     @Override
     public void run(ApplicationArguments args) {
         //初始化省、市、区信息列表
-        initAreaList();
+        //initAreaList();
         //初始化全局设置到redis
         initGlobalSet();
     }