电脑桌面
添加蚂蚁七词文库到电脑桌面
安装后可以在桌面快捷访问

行政区划字段

来源:金蝶云社区作者:金蝶2024-09-2311

行政区划字段

# 1 功能介绍 行政区划字段,是一种特殊的文本字段,录入时能够自动弹出国家和行政区划选择浮层。 # 2 控件对象 `kd.bos.form.field.AdmindivisionEdit` # 3 视觉展示 1. 国家信息支持搜索选择 ![image.webp](/download/0100af9b869812304b2ebdde1392e95b05b0.webp) 2. 省份信息按字母排序 ![image.webp](/download/010085a4aa1934c44af48ecd42f24b5820eb.webp) 3. 区/县级信息录入 ![image.webp](/download/01007dd2774097d440ed87beb006c025cc09.webp) # 4 属性说明 ## 4.1 通用属性 >通用属性包含字段和控件的一些公有的属性,如宽高,帮助文本等等。请参考[通用属性](https://vip.kingdee.com/article/215559076720798976) ## 4.2 样式属性 >样式属性是每个控件在设计器右侧样式栏可以设置的属性,请参考[样式属性](https://vip.kingdee.com/article/252017936767406336) ## 4.3 业务属性 | 属性名 | 类型 | 默认值 | 说明 | | --- | --- | --- | --- | | 缺省值 | 弹框选择 | - | 配置默认国家地区信息 | | 为空提示信息 | 文本 | - | 当字段内容为空时,输入框内显示的信息 | # 5 行政区划接口介绍 ## 5.1 控件编程模型 ### 5.1.1 控件编程模型定义 行政区划字段,控件编程模型为AdminDivisionEdit,派生自字段控件编程模型基类FieldEdit: ```java package kd.bos.form.field; public class AdminDivisionEdit extends FieldEdit { ``` ### 5.1.2 控件方法清单 增加了如下控制方法: | 方法 | 说明 | | --- | --- | | getCountrys | 前端刷新行政区划字段控件时,调用此方法:
将全部国家列表,发送给前端控件 | | getAdmindivisionLevelsByCountryId | 前端刷新行政区划字段控件时,调用此方法:
获取当前国家下的行政区划级次,发送给前端控件 | | getProvincesByCountryId | 前端刷新行政区划字段控件时,调用此方法:
获取指定国家下的第一层行政区划(省级),发送给前端控件 | | getAdminDivisionsByParentId | 前端刷新行政区划字段控件时,调用此方法:
将指定行政区划的下级行政区划,发送给前端控件 | | getAdminDivisionInfo | 前端刷新行政区划字段控件时,调用此方法:
将行政区划id查询到的行政区划全称,发送给前端控件 | ## 5.2 数据模型 行政区划字段,属性对象类型是AdminDivisionProp,字段值是String类型,存储行政区划的Id; AdminDivisionProp派生自字段属性对象基类FieldProp: ```java package kd.bos.entity.property; public class AdminDivisionProp extends FieldProp { ``` 重写、新增了如下方法: | 方法 | 说明 | | --- | --- | | getPropertyType | 输出字段值类型,String.class | | getListColumnDesc | 输出列表字段格式化对象,把行政区划Id转为名称显示在列表上 | 如下代码,演示了行政区划字段的取值、赋值,把区划id转为名称: ```java package kd.bos.plugin.sample.dynamicform.pcform.field.bizcase; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import kd.bos.dataentity.entity.DynamicObject; import kd.bos.form.plugin.AbstractFormPlugin; import kd.bos.orm.ORM; import kd.bos.orm.query.QFilter; /** * 演示行政区划字段的使用 * * @author rd_johnnyding * */ public class AdminDivisionFieldSample extends AbstractFormPlugin { /** 单据头.行政区划字段 */ private final static String KEY_ADMINDIVISIONFIELD = "admindivisionfield"; /** * 演示如何读取、设置字段值; * * @param entryRow 单据体行号 * @param subEntryRow 子单据体行号 * @remark * 设置单据体字段,需要在参数中加上行号 */ private void demoFieldValue(int entryRow, int subEntryRow){ String adminId = ""; // 行政区划Id // 尝试取第一个国家下的第一个最明细的行政区,填写在字段上 // 取全部国家 List<Map<String, String>> countrys = getCountrys(); String countryId = countrys.get(0).get("id"); String countryName = countrys.get(0).get("name"); // 取国家之下,第一级行政区划 List<Map<String, String>> adminDivisions = getAdminDivisionsByParentId(countryId); do { // 取第一个行政区 adminId = adminDivisions.get(0).get("id"); // 继续往下取下级行政区 adminDivisions = getAdminDivisionsByParentId(adminId); } while (!adminDivisions.isEmpty()); // 赋值:填写行政区划id this.getModel().setValue(KEY_ADMINDIVISIONFIELD, adminId); // 取值 adminId = (String) this.getModel().getValue(KEY_ADMINDIVISIONFIELD); // 翻译为名称 String adminName = getAdminDivisionName(adminId); } /

行政区划字段

# 1 功能介绍行政区划字段,是一种特殊的文本字段,录入时能够自动弹出国家和行政区划选择浮层。# 2 控件对象`kd.bos.form.field.Admin...
点击下载文档文档为doc格式

声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。

确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息
QQ群
  • 答案:my7c点击这里加入QQ群
支持邮箱
微信
  • 微信