|
@@ -1,29 +1,38 @@
|
|
|
package com.github.zuihou.business.productionReadyCenter.service.impl;
|
|
|
|
|
|
|
|
|
+import com.alibaba.fastjson.JSON;
|
|
|
+import com.alibaba.fastjson.JSONObject;
|
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
|
import com.github.zuihou.base.service.SuperCacheServiceImpl;
|
|
|
-import com.github.zuihou.business.aps.instance.domain.basicdata.Machine;
|
|
|
-import com.github.zuihou.business.productionReadyCenter.dao.CuttingToolMapper;
|
|
|
import com.github.zuihou.business.productionReadyCenter.dao.MachineCuttingToolMapper;
|
|
|
-import com.github.zuihou.business.productionReadyCenter.dto.CuttingToolSaveDTO;
|
|
|
-import com.github.zuihou.business.productionReadyCenter.dto.CuttingToolUpdateDTO;
|
|
|
import com.github.zuihou.business.productionReadyCenter.dto.MachineCuttingToolSaveDTO;
|
|
|
-import com.github.zuihou.business.productionReadyCenter.entity.CuttingTool;
|
|
|
import com.github.zuihou.business.productionReadyCenter.entity.MachineCuttingTool;
|
|
|
-import com.github.zuihou.business.productionReadyCenter.service.CuttingToolService;
|
|
|
import com.github.zuihou.business.productionReadyCenter.service.MachineCuttingToolService;
|
|
|
import com.github.zuihou.common.constant.CacheKey;
|
|
|
+import com.github.zuihou.common.util.DateUtil;
|
|
|
+import com.github.zuihou.context.BaseContextHandler;
|
|
|
import com.github.zuihou.database.mybatis.auth.DataScope;
|
|
|
-import com.github.zuihou.database.mybatis.conditions.Wraps;
|
|
|
import com.github.zuihou.database.mybatis.conditions.query.LbqWrapper;
|
|
|
import com.github.zuihou.injection.annonation.InjectionResult;
|
|
|
+import com.github.zuihou.tenant.entity.Productionresource;
|
|
|
+import com.github.zuihou.tenant.service.ProductionresourceService;
|
|
|
import com.github.zuihou.utils.BeanPlusUtil;
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
+import org.springframework.beans.factory.annotation.Autowired;
|
|
|
+import org.springframework.beans.factory.annotation.Value;
|
|
|
+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 org.springframework.transaction.annotation.Transactional;
|
|
|
+import org.springframework.web.client.RestTemplate;
|
|
|
|
|
|
-import static com.github.zuihou.utils.BizAssert.isFalse;
|
|
|
+import javax.annotation.Resource;
|
|
|
+import java.time.LocalDateTime;
|
|
|
+import java.util.Calendar;
|
|
|
+import java.util.Map;
|
|
|
|
|
|
/**
|
|
|
* <p>
|
|
@@ -39,6 +48,13 @@ import static com.github.zuihou.utils.BizAssert.isFalse;
|
|
|
|
|
|
public class MachineCuttingToolServiceImpl extends SuperCacheServiceImpl<MachineCuttingToolMapper, MachineCuttingTool> implements MachineCuttingToolService {
|
|
|
|
|
|
+ @Value("${machineCuttingTools.synUrl}")
|
|
|
+ private String synUrl;
|
|
|
+ @Autowired
|
|
|
+ private ProductionresourceService productionresourceService;
|
|
|
+ @Resource
|
|
|
+ private RestTemplate restTemplate;
|
|
|
+
|
|
|
@Override
|
|
|
@InjectionResult
|
|
|
public IPage<MachineCuttingTool> findPage(IPage<MachineCuttingTool> page, LbqWrapper<MachineCuttingTool> wrapper) {
|
|
@@ -53,6 +69,40 @@ public class MachineCuttingToolServiceImpl extends SuperCacheServiceImpl<Machine
|
|
|
return machineCuttingTool;
|
|
|
}
|
|
|
|
|
|
+ @Override
|
|
|
+ public void sysCuttingTools(Map<String, String> param) throws Exception{
|
|
|
+ BaseContextHandler.setTenant("0000");
|
|
|
+ String[] synIds = param.get("ids").split(",");
|
|
|
+ HttpHeaders headers = new HttpHeaders();
|
|
|
+ headers.setContentType(MediaType.APPLICATION_JSON);
|
|
|
+ for(String id : synIds){
|
|
|
+ Productionresource productionresource = productionresourceService.getById(id);
|
|
|
+ // 访问ccs接口查询设备刀具
|
|
|
+ JSONObject jsonObject = new JSONObject();
|
|
|
+ jsonObject.put("url",productionresource.getIp());
|
|
|
+ jsonObject.put("port",productionresource.getPort());
|
|
|
+ jsonObject.put("businessType", "tools");
|
|
|
+
|
|
|
+ HttpEntity<String> request = new HttpEntity<>(jsonObject.toJSONString(), headers);
|
|
|
+
|
|
|
+ String synMachineCuttingTolls = "";
|
|
|
+ ResponseEntity<String> postForEntity = restTemplate.postForEntity(synUrl, request, String.class);
|
|
|
+ synMachineCuttingTolls = postForEntity.getBody();
|
|
|
+
|
|
|
+ log.info("设备" + productionresource.getName() + "同步刀具返回{},请求参数{}",synMachineCuttingTolls,jsonObject.toString());
|
|
|
+ JSONObject upResult = JSON.parseObject(synMachineCuttingTolls);
|
|
|
+ if("0".equals(upResult.getString("code"))){
|
|
|
+ productionresource.setToolSynTime(DateUtil.formatTime(Calendar.getInstance().getTime()));
|
|
|
+ productionresourceService.save(productionresource);
|
|
|
+
|
|
|
+ MachineCuttingTool machineCuttingTool = JSONObject.parseObject(synMachineCuttingTolls,MachineCuttingTool.class);
|
|
|
+ machineCuttingTool.setMachineId(Integer.valueOf(id));
|
|
|
+ save(machineCuttingTool);
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
@Override
|
|
|
protected String getRegion() {
|
|
|
return CacheKey.USER;
|