From f366db113cb6f26f418f42d0098d9aa1c52a61b7 Mon Sep 17 00:00:00 2001
From: zhanghl <253316343@qq.com>
Date: 星期四, 17 四月 2025 16:43:04 +0800
Subject: [PATCH] [add]工单同步代码
---
aps-modules/aps-job/pom.xml | 7 +
aps-modules/aps-job/src/main/java/com/aps/job/mapper/ApsWorkOrderProcessMapper.java | 2
aps-modules/aps-job/src/main/java/com/aps/job/service/IApsWorkOrderJobService.java | 2
aps-modules/aps-job/src/main/java/com/aps/job/mapper/SysJobMapper.java | 2
aps-modules/aps-job/src/main/java/com/aps/job/controller/ApsWorkOrderJobController.java | 114 ++++++++++++++++++++++++++++
aps-modules/aps-job/src/main/java/com/aps/job/config/RestTemplateConfig.java | 13 +++
aps-modules/aps-job/src/main/resources/mapper/job/ApsWorkOrderProcessMapper.xml | 2
aps-modules/aps-job/src/main/java/com/aps/job/service/impl/ApsWorkOrderJobServiceImpl.java | 57 ++++++++++++++
aps-modules/aps-job/src/main/java/com/aps/job/mapper/SysJobLogMapper.java | 2
9 files changed, 199 insertions(+), 2 deletions(-)
diff --git a/aps-modules/aps-job/pom.xml b/aps-modules/aps-job/pom.xml
index 4c3b39e..79ecbd2 100644
--- a/aps-modules/aps-job/pom.xml
+++ b/aps-modules/aps-job/pom.xml
@@ -71,7 +71,12 @@
<groupId>com.aps</groupId>
<artifactId>aps-common-swagger</artifactId>
</dependency>
-
+ <dependency>
+ <groupId>org.projectlombok</groupId>
+ <artifactId>lombok</artifactId>
+ <scope>provided</scope>
+ </dependency>
+
</dependencies>
<build>
diff --git a/aps-modules/aps-job/src/main/java/com/aps/job/config/RestTemplateConfig.java b/aps-modules/aps-job/src/main/java/com/aps/job/config/RestTemplateConfig.java
new file mode 100644
index 0000000..9ad1ca7
--- /dev/null
+++ b/aps-modules/aps-job/src/main/java/com/aps/job/config/RestTemplateConfig.java
@@ -0,0 +1,13 @@
+package com.aps.job.config;
+
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.web.client.RestTemplate;
+
+@Configuration
+public class RestTemplateConfig {
+ @Bean
+ public RestTemplate restTemplate() {
+ return new RestTemplate();
+ }
+}
diff --git a/aps-modules/aps-job/src/main/java/com/aps/job/controller/ApsWorkOrderJobController.java b/aps-modules/aps-job/src/main/java/com/aps/job/controller/ApsWorkOrderJobController.java
new file mode 100644
index 0000000..3cb9d12
--- /dev/null
+++ b/aps-modules/aps-job/src/main/java/com/aps/job/controller/ApsWorkOrderJobController.java
@@ -0,0 +1,114 @@
+package com.aps.job.controller;
+
+import java.util.List;
+import java.io.IOException;
+
+import jakarta.servlet.http.HttpServletResponse;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.PutMapping;
+import org.springframework.web.bind.annotation.DeleteMapping;
+import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+import com.aps.common.log.annotation.Log;
+import com.aps.common.log.enums.BusinessType;
+import com.aps.common.security.annotation.RequiresPermissions;
+import com.aps.job.domain.ApsWorkOrderJob;
+import com.aps.job.service.IApsWorkOrderJobService;
+import com.aps.common.core.web.controller.BaseController;
+import com.aps.common.core.web.domain.AjaxResult;
+import com.aps.common.core.utils.poi.ExcelUtil;
+import com.aps.common.core.web.page.TableDataInfo;
+
+/**
+ * 宸ュ崟鍚屾Controller
+ *
+ * @author zhl
+ * @date 2025-04-17
+ */
+@RestController
+@RequestMapping("/ApsWorkOrderJob")
+public class ApsWorkOrderJobController extends BaseController
+{
+ @Autowired
+ private IApsWorkOrderJobService apsWorkOrderJobService;
+
+ /**
+ * 鏌ヨ宸ュ崟鍚屾鍒楄〃
+ */
+ @RequiresPermissions("ApsWorkOrderJob:ApsWorkOrderJob:list")
+ @GetMapping("/list")
+ public TableDataInfo list(ApsWorkOrderJob apsWorkOrderJob)
+ {
+ startPage();
+ List<ApsWorkOrderJob> list = apsWorkOrderJobService.selectApsWorkOrderJobList(apsWorkOrderJob);
+ return getDataTable(list);
+ }
+
+ /**
+ * 瀵煎嚭宸ュ崟鍚屾鍒楄〃
+ */
+ @RequiresPermissions("ApsWorkOrderJob:ApsWorkOrderJob:export")
+ @Log(title = "宸ュ崟鍚屾", businessType = BusinessType.EXPORT)
+ @PostMapping("/export")
+ public void export(HttpServletResponse response, ApsWorkOrderJob apsWorkOrderJob)
+ {
+ List<ApsWorkOrderJob> list = apsWorkOrderJobService.selectApsWorkOrderJobList(apsWorkOrderJob);
+ ExcelUtil<ApsWorkOrderJob> util = new ExcelUtil<ApsWorkOrderJob>(ApsWorkOrderJob.class);
+ util.exportExcel(response, list, "宸ュ崟鍚屾鏁版嵁");
+ }
+
+ /**
+ * 鑾峰彇宸ュ崟鍚屾璇︾粏淇℃伅
+ */
+ @RequiresPermissions("ApsWorkOrderJob:ApsWorkOrderJob:query")
+ @GetMapping(value = "/{id}")
+ public AjaxResult getInfo(@PathVariable("id") Long id)
+ {
+ return success(apsWorkOrderJobService.selectApsWorkOrderJobById(id));
+ }
+
+ /**
+ * 鏂板宸ュ崟鍚屾
+ */
+ @RequiresPermissions("ApsWorkOrderJob:ApsWorkOrderJob:add")
+ @Log(title = "宸ュ崟鍚屾", businessType = BusinessType.INSERT)
+ @PostMapping
+ public AjaxResult add(@RequestBody ApsWorkOrderJob apsWorkOrderJob)
+ {
+ return toAjax(apsWorkOrderJobService.insertApsWorkOrderJob(apsWorkOrderJob));
+ }
+
+ /**
+ * 淇敼宸ュ崟鍚屾
+ */
+ @RequiresPermissions("ApsWorkOrderJob:ApsWorkOrderJob:edit")
+ @Log(title = "宸ュ崟鍚屾", businessType = BusinessType.UPDATE)
+ @PutMapping
+ public AjaxResult edit(@RequestBody ApsWorkOrderJob apsWorkOrderJob)
+ {
+ return toAjax(apsWorkOrderJobService.updateApsWorkOrderJob(apsWorkOrderJob));
+ }
+
+ /**
+ * 鍒犻櫎宸ュ崟鍚屾
+ */
+ @RequiresPermissions("ApsWorkOrderJob:ApsWorkOrderJob:remove")
+ @Log(title = "宸ュ崟鍚屾", businessType = BusinessType.DELETE)
+ @DeleteMapping("/{ids}")
+ public AjaxResult remove(@PathVariable Long[] ids)
+ {
+ return toAjax(apsWorkOrderJobService.deleteApsWorkOrderJobByIds(ids));
+ }
+
+
+ @PostMapping("/batchInsertApsWorkOrderJob")
+ public AjaxResult batchInsertApsWorkOrderJob()
+ {
+ apsWorkOrderJobService.batchInsertApsWorkOrderJob();
+ return success();
+ }
+}
diff --git a/aps-modules/aps-job/src/main/java/com/aps/job/mapper/ApsWorkOrderProcessMapper.java b/aps-modules/aps-job/src/main/java/com/aps/job/mapper/ApsWorkOrderProcessMapper.java
index 6d1122c..d1d04e8 100644
--- a/aps-modules/aps-job/src/main/java/com/aps/job/mapper/ApsWorkOrderProcessMapper.java
+++ b/aps-modules/aps-job/src/main/java/com/aps/job/mapper/ApsWorkOrderProcessMapper.java
@@ -1,6 +1,7 @@
package com.aps.job.mapper;
import com.aps.job.domain.ApsWorkOrderProcess;
+import org.apache.ibatis.annotations.Mapper;
import java.util.List;
import java.util.Map;
@@ -11,6 +12,7 @@
* @author hjy
* @date 2025-04-17
*/
+@Mapper
public interface ApsWorkOrderProcessMapper
{
/**
diff --git a/aps-modules/aps-job/src/main/java/com/aps/job/mapper/SysJobLogMapper.java b/aps-modules/aps-job/src/main/java/com/aps/job/mapper/SysJobLogMapper.java
index a06b39b..d1e6ed0 100644
--- a/aps-modules/aps-job/src/main/java/com/aps/job/mapper/SysJobLogMapper.java
+++ b/aps-modules/aps-job/src/main/java/com/aps/job/mapper/SysJobLogMapper.java
@@ -2,12 +2,14 @@
import java.util.List;
import com.aps.job.domain.SysJobLog;
+import org.apache.ibatis.annotations.Mapper;
/**
* 璋冨害浠诲姟鏃ュ織淇℃伅 鏁版嵁灞�
*
* @author ruoyi
*/
+@Mapper
public interface SysJobLogMapper
{
/**
diff --git a/aps-modules/aps-job/src/main/java/com/aps/job/mapper/SysJobMapper.java b/aps-modules/aps-job/src/main/java/com/aps/job/mapper/SysJobMapper.java
index 4863483..d0ad158 100644
--- a/aps-modules/aps-job/src/main/java/com/aps/job/mapper/SysJobMapper.java
+++ b/aps-modules/aps-job/src/main/java/com/aps/job/mapper/SysJobMapper.java
@@ -2,12 +2,14 @@
import java.util.List;
import com.aps.job.domain.SysJob;
+import org.apache.ibatis.annotations.Mapper;
/**
* 璋冨害浠诲姟淇℃伅 鏁版嵁灞�
*
* @author ruoyi
*/
+@Mapper
public interface SysJobMapper
{
/**
diff --git a/aps-modules/aps-job/src/main/java/com/aps/job/service/IApsWorkOrderJobService.java b/aps-modules/aps-job/src/main/java/com/aps/job/service/IApsWorkOrderJobService.java
index 283fced..f6efc6e 100644
--- a/aps-modules/aps-job/src/main/java/com/aps/job/service/IApsWorkOrderJobService.java
+++ b/aps-modules/aps-job/src/main/java/com/aps/job/service/IApsWorkOrderJobService.java
@@ -58,4 +58,6 @@
* @return 缁撴灉
*/
public int deleteApsWorkOrderJobById(Long id);
+
+ void batchInsertApsWorkOrderJob();
}
diff --git a/aps-modules/aps-job/src/main/java/com/aps/job/service/impl/ApsWorkOrderJobServiceImpl.java b/aps-modules/aps-job/src/main/java/com/aps/job/service/impl/ApsWorkOrderJobServiceImpl.java
index 82927a6..50beaae 100644
--- a/aps-modules/aps-job/src/main/java/com/aps/job/service/impl/ApsWorkOrderJobServiceImpl.java
+++ b/aps-modules/aps-job/src/main/java/com/aps/job/service/impl/ApsWorkOrderJobServiceImpl.java
@@ -1,12 +1,24 @@
package com.aps.job.service.impl;
+import java.util.ArrayList;
import java.util.List;
+
+import com.alibaba.fastjson.JSONArray;
+import com.alibaba.fastjson.JSONObject;
import com.aps.common.core.utils.DateUtils;
+import com.aps.common.core.utils.StringUtils;
+import jakarta.annotation.Resource;
+import org.springframework.beans.factory.annotation.Value;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.http.HttpEntity;
+import org.springframework.http.HttpHeaders;
+import org.springframework.http.MediaType;
+import org.springframework.http.ResponseEntity;
import org.springframework.stereotype.Service;
import com.aps.job.mapper.ApsWorkOrderJobMapper;
import com.aps.job.domain.ApsWorkOrderJob;
import com.aps.job.service.IApsWorkOrderJobService;
+import org.springframework.web.client.RestTemplate;
/**
* 宸ュ崟鍚屾Service涓氬姟灞傚鐞�
@@ -19,6 +31,16 @@
{
@Autowired
private ApsWorkOrderJobMapper apsWorkOrderJobMapper;
+
+ /**
+ * 鑾峰彇璁㈠崟鎺ュ彛
+ * */
+ @Value("${u9.workOrderJobUrl}")
+ private String getWorkOrderUrl;
+
+ @Autowired
+ private RestTemplate restTemplate;
+
/**
* 鏌ヨ宸ュ崟鍚屾
@@ -93,4 +115,39 @@
{
return apsWorkOrderJobMapper.deleteApsWorkOrderJobById(id);
}
+
+
+ @Override
+ public void batchInsertApsWorkOrderJob() {
+
+ HttpHeaders headers = new HttpHeaders();
+ headers.setContentType(MediaType.APPLICATION_JSON);
+ Integer PageIndex=1;
+ Integer PageSize=10;
+ Boolean continueFlag=true;
+ /* while (continueFlag){*/
+ JSONObject requestBody = new JSONObject();
+ requestBody.put("PageIndex", PageIndex);
+ requestBody.put("PageSize", PageSize);
+ HttpEntity<String> request = new HttpEntity<>(requestBody.toJSONString(), headers);
+ ResponseEntity<String> response = restTemplate.postForEntity(getWorkOrderUrl, request, String.class);
+ if (response.getStatusCode().is2xxSuccessful()) {
+ String responseBody = response.getBody();
+ if(StringUtils.isNotEmpty(responseBody)){
+ JSONObject responseBodyJson = JSONObject.parseObject(responseBody);
+ if("200".equals(responseBodyJson.getString("status"))){
+ JSONArray result = responseBodyJson.getJSONArray("data");
+ List<ApsWorkOrderJob> jobs = new ArrayList<>();
+ if (result!=null){
+ for (int i = 0; i < result.size(); i++) {
+ ApsWorkOrderJob order = result.getObject(i, ApsWorkOrderJob.class);
+ jobs.add(order);
+ }
+ }
+ apsWorkOrderJobMapper.batchInsertApsWorkOrderJob(jobs);
+ }
+ }
+ }
+ /* }*/
+ }
}
diff --git a/aps-modules/aps-job/src/main/resources/mapper/job/ApsWorkOrderProcessMapper.xml b/aps-modules/aps-job/src/main/resources/mapper/job/ApsWorkOrderProcessMapper.xml
index bbdb439..366a651 100644
--- a/aps-modules/aps-job/src/main/resources/mapper/job/ApsWorkOrderProcessMapper.xml
+++ b/aps-modules/aps-job/src/main/resources/mapper/job/ApsWorkOrderProcessMapper.xml
@@ -116,7 +116,7 @@
</foreach>
</delete>
- <select id="existsByDocNoOpNumOpId" parameterType="map" resultMap="Long">
+ <select id="existsByDocNoOpNumOpId" parameterType="map" resultType="Long">
select id from aps_work_order_process
where doc_no = #{docNo}
and op_num = #{opNum}
--
Gitblit v1.9.3