From 15f268db2578cacb42f9751bfb655e9b4c28114b Mon Sep 17 00:00:00 2001 From: yinzuomei <576302893@qq.com> Date: Tue, 26 Oct 2021 15:51:45 +0800 Subject: [PATCH 1/2] zancun --- .../tools/exception/EpmetErrorCode.java | 1 + .../epmet/dto/form/CustomerFormQueryDTO.java | 4 + .../java/com/epmet/dto/result/FormItem.java | 5 + .../epmet/controller/IcFormController.java | 5 +- .../main/java/com/epmet/dao/IcFormDao.java | 25 +++- .../epmet/service/impl/IcFormServiceImpl.java | 15 +- .../src/main/resources/mapper/IcFormDao.xml | 138 ++++++++++++++++++ 7 files changed, 190 insertions(+), 3 deletions(-) diff --git a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/exception/EpmetErrorCode.java b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/exception/EpmetErrorCode.java index f078bd4bb6..77818b2916 100644 --- a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/exception/EpmetErrorCode.java +++ b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/exception/EpmetErrorCode.java @@ -76,6 +76,7 @@ public enum EpmetErrorCode { SET_PARENT_AREA_CODE(8210,"请先设置上级组织区划"), HAVE_GUIDE_CANNOT_DEL(8211,"当前分类已经存在办事指南,不允许删除"), GUIDE_CATEGORY_NAME_EXITS(8212,"分类已存在"), + CUSTOMER_FORM_NOT_EXITS(8213,"客户未配置表单"), REQUIRE_PERMISSION(8301, "您没有足够的操作权限"), THIRD_PLAT_REQUEST_ERROR(8302, "请求第三方平台错误"), diff --git a/epmet-module/oper-customize/oper-customize-client/src/main/java/com/epmet/dto/form/CustomerFormQueryDTO.java b/epmet-module/oper-customize/oper-customize-client/src/main/java/com/epmet/dto/form/CustomerFormQueryDTO.java index 2e66799c15..e2bafc12df 100644 --- a/epmet-module/oper-customize/oper-customize-client/src/main/java/com/epmet/dto/form/CustomerFormQueryDTO.java +++ b/epmet-module/oper-customize/oper-customize-client/src/main/java/com/epmet/dto/form/CustomerFormQueryDTO.java @@ -15,5 +15,9 @@ public class CustomerFormQueryDTO implements Serializable { public interface AddUserInternalGroup {} @NotBlank(message = "formCode不能为空,居民信息默认传:resi_base_info",groups =AddUserInternalGroup.class ) private String formCode; + + + @NotBlank(message = "tokenDto获取customerId不能为空",groups =AddUserInternalGroup.class ) + private String customerId; } diff --git a/epmet-module/oper-customize/oper-customize-client/src/main/java/com/epmet/dto/result/FormItem.java b/epmet-module/oper-customize/oper-customize-client/src/main/java/com/epmet/dto/result/FormItem.java index 2059997cc8..9a65bb0b16 100644 --- a/epmet-module/oper-customize/oper-customize-client/src/main/java/com/epmet/dto/result/FormItem.java +++ b/epmet-module/oper-customize/oper-customize-client/src/main/java/com/epmet/dto/result/FormItem.java @@ -103,6 +103,11 @@ public class FormItem implements Serializable { */ private String columnName; + /** + * 列名序号,根据表递增 + */ + private Integer columnNum; + private List options; diff --git a/epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/controller/IcFormController.java b/epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/controller/IcFormController.java index bb876ffa7a..d89f303291 100644 --- a/epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/controller/IcFormController.java +++ b/epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/controller/IcFormController.java @@ -17,7 +17,9 @@ package com.epmet.controller; +import com.epmet.commons.tools.annotation.LoginUser; import com.epmet.commons.tools.page.PageData; +import com.epmet.commons.tools.security.dto.TokenDto; import com.epmet.commons.tools.utils.ExcelUtils; import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.validator.AssertUtils; @@ -103,7 +105,8 @@ public class IcFormController { * @date 2021/10/26 2:40 下午 */ @PostMapping("getcustomerform") - public Result getCustomerForm(@RequestBody CustomerFormQueryDTO formDto){ + public Result getCustomerForm(@LoginUser TokenDto tokenDto, @RequestBody CustomerFormQueryDTO formDto){ + formDto.setCustomerId(tokenDto.getCustomerId()); ValidatorUtils.validateEntity(formDto,CustomerFormQueryDTO.AddUserInternalGroup.class); return new Result().ok(icFormService.getCustomerForm(formDto)); diff --git a/epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/dao/IcFormDao.java b/epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/dao/IcFormDao.java index fd40647a83..1b2ffe357c 100644 --- a/epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/dao/IcFormDao.java +++ b/epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/dao/IcFormDao.java @@ -18,8 +18,15 @@ package com.epmet.dao; import com.epmet.commons.mybatis.dao.BaseDao; +import com.epmet.dto.result.CustomerFormResultDTO; +import com.epmet.dto.result.FormGroupDTO; +import com.epmet.dto.result.FormItem; +import com.epmet.dto.result.OptionDTO; import com.epmet.entity.IcFormEntity; import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; /** * 配置表单 @@ -29,5 +36,21 @@ import org.apache.ibatis.annotations.Mapper; */ @Mapper public interface IcFormDao extends BaseDao { - + /** + * 查询表单 + * + * @param customerId + * @param formCode + * @return com.epmet.dto.result.CustomerFormResultDTO + * @author yinzuomei + * @date 2021/10/26 2:48 下午 + */ + CustomerFormResultDTO selectByCode(@Param("customerId") String customerId, @Param("formCode") String formCode); + + List selectItemList(String formId); + + List selectItemListByGroupId(String groupId); + List selectListOption(String itemId); + + List selectListGroup(String formId); } \ No newline at end of file diff --git a/epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/service/impl/IcFormServiceImpl.java b/epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/service/impl/IcFormServiceImpl.java index 7c476eddd8..03b03ffaf8 100644 --- a/epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/service/impl/IcFormServiceImpl.java +++ b/epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/service/impl/IcFormServiceImpl.java @@ -21,12 +21,16 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.epmet.commons.mybatis.service.impl.BaseServiceImpl; import com.epmet.commons.tools.constant.FieldConstant; +import com.epmet.commons.tools.exception.EpmetErrorCode; +import com.epmet.commons.tools.exception.RenException; import com.epmet.commons.tools.page.PageData; import com.epmet.commons.tools.utils.ConvertUtils; import com.epmet.dao.IcFormDao; import com.epmet.dto.IcFormDTO; import com.epmet.dto.form.CustomerFormQueryDTO; import com.epmet.dto.result.CustomerFormResultDTO; +import com.epmet.dto.result.FormGroupDTO; +import com.epmet.dto.result.FormItem; import com.epmet.entity.IcFormEntity; import com.epmet.service.IcFormService; import org.apache.commons.lang3.StringUtils; @@ -110,7 +114,16 @@ public class IcFormServiceImpl extends BaseServiceImpl @Override public CustomerFormResultDTO getCustomerForm(CustomerFormQueryDTO formDto) { //todo - return null; + CustomerFormResultDTO resultDTO=baseDao.selectByCode(formDto.getCustomerId(),formDto.getFormCode()); + if (null == resultDTO) { + throw new RenException(EpmetErrorCode.CUSTOMER_FORM_NOT_EXITS.getCode(),EpmetErrorCode.CUSTOMER_FORM_NOT_EXITS.getMsg()); + } + List itemList=baseDao.selectItemList(resultDTO.getFormId()); + List groupList=baseDao.selectListGroup(resultDTO.getFormId()); + + resultDTO.setItemList(itemList); + resultDTO.setGroupList(groupList); + return resultDTO; } } \ No newline at end of file diff --git a/epmet-module/oper-customize/oper-customize-server/src/main/resources/mapper/IcFormDao.xml b/epmet-module/oper-customize/oper-customize-server/src/main/resources/mapper/IcFormDao.xml index 8b0bb1f336..8c872f115d 100644 --- a/epmet-module/oper-customize/oper-customize-server/src/main/resources/mapper/IcFormDao.xml +++ b/epmet-module/oper-customize/oper-customize-server/src/main/resources/mapper/IcFormDao.xml @@ -3,5 +3,143 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file From fc2a3b930ba6ea623c864f515115eb4fe39423c0 Mon Sep 17 00:00:00 2001 From: yinzuomei <576302893@qq.com> Date: Tue, 26 Oct 2021 16:39:02 +0800 Subject: [PATCH 2/2] zancun --- .../com/epmet/dto/result/FormGroupDTO.java | 2 +- .../java/com/epmet/dto/result/FormItem2.java | 112 ++++++++++++++++++ .../main/java/com/epmet/dao/IcFormDao.java | 2 + .../src/main/resources/mapper/IcFormDao.xml | 86 +++++++++++--- 4 files changed, 185 insertions(+), 17 deletions(-) create mode 100644 epmet-module/oper-customize/oper-customize-client/src/main/java/com/epmet/dto/result/FormItem2.java diff --git a/epmet-module/oper-customize/oper-customize-client/src/main/java/com/epmet/dto/result/FormGroupDTO.java b/epmet-module/oper-customize/oper-customize-client/src/main/java/com/epmet/dto/result/FormGroupDTO.java index ae71a9c160..dbb3f60e70 100644 --- a/epmet-module/oper-customize/oper-customize-client/src/main/java/com/epmet/dto/result/FormGroupDTO.java +++ b/epmet-module/oper-customize/oper-customize-client/src/main/java/com/epmet/dto/result/FormGroupDTO.java @@ -42,6 +42,6 @@ public class FormGroupDTO implements Serializable { /** * 分组里面的组件 */ - private List itemList; + private List itemList; } diff --git a/epmet-module/oper-customize/oper-customize-client/src/main/java/com/epmet/dto/result/FormItem2.java b/epmet-module/oper-customize/oper-customize-client/src/main/java/com/epmet/dto/result/FormItem2.java new file mode 100644 index 0000000000..41f46c55d0 --- /dev/null +++ b/epmet-module/oper-customize/oper-customize-client/src/main/java/com/epmet/dto/result/FormItem2.java @@ -0,0 +1,112 @@ +package com.epmet.dto.result; + +import com.fasterxml.jackson.annotation.JsonIgnore; +import lombok.Data; + +import java.io.Serializable; +import java.util.List; + +/** + * @Description 分组里面的组件 + * @Author yinzuomei + * @Date 2021/10/26 4:29 下午 + */ +@Data +public class FormItem2 implements Serializable { + private static final long serialVersionUID = -7571266621687396261L; + /** + * 父项ID + */ + private String itemId; + + /** + * 默认:ic_resi_user + */ + private String tableName; + + /** + * 父项ID + */ + private String parentItemId; + + /** + * 项标签 + */ + private String label; + + /** + * 控件类型,EG:INPUT;从字典获取 + */ + private String itemType; + + /** + * 分组ID,'默认,NONE' + */ + private String itemGroupId; + + /** + * 是否必填,1必填。0不必填 + */ + private Integer required; + + /** + * 手机号:mobile; 身份证:id_card + */ + private String validType; + + /** + * 默认值 + */ + private String defaultValue; + + /** + * 选项来源,REMOTE;LOCAL;如果是动态加载的下拉框或者CHECKBOX等的情况下使用。URL:接口获取(LABEL,VALUE);JSON:直接从JSON中取 + */ + private String optionSourceType; + + /** + * 来源地址,REMOTE才有,固定格式;如果OPTIONS_SOURCE是URL,则此处填写要调用的接口的URL相对路径,例如:/API/GOV/ORG/XXXX。此处不应设置参数,若需要参数应当完全由后端,通过TOKEN信息来获取 + */ + private String optionSourceValue; + + /** + * 排序 + */ + private Integer sort; + + /** + * 占位提示语 + */ + private String placeholder; + + /** + * 是否查询显示,1展示。0不展示 + */ + @JsonIgnore + private Integer searchDisplay; + + /** + * 是否列表显示,1展示,0不展示 + */ + @JsonIgnore + private Integer listDisplay; + + /** + * 是否需要支持数据分析,1支持。0不支持 + */ + @JsonIgnore + private Integer dataAnalyse; + + /** + * 列名 + */ + private String columnName; + + /** + * 列名序号,根据表递增 + */ + private Integer columnNum; + + private List options; +} + diff --git a/epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/dao/IcFormDao.java b/epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/dao/IcFormDao.java index 1b2ffe357c..bed3566120 100644 --- a/epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/dao/IcFormDao.java +++ b/epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/dao/IcFormDao.java @@ -53,4 +53,6 @@ public interface IcFormDao extends BaseDao { List selectListOption(String itemId); List selectListGroup(String formId); + + FormGroupDTO selectChildGroup(String itemId); } \ No newline at end of file diff --git a/epmet-module/oper-customize/oper-customize-server/src/main/resources/mapper/IcFormDao.xml b/epmet-module/oper-customize/oper-customize-server/src/main/resources/mapper/IcFormDao.xml index 8c872f115d..b3c51eaf84 100644 --- a/epmet-module/oper-customize/oper-customize-server/src/main/resources/mapper/IcFormDao.xml +++ b/epmet-module/oper-customize/oper-customize-server/src/main/resources/mapper/IcFormDao.xml @@ -17,7 +17,7 @@ - + @@ -41,6 +41,9 @@ + + - + SELECT + g.id AS group_id, + g.LABEL, + g.sort, + g.SUPPORT_ADD, + g.TABLE_NAME AS TABLE_NAME + FROM + ic_form_item_group g + WHERE + g.DEL_FLAG = '0' + AND g.id =( + SELECT DISTINCT + i.ITEM_GROUP_ID + FROM + ic_form_item i + WHERE + i.DEL_FLAG = '0' + AND i.PARENT_ITEM_ID = #{itemId} + ) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +