Kaynağa Gözat

订单服务商合同列表接口开发

ZhangWenQiang 4 yıl önce
ebeveyn
işleme
78505c6687

+ 21 - 0
happy-cloud-auth/src/main/java/org/jeecg/modules/api/controller/HlwOrderController.java

@@ -211,4 +211,25 @@ public class HlwOrderController {
         Result<?> result = hlwOrderServiceClient.queryOrderSubcontractorList(jsonObject);
         return result;
     }
+
+    /**
+     * 订单管理-服务商合同列表
+     *
+     * @param json
+     * @return
+     */
+    @AutoLog(value = "订单管理-服务商合同列表")
+    @ApiOperation(value = "订单管理-服务商合同列表", notes = "订单管理-服务商合同列表")
+    @PostMapping(value = "/subcontractorContractList")
+    public Result<?> queryOrdersubcontractorContractList(@RequestBody String json) {
+        log.info("json========{}", json);
+        //数据解密
+        json = CryptTool.decode(json);
+        JSONObject jsonObject = JSONObject.parseObject(json);
+        //获取应用信息
+        OauthApplication oauthApplication = authService.getApplication(SecurityUtils.getClient());
+        jsonObject.put("applicationId", oauthApplication.getApplicationId());
+        Result<?> result = hlwOrderServiceClient.queryOrdersubcontractorContractList(jsonObject);
+        return result;
+    }
 }

+ 9 - 0
happy-cloud-auth/src/main/java/org/jeecg/modules/feign/client/HlwOrderServiceClient.java

@@ -92,4 +92,13 @@ public interface HlwOrderServiceClient {
      */
     @PostMapping(value = "/wisdom/hlwOrder/api/subcontractorList")
     Result<?> queryOrderSubcontractorList(JSONObject jsonObject);
+
+    /**
+     * 订单-服务商合同列表
+     *
+     * @param jsonObject
+     * @return
+     */
+    @PostMapping(value = "/wisdom/hlwOrder/api/subcontractorContractList")
+    Result<?> queryOrdersubcontractorContractList(JSONObject jsonObject);
 }

+ 5 - 0
happy-cloud-auth/src/main/java/org/jeecg/modules/feign/client/fallback/HlwOrderServiceClientFallbackImpl.java

@@ -60,4 +60,9 @@ public class HlwOrderServiceClientFallbackImpl implements HlwOrderServiceClient
     public Result<?> queryOrderSubcontractorList(JSONObject jsonObject) {
         return Result.error("查询失败");
     }
+
+    @Override
+    public Result<?> queryOrdersubcontractorContractList(JSONObject jsonObject) {
+        return Result.error("查询失败");
+    }
 }

+ 45 - 4
happy-cloud-wisdom/happy-cloud-wisdom-biz/src/main/java/org/jeecg/modules/api/controller/HlwOrderApiController.java

@@ -30,6 +30,7 @@ import org.springframework.web.bind.annotation.RestController;
 
 import javax.annotation.Resource;
 import java.time.LocalDate;
+import java.time.ZoneOffset;
 import java.util.ArrayList;
 import java.util.Date;
 import java.util.List;
@@ -74,13 +75,13 @@ public class HlwOrderApiController extends JeecgController<HlwOrder, IHlwOrderSe
         Integer subcontractorId = jsonObject.getInteger("subcontractorId");
         String userCode = jsonObject.getString("userCode");
         String workContract = jsonObject.getString("workContract");
-        Date startDate=jsonObject.getDate("startDate");
-        Date endDate=jsonObject.getDate("endDate");
+        Date startDate = jsonObject.getDate("startDate");
+        Date endDate = jsonObject.getDate("endDate");
         String createBy = jsonObject.getString("createBy");
         Integer contractId = jsonObject.getInteger("contractId");
         HlwUser hlwUser = hlwUserService.getByUserCode(userCode);
-        int countContract=hlwUserSubcontractorService.countContract(hlwUser.getId(),subcontractorId,startDate,endDate,contractId);
-        if(countContract>0){
+        int countContract = hlwUserSubcontractorService.countContract(hlwUser.getId(), subcontractorId, startDate, endDate, contractId);
+        if (countContract > 0) {
             return Result.error("新老合同时间无法重叠,请重新选择");
         }
         HlwUserSubcontractor hlwUserSubcontractor = hlwUserSubcontractorService.getById(contractId);
@@ -334,4 +335,44 @@ public class HlwOrderApiController extends JeecgController<HlwOrder, IHlwOrderSe
         }
         return Result.ok(subcontractorList);
     }
