diff --git a/modules/i3plus-core-apiservice/pom.xml b/modules/i3plus-core-apiservice/pom.xml index 4aa8bd9..0b932c6 100644 --- a/modules/i3plus-core-apiservice/pom.xml +++ b/modules/i3plus-core-apiservice/pom.xml @@ -35,6 +35,10 @@ i3plus.icloud i3plus-icloud-andon + + i3plus.icloud + i3plus-icloud-form + diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/DemoDynamicFormController.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/DemoDynamicFormController.java new file mode 100644 index 0000000..dbc19f6 --- /dev/null +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/DemoDynamicFormController.java @@ -0,0 +1,209 @@ +package cn.estsh.i3plus.core.apiservice.controller; + +import cn.estsh.i3plus.icloud.form.sdk.IFormDynamicFormCloud; +import cn.estsh.i3plus.pojo.base.bean.BaseResultBean; +import cn.estsh.i3plus.pojo.base.dynamic.DynamicEntity; +import cn.estsh.i3plus.pojo.form.bean.BfDataObject; +import cn.estsh.i3plus.pojo.form.bean.BfDataObjectProperty; +import cn.estsh.i3plus.pojo.form.bean.BfDataSource; +import cn.estsh.i3plus.pojo.model.form.CloudFormModel; +import cn.estsh.impp.framework.boot.util.ResultBean; +import com.alibaba.fastjson.JSON; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.apache.commons.collections.map.HashedMap; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +/** + * @Description : + * @Reference : + * @Author : Adair Peng + * @CreateDate : 2019-06-06 21:09 + * @Modify: + **/ +@RestController +@RequestMapping("/impp/form") +@Api(description="动态报表设置") +public class DemoDynamicFormController { + + private static final Logger LOGGER = LoggerFactory.getLogger(DemoDynamicFormController.class); + + @Autowired + private IFormDynamicFormCloud formDynamicFormCloud; + + /** + * 测试数据源信息 + * ip:192.168.1.55 + * port:3306 + * database:form_test + * user:form_test + * pwd:form_test + * + * @return + */ + @GetMapping("/get-data-source") + @ApiOperation("获取数据源及动态对象") + public ResultBean getDataSource(){ + // 查询所有数据源 + BaseResultBean baseResultBean = formDynamicFormCloud.findBfDataSource(); + LOGGER.info("全部数据源信息:{}", JSON.toJSONString(baseResultBean)); + + // 根据数据源code查询数据源信息 + baseResultBean = formDynamicFormCloud.getBfDataSourceBySourceCode("form_test"); + if(!baseResultBean.isSuccess()){ + return ResultBean.fail(baseResultBean.errorMsg); + } + + // 查询指定数据源的数据对象(表信息) + BaseResultBean dataObjectList = + formDynamicFormCloud.findBfDataObjectByDataSourceCode(baseResultBean.getResultObject().getSourceCode()); + + return ResultBean.success("查询成功").setResultObject(baseResultBean.getResultObject()).setResultList(dataObjectList.getResultList()); + } + + + /** + * 根据条件查询动态数据 + * @return + */ + @GetMapping("/find-dynamic-entity") + @ApiOperation("根据条件查询动态数据") + public ResultBean findDynamicEntity(){ + CloudFormModel cloudFormModel = new CloudFormModel(); + cloudFormModel.setSourceCode("form_test"); + cloudFormModel.setDataObjectCode("sys_config"); + + // 查询条件(暂只支持=) + List dataObjectPropertyList = new ArrayList<>(); + BfDataObjectProperty dataObjectProperty = new BfDataObjectProperty(); + // 条件列 + dataObjectProperty.setPropertyCode("configValue"); + // 条件参数 + dataObjectProperty.setPropertyFormValue("impp.dev@estsh.com"); + dataObjectPropertyList.add(dataObjectProperty); + + cloudFormModel.setSelectList(dataObjectPropertyList); + + // 查询 + BaseResultBean dynamicEntityBaseResultBean = formDynamicFormCloud.findDynamicEntity(cloudFormModel); + LOGGER.info("==========findDynamicEntity====== {}",JSON.toJSONString(dynamicEntityBaseResultBean)); + if(!dynamicEntityBaseResultBean.isSuccess()){ + return ResultBean.fail(dynamicEntityBaseResultBean.errorMsg); + } + + return ResultBean.success("查询成功").setResultList(dynamicEntityBaseResultBean.getResultList()); + } + + /** + * 根据id查询动态数据 + * @param idStr + * @return + */ + @GetMapping("/get-dynamic-entity") + @ApiOperation("根据id查询动态数据") + public ResultBean getDynamicEntity(String idStr){ + CloudFormModel cloudFormModel = new CloudFormModel(); + cloudFormModel.setSourceCode("form_test"); + cloudFormModel.setDataObjectCode("sys_config"); + cloudFormModel.setSelect(Long.parseLong(idStr)); + + + // 查询 + BaseResultBean dynamicEntityBaseResultBean = formDynamicFormCloud.getDynamicEntity(cloudFormModel); + LOGGER.info("==========getDynamicEntity====== {}",JSON.toJSONString(dynamicEntityBaseResultBean)); + if(!dynamicEntityBaseResultBean.isSuccess()){ + return ResultBean.fail(dynamicEntityBaseResultBean.errorMsg); + } + + return ResultBean.success("查询成功").setResultObject(dynamicEntityBaseResultBean.getResultObject()); + } + + /** + * 根据新增动态数据 + * @return + */ + @PostMapping("/insert-dynamic-entity") + @ApiOperation("根据id查询动态数据") + public ResultBean insertDynamicEntity(){ + Map params = new HashedMap(); + params.put("configCode","配置代码"); + params.put("name","配置名称"); + params.put("configType",1); + + + CloudFormModel cloudFormModel = new CloudFormModel(); + cloudFormModel.setSourceCode("form_test"); + cloudFormModel.setDataObjectCode("sys_config"); + cloudFormModel.setInsert(params); + + // 新增 + BaseResultBean dynamicEntityBaseResultBean = formDynamicFormCloud.insert(cloudFormModel); + LOGGER.info("==========getDynamicEntity====== {}",JSON.toJSONString(dynamicEntityBaseResultBean)); + if(!dynamicEntityBaseResultBean.isSuccess()){ + return ResultBean.fail(dynamicEntityBaseResultBean.errorMsg); + } + + return ResultBean.success("新增成功").setResultObject(dynamicEntityBaseResultBean.getResultObject()); + } + + /** + * 根据修改动态数据 + * @return + */ + @PutMapping("/update-dynamic-entity") + @ApiOperation("根据id查询动态数据") + public BaseResultBean updateDynamicEntity(){ + // 修改必须传递id + Map params = new HashedMap(); + params.put("id",1); + params.put("configCode","配置代码"); + params.put("configDescription","10086 - > 配置代码"); + params.put("configType",10086); + + + CloudFormModel cloudFormModel = new CloudFormModel(); + cloudFormModel.setSourceCode("form_test"); + cloudFormModel.setDataObjectCode("sys_config"); + cloudFormModel.setUpdate(params); + + // 新增 + return formDynamicFormCloud.update(cloudFormModel); +// LOGGER.info("==========getDynamicEntity====== {}",JSON.toJSONString(dynamicEntityBaseResultBean)); +// if(!dynamicEntityBaseResultBean.isSuccess()){ +// return ResultBean.fail(dynamicEntityBaseResultBean.errorMsg); +// } +// +// return ResultBean.success("修改成功").setResultObject(dynamicEntityBaseResultBean.getResultObject()); + } + + /** + * 根据删除动态数据 + * @return + */ + @DeleteMapping("/delete-dynamic-entity") + @ApiOperation("根据id删除动态数据") + public ResultBean deleteDynamicEntity(String idStr){ + CloudFormModel cloudFormModel = new CloudFormModel(); + cloudFormModel.setSourceCode("form_test"); + cloudFormModel.setDataObjectCode("sys_config"); + cloudFormModel.setDelete(Long.parseLong(idStr)); + + // 新增 + BaseResultBean dynamicEntityBaseResultBean = + formDynamicFormCloud.delete(cloudFormModel); + LOGGER.info("==========getDynamicEntity====== {}",JSON.toJSONString(dynamicEntityBaseResultBean)); + if(!dynamicEntityBaseResultBean.isSuccess()){ + return ResultBean.fail(dynamicEntityBaseResultBean.errorMsg); + } + + return ResultBean.success("删除成功"); + } +} diff --git a/pom.xml b/pom.xml index 6255553..128f533 100644 --- a/pom.xml +++ b/pom.xml @@ -81,6 +81,12 @@ ${project.version} + + i3plus.icloud + i3plus-icloud-form + ${project.version} + + i3plus.pojo