Browse Source

Merge remote-tracking branch 'origin/dev_ic_platform' into develop

master
yinzuomei 4 years ago
parent
commit
6a06f23ab6
  1. 1
      epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/exception/EpmetErrorCode.java
  2. 4
      epmet-module/oper-customize/oper-customize-client/src/main/java/com/epmet/dto/form/CustomerFormQueryDTO.java
  3. 2
      epmet-module/oper-customize/oper-customize-client/src/main/java/com/epmet/dto/result/FormGroupDTO.java
  4. 5
      epmet-module/oper-customize/oper-customize-client/src/main/java/com/epmet/dto/result/FormItem.java
  5. 112
      epmet-module/oper-customize/oper-customize-client/src/main/java/com/epmet/dto/result/FormItem2.java
  6. 5
      epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/controller/IcFormController.java
  7. 27
      epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/dao/IcFormDao.java
  8. 15
      epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/service/impl/IcFormServiceImpl.java
  9. 192
      epmet-module/oper-customize/oper-customize-server/src/main/resources/mapper/IcFormDao.xml

1
epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/exception/EpmetErrorCode.java

@ -77,6 +77,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, "请求第三方平台错误"),

4
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;
}

2
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<FormItem> itemList;
private List<FormItem2> itemList;
}

5
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<OptionDTO> options;

112
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<OptionDTO> options;
}

