BIP参照开发
全局人员参照
前端开发
js
复制代码
import { high } from 'nc-lightapp-front';
import { conf as unitConf } from '../../../../uap/refer/riart/groupTreeRef/index';
const { Refer } = high;
export var conf = {
refType: 'gridTree',
refName: '全局人员',
placeholder: '全局人员',
columnConfig: [
{
name: ["编码", "名称", "部门", "组织"],
code: ["bd_psndoc.code", "bd_psndoc.name", "org_dept.name", "org_orgs.name"]
}
],
queryGridUrl: '/nccloud/hrhi/ref/GLBPsndocGridRefAction.do',
queryTreeUrl: '/nccloud/hrhi/ref/GLBPsndocTreeRefAction.do',
};
export default function (props = {}) {
return <Refer {...Object.assign({}, conf, props)} />;
}
后端开发
java
复制代码
public class GLBPsndocTreeRefAction extends DefaultTreeRefAction {
public GLBPsndocTreeRefAction() {
super();
//设置默认不显示被停用数据
setShowDisabledData(false);
//设置数据权限资源code
setResourceCode(IOrgResourceCodeConst.ORG);
}
@Override
public TreeRefMeta getRefMeta(RefQueryInfo refQueryInfo) {
TreeRefMeta treeRefMeta = new TreeRefMeta();
treeRefMeta.setPkField(OrgVO.PK_ORG);
treeRefMeta.setPidField(OrgVO.PK_FATHERORG);
treeRefMeta.setCodeField(OrgVO.CODE);
treeRefMeta.setNameField(OrgVO.NAME);
treeRefMeta.setMutilLangNameRef(false);
treeRefMeta.setTableName(OrgVO.getDefaultTableName());
return treeRefMeta;
}
@Override
public String getExtraSql(RefQueryInfo refQueryInfo, RefMeta refMeta) {
return " and isbusinessunit = 'Y'";
}
}
public class GLBPsndocGridRefAction extends DefaultGridRefAction {
public GLBPsndocGridRefAction() {
this.setResourceCode("org");
}
public RefMeta getRefMeta(RefQueryInfo info) {
RefMeta meta = new RefMeta();
meta.setMutilLangNameRef(false);
meta.setExtraFields(new String[]{"bd_psndoc.pk_psndoc", "bd_psndoc.code", "bd_psndoc.name", "org_orgs.name", "org_dept.name"});
meta.setCodeField("bd_psndoc.code");
meta.setNameField("bd_psndoc.name");
meta.setPkField("bd_psndoc.pk_psndoc");
String sql = " bd_psndoc INNER JOIN bd_psnjob ON bd_psndoc.pk_psndoc = bd_psnjob.pk_psndoc AND bd_psnjob.ismainjob = 'Y' and bd_psnjob.enddutydate is null LEFT OUTER JOIN org_orgs ON org_orgs.pk_org = bd_psnjob.pk_org LEFT OUTER JOIN org_dept ON org_dept.pk_dept = bd_psnjob.pk_dept";
meta.setTableName(sql);
return meta;
}
public String getExtraSql(RefQueryInfo refQueryInfo, RefMeta refMeta) {
String sql = "";
if (refQueryInfo instanceof TreeRefQueryInfo) {
TreeRefQueryInfo treeRefQueryInfo = (TreeRefQueryInfo)refQueryInfo;
String pid = treeRefQueryInfo.getPid();
if (StringUtils.isNotBlank(pid)) {
sql = "and org_orgs.pk_org = '" + pid + "'";
}
}
return sql;
}
}
承运商参照
前端开发
js
复制代码
import { high } from 'nc-lightapp-front';
const { Refer } = high;
/**
* 承运商基本信息-表型参照
* @since 2026/02/10 11:03:38
* @param {*} props
*/
export default function (props = {}) {
let config = {
multiLang: {
domainName: 'medpub',
currentLocale: 'zh-CN',
moduleId: 'refer_rg0_supplier'
},
refType: 'grid',
refName: 'rg0_supplier_0001', /** 国际化处理:承运商基本信息 */
placeholder: 'rg0_supplier_0001', /** 国际化处理:承运商基本信息 */
IsMultiSelectedEnabled: true,
columnConfig: [
{
code: [
"refcode",
"refname",
],
name: [
"rg0_supplier_0002", /** 国际化处理:编码 */
"rg0_supplier_0003", /** 国际化处理:名称 */
]
}
],
refCode: 'medpub.refer.SupplierGridRefer',
queryGridUrl: '/nccloud/medpub/refer/SupplierGridRefAction.do'
};
return <Refer {...config} {...props} />
}
后端开发
java
复制代码
public class SupplierGridRefAction extends DefaultGridRefAction {
public SupplierGridRefAction() {
super();
}
@Override
public RefMeta getRefMeta(RefQueryInfo refQueryInfo) {
RefMeta refMeta = new RefMeta();
// 参照主键字段
refMeta.setPkField("pk_supplier");
// 参照编码字段
refMeta.setCodeField("code");
// 参照名称字段
refMeta.setNameField("name");
// 参照额外字段,extraFields为设置时参照默认显示"编码"和"名称"俩字段
refMeta.setExtraFields(new String[] {"code", "name"});
refMeta.setTableName(getTableName());
refMeta.setMutilLangNameRef(true);
return refMeta;
}
private String getTableName() {
return "bd_supplier";
}
@Override
public String getExtraSql(RefQueryInfo refQueryInfo, RefMeta refMeta) {
return " and iscarrier = 'Y' ";
}
}