Browse Source

打包问题

Signed-off-by: liuyc <56808083@qq.com>
liuyc 1 year ago
parent
commit
61673b7d92

+ 8 - 0
blade-service-api/blade-meter-api/pom.xml

@@ -22,6 +22,14 @@
             <groupId>org.springblade</groupId>
             <groupId>org.springblade</groupId>
             <artifactId>blade-starter-excel</artifactId>
             <artifactId>blade-starter-excel</artifactId>
         </dependency>
         </dependency>
+        <dependency>
+            <groupId>org.springblade</groupId>
+            <artifactId>blade-business-api</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.springblade</groupId>
+            <artifactId>blade-manager-api</artifactId>
+        </dependency>
     </dependencies>
     </dependencies>
     <packaging>jar</packaging>
     <packaging>jar</packaging>
 
 

+ 38 - 0
blade-service-api/blade-meter-api/src/main/java/org/springblade/meter/dto/MeterApprovalDTO.java

@@ -0,0 +1,38 @@
+package org.springblade.meter.dto;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.io.Serializable;
+
+@Data
+public class MeterApprovalDTO implements Serializable {
+
+    @ApiModelProperty(value = "项目id")
+    private Long projectId;
+
+    @ApiModelProperty(value = "合同段id")
+    private Long contractId;
+
+    @ApiModelProperty(value = "期数id")
+    private Long periodId;
+
+    @ApiModelProperty(value = "任务名称")
+    private String taskName;
+
+    @ApiModelProperty(value = "任务描述")
+    private String taskDesc;
+
+    @ApiModelProperty(value = "任务人ids,字符串逗号分割拼接")
+    private String taskUserIds;
+
+    @ApiModelProperty(value = "上报批次")
+    private Integer batch;
+
+    @ApiModelProperty("限定审批时间(天)")
+    private Integer restrictDay;
+
+    @ApiModelProperty("类型,=1(中间计量申请)、=2(材料计量单、开工预付款计量单)")
+    private Integer type;
+
+}

+ 43 - 0
blade-service-api/blade-rabbitmq-producer-api/pom.xml

@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+    <parent>
+        <artifactId>blade-service-api</artifactId>
+        <groupId>org.springblade</groupId>
+        <version>2.9.1.RELEASE</version>
+    </parent>
+    <modelVersion>4.0.0</modelVersion>
+
+    <artifactId>blade-rabbitmq-producer-api</artifactId>
+    <name>${project.artifactId}</name>
+    <version>${bladex.project.version}</version>
+
+    <dependencies>
+        <dependency>
+            <groupId>org.springblade</groupId>
+            <artifactId>blade-archive-api</artifactId>
+            <version>2.9.1.RELEASE</version>
+            <scope>compile</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.springblade</groupId>
+            <artifactId>blade-business-api</artifactId>
+            <version>2.9.1.RELEASE</version>
+            <scope>compile</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.springblade</groupId>
+            <artifactId>blade-meter-api</artifactId>
+            <version>2.9.1.RELEASE</version>
+            <scope>compile</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.springblade</groupId>
+            <artifactId>blade-manager-api</artifactId>
+            <version>2.9.1.RELEASE</version>
+            <scope>compile</scope>
+        </dependency>
+    </dependencies>
+
+</project>

+ 0 - 0
blade-service/blade-rabbitmq-producer/src/main/java/org/springblade/producer/bean/PushMessage.java → blade-service-api/blade-rabbitmq-producer-api/src/main/java/org/springblade/producer/bean/PushMessage.java


+ 9 - 8
blade-service/blade-rabbitmq-producer/src/main/java/org/springblade/producer/bean/PushMessageAspect.java → blade-service-api/blade-rabbitmq-producer-api/src/main/java/org/springblade/producer/bean/PushMessageAspect.java

@@ -15,7 +15,7 @@ import org.springblade.manager.feign.ManagerWebSocketClient;
 import org.springblade.meter.feign.MeterWebSocketClient;
 import org.springblade.meter.feign.MeterWebSocketClient;
 import org.springblade.common.constant.ClientIdConstant;
 import org.springblade.common.constant.ClientIdConstant;
 
 
