Commit 290ef22c authored by 2539630746's avatar 2539630746

修改数据库

parent 102c3e5d
package com.yeejoin.amos.api.tool;
import com.yeejoin.amos.component.feign.model.FeignClientResult;
import com.yeejoin.amos.feign.privilege.Privilege;
import com.yeejoin.amos.feign.privilege.model.AgencyModel;
public class Test {
public static void main(String[] args) {
}
}
package com.yeejoin.amos.api.tool.config;
import com.alibaba.fastjson.JSONObject;
import com.yeejoin.amos.api.tool.face.model.TemplateCategoryModel;
import org.apache.commons.lang.StringUtils;
import org.springframework.jdbc.core.RowMapper;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Timestamp;
import java.text.ParseException;
import java.text.SimpleDateFormat;
// 定义自定义RowMapper 解决数据库json类型字段不能转化为JSONObject类型的问题
public class AdapterCategoryRowMapper implements RowMapper<TemplateCategoryModel> {
@Override
public TemplateCategoryModel mapRow(ResultSet rs, int rowNum) throws SQLException {
TemplateCategoryModel categoryModel = new TemplateCategoryModel();
// 在这里处理JSON字段的转换
categoryModel.setSequenceNbr(Long.valueOf(rs.getString(1)));
categoryModel.setCateName(rs.getString("CATEGORY_NAME"));
categoryModel.setIcon(rs.getString("ICON"));
categoryModel.setRecUserId(rs.getString("REC_USER_ID"));
String extras = rs.getString("EXTRAS");
if (StringUtils.isNotBlank(extras)){
JSONObject jsonObject = JSONObject.parseObject(extras);
System.out.println("<======="+jsonObject);
categoryModel.setTplType(jsonObject.getString("tempType"));
categoryModel.setDesignerType(jsonObject.getString("designerType"));
}
Timestamp timestamp = rs.getTimestamp("REC_DATE");
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String formattedDateTime = dateFormat.format(timestamp);
try {
categoryModel.setRecDate(dateFormat.parse(formattedDateTime));
} catch (ParseException e) {
throw new RuntimeException(e);
}
return categoryModel;
}
}
package com.yeejoin.amos.api.tool.config;
import com.alibaba.fastjson.JSONObject;
import com.yeejoin.amos.api.tool.face.model.TemplateModel;
import org.springframework.jdbc.core.RowMapper;
import org.springframework.jdbc.core.JdbcTemplate;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Timestamp;
import java.text.ParseException;
import java.text.SimpleDateFormat;
// 定义自定义RowMapper 解决数据库json类型字段不能转化为JSONObject类型的问题
public class StudioTemplateRowMapper implements RowMapper<TemplateModel> {
@Override
public TemplateModel mapRow(ResultSet rs, int rowNum) throws SQLException {
TemplateModel templateModel = new TemplateModel();
// 在这里处理JSON字段的转换
templateModel.setSequenceNbr(Long.valueOf(rs.getString(1)));
templateModel.setDisplayName(rs.getString(2));
templateModel.setComKey(rs.getString(3));
templateModel.setComName(rs.getString(4));
templateModel.setContent(JSONObject.parseObject(rs.getString(6)));
templateModel.setCateSeq(Long.valueOf(rs.getString(7)));
templateModel.setThumb(rs.getString(8));
templateModel.setSketch(rs.getString(9));
String isDel = rs.getString(10);
templateModel.setIsDel(false);
if ("1".equals(isDel)){
templateModel.setIsDel(true);
}
String openStatus = rs.getString(11);
templateModel.setOpenStatus(false);
if ("1".equals(openStatus)){
templateModel.setOpenStatus(true);
}
Timestamp timestamp = rs.getTimestamp("REC_DATE");
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String formattedDateTime = dateFormat.format(timestamp);
try {
templateModel.setRecDate(dateFormat.parse(formattedDateTime));
} catch (ParseException e) {
throw new RuntimeException(e);
}
templateModel.setRecUserId(rs.getString(13));
return templateModel;
}
}
......@@ -83,11 +83,11 @@ public class ApiSourceResource {
* 列表全部数据查询
* @return List<ApiSourceDto>
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@TycloudOperation(ApiLevel = UserType.AGENCY,needAuth = false)
@ApiOperation(httpMethod = "GET", value = "列表全部数据查询", notes = "列表全部数据查询")
@GetMapping(value = "/list")
public ResponseModel<List<ApiSourceModel>> selectForList() {
return ResponseHelper.buildResponse(apiSourceService.queryForApiSourceList());
public ResponseModel<List<ApiSourceModel>> selectForList(@RequestParam("categoryType") String categoryType) {
return ResponseHelper.buildResponse(apiSourceService.queryForApiSourceLists(categoryType));
}
}
......@@ -2,7 +2,6 @@ package com.yeejoin.amos.api.tool.controller;
import com.yeejoin.amos.api.tool.face.model.TemplateCategoryModel;
import com.yeejoin.amos.api.tool.face.model.TemplateCategoryTreeModel;
import com.yeejoin.amos.api.tool.face.model.TemplateModel;
import com.yeejoin.amos.api.tool.face.service.TemplateCategoryService;
import com.yeejoin.amos.api.tool.face.service.TemplateService;
import com.yeejoin.amos.api.tool.face.service.VisualDesignerService;
......@@ -26,8 +25,10 @@ public class TemplateCategoryResource {
@Autowired
private TemplateCategoryService templateCategoryService;
@Autowired
private TemplateService templateService;
@Autowired
private VisualDesignerService visualDesignerService;
......@@ -100,11 +101,11 @@ public class TemplateCategoryResource {
* 列表树形结构查询
* @return List<ApiSourceDto>
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@TycloudOperation(ApiLevel = UserType.AGENCY,needAuth = false)
@ApiOperation(httpMethod = "GET", value = "列表树形结构查询", notes = "列表树形结构查询")
@GetMapping(value = "/tree")
public ResponseModel<List<TemplateCategoryTreeModel>> selectForTree(){
return ResponseHelper.buildResponse(templateCategoryService.getTree());
public ResponseModel<List<TemplateCategoryTreeModel>> selectForTree(@RequestParam("categoryType") String categoryType){
return ResponseHelper.buildResponse(templateCategoryService.getTree(categoryType));
}
}
......@@ -111,11 +111,12 @@ public class TemplateResource {
@RequestParam(value = "current") int current,
@RequestParam(value = "size") int size,
@RequestParam(value = "categorySeq") Long categorySeq,
@RequestParam(value = "displayName", required = false) String displayName) {
@RequestParam(value = "displayName", required = false) String displayName,
@RequestParam("categoryType") String categoryType) {
Page<TemplateModel> page = new Page<>();
page.setCurrent(current);
page.setSize(size);
return ResponseHelper.buildResponse(templateService.queryForTplPage(page, categorySeq, displayName));
return ResponseHelper.buildResponse(templateService.queryForTplPage(page, categorySeq, displayName,categoryType));
}
/**
......
package com.yeejoin.amos.api.tool.face.model;
import com.alibaba.fastjson.JSONObject;
import io.swagger.annotations.ApiModel;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.typroject.tyboot.core.rdbms.model.BaseModel;
import java.util.Date;
@Data
@EqualsAndHashCode(callSuper = true)
@ApiModel(value="AdapterCategoryModel", description="")
public class AdapterCategoryModel extends BaseModel {
private String categoryType;
private Long parentId;
private String categoryName;
private String icon;
private String categoryKey;
private Integer sort;
private String agencyCode;
private Boolean isDelete;
private Date createDate;
private JSONObject extras;
}
package com.yeejoin.amos.api.tool.face.service;
import com.yeejoin.amos.api.tool.face.model.ApiInfoModel;
import com.yeejoin.amos.api.tool.face.model.AdapterCategoryModel;
import com.yeejoin.amos.api.tool.face.model.ApiSourceModel;
import com.yeejoin.amos.api.tool.face.orm.entity.ApiSource;
import com.yeejoin.amos.api.tool.face.orm.dao.ApiSourceMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.jdbc.core.BeanPropertyRowMapper;
import org.springframework.jdbc.core.JdbcTemplate;
import org.typroject.tyboot.core.rdbms.service.BaseService;
import org.springframework.stereotype.Service;
import javax.sql.DataSource;
import java.util.ArrayList;
import java.util.List;
@Service
......@@ -16,6 +22,12 @@ public class ApiSourceService extends BaseService<ApiSourceModel, ApiSource, Api
@Autowired
private ApiInfoService apiInfoService;
private JdbcTemplate jdbcTemplate;
@Autowired
@Qualifier("dataSource-amos-studio")
private DataSource dataSource;
/**
* 列表查询
*/
......@@ -23,6 +35,22 @@ public class ApiSourceService extends BaseService<ApiSourceModel, ApiSource, Api
return this.queryForList("", false);
}
public List<ApiSourceModel> queryForApiSourceLists(String categoryType) {
jdbcTemplate=new JdbcTemplate(dataSource);
List<AdapterCategoryModel> adapterCategoryModels = jdbcTemplate.query("SELECT * FROM adapter_category WHERE CATEGORY_TYPE=?", new String[]{categoryType}, new BeanPropertyRowMapper(AdapterCategoryModel.class));
List<ApiSourceModel> result=new ArrayList<>();
adapterCategoryModels.stream().forEach(adapterCategoryModel -> {
ApiSourceModel apiSourceModel=new ApiSourceModel();
apiSourceModel.setSequenceNbr(adapterCategoryModel.getSequenceNbr());
apiSourceModel.setRecDate(adapterCategoryModel.getRecDate());
apiSourceModel.setRecUserId(adapterCategoryModel.getRecUserId());
apiSourceModel.setName(adapterCategoryModel.getCategoryName());
apiSourceModel.setCode(adapterCategoryModel.getCategoryKey());
result.add(apiSourceModel);
});
return result;
}
/**
* 根据机构ID获取机构编码
*/
......
package com.yeejoin.amos.api.tool.face.service;
import com.yeejoin.amos.api.tool.config.AdapterCategoryRowMapper;
import com.yeejoin.amos.api.tool.face.model.AdapterCategoryModel;
import com.yeejoin.amos.api.tool.face.model.TemplateCategoryModel;
import com.yeejoin.amos.api.tool.face.model.TemplateCategoryTreeModel;
import com.yeejoin.amos.api.tool.face.model.VisualDesignerModel;
import com.yeejoin.amos.api.tool.face.orm.dao.TemplateCategoryMapper;
import com.yeejoin.amos.api.tool.face.orm.entity.TemplateCategory;
import com.yeejoin.amos.feign.privilege.Privilege;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.jdbc.core.BeanPropertyRowMapper;
......@@ -16,7 +17,6 @@ import org.springframework.stereotype.Service;
import javax.sql.DataSource;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
@Service
public class TemplateCategoryService extends BaseService<TemplateCategoryModel, TemplateCategory, TemplateCategoryMapper> {
......@@ -50,6 +50,7 @@ public class TemplateCategoryService extends BaseService<TemplateCategoryModel,
return this.removeById(sequenceNbr);
}
/**
*
* 模板分类表单数据转化为树形节点
*/
public List<TemplateCategoryTreeModel> tplCateToNode(List<TemplateCategoryModel> templateCategoryModels){
......@@ -66,19 +67,17 @@ public class TemplateCategoryService extends BaseService<TemplateCategoryModel,
}
/**
* 获得模板分类树
*/
public List<TemplateCategoryTreeModel> getTree() {
/**
* 修改后
*/
public List<TemplateCategoryTreeModel> getTree(String categoryType) {
jdbcTemplate=new JdbcTemplate(dataSource);
List<TemplateCategoryModel> templateCategoryModels = jdbcTemplate.query("select * from studio_template_category", new Object[]{}, new BeanPropertyRowMapper<TemplateCategoryModel>(TemplateCategoryModel.class));
/**
* 该方法返回封装好的TemplateCategoryModel类型的数据
*/
List<TemplateCategoryModel> templateCategoryModels = jdbcTemplate.query("SELECT * FROM adapter_category where CATEGORY_TYPE=?", new String[]{categoryType}, new AdapterCategoryRowMapper());
// List<TemplateCategoryModel> templateCategoryModels = this.queryForTplCateList();
List<TemplateCategoryTreeModel> nodes = this.tplCateToNode(templateCategoryModels);
List<VisualDesignerModel> visualDesignerLists = jdbcTemplate.query("select * from studio_visual_designer",new Object[]{},new BeanPropertyRowMapper<VisualDesignerModel>(VisualDesignerModel.class));
List<VisualDesignerModel> visualDesignerLists = jdbcTemplate.query("select * from studio_visual_designer",new Object[]{},new BeanPropertyRowMapper(VisualDesignerModel.class));
// List<VisualDesignerModel> visualDesignerLists = visualDesignerService.queryForVisualDesignerList();
nodes.addAll(visualDesignerService.VisualDesignerToNode(visualDesignerLists));
return getChildren(nodes, "", 0L);
......
......@@ -3,6 +3,7 @@ package com.yeejoin.amos.api.tool.face.service;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.api.tool.config.StudioTemplateRowMapper;
import com.yeejoin.amos.api.tool.face.model.*;
import com.yeejoin.amos.api.tool.face.orm.dao.TemplateMapper;
import com.yeejoin.amos.api.tool.face.orm.entity.Template;
......@@ -10,13 +11,11 @@ import com.yeejoin.amos.api.tool.utils.ConvertUtil;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.jdbc.core.BeanPropertyRowMapper;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Service;
import org.springframework.web.multipart.MultipartFile;
import org.typroject.tyboot.core.foundation.utils.ValidationUtil;
import org.typroject.tyboot.core.rdbms.service.BaseService;
import javax.sql.DataSource;
import java.io.IOException;
import java.io.InputStreamReader;
......@@ -41,15 +40,15 @@ public class TemplateService extends BaseService<TemplateModel, Template, Templa
/**
* 分页查询
*/
public Page<TemplateModel> queryForTplPage(Page<TemplateModel> page, Long categorySeq, String displayName) {
List<TemplateCategoryTreeModel> modelList = templateCategoryService.getTree();
public Page<TemplateModel> queryForTplPage(Page<TemplateModel> page, Long categorySeq, String displayName,String categoryType) {
List<TemplateCategoryTreeModel> modelList = templateCategoryService.getTree(categoryType);
List<TemplateModel> records = new ArrayList<>();
jdbcTemplate=new JdbcTemplate(dataSource);
for (TemplateCategoryTreeModel visualDesigner : modelList) {
if (Objects.equals(categorySeq, visualDesigner.getSequenceNbr())) {
for (TemplateCategoryTreeModel category : visualDesigner.getChildren()) {
List<TemplateModel> templateModels = jdbcTemplate.query("select * from studio_template",
new Long[]{category.getSequenceNbr()},new BeanPropertyRowMapper<TemplateModel>(TemplateModel.class));
List<TemplateModel> templateModels = jdbcTemplate.query("SELECT * FROM studio_template WHERE category_seq=?",
new Long[]{category.getSequenceNbr()},new StudioTemplateRowMapper());
// List<TemplateModel> templateModels = this.queryForTplListByCategorySeq(category.getSequenceNbr());
records.addAll(templateModels);
}
......@@ -58,16 +57,24 @@ public class TemplateService extends BaseService<TemplateModel, Template, Templa
}
Long curr=page.getCurrent();
Long pageSize=page.getSize();
int offset = (curr.intValue() - 1) * pageSize.intValue();
// 构建 SQL 查询语句
String sql = "SELECT * FROM studio_template WHERE category_seq = ? AND display_name = ? LIMIT ? OFFSET ?";
// 构建参数数组
Object[] params = { categorySeq, displayName, pageSize, offset };
int startIndex = (curr.intValue() - 1) * pageSize.intValue();
// 查询总记录数
String countSql = "SELECT COUNT(*) FROM studio_template WHERE category_seq = ? AND display_name = ?";
Long total = jdbcTemplate.queryForObject(countSql, Long.class, categorySeq, displayName);
// 构建 SQL 查询语句
String sql = "SELECT * FROM studio_template WHERE category_seq = ? AND display_name = ? LIMIT ? , ?";
Long total;
Object[] params = {categorySeq, displayName, startIndex, pageSize};
if (displayName==null||"".equals(displayName)){
countSql="SELECT COUNT(*) FROM studio_template WHERE category_seq = ?";
total=jdbcTemplate.queryForObject(countSql, Long.class, categorySeq);
sql="SELECT * FROM studio_template WHERE category_seq = ? LIMIT ? , ?";
// 构建参数数组
params = new Object[]{categorySeq,startIndex, pageSize};
}else {
total=jdbcTemplate.queryForObject(countSql, Long.class, categorySeq, displayName);
}
// 查询分页数据
List<TemplateModel> data = jdbcTemplate.query(sql,params,new BeanPropertyRowMapper<>(TemplateModel.class));
List<TemplateModel> data = jdbcTemplate.query(sql,new StudioTemplateRowMapper(),params);
// 构建Page对象
Page<TemplateModel> pageResult = new Page<>();
pageResult.setCurrent(pageSize);
......
......@@ -80,3 +80,11 @@ datasource.port=3306
datasource.username=root
datasource.password=Yeejoin@2020
datasource.driver-class-name=com.mysql.cj.jdbc.Driver
#studio_visual_designer 都有
#studio_template_category 只有amos_tool_library有
#studio_template 都有
#studio_data_api_category 只有amos_tool_library有
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment