package com.csii.publish.service.impl;
import com.csii.publish.dao.*;
import com.csii.publish.service.PublishedServicesService;
import entities.*;
import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
import java.text.SimpleDateFormat;
import java.util.*;
/**
* @author wanggc
* @date 2020/7/29 18:26
* @email wanggaochong@csii.com.cn
*/
@Service
public class PublishedServicesServiceImpl implements PublishedServicesService {
@Autowired(required = false)
PublishedServicesMapper publishedServicesMapper;
@Autowired(required = false)
DatabaseAssestsMapper databaseAssestsMapper;
@Autowired(required = false)
TableAssetsMapper tableAssetsMapper;
@Autowired(required = false)
FieldAssestsMapper fieldAssestsMapper;
@Autowired(required = false)
PublishedServicesMetaMapper publishedServicesMetaMapper;
@Autowired(required = false)
PublishedDatabaseAssestsMapper publishedDatabaseAssestsMapper;
@Autowired(required = false)
PublishedTableAssetsMapper publishedTableAssetsMapper;
@Autowired(required = false)
PublishedFieldAssestsMapper publishedFieldAssestsMapper;
PublishedServices publishedServices =new PublishedServices();
PublishedServicesMeta publishedServicesMeta;
PublishedDatabaseAssests publishedDatabaseAssests=new PublishedDatabaseAssests();
PublishedTableAssets publishedTableAssets;
PublishedFieldAssests publishedFieldAssests;
SimpleDateFormat df = new SimpleDateFormat("YYYYMMddHHmmss");
Date date;
@Override
public List<Map<String, Object>> getMetaFromMysql(Map<String, Object> map) {
List<Map<String,Object>> datas= null;
String ds_type = map.get("dsType").toString();
String db_name = map.get("dbName").toString();
String table_name = map.get("tableName").toString();
if(!ds_type.equals("") && db_name.equals("") && table_name.equals("")){
datas= databaseAssestsMapper.selectdatabaseNamesByDsTpye(map);
}
else if(!ds_type.equals("") && !db_name.equals("") && table_name.equals("")){
datas= tableAssetsMapper.selectTableNamesByDatabase(map);
}
else if(!ds_type.equals("") && !db_name.equals("") && !table_name.equals("")){
datas= fieldAssestsMapper.selectFieldNamesByTable(map);
}
else{
System.out.print("非法");
}
return datas;
}
/**
* 获取API,将API数据项导入到数据库
* @param map
* @return
*/
@Override
@Transactional
public int addServiceApi(LinkedHashMap<String, Object> map,CommonResult commonResult) {
JSONObject jsonObject = JSONObject.fromObject(map);
List<PublishedServicesMeta> fieldList = new ArrayList<>();
date =new Date();
List<PublishedServices> publishService;
String publishedId = df.format(date);
String serviceName = jsonObject.getString("serviceName").trim();
if(!serviceName.equals("") && serviceName != null){
publishService = publishedServicesMapper.selectBypublishedServiceName(serviceName);
if(publishService.size() > 0){
commonResult.setCode(200);
commonResult.setMessage("服务API【"+serviceName+"】已经添加,重新设置服务名称");
return -1;
}else {
//设置API url 的前缀
String url = "http://localhost:8090/csii";
String serviceUrl = url+jsonObject.getString("serviceUrl");
publishedServices.setServiceName(serviceName);
publishedServices.setServiceUrl(serviceUrl);
publishedServices.setRequestType(jsonObject.getString("requestType"));
publishedServices.setPublishedId(publishedId);
publishedServices.setServiceVersion(jsonObject.getString("serviceVersion"));
publishedServices.setDataType(jsonObject.getString("dataType"));
publishedServices.setDataContent(jsonObject.getString("dataContent"));
publishedServices.setServiceStatus(jsonObject.getString("serviceStatus"));
publishedServices.setDbType(jsonObject.getString("dbType"));
publishedServices.setFilter(jsonObject.getString("filter"));
publishedServices.setDecimals(jsonObject.getString("decimals"));
publishedServices.setOrderType(jsonObject.getString("orderType"));
publishedServices.setServiceDesc(jsonObject.getString("serviceDesc"));
publishedServices.setApprovalStatus(jsonObject.getString("approvalStatus"));
publishedServices.setApprovalSuggest(jsonObject.getString("approvalSuggest"));
publishedServices.setApprover(jsonObject.getString("approver"));
publishedServices.setApproveTime(jsonObject.getString("approveTime"));
publishedServices.setCreateBy(jsonObject.getString("createBy"));
publishedServices.setCreateTime(date);
publishedServices.setUpdateBy(jsonObject.getString("updateBy"));
publishedServices.setUpdateTime(date);
publishedServicesMapper.insertSelective(publishedServices);
JSONArray tableAndFields = jsonObject.getJSONArray("tableAndFields");
Iterator<JSONObject> tableIterator = tableAndFields.iterator();
while (tableIterator.hasNext()) {
publishedServicesMeta = new PublishedServicesMeta();
JSONObject jsonName = tableIterator.next();
publishedServicesMeta.setDatabaseId(jsonName.getInt("databaseId"));
publishedServicesMeta.setTableId(jsonName.getInt("tableId"));
publishedServicesMeta.setPublishedId(publishedId);
publishedServicesMeta.setApproveStatus(jsonObject.getString("approveStatus"));
publishedServicesMeta.setApplyDesc(jsonObject.getString("applyDesc"));
publishedServicesMeta.setRefuseReason(jsonObject.getString("refuseReason"));
publishedServicesMeta.setFlag(jsonObject.getString("flag"));
publishedServicesMeta.setCreateBy(jsonObject.getString("createBy"));
publishedServicesMeta.setCreateTime(date);
publishedServicesMeta.setUpdateBy(jsonObject.getString("updateBy"));
publishedServicesMeta.setUpdateTime(date);
JSONArray fields = jsonName.getJSONArray("fields");
Iterator iterator = fields.iterator();
String fieldNames = "";
while (iterator.hasNext()) {
String fieldName = (String) iterator.next();
fieldNames += fieldName + ",";
}
fieldNames = fieldNames.substring(0, fieldNames.length() - 1);
publishedServicesMeta.setFieldNameList(fieldNames);
fieldList.add(publishedServicesMeta);
}
Integer flag = publishedServicesMetaMapper.insertSelectList(fieldList);
if(flag == fieldList.size()){
commonResult.setMessage("服务API【"+serviceName+"】添加成功");
commonResult.setCode(200);
return 1;
}else{
commonResult.s
没有合适的资源?快使用搜索试试~ 我知道了~
springCloud_dataservice_bus.zip
共1821个文件
xml:451个
java:187个
sample:12个
需积分: 44 82 下载量 49 浏览量
2021-03-17
17:33:54
上传
评论
收藏 1.62MB ZIP 举报
温馨提示
idea、jdk、maven、springCloudAlibaba
资源详情
资源评论
资源推荐
收起资源包目录
springCloud_dataservice_bus.zip (1821个子文件)
001412477db57e48be62be190fa19cb3d1ea4b 1KB
0023e22d154972f9356c8dfe7421fb015851bb 3KB
0050f3f284c77d8ce55d27842911c769afcdab 46B
005e7a1669214cfdd9a50696d11ba859e4eac7 2KB
00d33790489fa53f4c769c9cf58586c1b6c510 550B
00df7c5eb17c873221bcfe7201c1f7b7253454 46B
00f180648418ceceb35274450078c3f760d2f8 655B
010fdd8768287144e1139060bd264f9e977e9c 212B
015df8847800d4561e179ca3091dc252231a7a 528B
018186db37603cecadb13291bfee2ecf5a7a88 81B
01b1d643c73f78c0e2e1cc7244efec55fe40a5 371B
01bd24433e8381ecdc31989974dd196463ea65 1KB
022e9cc5f487cd85667c64e6c9754046244968 578B
0234f4ac16e0bef6b2b6a2439c6d79dd07ac37 966B
0236a4ac6145553da80c472e2dcdd6c7c7c209 46B
02967474554c31669894c1dac4819e1de70f54 46B
02bdfd044d6454f36b64f5d292f2aad19c2c73 82B
0319c987cc460ca1dfb00a1f2a56194b593319 82B
031a7c87bb305f3f63b5ef53d9deb367fd1768 46B
03f1b5feb57bc6767a9ee627b8507100e25bf5 217B
0409d5d4046e220b6a7a945e92dc08c68501ee 49B
0460f12180003d18a268bc21a6b8b00180def9 213B
04610dec00dd40376c4796a5f42476e195874a 223B
04abafd2e6ddd7e0ab0e91d7eda04acaf54e80 644B
04c41b4cb0a774533a74ef472794d7a1514259 372B
04e59b8337d574bbc82c3475b7cee2c557d4ff 200B
04fb24417d62bb2a98bb17eedb268747968873 169B
05052033ce90d9072a7e8982888cec39f3bdd5 46B
053271ef1b7aefdd9531430f7a0eb738498100 79B
05932db44eb7693e7d22922c0f512fdb47024c 519B
05cf3ea4ef88f70afc8804ae23ff6cdd6d5eaf 293B
05f66fa0e6f3ba996cd9d123784272421131d7 207B
05fbcdec085857fa0191bf5c80f69ca3016db2 201B
065f799b052edd32e56af76aa8c17499ac88f9 298B
066e21ef28ef041ae003310ac38df24da38a37 343B
06737ebf7836245772c78b27e2e760f21c8210 49B
0783fb9138b568a19a950bb40483c618eca4af 213B
07dfe58a835932ee0323417958584aff6e9ec0 872B
07fc12f744a32a42678b89201a382196871ee5 79B
084e91324fb79a81a684087cc7f32158ce39c6 371B
0886ad799ddd9a625e58652e1bac7a2b398750 46B
0899f7e2b22988da9850132b094d466bdcb48a 80B
08a6612c2100d3f1954265f6efe93c7ae92dfc 107B
09173ebc1dd6a5f51bea2af51e91add2c39ee6 182B
0918d381020bcceee037fd89ab534c24d5fede 181B
0931f867a7ff37c068125f73bf9a5df7c4ac4a 47B
0956ba07afaa151d1b36776755b8ecdf527e80 49B
098481cc66b456fdda18389466da4007b4b5f5 82B
09934367a094f92bb55587d29239d661eecdd5 47B
0a14e60659d7ec09ff4f6ca6770a6700bdbdb9 81B
0b04d263233c81ac6aa3fe429df8694aa7d918 253B
0b77c8811ba273b8ec20895f34997b34cf6a20 522B
0b9c21420c8cd10bef7298facebb6dd613cc08 1KB
0ba162206fb5740ff004c7a2263da47c4d5ff3 46B
0ba23e6e47770ebfe4a815a7114071e132e45a 45B
0c0370cfedd34227a8f4dd0004d10736a753fb 214B
0c384a1851832287710da1d48f69784930afa2 372B
0c59608a8f97906f9e7d57f7e7e437b4e7c92a 82B
0cb361e4831ce5542bf2f1724e609438d5760e 1KB
0cd188b531d8f3cf096581ea15385972f0b678 81B
0d0927cda3a3113033b9de965611d22adf5d8c 127B
0d6b569ee7ce0e806abb171aa852038a7dedee 46B
0e1715da845ccf9891bc325f02d4f9194ae9a3 2KB
0e91ecba7f2649685dbd06549e2429da2ab6fc 82B
0e9f6c95c05f72992c8a8ca9ca6e6f72c7d662 2KB
0eb2b291116bb8f0647797687d44566f12d6e8 46B
0ed95d9b51dd2bd81ce3bc7bcd0e9fd35525d9 337B
0f2682e581cfc5d3f3f3b0f083af0d3b800947 276B
0f8ba9b912a39805984c4958a0b0b5a3c3609e 372B
0febee64c1fdcb1835c9d186393cb625ea13e2 65B
10da9d1d7b0500d35542531681e93536afe050 47B
10ec52111a87ae12c90082f325ef10d5250d58 46B
111328383813d6ad3eb9fc5002e0f1d985cfda 46B
11329ec0f401067205906f34acf8937ba3e0bf 371B
11566183de378ac93c4a05a49047a9d7a752dd 201B
11a2039c1d041e0eeaec17cd95ab44146c4d5a 429B
11a4ce6e7b18a4d293f46bb755922c92d70472 373B
11e9840806a54694812694ef9f1d16ff00be15 211B
1201f02889c955f9fd95634abb67f5c7bc9e37 50B
12094242c05bcd8bc75434c291d8ec94af6853 127B
12201c990ff729b8b58473f1e294f9ba8fb746 2KB
12354490bb34efc8e8b71c863e922183f56693 81B
1241152179c866c0e5527b651f8ba41cd4aa29 46B
12bc2b4d5f705a4b3d5b39c7c58712eaf549fb 46B
12de7e9e58707088ac581a87b041fca97977c1 143B
1307c73c45a0fad45b38895efa7a1e5f191ec0 170B
13388bf6dd604afae897a226510d964110ce01 372B
13c765155b6b1b628970126ddb846b364c864f 241B
1463fc7691cfbd182ad246492ffce691ef50c6 215B
1475b15616ee1dc3ab8c190ee3f2adce863e93 105B
1483e0543a836236085d10e1283fbf0c930db8 638B
14d1eded8f7fdde01747dd190cf58b904290a9 46B
1568c358240b2cea2131214581578be9ddacf8 80B
15997118fc5055f254c3e9a2b666cc0e68e71f 73B
161fc71b3da7410fa7011bcd150701b0b55ecd 325B
1623937656e6ba88d502fffe933da827ebb152 418B
162ac80c07ed2c35a2f1292c576b3e21ea4cbc 2KB
162e4e3a689110c927f6b1dd8b428c0198fd85 348B
163cb6cac7a9e310a1995d6f7e952188707cb2 955B
16868e2c13c6e1e2e45ff3c4de9c839dab6b82 81B
共 1821 条
- 1
- 2
- 3
- 4
- 5
- 6
- 19
任错错
- 粉丝: 6289
- 资源: 4
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0