-import org.springblade.producer.service.RabbitMqProducerService;
+import org.springblade.producer.feign.RabbitMqProducerServiceClient;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 import org.springframework.stereotype.Component;
 import org.springframework.util.StringUtils;
 import org.springframework.util.StringUtils;
@@ -30,15 +30,16 @@ import java.util.Set;
 public class PushMessageAspect {
 public class PushMessageAspect {
 
 
     private static final Logger logger = LogManager.getLogger(PushMessageAspect.class);
     private static final Logger logger = LogManager.getLogger(PushMessageAspect.class);
-    private final RabbitMqProducerService rabbitMqProducerService;
+
+    private final RabbitMqProducerServiceClient rabbitMqProducerServiceClient;
     private final ArchiveWebSocketClient archiveWebSocketClient;
     private final ArchiveWebSocketClient archiveWebSocketClient;
     private final BusinessWebSocketClient businessWebSocketClient;
     private final BusinessWebSocketClient businessWebSocketClient;
     private final ManagerWebSocketClient managerWebSocketClient;
     private final ManagerWebSocketClient managerWebSocketClient;
     private final MeterWebSocketClient meterWebSocketClient;
     private final MeterWebSocketClient meterWebSocketClient;
 
 
     @Autowired
     @Autowired
-    public PushMessageAspect(RabbitMqProducerService rabbitMqProducerService, ArchiveWebSocketClient archiveWebSocketClient, BusinessWebSocketClient businessWebSocketClient, ManagerWebSocketClient managerWebSocketClient, MeterWebSocketClient meterWebSocketClient) {
-        this.rabbitMqProducerService = rabbitMqProducerService;
+    public PushMessageAspect(RabbitMqProducerServiceClient rabbitMqProducerServiceClient, ArchiveWebSocketClient archiveWebSocketClient, BusinessWebSocketClient businessWebSocketClient, ManagerWebSocketClient managerWebSocketClient, MeterWebSocketClient meterWebSocketClient) {
+        this.rabbitMqProducerServiceClient = rabbitMqProducerServiceClient;
         this.archiveWebSocketClient = archiveWebSocketClient;
         this.archiveWebSocketClient = archiveWebSocketClient;
         this.businessWebSocketClient = businessWebSocketClient;
         this.businessWebSocketClient = businessWebSocketClient;
         this.managerWebSocketClient = managerWebSocketClient;
         this.managerWebSocketClient = managerWebSocketClient;
@@ -88,16 +89,16 @@ public class PushMessageAspect {
         if (stringMap.size() > 0) {
         if (stringMap.size() > 0) {
             switch (clientId) {
             switch (clientId) {
                 case ClientIdConstant.ARCHIVE_CLIENT_ID:
                 case ClientIdConstant.ARCHIVE_CLIENT_ID:
-                    rabbitMqProducerService.sendMessageToArchiveQueue(JSON.toJSONString(stringMap));
+                    rabbitMqProducerServiceClient.sendMessageToArchiveQueue(JSON.toJSONString(stringMap));
                     break;
                     break;
                 case ClientIdConstant.MANAGER_CLIENT_ID:
                 case ClientIdConstant.MANAGER_CLIENT_ID:
-                    rabbitMqProducerService.sendMessageToManagerQueue(JSON.toJSONString(stringMap));
+                    rabbitMqProducerServiceClient.sendMessageToManagerQueue(JSON.toJSONString(stringMap));
                     break;
                     break;
                 case ClientIdConstant.BUSINESS_CLIENT_ID:
                 case ClientIdConstant.BUSINESS_CLIENT_ID:
-                    rabbitMqProducerService.sendMessageToBusinessQueue(JSON.toJSONString(stringMap));
+                    rabbitMqProducerServiceClient.sendMessageToBusinessQueue(JSON.toJSONString(stringMap));
                     break;
                     break;
                 case ClientIdConstant.METER_CLIENT_ID:
                 case ClientIdConstant.METER_CLIENT_ID:
-                    rabbitMqProducerService.sendMessageToMeterQueue(JSON.toJSONString(stringMap));
+                    rabbitMqProducerServiceClient.sendMessageToMeterQueue(JSON.toJSONString(stringMap));
                     break;
                     break;
             }
             }
         }
         }

+ 25 - 0
blade-service-api/blade-rabbitmq-producer-api/src/main/java/org/springblade/producer/feign/RabbitMqProducerServiceClient.java

@@ -0,0 +1,25 @@
+package org.springblade.producer.feign;
+
+import org.springblade.common.constant.LauncherConstant;
+import org.springframework.cloud.openfeign.FeignClient;
+import org.springframework.stereotype.Component;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+
+@FeignClient(value = LauncherConstant.APPLICATION_MQ_PRODUCER)
+@Component
+public interface RabbitMqProducerServiceClient {
+
+    @GetMapping(value = "/mqProducer/sendMessageToArchiveQueue")
+    void sendMessageToArchiveQueue(@RequestParam String message);
+
+    @GetMapping(value = "/mqProducer/sendMessageToManagerQueue")
+    void sendMessageToManagerQueue(@RequestParam String message);
+
+    @GetMapping(value = "/mqProducer/sendMessageToBusinessQueue")
+    void sendMessageToBusinessQueue(@RequestParam String message);
+
+    @GetMapping(value = "/mqProducer/sendMessageToMeterQueue")
+    void sendMessageToMeterQueue(@RequestParam String message);
+
+}

+ 1 - 0
blade-service-api/pom.xml

@@ -28,6 +28,7 @@
         <module>blade-control-api</module>
         <module>blade-control-api</module>
         <module>blade-land-api</module>
         <module>blade-land-api</module>
         <module>blade-meter-api</module>
         <module>blade-meter-api</module>
+        <module>blade-rabbitmq-producer-api</module>
     </modules>
     </modules>
 
 
     <dependencies>
     <dependencies>

+ 1 - 1
blade-service/blade-business/pom.xml

@@ -169,7 +169,7 @@
 
 
         <dependency>
         <dependency>
             <groupId>org.springblade</groupId>
             <groupId>org.springblade</groupId>
-            <artifactId>blade-rabbitmq-producer</artifactId>
+            <artifactId>blade-rabbitmq-producer-api</artifactId>
             <version>2.9.1.RELEASE</version>
             <version>2.9.1.RELEASE</version>
             <scope>compile</scope>
             <scope>compile</scope>
         </dependency>
         </dependency>

+ 4 - 0
blade-service/blade-meter/pom.xml

@@ -33,6 +33,10 @@
             <artifactId>blade-manager-api</artifactId>
             <artifactId>blade-manager-api</artifactId>
             <version>${bladex.project.version}</version>
             <version>${bladex.project.version}</version>
         </dependency>
         </dependency>
+        <dependency>
+            <groupId>org.springblade</groupId>
+            <artifactId>blade-starter-excel</artifactId>
+        </dependency>
     </dependencies>
     </dependencies>
 
 
 </project>
 </project>

+ 85 - 0
blade-service/blade-meter/src/main/java/org/springblade/meter/controller/TaskController.java

@@ -0,0 +1,85 @@
+package org.springblade.meter.controller;
+
+
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.AllArgsConstructor;
+import org.springblade.core.boot.ctrl.BladeController;
+import org.springblade.core.tool.api.R;
+import org.springblade.core.tool.utils.ObjectUtil;
+import org.springblade.manager.entity.ContractInfo;
+import org.springblade.meter.dto.MeterApprovalDTO;
+import org.springblade.meter.entity.ContractMeterPeriod;
+import org.springblade.meter.entity.MeterPeriod;
+import org.springblade.meter.entity.MiddleMeterApply;
+import org.springblade.meter.service.impl.ContractMeterPeriodServiceImpl;
+import org.springblade.meter.service.impl.MeterPeriodServiceImpl;
+import org.springblade.meter.service.impl.MiddleMeterApplyServiceImpl;
+import org.springframework.jdbc.core.BeanPropertyRowMapper;
+import org.springframework.jdbc.core.JdbcTemplate;
+import org.springframework.web.bind.annotation.*;
+
+import java.text.SimpleDateFormat;
+import java.util.Date;
+import java.util.List;
+
+@RestController
+@AllArgsConstructor
+@RequestMapping("/task")
+@Api(value = "计量任务管理相关接口", tags = "计量任务管理相关接口")
+public class TaskController extends BladeController {
+
+    private final JdbcTemplate jdbcTemplate;
+    private final ContractMeterPeriodServiceImpl contractMeterPeriodService;
+    private final MeterPeriodServiceImpl periodService;
+    private final MiddleMeterApplyServiceImpl meterApplyService;
+
+    @GetMapping("/name")
+    @ApiOperationSupport(order = 1)
+    @ApiOperation(value = "获取任务名称", notes = "传入合同段contractId、期数id、type=1(中间计量申请)、=2(材料计量单、开工预付款计量单)")
+    public R<Object> name(@RequestParam String contractId, @RequestParam String id, @RequestParam String type) {
+        String name = null;
+        if (ObjectUtil.isNotEmpty(contractId) && ObjectUtil.isNotEmpty(id)) {
+            ContractInfo contractInfo = jdbcTemplate.query("SELECT contract_name FROM m_contract_info WHERE id = " + contractId, new BeanPropertyRowMapper<>(ContractInfo.class)).stream().findAny().orElse(null);
+            String date = new SimpleDateFormat("yyyy-MM-dd").format(new Date());
+            if (("1").equals(type)) {
+                ContractMeterPeriod contractMeterPeriod = contractMeterPeriodService.getById(id);
+                if (contractInfo != null && contractMeterPeriod != null) {
+                    name = "【" + contractInfo.getContractName() + "】" + date + " 中间计量申请【" + contractMeterPeriod.getPeriodNumber() + "】";
+                }
+            } else if (("2").equals(type)) {
+                MeterPeriod meterPeriod = periodService.getById(id);
+                if (contractInfo != null && meterPeriod != null) {
+                    name = "【" + contractInfo.getContractName() + "】" + date + " 中间计量申请【" + meterPeriod.getPeriodNumber() + "】";
+                }
+            }
+        }
+        return R.data(200, name, "操作成功");
+    }
+
+    @PostMapping("/approval")
+    @ApiOperationSupport(order = 2)
+    @ApiOperation(value = "上报(发起审批)", notes = "传入MeterApprovalDTO")
+    public R<Object> approval(@RequestBody MeterApprovalDTO approvalDTO) {
+        if (ObjectUtil.isNotEmpty(approvalDTO.getType()) && (approvalDTO.getType().equals(1) || approvalDTO.getType().equals(2))) {
+            if (approvalDTO.getType().equals(1)) {  /*中间计量申请*/
+                /*获取所有中间计量申请*/
+                List<MiddleMeterApply> middleMeterApplies = meterApplyService.getBaseMapper().selectList(Wrappers.<MiddleMeterApply>lambdaQuery()
+                        .eq(MiddleMeterApply::getContractPeriodId, approvalDTO.getPeriodId()));
+
+                /*获取所有中间计量申请下的清单信息*/
+
+
+
+            } else if (approvalDTO.getType().equals(2)) {   /*材料、开工*/
+
+
+            }
+        }
+        return R.fail("操作失败");
+    }
+
+
+}

+ 1 - 37
blade-service/blade-rabbitmq-consumer/pom.xml

@@ -62,41 +62,5 @@
             </exclusions>
             </exclusions>
         </dependency>
         </dependency>
     </dependencies>
     </dependencies>
-    <build>
-        <plugins>
-            <plugin>
-                <groupId>org.apache.maven.plugins</groupId>
-                <artifactId>maven-jar-plugin</artifactId>
-                <version>3.1.2</version>
-            </plugin>
-            <plugin>
-                <groupId>com.spotify</groupId>
-                <artifactId>dockerfile-maven-plugin</artifactId>
-                <configuration>
-                    <username>${docker.username}</username>
-                    <password>${docker.password}</password>
-                    <repository>${docker.registry.url}/${docker.namespace}/${project.artifactId}</repository>
-                    <tag>${project.version}</tag>
-                    <useMavenSettingsForAuth>true</useMavenSettingsForAuth>
-                    <buildArgs>
-                        <JAR_FILE>target/${project.build.finalName}.jar</JAR_FILE>
-                    </buildArgs>
-                    <skip>false</skip>
-                </configuration>
-            </plugin>
-            <plugin>
-                <groupId>org.apache.maven.plugins</groupId>
-                <artifactId>maven-compiler-plugin</artifactId>
-                <configuration>
-                    <source>${java.version}</source>
-                    <target>${java.version}</target>
-                    <encoding>${project.build.sourceEncoding}</encoding>
-                    <compilerArguments>
-                        <bootclasspath>${java.home}/lib/rt.jar;${java.home}/lib/jce.jar;${java.home}/lib/jsse.jar
-                        </bootclasspath>
-                    </compilerArguments>
-                </configuration>
-            </plugin>
-        </plugins>
-    </build>
+
 </project>
 </project>

+ 6 - 37
blade-service/blade-rabbitmq-producer/pom.xml

@@ -43,42 +43,11 @@
             <groupId>org.springframework.boot</groupId>
             <groupId>org.springframework.boot</groupId>
             <artifactId>spring-boot-starter-amqp</artifactId>
             <artifactId>spring-boot-starter-amqp</artifactId>
         </dependency>
         </dependency>
+        <dependency>
+            <groupId>org.springblade</groupId>
+            <artifactId>blade-rabbitmq-producer-api</artifactId>
+            <version>2.9.1.RELEASE</version>
+        </dependency>
     </dependencies>
     </dependencies>
-    <build>
-        <plugins>
-            <plugin>
-                <groupId>org.apache.maven.plugins</groupId>
-                <artifactId>maven-jar-plugin</artifactId>
-                <version>3.1.2</version>
-            </plugin>
-            <plugin>
-                <groupId>com.spotify</groupId>
-                <artifactId>dockerfile-maven-plugin</artifactId>
-                <configuration>
-                    <username>${docker.username}</username>
-                    <password>${docker.password}</password>
-                    <repository>${docker.registry.url}/${docker.namespace}/${project.artifactId}</repository>
-                    <tag>${project.version}</tag>
-                    <useMavenSettingsForAuth>true</useMavenSettingsForAuth>
-                    <buildArgs>
-                        <JAR_FILE>target/${project.build.finalName}.jar</JAR_FILE>
-                    </buildArgs>
-                    <skip>false</skip>
-                </configuration>
-            </plugin>
-            <plugin>
-                <groupId>org.apache.maven.plugins</groupId>
-                <artifactId>maven-compiler-plugin</artifactId>
-                <configuration>
-                    <source>${java.version}</source>
-                    <target>${java.version}</target>
-                    <encoding>${project.build.sourceEncoding}</encoding>
-                    <compilerArguments>
-                        <bootclasspath>${java.home}/lib/rt.jar;${java.home}/lib/jce.jar;${java.home}/lib/jsse.jar
-                        </bootclasspath>
-                    </compilerArguments>
-                </configuration>
-            </plugin>
-        </plugins>
-    </build>
+
 </project>
 </project>

+ 32 - 0
blade-service/blade-rabbitmq-producer/src/main/java/org/springblade/producer/feign/RabbitMqProducerServiceClientImpl.java

@@ -0,0 +1,32 @@
+package org.springblade.producer.feign;
+
+import lombok.AllArgsConstructor;
+import org.springblade.producer.service.RabbitMqProducerService;
+import org.springframework.web.bind.annotation.RestController;
+
+@RestController
+@AllArgsConstructor
+public class RabbitMqProducerServiceClientImpl implements RabbitMqProducerServiceClient{
+
+    private final RabbitMqProducerService producerService;
+
+    @Override
+    public void sendMessageToArchiveQueue(String message) {
+        producerService.sendMessageToArchiveQueue(message);
+    }
+
+    @Override
+    public void sendMessageToManagerQueue(String message) {
+        producerService.sendMessageToManagerQueue(message);
+    }
+
+    @Override
+    public void sendMessageToBusinessQueue(String message) {
+        producerService.sendMessageToBusinessQueue(message);
+    }
+
+    @Override
+    public void sendMessageToMeterQueue(String message) {
+        producerService.sendMessageToMeterQueue(message);
+    }
+}