Commit 534bf304 by 宋祥

1.页面自定义配置字段,查询根据配置信息动态显示列

parent d039fe9c
......@@ -79,9 +79,9 @@ public class CommonConstant {
public static class AuthFilter {
// 企业权限
public static final String[] ACCOUNT = {"HGXSUser", "HGPZ009", "HGPZ020", "HGPZ020A"};
public static final String[] ACCOUNT = {"HGXSUser", "HGPZ009", "HGPZ020", "HGPZ020A", "HGPZ021"};
// 数据权限
public static final String[] DATA = {"HGXSUser", "HGXSOrg", "HGXSUserGroup", "HGPZ009", "HGPZ020",
public static final String[] DATA = {"HGXSUser", "HGXSOrg", "HGXSUserGroup", "HGPZ009", "HGPZ020", "HGPZ021",
"HGPZ010.query"};
}
......
......@@ -33,4 +33,17 @@ public class HgPzSqlConstant {
public static final String DELETE_BY_FIELD = MODULE + "deleteByField";
}
/**
*
* @author songx
* @date 2024/11/6,14:21
*/
public class HgPz021 {
// 模块名称
public static final String MODULE = "HGPZ021.";
// 修改排产系数
public static final String UPDATE_SORT = MODULE + "updateSort";
}
}
package com.baosight.hggp.hg.pz.domain;
import com.baosight.iplat4j.core.ei.EiColumn;
import com.baosight.iplat4j.core.util.StringUtils;
import java.util.Map;
/**
* Project: <br>
* Title:HGPZ020A.java <br>
* Description: <br>
*
* @author songx
* @date 2024-11-06 17:33:06
*/
public class HGPZ020A extends HGPZ020 {
private static final long serialVersionUID = 1L;
public static final String FIELD_VIEW_SQL = "viewSql"; /* 视图SQL */
public static final String FIELD_ALIAS_NAME = "aliasName"; /* 别名 */
public static final String COL_VIEW_SQL = "VIEW_SQL"; /* 视图SQL */
public static final String COL_ALIAS_NAME = "ALIAS_NAME"; /* 别名 */
public static final String QUERY = "HGPZ020A.query";
public static final String COUNT = "HGPZ020A.count";
public String viewSql = " "; /* 视图SQL */
public String aliasName = " "; /* 别名 */
/**
* initialize the metadata.
*/
public void initMetaData() {
EiColumn eiColumn;
eiColumn = new EiColumn(FIELD_VIEW_SQL);
eiColumn.setDescName("视图SQL");
eiMetadata.addMeta(eiColumn);
eiColumn = new EiColumn(FIELD_ALIAS_NAME);
eiColumn.setDescName("别名");
eiMetadata.addMeta(eiColumn);
}
/**
* the constructor.
*/
public HGPZ020A() {
super.initMetaData();
initMetaData();
}
/**
* get the viewSql - 视图SQL.
* @return the viewSql
*/
public String getViewSql() {
return this.viewSql;
}
/**
* set the viewSql - 视图SQL.
*
* @param viewSql - 视图SQL
*/
public void setViewSql(String viewSql) {
this.viewSql = viewSql;
}
/**
* get the aliasName - 别名.
* @return the aliasName
*/
public String getAliasName() {
return this.aliasName;
}
/**
* set the aliasName - 别名.
*
* @param aliasName - 别名
*/
public void setAliasName(String aliasName) {
this.aliasName = aliasName;
}
/**
* get the value from Map.
*
* @param map - source data map
*/
@Override
public void fromMap(Map map) {
super.fromMap(map);
setViewSql(StringUtils.defaultIfEmpty(StringUtils.toString(map.get(FIELD_VIEW_SQL)), viewSql));
setAliasName(StringUtils.defaultIfEmpty(StringUtils.toString(map.get(FIELD_ALIAS_NAME)), aliasName));
}
/**
* set the value to Map.
*/
@Override
public Map toMap() {
Map map = super.toMap();
map.put(FIELD_VIEW_SQL, StringUtils.toString(viewSql, eiMetadata.getMeta(FIELD_VIEW_SQL)));
map.put(FIELD_ALIAS_NAME, StringUtils.toString(aliasName, eiMetadata.getMeta(FIELD_ALIAS_NAME)));
return map;
}
}
\ No newline at end of file
......@@ -15,7 +15,7 @@ import java.util.Map;
* Description: <br>
*
* @author songx
* @date 2024-11-04 16:50:20
* @date 2024-11-06 17:32:57
*/
public class HGPZ021 extends DaoEPBase {
......@@ -34,9 +34,10 @@ public class HGPZ021 extends DaoEPBase {
public static final String FIELD_TABLE_NAME = "tableName"; /* 表中文名 */
public static final String FIELD_FIELD_CODE = "fieldCode"; /* 字段英文名 */
public static final String FIELD_FIELD_NAME = "fieldName"; /* 字段中文名 */
public static final String FIELD_VIEW_SQL = "viewSql"; /* */
public static final String FIELD_VIEW_SQL = "viewSql"; /* 视图SQL */
public static final String FIELD_ALIAS_NAME = "aliasName"; /* 别名 */
public static final String FIELD_SORT_NUM = "sortNum"; /* 排序 */
public static final String FIELD_IS_DEFAULT = "isDefault"; /* 是否默认 */
public static final String FIELD_IS_DEFAULT = "isDefault"; /* 是否默认,1-是,0-否 */
public static final String COL_ID = "ID"; /* */
public static final String COL_CREATED_BY = "CREATED_BY"; /* 记录创建者 */
......@@ -51,9 +52,10 @@ public class HGPZ021 extends DaoEPBase {
public static final String COL_TABLE_NAME = "TABLE_NAME"; /* 表中文名 */
public static final String COL_FIELD_CODE = "FIELD_CODE"; /* 字段英文名 */
public static final String COL_FIELD_NAME = "FIELD_NAME"; /* 字段中文名 */
public static final String COL_VIEW_SQL = "VIEW_SQL"; /* */
public static final String COL_VIEW_SQL = "VIEW_SQL"; /* 视图SQL */
public static final String COL_ALIAS_NAME = "ALIAS_NAME"; /* 别名 */
public static final String COL_SORT_NUM = "SORT_NUM"; /* 排序 */
public static final String COL_IS_DEFAULT = "IS_DEFAULT"; /* 是否默认 */
public static final String COL_IS_DEFAULT = "IS_DEFAULT"; /* 是否默认,1-是,0-否 */
public static final String QUERY = "HGPZ021.query";
public static final String COUNT = "HGPZ021.count";
......@@ -62,7 +64,7 @@ public class HGPZ021 extends DaoEPBase {
public static final String DELETE = "HGPZ021.delete";
@ExcelAnno(index = 0)
public Long id = new Long(0); /* */
public Long id = new Long(0); /* */
public String createdBy = " "; /* 记录创建者 */
public String createdName = " "; /* 记录创建名称 */
public String createdTime = " "; /* 记录创建时间 */
......@@ -79,11 +81,13 @@ public class HGPZ021 extends DaoEPBase {
@ExcelAnno(index = 3)
public String fieldName = " "; /* 字段中文名 */
@ExcelAnno(index = 4)
public String viewSql = " "; /* */
public String viewSql = " "; /* 视图SQL */
@ExcelAnno(index = 5)
public Integer sortNum = new Integer(0); /* 排序 */
public String aliasName = " "; /* 别名 */
@ExcelAnno(index = 6)
public Integer isDefault = new Integer(0); /* 是否默认 */
public Integer sortNum = new Integer(0); /* 排序 */
@ExcelAnno(index = 7)
public Integer isDefault = new Integer(0); /* 是否默认,1-是,0-否 */
/**
* initialize the metadata.
......@@ -144,16 +148,20 @@ public class HGPZ021 extends DaoEPBase {
eiMetadata.addMeta(eiColumn);
eiColumn = new EiColumn(FIELD_VIEW_SQL);
eiColumn.setDescName("");
eiColumn.setDescName("视图SQL");
eiMetadata.addMeta(eiColumn);
eiColumn = new EiColumn(FIELD_ALIAS_NAME);
eiColumn.setDescName("别名");
eiMetadata.addMeta(eiColumn);
eiColumn = new EiColumn(FIELD_SORT_NUM);
eiColumn.setDescName("排序");
eiMetadata.addMeta(eiColumn);
eiColumn = new EiColumn(FIELD_IS_DEFAULT);
eiColumn.setDescName("是否默认");
eiMetadata.addMeta(eiColumn);
eiColumn = new EiColumn(FIELD_IS_DEFAULT);
eiColumn.setDescName("是否默认,1-是,0-否");
eiMetadata.addMeta(eiColumn);
}
/**
......@@ -174,7 +182,7 @@ public class HGPZ021 extends DaoEPBase {
/**
* set the id - .
*
* @param id -
* @param id -
*/
public void setId(Long id) {
this.id = id;
......@@ -372,7 +380,7 @@ public class HGPZ021 extends DaoEPBase {
this.fieldName = fieldName;
}
/**
* get the viewSql - .
* get the viewSql - 视图SQL.
* @return the viewSql
*/
public String getViewSql() {
......@@ -380,14 +388,30 @@ public class HGPZ021 extends DaoEPBase {
}
/**
* set the viewSql - .
* set the viewSql - 视图SQL.
*
* @param viewSql -
* @param viewSql - 视图SQL
*/
public void setViewSql(String viewSql) {
this.viewSql = viewSql;
}
/**
* get the aliasName - 别名.
* @return the aliasName
*/
public String getAliasName() {
return this.aliasName;
}
/**
* set the aliasName - 别名.
*
* @param aliasName - 别名
*/
public void setAliasName(String aliasName) {
this.aliasName = aliasName;
}
/**
* get the sortNum - 排序.
* @return the sortNum
*/
......@@ -403,16 +427,24 @@ public class HGPZ021 extends DaoEPBase {
public void setSortNum(Integer sortNum) {
this.sortNum = sortNum;
}
public Integer getIsDefault() {
return isDefault;
}
public void setIsDefault(Integer isDefault) {
this.isDefault = isDefault;
}
/**
/**
* get the isDefault - 是否默认,1-是,0-否.
* @return the isDefault
*/
public Integer getIsDefault() {
return this.isDefault;
}
/**
* set the isDefault - 是否默认,1-是,0-否.
*
* @param isDefault - 是否默认,1-是,0-否
*/
public void setIsDefault(Integer isDefault) {
this.isDefault = isDefault;
}
/**
* get the value from Map.
*
* @param map - source data map
......@@ -433,8 +465,9 @@ public class HGPZ021 extends DaoEPBase {
setFieldCode(StringUtils.defaultIfEmpty(StringUtils.toString(map.get(FIELD_FIELD_CODE)), fieldCode));
setFieldName(StringUtils.defaultIfEmpty(StringUtils.toString(map.get(FIELD_FIELD_NAME)), fieldName));
setViewSql(StringUtils.defaultIfEmpty(StringUtils.toString(map.get(FIELD_VIEW_SQL)), viewSql));
setAliasName(StringUtils.defaultIfEmpty(StringUtils.toString(map.get(FIELD_ALIAS_NAME)), aliasName));
setSortNum(NumberUtils.toInteger(StringUtils.toString(map.get(FIELD_SORT_NUM)), sortNum));
setIsDefault(NumberUtils.toInteger(StringUtils.toString(map.get(FIELD_IS_DEFAULT)), isDefault));
setIsDefault(NumberUtils.toInteger(StringUtils.toString(map.get(FIELD_IS_DEFAULT)), isDefault));
}
/**
......@@ -457,9 +490,10 @@ public class HGPZ021 extends DaoEPBase {
map.put(FIELD_FIELD_CODE, StringUtils.toString(fieldCode, eiMetadata.getMeta(FIELD_FIELD_CODE)));
map.put(FIELD_FIELD_NAME, StringUtils.toString(fieldName, eiMetadata.getMeta(FIELD_FIELD_NAME)));
map.put(FIELD_VIEW_SQL, StringUtils.toString(viewSql, eiMetadata.getMeta(FIELD_VIEW_SQL)));
map.put(FIELD_ALIAS_NAME, StringUtils.toString(aliasName, eiMetadata.getMeta(FIELD_ALIAS_NAME)));
map.put(FIELD_SORT_NUM, StringUtils.toString(sortNum, eiMetadata.getMeta(FIELD_SORT_NUM)));
map.put(FIELD_IS_DEFAULT, StringUtils.toString(isDefault, eiMetadata.getMeta(FIELD_IS_DEFAULT)));
return map;
map.put(FIELD_IS_DEFAULT, StringUtils.toString(isDefault, eiMetadata.getMeta(FIELD_IS_DEFAULT)));
return map;
}
}
\ No newline at end of file
......@@ -4,6 +4,7 @@ import com.baosight.hggp.common.DdynamicEnum;
import com.baosight.hggp.core.dao.DaoUtils;
import com.baosight.hggp.hg.pz.constant.HgPzSqlConstant;
import com.baosight.hggp.hg.pz.domain.HGPZ020;
import com.baosight.hggp.hg.pz.domain.HGPZ020A;
import com.baosight.hggp.util.CommonMethod;
import com.baosight.hggp.util.EiInfoUtils;
import com.baosight.hggp.util.LogUtils;
......@@ -52,7 +53,7 @@ public class ServiceHGPZ020 extends ServiceBase {
public EiInfo query(EiInfo inInfo) {
try {
Map queryRow = EiInfoUtils.getFirstRow(inInfo);
inInfo = super.query(inInfo, HGPZ020.QUERY, new HGPZ020());
inInfo = super.query(inInfo, HGPZ020A.QUERY, new HGPZ020A());
} catch (Exception e) {
LogUtils.setDetailMsg(inInfo, e, "查询失败");
}
......
......@@ -54,7 +54,7 @@ public class ServiceHGPZ020A extends ServiceEPBase {
public EiInfo query(EiInfo inInfo) {
try {
Map queryRow = EiInfoUtils.getFirstRow(inInfo);
inInfo = super.query(inInfo, "HGPZ020A.query", new HGPZ021());
inInfo = super.query(inInfo, HGPZ021.QUERY, new HGPZ021());
} catch (Exception e) {
LogUtils.setDetailMsg(inInfo, e, "查询失败");
}
......
......@@ -138,4 +138,24 @@ public class ServiceHGPZ021 extends ServiceBase {
}
}
/**
* 修改排序
*
* @param inInfo
* @return
*/
public EiInfo updateSort(EiInfo inInfo) {
try {
List<Map> resultMaps = inInfo.getBlock(EiConstant.resultBlock).getRows();
for (Map resultMap : resultMaps) {
DaoUtils.update(HgPzSqlConstant.HgPz021.UPDATE_SORT, resultMap);
}
inInfo = this.query(inInfo);
inInfo.setMsg("操作成功!本次对[" + resultMaps.size() + "]条数据修改成功!");
} catch (Exception e) {
LogUtils.setDetailMsg(inInfo, e, "修改失败");
}
return inInfo;
}
}
......@@ -16,7 +16,6 @@
TABLE_NAME as "tableName", <!-- 表中文名 -->
FIELD_CODE as "fieldCode", <!-- 字段英文名 -->
FIELD_NAME as "fieldName", <!-- 字段中文名 -->
VIEW_SQL as "viewSql", <!-- 视图SQL -->
SORT_NUM as "sortNum" <!-- 排序 -->
</sql>
......@@ -39,9 +38,6 @@
<isNotEmpty prepend=" AND " property="fieldName">
FIELD_NAME LIKE CONCAT('%', #fieldName#, '%')
</isNotEmpty>
<isNotEmpty prepend=" AND " property="sortNum">
SORT_NUM = #sortNum#
</isNotEmpty>
</sql>
<sql id="orderBy">
......@@ -82,12 +78,9 @@
TABLE_NAME, <!-- 表中文名 -->
FIELD_CODE, <!-- 字段英文名 -->
FIELD_NAME, <!-- 字段中文名 -->
VIEW_SQL, <!-- 视图SQL -->
SORT_NUM <!-- 排序 -->
) VALUES (
#createdBy#, #createdName#, #createdTime#, #updatedBy#, #updatedName#, #updatedTime#,
#accountCode#, #accountName#, #tableCode#, #tableName#, #fieldCode#, #fieldName#, #viewSql#,
#sortNum#
#createdBy#, #createdName#, #createdTime#, #updatedBy#, #updatedName#, #updatedTime#, #accountCode#, #accountName#, #tableCode#, #tableName#, #fieldCode#, #fieldName#, #sortNum#
)
</insert>
......
......@@ -3,39 +3,47 @@
<sqlMap namespace="HGPZ020A">
<sql id="column">
ID as "id", <!-- -->
CREATED_BY as "createdBy", <!-- 记录创建者 -->
CREATED_NAME as "createdName", <!-- 记录创建名称 -->
CREATED_TIME as "createdTime", <!-- 记录创建时间 -->
UPDATED_BY as "updatedBy", <!-- 记录修改者 -->
UPDATED_NAME as "updatedName", <!-- 记录修改名称 -->
UPDATED_TIME as "updatedTime", <!-- 记录修改时间 -->
DELETE_FLAG as "deleteFlag", <!-- 0-未删除,1-已删除 -->
STATUS as "status", <!-- 0-未启用,1-已启用 -->
TABLE_CODE as "tableCode", <!-- 表英文名 -->
TABLE_NAME as "tableName", <!-- 表中文名 -->
FIELD_CODE as "fieldCode", <!-- 字段英文名 -->
FIELD_NAME as "fieldName", <!-- 字段中文名 -->
VIEW_SQL as "viewSql", <!-- -->
SORT_NUM as "sortNum" <!-- 排序 -->
<include refid="columnA"/>,
<include refid="columnB"/>
</sql>
<sql id="columnA">
A.ID as "id", <!-- -->
A.CREATED_BY as "createdBy", <!-- 记录创建者 -->
A.CREATED_NAME as "createdName", <!-- 记录创建名称 -->
A.CREATED_TIME as "createdTime", <!-- 记录创建时间 -->
A.UPDATED_BY as "updatedBy", <!-- 记录修改者 -->
A.UPDATED_NAME as "updatedName", <!-- 记录修改名称 -->
A.UPDATED_TIME as "updatedTime", <!-- 记录修改时间 -->
A.ACCOUNT_CODE as "accountCode", <!-- 租户编码 -->
A.ACCOUNT_NAME as "accountName", <!-- 租户名称 -->
A.TABLE_CODE as "tableCode", <!-- 表英文名 -->
A.TABLE_NAME as "tableName", <!-- 表中文名 -->
A.FIELD_CODE as "fieldCode", <!-- 字段英文名 -->
A.FIELD_NAME as "fieldName", <!-- 字段中文名 -->
A.SORT_NUM as "sortNum" <!-- 排序 -->
</sql>
<sql id="columnB">
B.VIEW_SQL as "viewSql", <!-- 视图SQL -->
B.ALIAS_NAME as "aliasName" <!-- 别名 -->
</sql>
<sql id="condition">
<!-- 过滤已经添加的字段 -->
AND NOT EXISTS (SELECT * FROM ${hggpSchema}.HGPZ020 A WHERE A.TABLE_CODE = T.TABLE_CODE
AND A.FIELD_CODE = T.FIELD_CODE AND A.ACCOUNT_CODE = #accountCode#
)
<isNotEmpty prepend=" AND " property="accountCode">
A.ACCOUNT_CODE = #accountCode#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="tableCode">
TABLE_CODE LIKE CONCAT('%', #tableCode#, '%')
A.TABLE_CODE = #tableCode#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="tableName">
TABLE_NAME LIKE CONCAT('%', #tableName#, '%')
A.TABLE_NAME LIKE CONCAT('%', #tableName#, '%')
</isNotEmpty>
<isNotEmpty prepend=" AND " property="fieldCode">
FIELD_CODE LIKE CONCAT('%', #fieldCode#, '%')
A.FIELD_CODE LIKE CONCAT('%', #fieldCode#, '%')
</isNotEmpty>
<isNotEmpty prepend=" AND " property="fieldName">
FIELD_NAME LIKE CONCAT('%', #fieldName#, '%')
A.FIELD_NAME LIKE CONCAT('%', #fieldName#, '%')
</isNotEmpty>
</sql>
......@@ -45,21 +53,26 @@
$orderBy$
</isNotEmpty>
<isEmpty property="orderBy">
ID DESC
A.ID DESC
</isEmpty>
</dynamic>
</sql>
<select id="query" resultClass="com.baosight.hggp.hg.pz.domain.HGPZ021">
<select id="query" resultClass="com.baosight.hggp.hg.pz.domain.HGPZ020A">
SELECT
<include refid="column"/>
FROM ${hggpSchema}.HGPZ021 T WHERE 1=1
FROM ${hggpSchema}.HGPZ020 A, ${hggpSchema}.HGPZ021 B
WHERE A.TABLE_CODE = B.TABLE_CODE
AND A.FIELD_CODE = B.FIELD_CODE
<include refid="condition"/>
<include refid="orderBy"/>
</select>
<select id="count" resultClass="int">
SELECT COUNT(*) FROM ${hggpSchema}.HGPZ021 T WHERE 1=1
SELECT COUNT(*)
FROM ${hggpSchema}.HGPZ020 A, ${hggpSchema}.HGPZ021 B
WHERE A.TABLE_CODE = B.TABLE_CODE
AND A.FIELD_CODE = B.FIELD_CODE
<include refid="condition"/>
</select>
......
......@@ -16,21 +16,16 @@
TABLE_NAME as "tableName", <!-- 表中文名 -->
FIELD_CODE as "fieldCode", <!-- 字段英文名 -->
FIELD_NAME as "fieldName", <!-- 字段中文名 -->
VIEW_SQL as "viewSql", <!-- -->
VIEW_SQL as "viewSql", <!-- 视图SQL -->
ALIAS_NAME as "aliasName", <!-- 别名 -->
SORT_NUM as "sortNum", <!-- 排序 -->
IS_DEFAULT as "isDefault" <!-- 是否默认 -->
IS_DEFAULT as "isDefault" <!-- 是否默认,1-是,0-否 -->
</sql>
<sql id="condition">
<isNotEmpty prepend=" AND " property="id">
ID = #id#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="deleteFlag">
DELETE_FLAG = #deleteFlag#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="status">
STATUS = #status#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="tableCode">
TABLE_CODE = #tableCode#
</isNotEmpty>
......@@ -48,6 +43,16 @@
</isNotEmpty>
</sql>
<sql id="customCondition">
<include refid="condition"/>
<!-- 过滤已经添加的字段 -->
<isNotEmpty prepend=" AND " property="accountCode">
NOT EXISTS (SELECT * FROM ${hggpSchema}.HGPZ020 A WHERE A.TABLE_CODE = T.TABLE_CODE
AND A.FIELD_CODE = T.FIELD_CODE AND A.ACCOUNT_CODE = #accountCode#
)
</isNotEmpty>
</sql>
<sql id="orderBy">
<dynamic prepend="ORDER BY">
<isNotEmpty property="orderBy">
......@@ -62,14 +67,14 @@
<select id="query" resultClass="com.baosight.hggp.hg.pz.domain.HGPZ021">
SELECT
<include refid="column"/>
FROM ${hggpSchema}.HGPZ021 WHERE 1=1
<include refid="condition"/>
FROM ${hggpSchema}.HGPZ021 T WHERE 1=1
<include refid="customCondition"/>
<include refid="orderBy"/>
</select>
<select id="count" resultClass="int">
SELECT COUNT(*) FROM ${hggpSchema}.HGPZ021 WHERE 1=1
<include refid="condition"/>
SELECT COUNT(*) FROM ${hggpSchema}.HGPZ021 T WHERE 1=1
<include refid="customCondition"/>
</select>
<insert id="insert">
......@@ -86,13 +91,12 @@
TABLE_NAME, <!-- 表中文名 -->
FIELD_CODE, <!-- 字段英文名 -->
FIELD_NAME, <!-- 字段中文名 -->
VIEW_SQL, <!-- 视图 -->
VIEW_SQL, <!-- 视图SQL -->
ALIAS_NAME, <!-- 别名 -->
SORT_NUM, <!-- 排序 -->
IS_DEFAULT <!-- 是否默认 -->
IS_DEFAULT <!-- 是否默认,1-是,0-否 -->
) VALUES (
#createdBy#, #createdName#, #createdTime#, #updatedBy#, #updatedName#, #updatedTime#,
#deleteFlag#, #status#, #tableCode#, #tableName#, #fieldCode#, #fieldName#, #viewSql#,
#sortNum#, #isDefault#
#createdBy#, #createdName#, #createdTime#, #updatedBy#, #updatedName#, #updatedTime#, #deleteFlag#, #status#, #tableCode#, #tableName#, #fieldCode#, #fieldName#, #viewSql#, #aliasName#, #sortNum#, #isDefault#
)
</insert>
......
......@@ -20,6 +20,7 @@ import com.baosight.hggp.hg.pz.domain.HGPZ016;
import com.baosight.hggp.hg.pz.domain.HGPZ017;
import com.baosight.hggp.hg.pz.domain.HGPZ018;
import com.baosight.hggp.hg.pz.domain.HGPZ020;
import com.baosight.hggp.hg.pz.domain.HGPZ020A;
import com.baosight.hggp.hg.pz.domain.HGPZ021;
import com.baosight.hggp.hg.sc.domain.HGSC004;
import com.baosight.hggp.hg.sc.domain.HGSC004A;
......@@ -1035,6 +1036,29 @@ public class HGPZTools {
}
/**
* HGPZ020A 定义
*
* @author songx
* @date 2024/11/5,14:28
*/
public static class HgPz020A {
/**
* 查询
*
* @param tableCode
* @return
*/
public static List<HGPZ020A> listByTable(String tableCode) {
Map<String, Object> queryMap = new HashMap<>();
queryMap.put(HGPZ020A.FIELD_ACCOUNT_CODE, UserSessionUtils.getAccountCode());
queryMap.put(HGPZ020A.FIELD_TABLE_CODE, tableCode);
queryMap.put(EiConstant.orderByStr, " A.SORT_NUM ASC");
return DaoBase.getInstance().query(HGPZ020A.QUERY, queryMap);
}
}
/**
* HGPZ021 定义
*
* @author songx
......
package com.baosight.hggp.hg.pz.utils;
import com.baosight.hggp.core.constant.CommonConstant;
import com.baosight.hggp.hg.pz.domain.HGPZ020;
import com.baosight.hggp.hg.pz.domain.HGPZ020A;
import com.baosight.hggp.hg.pz.domain.HGPZ021;
import com.baosight.hggp.hg.pz.enums.DynamicTableEnum;
import com.baosight.hggp.hg.pz.tools.HGPZTools;
......@@ -13,11 +13,13 @@ import com.baosight.iplat4j.core.ei.EiBlock;
import com.baosight.iplat4j.core.ei.EiColumn;
import com.baosight.iplat4j.core.ei.EiConstant;
import com.baosight.iplat4j.core.ei.EiInfo;
import com.baosight.iplat4j.core.exception.PlatException;
import org.apache.commons.collections.CollectionUtils;
import java.util.ArrayList;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.stream.Collectors;
/**
......@@ -64,25 +66,25 @@ public class HGPZUtils {
*/
public static String buildDynamicColumn(DynamicTableEnum dynamicTableEnum) {
// 查询企业配置的字段,如果未配置使用默认字段
List<HGPZ020> dbPz020s = HGPZTools.HgPz020.listByTable(dynamicTableEnum.getCode());
if (CollectionUtils.isNotEmpty(dbPz020s)) {
return dbPz020s.stream().map(item -> {
List<HGPZ020A> dbPz020as = HGPZTools.HgPz020A.listByTable(dynamicTableEnum.getCode());
if (CollectionUtils.isNotEmpty(dbPz020as)) {
return dbPz020as.stream().map(item -> {
if (StringUtils.isEmpty(item.getViewSql())) {
return item.getFieldCode();
return item.getFieldCode() + " as \"" + item.getAliasName() + "\"";
} else {
return item.getViewSql() + " as " + item.getFieldCode();
return item.getViewSql() + " as \"" + item.getAliasName() + "\"";
}
}).collect(Collectors.joining(","));
}).collect(Collectors.joining(", "));
}
List<HGPZ021> dbPz021s = HGPZTools.HgPz021.listDefaultByTable(dynamicTableEnum.getCode());
if (CollectionUtils.isNotEmpty(dbPz021s)) {
return dbPz021s.stream().map(item -> {
if (StringUtils.isEmpty(item.getViewSql())) {
return item.getFieldCode();
return item.getFieldCode() + " as \"" + item.getAliasName() + "\"";
} else {
return item.getViewSql() + " as " + item.getFieldCode();
return item.getViewSql() + " as \"" + item.getAliasName() + "\"";
}
}).collect(Collectors.joining(","));
}).collect(Collectors.joining(", "));
}
return null;
}
......@@ -93,27 +95,40 @@ public class HGPZUtils {
* @param inInfo
* @param clazz
*/
public static void buildEiMetadata(EiInfo inInfo, Class clazz) {
public static void buildEiMetaData(EiInfo inInfo, Class clazz) throws Exception {
Map queryMap = EiInfoUtils.getFirstRow(inInfo);
// 动态列
String dynamicColumn = MapUtils.getString(queryMap, CommonConstant.Field.DYNAMIC_COLUMN);
if (StringUtils.isBlank(dynamicColumn)) {
return;
}
EiBlock resultBlock = inInfo.getBlock(EiConstant.resultBlock);
try {
Map queryMap = EiInfoUtils.getFirstRow(inInfo);
// 动态列
String dynamicColumn = MapUtils.getString(queryMap, CommonConstant.Field.DYNAMIC_COLUMN);
if (StringUtils.isBlank(dynamicColumn)) {
return;
// 先清除已设置的Meta信息
resultBlock.getBlockMeta().getMetas().clear();
// 取实体类的Meta列信息
Map<String, EiColumn> originMetas = ((DaoEPBase) clazz.newInstance()).eiMetadata.getMetas();
for (String itemColumn : dynamicColumn.split(",")) {
// 使用别名获取meta信息,例如PROJ_NAME as "projName"
String aliasName = itemColumn.split("as")[1].replace("\"", "").trim();
EiColumn eiColumn = originMetas.get(aliasName);
if (eiColumn != null) {
resultBlock.addMeta(eiColumn);
}
// 取实体类的Meta列信息
Map<String, EiColumn> originMetas = ((DaoEPBase) clazz.newInstance()).eiMetadata.getMetas();
for (String itemColumn : dynamicColumn.split(",")) {
// 需要去除字段前面的表别名
EiColumn eiColumn = originMetas.get(itemColumn);
if (eiColumn != null) {
resultBlock.addMeta(eiColumn);
}
// 按动态列重新组装数据
List<Map<String, Object>> newResultMaps = new ArrayList<>();
Set<String> metaKeySet = resultBlock.getBlockMeta().getMetas().keySet();
for (Map resultMap : (List<Map>) resultBlock.getRows()) {
LinkedHashMap newResultMap = new LinkedHashMap();
for (String metaKey : metaKeySet) {
if (resultMap.containsKey(metaKey)) {
newResultMap.put(metaKey, resultMap.get(metaKey));
}
}
} catch (Exception e) {
throw new PlatException("加载EiMetadata失败");
newResultMaps.add(newResultMap);
}
resultBlock.setRows(newResultMaps);
}
}
......
......@@ -14,8 +14,6 @@ public class HgScSqlConstant {
*/
public static class HgSc001 {
// 动态查询
public static final String DYNAMIC_QUERY = "HGSC001.dynamicQuery";
// 获取
public static final String GET_BY_CODE = "HGSC001.get";
// 德诚修改
......
package com.baosight.hggp.hg.sc.domain;
import com.baosight.iplat4j.core.util.NumberUtils;
import com.baosight.iplat4j.core.ei.EiColumn;
import com.baosight.iplat4j.core.data.DaoEPBase;
import com.baosight.iplat4j.core.ei.EiColumn;
import com.baosight.iplat4j.core.util.NumberUtils;
import com.baosight.iplat4j.core.util.StringUtils;
import java.util.HashMap;
import java.util.Map;
import com.baosight.iplat4j.core.util.StringUtils;
/**
* Project: <br>
......@@ -226,11 +227,11 @@ public class HGSC001 extends DaoEPBase {
eiMetadata.addMeta(eiColumn);
eiColumn = new EiColumn(FIELD_proj_status);
eiColumn.setDescName("项目状态 0:在建;1:完工");
eiColumn.setDescName("项目状态");
eiMetadata.addMeta(eiColumn);
eiColumn = new EiColumn(FIELD_approval_status);
eiColumn.setDescName("审批状态 0:待审;1:审核中;2:已审");
eiColumn.setDescName("审批状态");
eiMetadata.addMeta(eiColumn);
eiColumn = new EiColumn(FIELD_permiss_start_date);
......
......@@ -45,7 +45,7 @@ public class ServiceHGSC001 extends ServiceBase {
@OperationLogAnnotation(operModul = "项目立项", operType = "查询", operDesc = "初始化页面")
public EiInfo initLoad(EiInfo inInfo) {
try {
inInfo.addBlock(EiConstant.resultBlock).addBlockMeta(new HGSC001().eiMetadata);
// inInfo.addBlock(EiConstant.resultBlock).addBlockMeta(new HGSC001().eiMetadata);
Map map = new HashMap();
map.put(HGSC001.FIELD_account_code, UserSessionUtils.getAccountCode());
CommonMethod.initBlock(inInfo, Arrays.asList(DdynamicEnum.PROJ_TYPE_BLOCK_ID,DdynamicEnum.CUSTOMER_RECORD_BLOCK_ID), map,false);
......@@ -66,10 +66,10 @@ public class ServiceHGSC001 extends ServiceBase {
try {
// 设置动态列
HGPZUtils.HgPz020.buildDynamicColumn(inInfo, DynamicTableEnum.HGSC001);
inInfo = super.query(inInfo, HgScSqlConstant.HgSc001.DYNAMIC_QUERY, new HGSC001());
inInfo = super.query(inInfo, HGSC001.QUERY, new HGSC001());
// 根据结果集填充eiMetadata
HGPZUtils.HgPz020.buildEiMetadata(inInfo, HGSC001.class);
} catch (PlatException e) {
HGPZUtils.HgPz020.buildEiMetaData(inInfo, HGSC001.class);
} catch (Exception e) {
LogUtils.setDetailMsg(inInfo, e, "查询失败");
}
return inInfo;
......
......@@ -156,27 +156,14 @@
<select id="query" resultClass="com.baosight.hggp.hg.sc.domain.HGSC001">
SELECT
<include refid="column"/>
FROM ${hggpSchema}.HGSC001 WHERE 1=1
<include refid="customCondition"/>
<include refid="orderBy"/>
</select>
<select id="count" resultClass="int">
SELECT COUNT(*) FROM ${hggpSchema}.HGSC001 WHERE 1=1
<include refid="customCondition"/>
</select>
<select id="dynamicQuery" resultClass="com.baosight.hggp.hg.sc.domain.HGSC001">
SELECT
<isEmpty property="dynamicColumn">ID as "id"</isEmpty>
<isEmpty property="dynamicColumn"><include refid="column"/></isEmpty>
<isNotEmpty property="dynamicColumn">$dynamicColumn$</isNotEmpty>
FROM ${hggpSchema}.HGSC001 WHERE 1=1
<include refid="customCondition"/>
<include refid="orderBy"/>
</select>
<select id="dynamicCount" resultClass="int">
<select id="count" resultClass="int">
SELECT COUNT(*) FROM ${hggpSchema}.HGSC001 WHERE 1=1
<include refid="customCondition"/>
</select>
......
......@@ -129,7 +129,7 @@ public class DocExcelUtils {
} else if (f.getType() == BigDecimal.class) {
f.set(obj, new BigDecimal(cellValue));
} else {
f.set(obj, cellValue.trim().toUpperCase(Locale.ROOT));
f.set(obj, cellValue.trim());
}
} catch (Exception e) {
String msg = String.format("读取数据值失败,名称[%s],数值[%s],%s", f.getName(), cellValue, e.getMessage());
......
......@@ -39,7 +39,7 @@ let query = function () {
let select = function () {
JSColorbox.open({
href: "HGPZ020A",
title: "<div style='text-align: center;'>字段查询</div>",
title: "<div style='text-align: center;'>字段定义查询</div>",
width: "95%",
height: "95%",
callbackName: selectCallback
......
......@@ -4,14 +4,14 @@
<%@ taglib prefix="EF" tagdir="/WEB-INF/tags/EF" %>
<c:set var="ctx" value="${pageContext.request.contextPath}"/>
<EF:EFPage title="字段配置">
<EF:EFPage title="页面字段配置">
<EF:EFRegion id="inqu" title="查询条件">
<div class="row">
<EF:EFSelect ename="accountCode" cname="租户" blockId="inqu_status" row="0" colWidth="3" filter="contains">
<EF:EFOption label="全部" value=""/>
<EF:EFOptions blockId="account_block_id" textField="textField" valueField="valueField"/>
</EF:EFSelect>
<EF:EFSelect ename="tableCode" cname="名称" blockId="result" row="0" colWidth="3" filter="contains"
<EF:EFSelect ename="tableCode" cname="页面名称" blockId="result" row="0" colWidth="3" filter="contains"
required="true" optionLabel="全部" template="#=valueField#-#=textField#"
valueTemplate="#=valueField#-#=textField#">
<EF:EFCodeOption codeName="app.pz.dynamicTable"/>
......@@ -25,19 +25,22 @@
<EF:EFGrid blockId="result" autoDraw="override" checkMode="row" isFloat="true" sort="single">
<EF:EFColumn ename="id" cname="主键" hidden="true"/>
<EF:EFColumn ename="accountCode" cname="租户编码" enable="false" width="120" align="center"/>
<EF:EFColumn ename="accountName" cname="租户名称" enable="false" width="120" align="center"/>
<EF:EFColumn ename="tableCode" cname="表英文名" enable="false" width="120" align="left"/>
<EF:EFColumn ename="tableName" cname="表中文名" enable="false" width="160" align="left"/>
<EF:EFColumn ename="fieldCode" cname="字段英文名" enable="false" width="160" align="left"/>
<EF:EFColumn ename="fieldName" cname="字段中文名" enable="false" width="180" align="left"/>
<EF:EFColumn ename="accountName" cname="租户名称" enable="false" width="120" align="center" sort="false"/>
<EF:EFColumn ename="tableCode" cname="页面英文名" enable="false" width="120" align="left"
alias="a.tableCode"/>
<EF:EFColumn ename="tableName" cname="页面中文名" enable="false" width="140" align="left" sort="false"/>
<EF:EFColumn ename="fieldCode" cname="字段英文名" enable="false" width="180" align="left"
alias="a.fieldCode"/>
<EF:EFColumn ename="fieldName" cname="字段中文名" enable="false" width="180" align="left" sort="false"/>
<EF:EFColumn ename="viewSql" cname="视图语句" enable="false" width="200" align="left" sort="false"/>
<EF:EFColumn ename="sortNum" cname="排序" width="100" align="center" required="true"/>
<EF:EFColumn ename="createdName" cname="创建人" enable="false" align="center"/>
<EF:EFColumn ename="aliasName" cname="字段别名" enable="false" width="160" align="left" sort="false"/>
<EF:EFColumn ename="sortNum" cname="排序" width="100" align="center" required="true" alias="a.sortNum"/>
<EF:EFColumn ename="createdName" cname="创建人" enable="false" align="center" sort="false"/>
<EF:EFColumn ename="createdTime" cname="创建时间" enable="false" width="140" align="center"
editType="datetime" parseFormats="['yyyyMMddHHmmss']"/>
<EF:EFColumn ename="updatedName" cname="修改人" enable="false" align="center"/>
editType="datetime" parseFormats="['yyyyMMddHHmmss']" alias="a.createdTime"/>
<EF:EFColumn ename="updatedName" cname="修改人" enable="false" align="center" sort="false"/>
<EF:EFColumn ename="updatedTime" cname="修改时间" enable="false" width="140" align="center"
editType="datetime" parseFormats="['yyyyMMddHHmmss']"/>
editType="datetime" parseFormats="['yyyyMMddHHmmss']" alias="a.updatedTime"/>
</EF:EFGrid>
</EF:EFRegion>
......
......@@ -5,14 +5,14 @@
<c:set var="ctx" value="${pageContext.request.contextPath}"/>
<EF:EFPage title="字段查询">
<EF:EFPage title="字段定义查询">
<EF:EFRegion id="inqu" title="查询区域" type="query">
<div class="row">
<EF:EFSelect ename="accountCode" cname="租户" blockId="inqu_status" row="0" colWidth="3" filter="contains"
required="true">
<EF:EFOptions blockId="account_block_id" textField="textField" valueField="valueField"/>
</EF:EFSelect>
<EF:EFSelect ename="tableCode" cname="名称" blockId="result" row="0" colWidth="3" filter="contains"
<EF:EFSelect ename="tableCode" cname="页面名称" blockId="result" row="0" colWidth="3" filter="contains"
required="true" optionLabel="全部" template="#=valueField#-#=textField#"
valueTemplate="#=valueField#-#=textField#">
<EF:EFCodeOption codeName="app.pz.dynamicTable"/>
......@@ -25,11 +25,12 @@
<EF:EFRegion id="result" title="记录集">
<EF:EFGrid blockId="result" autoDraw="override" isFloat="true" checkMode="row" height="60vh">
<EF:EFColumn ename="id" cname="内码" hidden="true"/>
<EF:EFColumn ename="tableCode" cname="英文名" enable="false" width="120" align="center"/>
<EF:EFColumn ename="tableName" cname="表中文名" enable="false" width="160" align="left"/>
<EF:EFColumn ename="fieldCode" cname="字段英文名" enable="false" width="160" align="center"/>
<EF:EFColumn ename="tableCode" cname="页面英文名" enable="false" width="120" align="center"/>
<EF:EFColumn ename="tableName" cname="页面中文名" enable="false" width="140" align="left"/>
<EF:EFColumn ename="fieldCode" cname="字段英文名" enable="false" width="160" align="left"/>
<EF:EFColumn ename="fieldName" cname="字段中文名" enable="false" width="180" align="left"/>
<EF:EFColumn ename="viewSql" cname="视图语句" enable="false" width="200" align="left" sort="false"/>
<EF:EFColumn ename="viewSql" cname="视图语句" enable="false" width="200" align="left"/>
<EF:EFColumn ename="aliasName" cname="字段别名" enable="false" width="160" align="left"/>
<EF:EFColumn ename="sortNum" cname="排序" enable="false" width="80" align="center"/>
</EF:EFGrid>
</EF:EFRegion>
......
......@@ -23,6 +23,8 @@ $(function () {
$("#REMOVE").on("click", remove);
// 导入
$("#IMPORT").on("click", importData);
// 修改排序
$("#UPDATE_SORT").on("click", updateSort);
});
/**
......@@ -61,7 +63,7 @@ let modify = function (id) {
let addOrUpdate = function (params) {
JSColorbox.open({
href: "HGPZ021A?" + params,
title: "<div style='text-align: center;'>" + (isBlank(params) ? "新增表字段" : "修改表字段")
title: "<div style='text-align: center;'>" + (isBlank(params) ? "新增页面字段" : "修改页面字段")
+ "</div>",
width: "60%",
height: "70%",
......@@ -107,4 +109,16 @@ let importData = function () {
*/
let importDataCallback = function () {
query();
}
/**
* 修改排序
*/
function updateSort() {
var rows = resultGrid.getCheckedRows();
if (rows.length == 0) {
message("请先勾选数据!");
return;
}
JSUtils.submitGridsData("result", "HGPZ021", "updateSort", true);
}
\ No newline at end of file
......@@ -4,10 +4,10 @@
<%@ taglib prefix="EF" tagdir="/WEB-INF/tags/EF" %>
<c:set var="ctx" value="${pageContext.request.contextPath}"/>
<EF:EFPage title="表字段管理">
<EF:EFPage title="页面字段定义">
<EF:EFRegion id="inqu" title="查询条件">
<div class="row">
<EF:EFSelect ename="tableCode" cname="名称" blockId="result" row="0" colWidth="3" filter="contains"
<EF:EFSelect ename="tableCode" cname="页面名称" blockId="result" row="0" colWidth="3" filter="contains"
required="true" optionLabel="全部" template="#=valueField#-#=textField#"
valueTemplate="#=valueField#-#=textField#">
<EF:EFCodeOption codeName="app.pz.dynamicTable"/>
......@@ -22,19 +22,21 @@
<EF:EFColumn ename="id" cname="主键" hidden="true"/>
<EF:EFColumn ename="operator" cname="操作" locked="true" enable="false" width="80" align="center"
sort="false"/>
<EF:EFColumn ename="tableCode" cname="英文名" enable="false" width="120" align="center"/>
<EF:EFColumn ename="tableName" cname="表中文名" enable="false" width="160" align="left"/>
<EF:EFColumn ename="fieldCode" cname="字段英文名" enable="false" width="160" align="left"/>
<EF:EFColumn ename="fieldName" cname="字段中文名" enable="false" width="180" align="left"/>
<EF:EFColumn ename="tableCode" cname="页面英文名" enable="false" width="120" align="center"/>
<EF:EFColumn ename="tableName" cname="页面中文名" enable="false" width="140" align="left" sort="false"/>
<EF:EFColumn ename="fieldCode" cname="字段英文名" enable="false" width="180" align="left"/>
<EF:EFColumn ename="fieldName" cname="字段中文名" enable="false" width="180" align="left" sort="false"/>
<EF:EFColumn ename="viewSql" cname="视图SQL" enable="false" width="200" align="left" sort="false"/>
<EF:EFColumn ename="sortNum" cname="排序" enable="false" width="80" align="center"/>
<EF:EFComboColumn ename="isDefault" cname="是否默认" enable="false" width="90" align="center">
<EF:EFColumn ename="aliasName" cname="字段别名" enable="false" width="160" align="left" sort="false"/>
<EF:EFColumn ename="sortNum" cname="排序" width="80" align="center" required="true"/>
<EF:EFComboColumn ename="isDefault" cname="是否默认" width="100" align="center" copy="true" required="true"
sort="false">
<EF:EFCodeOption codeName="hggp.common.yesNo"/>
</EF:EFComboColumn>
<EF:EFColumn ename="createdName" cname="创建人" enable="false" align="center"/>
<EF:EFColumn ename="createdName" cname="创建人" enable="false" align="center" sort="false"/>
<EF:EFColumn ename="createdTime" cname="创建时间" enable="false" width="140" align="center"
editType="datetime" parseFormats="['yyyyMMddHHmmss']"/>
<EF:EFColumn ename="updatedName" cname="修改人" enable="false" align="center"/>
<EF:EFColumn ename="updatedName" cname="修改人" enable="false" align="center" sort="false"/>
<EF:EFColumn ename="updatedTime" cname="修改时间" enable="false" width="140" align="center"
editType="datetime" parseFormats="['yyyyMMddHHmmss']"/>
</EF:EFGrid>
......
......@@ -35,6 +35,25 @@ $(function () {
})
/**
* 页面加载完
*/
$(window).load(function () {
// 修改时禁用输入框
modifyEnableInput();
});
/**
* 禁用输入框
*/
let modifyEnableInput = function () {
let id = $("#result-0-id").val();
if (!CommonUtils.isBlank(id)) {
$("#result-0-tableCode").data("kendoDropDownList").attr("readonly", true);
$("#result-0-fieldCode").attr("readonly", true);
}
}
/**
* 保存
*/
let save = function () {
......@@ -53,6 +72,11 @@ let save = function () {
message("字段中文名不能为空");
return;
}
let aliasName = $("#result-0-aliasName").val();
if (isBlank(aliasName)) {
message("字段别名不能为空");
return;
}
JSUtils.submitGridsData("", "HGPZ021A", "save", false,
function (res) {
if (res.status > -1) {
......
......@@ -4,16 +4,16 @@
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<c:set var="ctx" value="${pageContext.request.contextPath}"/>
<EF:EFPage title="动态表详情">
<EF:EFPage title="页面字段详情">
<EF:EFRegion id="result" title="数据区域">
<EF:EFInput cname="ID" blockId="result" ename="id" row="0" type="hidden"/>
<div class="row">
<EF:EFSelect ename="tableCode" cname="名称" blockId="result" row="0" colWidth="6" ratio="2:10"
<EF:EFSelect ename="tableCode" cname="页面名称" blockId="result" row="0" colWidth="6" ratio="2:10"
filter="contains" required="true" optionLabel="请选择" template="#=valueField#-#=textField#"
valueTemplate="#=valueField#-#=textField#">
<EF:EFCodeOption codeName="app.pz.dynamicTable"/>
</EF:EFSelect>
<EF:EFInput ename="tableName" cname="中文名" blockId="result" row="0" type="hidden"/>
<EF:EFInput ename="tableName" cname="页面中文名" blockId="result" row="0" type="hidden"/>
</div>
<div class="row">
<EF:EFInput ename="fieldCode" cname="字段英文名" blockId="result" row="0" colWidth="6" ratio="2:10"
......@@ -27,6 +27,10 @@
<EF:EFInput ename="viewSql" cname="视图语句" blockId="result" row="0" colWidth="6" ratio="2:10"/>
</div>
<div class="row">
<EF:EFInput ename="aliasName" cname="别名" blockId="result" row="0" colWidth="6" ratio="2:10"
required="true"/>
</div>
<div class="row">
<EF:EFInput ename="sortNum" cname="排序" blockId="result" row="0" colWidth="6" ratio="2:10"/>
</div>
<div class="row">
......
......@@ -11,38 +11,37 @@ $(function () {
pageSize: 20,
pageSizes: [10, 20, 50, 70, 100],
},
columns: [
{
field: "projType",
template: function (item) {
let template = "";
if(item.projType&&projTypeList&&projTypeList.length>0){
var projTypes = item.projType.split(",");
for(let i=0;i<projTypes.length;i++){
for(let j=0;j<projTypeList.length;j++){
if(projTypes[i] === projTypeList[j]['valueField']){
if(template === ""){
template = projTypeList[j]['textField']
}else{
template += projTypeList[j]['textField']
}
}
}
}
}
return template;
}
},
{
field: "operator",
template: function (item) {
let template = '<a style="cursor: pointer;display: inline-flex;justify-content: center;margin:auto 5px" ' +
'onclick="showInfo(' + item.id + ')" >立项详情</a>';
columns: [{
field: "projType",
template: function (item) {
let template = "";
if (item.projType && projTypeList && projTypeList.length > 0) {
var projTypes = item.projType.split(",");
for (let i = 0; i < projTypes.length; i++) {
for (let j = 0; j < projTypeList.length; j++) {
if (projTypes[i] === projTypeList[j]['valueField']) {
if (template === "") {
template = projTypeList[j]['textField']
} else {
template += projTypeList[j]['textField']
}
}
}
}
}
return template;
}
}, {
field: "operator",
title: "操作",
template: function (item) {
let template = '<a style="cursor: pointer;display: inline-flex;justify-content: center;margin:auto 5px" '
+
'onclick="showInfo(' + item.id + ')" >立项详情</a>';
return template;
}
}
],
return template;
}
}],
loadComplete: function(grid){
// 新增
$("#add").click(create);
......
......@@ -30,25 +30,25 @@
</div>
</EF:EFRegion>
<EF:EFRegion id="result" title="记录集">
<EF:EFGrid blockId="result" autoDraw="dynamic" isFloat="true" copyToAdd="false">
<EF:EFGrid blockId="result" autoDraw="mixed" isFloat="true" copyToAdd="false">
<EF:EFColumn ename="id" cname="主键" hidden="true"/>
<EF:EFColumn ename="operator" cname="操作" locked="true" enable="false" width="100" align="center"/>
<EF:EFColumn ename="companyName" cname="公司名称" enable="false" width="120" align="center"/>
<EF:EFColumn ename="projCode" cname="项目编码" enable="false" width="120" align="center"/>
<EF:EFColumn ename="projName" cname="项目名称" enable="false" width="120" align="center"/>
<EF:EFColumn ename="subcontractName" cname="分包方" enable="false" width="120" align="center"/>
<EF:EFColumn ename="genralContractName" cname="总包方" enable="false" width="120" align="center"/>
<EF:EFComboColumn ename="branchUnit" cname="分支单位" enable="false"
columnTemplate="#=textField#" itemTemplate="#=textField#"
textField="textField" valueField="valueField"
maxLength="16" readonly="false" width="100" required="true"
align="center" filter="contains" sort="true">
<EF:EFOptions blockId="customer_record_block_id" textField="textField" valueField="valueField"/>
<%-- <EF:EFColumn ename="companyName" cname="公司名称" enable="false" width="120" align="center"/>--%>
<%-- <EF:EFColumn ename="projCode" cname="项目编码" enable="false" width="120" align="center"/>--%>
<%-- <EF:EFColumn ename="projName" cname="项目名称" enable="false" width="120" align="center"/>--%>
<%-- <EF:EFColumn ename="subcontractName" cname="分包方" enable="false" width="120" align="center"/>--%>
<%-- <EF:EFColumn ename="genralContractName" cname="总包方" enable="false" width="120" align="center"/>--%>
<EF:EFComboColumn ename="branchUnit" cname="分支单位" enable="false" width="130" align="left"
columnTemplate="#=textField#" itemTemplate="#=textField#"
textField="textField" valueField="valueField"
maxLength="16" readonly="false" required="true"
filter="contains" sort="true">
<EF:EFOptions blockId="customer_record_block_id" textField="textField" valueField="valueField"/>
</EF:EFComboColumn>
<EF:EFColumn ename="projType" cname="项目性质" enable="false" width="120" align="center"/>
<EF:EFColumn ename="permissStartDate" cname="准许开工日期" enable="false" width="120" align="center"/>
<EF:EFColumn ename="startDate" cname="开工日期" enable="false" width="120" align="center"/>
<EF:EFColumn ename="endDate" cname="完工日期" enable="false" width="120" align="center"/>
<%-- <EF:EFColumn ename="projType" cname="项目性质" enable="false" width="120" align="center"/>--%>
<%-- <EF:EFColumn ename="permissStartDate" cname="准许开工日期" enable="false" width="120" align="center"/>--%>
<%-- <EF:EFColumn ename="startDate" cname="开工日期" enable="false" width="120" align="center"/>--%>
<%-- <EF:EFColumn ename="endDate" cname="完工日期" enable="false" width="120" align="center"/>--%>
<EF:EFComboColumn ename="projStatus" cname="项目状态" width="80" align="center" required="true"
readonly="true">
<EF:EFCodeOption codeName="hggp.projStatus"/>
......
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