/**
|
* 业务类型的删除
|
* @author weidy
|
* @date 2021-3-19
|
*/
|
layui.define(['layer','element','BaseAction'],function(exports){
|
var webUtil = $webUtil;
|
var Class = function() {
|
this.MODELNAME = "BaseDeleteAction";
|
this.moduleKey = "BaseDeleteAction";
|
this.id = "BaseDeleteAction";
|
this.backPath = configData.compatibility?path:configData.objectServicePath;
|
this.doAction = function (options) {
|
if(!options || !options.dataStore ){
|
$webUtil.showErrorMsg("按钮的传递信息不正确,请开发人员检查");
|
return false;
|
}
|
var that = this;
|
webUtil.copyConfig(that, that.moduleKey);
|
var finallyCallback = options.callback;
|
var params = $webUtil.paramLow(options.paramVOS);
|
options.paramVOS = params;
|
if(options.dataStore.length<1){
|
$webUtil.showErrorMsg("请选择需要删除的数据");
|
return false;
|
}
|
if(!params.multi && options.dataStore.length > 1){
|
$webUtil.showErrorMsg("仅能选择一条数据来操作");
|
return false;
|
}
|
var baseAction = layui['BaseAction'];
|
baseAction.callPreEvent(options,that,function (options) {
|
$webUtil.showConfirmMsg($webUtil.replaceFreeMarker(params.confirmmsg,options.dataStore,options.sourceData) || ('是否删除' + (options.dataStore.length==1?"这条":"这些") + '数据' + (params.cascade?",如果有下级数据会级联删除":"")),function (r) {
|
if(r){
|
that.doDelete(options,function (){
|
baseAction.callPostEvent(options,that,finallyCallback);
|
});
|
}
|
});
|
});
|
};
|
this.doDelete = function (options,callback) {
|
var that = this;
|
var submitData = {
|
checkLinkedFlag:options.paramVOS.checklinkedflag,
|
cascade:options.paramVOS.cascade,
|
adminCascade:options.paramVOS.admincascade
|
}
|
if(options.paramVOS.checkonback){
|
submitData['checkNotDelete']=options.paramVOS.checknotdelete;
|
submitData['checkNotDeleteMsg']=options.paramVOS.checknotdeletemsg;
|
}else if(options.paramVOS.checknotdelete){
|
var notdelete = options.paramVOS.checknotdelete.split('&');
|
var checknotdelete=false;
|
var msgStore={};
|
layui.each(notdelete, function (i, item) {
|
for (var j=0;j<options.dataStore.lenght;j++){
|
if (options.dataStore[j][item.split('=')[0]] == item.split('=')[1]) {
|
checknotdelete=true;
|
msgStore=options.dataStore[j]
|
return false;
|
}
|
}
|
})
|
if (checknotdelete) {
|
$webUtil.showErrorMsg($webUtil.replaceFreeMarker(options.paramVOS.checknotdeletemsg,msgStore,{}) || '当前数据不允许删除');
|
return false;
|
}
|
}
|
submitData.dataList = options.dataStore;
|
$webUtil.manualAjax(options.paramVOS.method||'delete',options.paramVOS.url || 'uiDataController/deleteData',JSON.stringify(submitData),function(result){
|
if(result.success){
|
$webUtil.showMsgFromResult(result,options.paramVOS.successMsg||'删除成功');
|
if(callback){
|
callback();
|
}
|
}else{
|
$webUtil.showErrorMsg(result.msg);
|
}
|
},function (error,xhr){
|
$webUtil.showErrorMsg("执行删除出错,可能是服务没有启动,您可以稍后再试");
|
},options.paramVOS.backpath||that.backPath);
|
};
|
this.destory = function () {
|
var that = this;
|
};
|
};
|
var cs = new Class();
|
exports(cs.MODELNAME,cs);
|
});
|