5
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<CustomerFormResultDTO> getCustomerForm(@RequestBody CustomerFormQueryDTO formDto){
public Result<CustomerFormResultDTO> getCustomerForm(@LoginUser TokenDto tokenDto, @RequestBody CustomerFormQueryDTO formDto){
formDto.setCustomerId(tokenDto.getCustomerId());
ValidatorUtils.validateEntity(formDto,CustomerFormQueryDTO.AddUserInternalGroup.class);
return new Result<CustomerFormResultDTO>().ok(icFormService.getCustomerForm(formDto));

27
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,23 @@ import org.apache.ibatis.annotations.Mapper;
*/
@Mapper
public interface IcFormDao extends BaseDao<IcFormEntity> {
/**
* 查询表单
*
* @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<FormItem> selectItemList(String formId);
List<FormItem> selectItemListByGroupId(String groupId);
List<OptionDTO> selectListOption(String itemId);
List<FormGroupDTO> selectListGroup(String formId);
FormGroupDTO selectChildGroup(String itemId);
}

15
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<IcFormDao, IcFormEntity>
@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<FormItem> itemList=baseDao.selectItemList(resultDTO.getFormId());
List<FormGroupDTO> groupList=baseDao.selectListGroup(resultDTO.getFormId());
resultDTO.setItemList(itemList);
resultDTO.setGroupList(groupList);
return resultDTO;
}
}

192
epmet-module/oper-customize/oper-customize-server/src/main/resources/mapper/IcFormDao.xml

@ -3,5 +3,197 @@
<mapper namespace="com.epmet.dao.IcFormDao">
<!-- 查询表单 -->
<select id="selectByCode" parameterType="map" resultType="com.epmet.dto.result.CustomerFormResultDTO">
SELECT
f.id AS formId,
f.FORM_NAME AS formName
FROM
ic_form f
WHERE
f.DEL_FLAG = '0'
AND f.CUSTOMER_ID = #{customerId}
AND f.FORM_CODE = #{formCode}
</select>
<resultMap id="FormItemMap1" type="com.epmet.dto.result.FormItem">
<id property="itemId" column="item_id" ></id>
<result property="tableName" column="table_name"/>
<result property="parentItemId" column="PARENT_ITEM_ID"/>
<result property="label" column="LABEL"/>
<result property="itemType" column="ITEM_TYPE"/>
<result property="itemGroupId" column="ITEM_GROUP_ID"/>
<result property="required" column="REQUIRED"/>
<result property="validType" column="VALID_TYPE"/>
<result property="defaultValue" column="DEFAULT_VALUE"/>
<result property="optionSourceType" column="OPTION_SOURCE_TYPE"/>
<result property="optionSourceValue" column="OPTION_SOURCE_VALUE"/>
<result property="sort" column="SORT"/>
<result property="placeholder" column="PLACEHOLDER"/>
<result property="searchDisplay" column="SEARCH_DISPLAY"/>
<result property="listDisplay" column="LIST_DISPLAY"/>
<result property="dataAnalyse" column="DATA_ANALYSE"/>
<result property="columnName" column="COLUMN_NAME"/>
<result property="columnNum" column="COLUMN_NUM"/>
<collection property="options" ofType="com.epmet.dto.result.OptionDTO"
column="item_id" select="com.epmet.dao.IcFormDao.selectListOption">
<result property="label" column=""/>
<result property="value" column="url"/>
</collection>
<collection property="childGroup" ofType="com.epmet.dto.result.FormGroupDTO"
column="item_id" select="com.epmet.dao.IcFormDao.selectChildGroup">
</collection>
</resultMap>
<select id="selectListOption" parameterType="java.lang.String" resultType="com.epmet.dto.result.OptionDTO">
SELECT
i.OPTION_LABEL as label,
i.OPTION_VALUE as value
FROM
ic_form_item_options i
WHERE
i.DEL_FLAG = '0'
AND i.ITEM_ID = #{itemId}
ORDER BY
i.SORT ASC
</select>
<select id="selectChildGroup" parameterType="java.lang.String" resultMap="FormGroupDTOMap">
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}
)
</select>
<select id="selectItemList" parameterType="java.lang.String" resultMap="FormItemMap1">
SELECT
fi.ID AS item_id,
'ic_resi_user' AS table_name,
fi.PARENT_ITEM_ID,
fi.LABEL,
fi.ITEM_TYPE,
fi.ITEM_GROUP_ID,
fi.REQUIRED,
IFNULL(fi.VALID_TYPE,'') as VALID_TYPE,
IFNULL(fi.DEFAULT_VALUE,'') as DEFAULT_VALUE,
IFNULL(fi.OPTION_SOURCE_TYPE,'') as OPTION_SOURCE_TYPE,
IFNULL(fi.OPTION_SOURCE_VALUE,'') as OPTION_SOURCE_VALUE,
fi.SORT,
IFNULL(fi.PLACEHOLDER,'') as PLACEHOLDER,
fi.SEARCH_DISPLAY,
fi.LIST_DISPLAY,
fi.DATA_ANALYSE,
fi.COLUMN_NAME,
fi.COLUMN_NUM
FROM
ic_form_item fi
WHERE
fi.DEL_FLAG = '0'
AND fi.FORM_ID = #{formId}
AND fi.ITEM_GROUP_ID = 'none'
ORDER BY
fi.SORT ASC
</select>
<resultMap id="FormGroupDTOMap" type="com.epmet.dto.result.FormGroupDTO">
<id property="groupId" column="group_id" ></id>
<result property="label" column="LABEL"/>
<result property="sort" column="sort"/>
<result property="supportAdd" column="SUPPORT_ADD"/>
<result property="tableName" column="TABLE_NAME"/>
<collection property="itemList" ofType="com.epmet.dto.result.FormItem2"
column="group_id" select="com.epmet.dao.IcFormDao.selectItemListByGroupId">
</collection>
</resultMap>
<resultMap id="FormItemMap2" type="com.epmet.dto.result.FormItem2">
<id property="itemId" column="item_id" ></id>
<result property="tableName" column="table_name"/>
<result property="parentItemId" column="PARENT_ITEM_ID"/>
<result property="label" column="LABEL"/>
<result property="itemType" column="ITEM_TYPE"/>
<result property="itemGroupId" column="ITEM_GROUP_ID"/>
<result property="required" column="REQUIRED"/>
<result property="validType" column="VALID_TYPE"/>
<result property="defaultValue" column="DEFAULT_VALUE"/>
<result property="optionSourceType" column="OPTION_SOURCE_TYPE"/>
<result property="optionSourceValue" column="OPTION_SOURCE_VALUE"/>
<result property="sort" column="SORT"/>
<result property="placeholder" column="PLACEHOLDER"/>
<result property="searchDisplay" column="SEARCH_DISPLAY"/>
<result property="listDisplay" column="LIST_DISPLAY"/>
<result property="dataAnalyse" column="DATA_ANALYSE"/>
<result property="columnName" column="COLUMN_NAME"/>
<result property="columnNum" column="COLUMN_NUM"/>
<collection property="options" ofType="com.epmet.dto.result.OptionDTO"
column="item_id" select="com.epmet.dao.IcFormDao.selectListOption">
<result property="label" column=""/>
<result property="value" column="url"/>
</collection>
</resultMap>
<select id="selectItemListByGroupId" parameterType="java.lang.String" resultMap="FormItemMap2">
SELECT
fi.ID AS item_id,
'ic_resi_user' AS table_name,
fi.PARENT_ITEM_ID,
fi.LABEL,
fi.ITEM_TYPE,
fi.ITEM_GROUP_ID,
fi.REQUIRED,
IFNULL(fi.VALID_TYPE,'') as VALID_TYPE,
IFNULL(fi.DEFAULT_VALUE,'') as DEFAULT_VALUE,
IFNULL(fi.OPTION_SOURCE_TYPE,'') as OPTION_SOURCE_TYPE,
IFNULL(fi.OPTION_SOURCE_VALUE,'') as OPTION_SOURCE_VALUE,
fi.SORT,
IFNULL(fi.PLACEHOLDER,'') as PLACEHOLDER,
fi.SEARCH_DISPLAY,
fi.LIST_DISPLAY,
fi.DATA_ANALYSE,
fi.COLUMN_NAME,
fi.COLUMN_NUM
FROM
ic_form_item fi
WHERE
fi.DEL_FLAG = '0'
AND fi.ITEM_GROUP_ID = #{groupId}
ORDER BY
fi.SORT ASC
</select>
<select id="selectListGroup" parameterType="java.lang.String" resultMap="FormGroupDTOMap">
SELECT
g.id AS group_id,
g.LABEL,
g.sort,
g.SUPPORT_ADD,
'ic_resi_user' AS TABLE_NAME
FROM
ic_form_item_group g
WHERE
g.DEL_FLAG = '0'
AND g.FORM_ID = #{formId}
AND g.DISPLAY = '1'
ORDER BY
g.SORT ASC
</select>
</mapper>
Loading…
Cancel
Save