+
+    /**
+     * 订单申请-服务商合同列表
+     *
+     * @param jsonObject
+     * @return
+     */
+    @AutoLog(value = "订单申请-服务商合同列表")
+    @ApiOperation(value = "订单申请-服务商合同列表", notes = "订单申请-服务商合同列表")
+    @PostMapping(value = "/subcontractorContractList")
+    public Result<?> queryOrderSubcontractorContractList(@RequestBody JSONObject jsonObject) {
+        Integer applicationId = jsonObject.getInteger("applicationId");
+        //获取请求参数
+        Integer pageNo = jsonObject.getInteger("pageNo");
+        Integer pageSize = jsonObject.getInteger("pageSize");
+        String orderCode = jsonObject.getString("orderCode");
+        Integer subcontractorId = jsonObject.getInteger("subcontractorId");
+        Page<HlwUserSubcontractor> page = new Page<HlwUserSubcontractor>(pageNo, pageSize);
+        Page<HlwUserSubcontractor> pageList = hlwUserSubcontractorService.queryOrderSubcontractorContractList(page, orderCode, subcontractorId);
+        //当天时间
+        LocalDate localDate = LocalDate.now();
+        for (HlwUserSubcontractor hlwUserSubcontractor : pageList.getRecords()) {
+            //判断合同是否过期或者即将过期
+            LocalDate startDate = DateUtils.asLocalDate(hlwUserSubcontractor.getStartDate());
+            LocalDate endDate = DateUtils.asLocalDate(hlwUserSubcontractor.getEndDate());
+            //30天
+            LocalDate localDateLast = localDate.plusDays(30);
+            //合同结束时间在当前时间之前
+            if (endDate.isBefore(localDate)) {
+                //已过期
+                hlwUserSubcontractor.setContractStatus(2);
+            } else if (localDate.isAfter(startDate) && (endDate.isBefore(localDateLast) || endDate.isEqual(localDateLast))) {
+                //当前时间大于合同开始时间 & 合同结束时间小于等于当前时间+30天
+                //即将过期
+                hlwUserSubcontractor.setContractStatus(1);
+            }
+        }
+        return Result.ok(pageList);
+
+    }
 }

+ 3 - 1
happy-cloud-wisdom/happy-cloud-wisdom-biz/src/main/java/org/jeecg/modules/hlwuser/mapper/HlwUserSubcontractorMapper.java

@@ -24,5 +24,7 @@ public interface HlwUserSubcontractorMapper extends BaseMapper<HlwUserSubcontrac
 
     HlwUserSubcontractor getOrderLastSubcontractor(@Param("orderCode") String orderCode, @Param("subcontractorId") Integer subcontractorId);
 
-    int countContract(@Param("userId")Integer userId,@Param("subcontractorId") Integer subcontractorId,@Param("startDate") Date startDate, @Param("endDate")Date endDate,@Param("contractId") Integer contractId);
+    int countContract(@Param("userId") Integer userId, @Param("subcontractorId") Integer subcontractorId, @Param("startDate") Date startDate, @Param("endDate") Date endDate, @Param("contractId") Integer contractId);
+
+    List<HlwUserSubcontractor> queryOrderSubcontractorContractList(Page<HlwUserSubcontractor> page, @Param("orderCode") String orderCode, @Param("subcontractorId") Integer subcontractorId);
 }

+ 8 - 0
happy-cloud-wisdom/happy-cloud-wisdom-biz/src/main/java/org/jeecg/modules/hlwuser/mapper/xml/HlwUserSubcontractorMapper.xml

@@ -61,4 +61,12 @@
         </if>
         </where>
     </select>
+
+    <select id="queryOrderSubcontractorContractList" resultType="org.jeecg.modules.hlwuser.entity.HlwUserSubcontractor">
+        SELECT
+            a.*
+        FROM hlw_user_subcontractor a
+        where  a.order_code = #{orderCode}
+               and a.subcontractor_id = #{subcontractorId}
+    </select>
 </mapper>

+ 2 - 0
happy-cloud-wisdom/happy-cloud-wisdom-biz/src/main/java/org/jeecg/modules/hlwuser/service/IHlwUserSubcontractorService.java

@@ -19,4 +19,6 @@ public interface IHlwUserSubcontractorService extends IService<HlwUserSubcontrac
     Page<HlwUserSubcontractor> subcontractorContractList(Page<HlwUserSubcontractor> page, String userCode, Integer subcontractorId);
 
     int countContract(Integer id, Integer subcontractorId, Date startDate, Date endDate, Integer contractId);
+
+    Page<HlwUserSubcontractor> queryOrderSubcontractorContractList(Page<HlwUserSubcontractor> page, String orderCode, Integer subcontractorId);
 }

+ 9 - 4
happy-cloud-wisdom/happy-cloud-wisdom-biz/src/main/java/org/jeecg/modules/hlwuser/service/impl/HlwUserSubcontractorServiceImpl.java

@@ -13,25 +13,30 @@ import java.util.Date;
 /**
  * @Description: hlw_user_subcontractor
  * @Author: jeecg-boot
- * @Date:   2020-12-25
+ * @Date: 2020-12-25
  * @Version: V1.0
  */
 @Service
 public class HlwUserSubcontractorServiceImpl extends ServiceImpl<HlwUserSubcontractorMapper, HlwUserSubcontractor> implements IHlwUserSubcontractorService {
     @Override
     public HlwUserSubcontractor getByUserIdAndSubId(Integer userId, Integer subcontractorId) {
-        return baseMapper.getByUserIdAndSubId(userId,subcontractorId);
+        return baseMapper.getByUserIdAndSubId(userId, subcontractorId);
     }
 
 
     @Override
     public Page<HlwUserSubcontractor> subcontractorContractList(Page<HlwUserSubcontractor> page, String userCode, Integer subcontractorId) {
-        return page.setRecords(baseMapper.subcontractorContractList(page,userCode,subcontractorId));
+        return page.setRecords(baseMapper.subcontractorContractList(page, userCode, subcontractorId));
     }
 
 
     @Override
     public int countContract(Integer userId, Integer subcontractorId, Date startDate, Date endDate, Integer contractId) {
-        return baseMapper.countContract(userId,subcontractorId,startDate,endDate,contractId);
+        return baseMapper.countContract(userId, subcontractorId, startDate, endDate, contractId);
+    }
+
+    @Override
+    public Page<HlwUserSubcontractor> queryOrderSubcontractorContractList(Page<HlwUserSubcontractor> page, String orderCode, Integer subcontractorId) {
+        return page.setRecords(baseMapper.queryOrderSubcontractorContractList(page, orderCode, subcontractorId));
     }
 }