/**
* 同义词配置页面
* @author weidy
* @date 2022-02-17
*/
layui.define(['layer','element','form','table','dynamicCondition' ],function(exports){
var webUtil = $webUtil;
var Class = function(){
this.MODELNAME = "mdm/CodeSynonym";
this.moduleKey = "CodeSynonym";
this.backPath = configData.compatibility? path:configData.mdmService;
this.url = {
controller:'codeSynonymController/',
dataGrid:'gridCodeSynonym',
addSave:'addSave',
editSave:'editSave',
deleteUrl:'deleteData',
getObjectByOid:'getObjectByOid'
};
this.getContent=function(){
var that = this;
return '
';
};
this.showContent=function (){
var that = this;
var html = "";
html = [
'',
'
',
'
',
that.getToolbarHtml(),
'
',
'
',
'
',
'
'
].join("");
$("#UIContent_"+that.id).html(html);
};
this.getToolbarHtml =function(){
var that = this;
var html = [
'',
'',
'',
'',
'',
'',
'
'
].join("");
return html;
};
this.createSearchHtml = function () {
var that = this;
webUtil.bindDefultButtonLisenter(that, that.id);
webUtil.createSearchHtml({id:"编号",name:"名称"} ,$("[layui-filter='toolbar_" + that.id + "']"), "table_" + that.id);
};
this.init = function(){
var that = this;
webUtil.copyConfig(that,that.moduleKey);
//需要加在定时中,否则样式不能正确展示,不知道原因 wangting
setTimeout(function (){
that.showContent();
var easyuiLayout= $('#easyuiLayout_'+that.id)
easyuiLayout.css({height:$('#portal_body').height()-43,width:$('#portal_body').width()-15})
easyuiLayout.layout();
that.initMainTable();
that.createSearchHtml();
},1)
};
this.initMainTable = function (parentFieldName) {
var that = this;
var table = layui.table;
that.checkColumns();
var tableWidth = $("#border_" + that.id).width();
var options = {
elem: '#table_' + that.id,
id: 'table_' + that.id,
backPath:that.backPath,
url: that.url.controller + that.url.dataGrid,
page: {
limit: 20,
page: 1
},
width:tableWidth,
selectMode:table.selectMode.muti,
cols: [that.columns],
method:'get',
done:function(res,cur,total){
if(!that.fristMainLoad ){
table.on('tool(' + that.id + ')',function(obj){
var data = obj.data;//当前选择行的数据
var layEvent = obj.event;//点的是什么按钮
if(layEvent == 'EDIT'){
that.addOrEdit(false,data.oid);
}
});
}else{
if(total>0) {
table.selectRecord('table_' + that.id, {index:0});
}
}
that.fristMainLoad = true;
}
};
if(parentFieldName){
options.treeConfig = {
treepid:parentFieldName,
treeid:'id',
showField:'name'
};
}
table.render(options);
};
this.checkColumns = function(){
var that = this;
var table = layui.table;
if(that.columns==null || that.columns.length==0){
that.columns = [table.getIndexColumn(),table.getCheckColumn(),
{
title: '所属模板',
field: 'codeclassifytemplateoidName',
sort:true,
sortField:'codeclassifytemplateoid',
type:'refer',
referConfig: {
type:'mdm/refer/CodeClassTemplateRefer'
},
width: 150
},{
field:'id',
title: '所属属性',
width: 250,
sort: true,
sortField: 'id',
type:'refer',
referConfig: {
type:'grid',
referBo:'codeclstemplate',
useFormKey:'codeclassifytemplateoid',
url:"codeClassifyTempAttrController/gridCodeClassifyTemplateAttr",
paramForFormKey:'classifyTemplateOid',
backPath:that.backPath ,
tableConfig:{
method:'get',
cols:[table.getIndexColumn(),table.getCheckColumn(),{
field:'id',
title:'属性英文名称',
width:150
},{
field: 'name',
title: '属性中文名称',
width: 150
}],
queryColumns:[{
field:'id',
title:'属性英文名称'
},{
field: 'name',
title: '属性中文名称'
}]
}
},
templet:function (d){
return d.id + " " + d.name;
}
},
{
title: '源值',
field: 'sourcevalue',
sort:true,
width: 150
},
{
title: '同义词',
field: 'synonymvalue',
sort:true,
width: 150
},
{
field:'options',
title:'操作',
width:150,
templet:function(d){
return '编辑';
}
}];
}
};
this.getFormItems = function(onlyShow) {
var that = this;
var table = layui.table;
return [
{
field: 'codeclassifytemplateoid',
title: '所属模板',
required: true,
type: 'refer',
showField: 'codeclassifytemplateoidName',
referConfig: {
type:'mdm/refer/CodeClassTemplateRefer'
},
defaultValue:"",
readOnly:onlyShow
} , {
field: 'id',
title: '所属属性',
required: true,
showField: 'name',
type:'refer',
referConfig: {
type:'grid',
valueField:'id',
referBo:'codeclstemplate',
useFormKey:'codeclassifytemplateoid',
url:"codeClassifyTempAttrController/gridCodeClassifyTemplateAttr",
paramForFormKey:'classifyTemplateOid',
backPath:that.backPath,
tableConfig:{
method:'get',
cols:[table.getIndexColumn(),table.getCheckColumn(),{
field:'id',
title:'属性英文名称',
width:150
},{
field: 'name',
title: '属性中文名称',
width: 150
}],
queryColumns:[{
field:'id',
title:'属性英文名称'
},{
field: 'name',
title: '属性中文名称'
}]
}
},
readOnly:onlyShow
}, {
field: 'sourcevalue',
title: '源值',
required: true,
type: 'text',
defaultValue:"",
readOnly:onlyShow
} , {
field: 'synonymvalue',
title: '同义词',
required: true,
type: 'text',
defaultValue:"",
readOnly:onlyShow
} ];
};
this.ADD = function () {
var that = this;
that.addOrEdit(true);
};
this.EDIT = function(){
var that = this;
var oid = webUtil.getOidFromGrid("table_" + that.id,true,true);
if(!oid){
return false;
}
that.addOrEdit(false,oid);
};
this.addOrEdit = function(add,oid) {
var that = this;
var form = layui.form;
var filter ="form_" + that.id;
var addSaveIndex =webUtil.dialog({
title:add?'添加同义词配置':'修改同义词配置',
btn:['保存','取消'],
content:'',
resizing:function(layero){
form.doResize(filter);
},
success:function(layero, layerIndex, classP) {
form.addItems(filter,that.getFormItems(false),
function () {
if(!add){
form.load(filter,{
backPath:that.backPath,
url:that.url.controller + that.url.getObjectByOid,
method:'get',
params:{
oid:oid
}
});
}else{
var defaultValues = {};
//可以手动在此处添加默认值
form.setValues(defaultValues,filter);
}
webUtil.relocationOpen(classP)
}, {}, {defaultColumnOneRow: 2,labelWidth:120});
},
yes:function(layero){
if(form.validata(filter)){
var values = form.getValues(filter,true);
var url = that.url.controller + (add?that.url.addSave:that.url.editSave);
webUtil.manualAjax(add?'post':'put',url,JSON.stringify(values),function(result){
if(result.success){
webUtil.showMsgFromResult(result,(add ? "添加成功" : "修改成功"));
layer.close(addSaveIndex);
that.refresh();
}else{
webUtil.showErrorMsg(result.msg);
}
},function(xhr,err){
webUtil.showErrorMsg("请求服务出现了错误,可能服务器未开启");
},that.backPath);
}
},
btn2:function(layero){
layer.close(addSaveIndex);
}
});
};
this.DEL = function(){
var that = this;
var oid = webUtil.getOidFromGrid("table_" +that.id,true,true);
if(!oid){
return false;
}
var ts= webUtil.getOidFromGrid("table_" +that.id,false,false,"ts");
webUtil.showConfirmMsg("是否删除这条数据?如果被引用将不能被删除!",function () {
webUtil.deleteRequest(that.url.controller + that.url.deleteUrl,{oid:oid,ts:ts},function(result){
if(result.success){
webUtil.showMsgFromResult(result,"删除成功");
that.refresh();
}else{
webUtil.showErrorMsg(result.msg);
}
},function(xhr,err){
webUtil.showErrorMsg("请求服务出现了错误,可能服务器未开启");
},that.backPath);
});
};
this.refresh = function () {
var that = this;
layui.table.reload("table_" + that.id);
};
this.ADVQUERY = function () {
var that = this;
if(!that.serinorQueryInstance) {
var dynamicCondition = layui.dynamicCondition;
$('[layui-filter="toolbar_' + that.id + '"]').append('');
that.checkColumns();
var dataFields = [];
for(var i = 0 ; i < that.columns.length ; i ++){
dataFields[i] = that.columns[i];
}
that.serinorQueryInstance = dynamicCondition.create({
fields: dataFields//查询字段
, tableId: "table_" + that.id//需要查询的表格
, type: "complex" //type:"simple"/"complex" 查询的方法 暂时写死为 complex
, queryCallBack: function (requestData) {//查询之后的callback
}
});
}
that.serinorQueryInstance.open();
};
};
var cs = new Class();
exports(cs.MODELNAME,cs);
});