有外键的批量删除
if ( layEvent == = 'del' ) {
layer. confirm ( '确定删除该院系?' , function ( index) {
let collegeId = data. collegeId;
let collegeName = data. collegeName;
alert ( collegeId)
var url= "BaseServlet.do?servlet=MajorManageServlet" +
"&method=checkCollege&collegeId=" + collegeId;
$. get ( url, function ( resp) {
if ( resp== "false" ) {
layer. alert ( collegeName + "--该院系下存在专业,删除失败!" , {
title: '提示' ,
icon: 0
} )
} else if ( resp== "true" ) {
$. get ( "BaseServlet.do?servlet=CollegeManageServlet&" +
"method=remove" +
"&collegeId=" + collegeId)
}
reload ( { } ) ;
} )
obj. del ( ) ;
layer. close ( index) ;
} ) ;
}
Servlet层
public void removeAll ( HttpServletRequest request, HttpServletResponse response)
throws IOException {
String ids = request. getParameter ( "colleges" ) ;
String all = collegeService. removeAll ( ids) ;
response. getWriter ( ) . print ( all) ;
}
业务层
@Override
public String removeAll ( String ids) {
StringBuffer result = null;
String[ ] arr = ids. split ( "," ) ;
SqlSession session = Dbutil. getSession ( ) ;
if ( session != null) {
try {
CollegeMapper collegeMapper = session. getMapper ( CollegeMapper. class ) ;
MajorMapper majorMapper = session. getMapper ( MajorMapper. class ) ;
for ( String id : arr) {
Map< String, Object> conditions = new HashMap < > ( ) ;
conditions. put ( "college" , id) ;
int count = majorMapper. selectCount ( conditions) ;
if ( count == 0 ) {
int r = collegeMapper. delete ( Integer. parseInt ( id) ) ;
if ( r != Constants. DB_UPDATE_SUCCESS) {
College college = collegeMapper. selectById ( Integer. parseInt ( id) ) ;
if ( result == null) {
result = new StringBuffer ( ) ;
result. append ( college. getCollegeName ( ) ) ;
} else {
result. append ( "," ) . append ( college. getCollegeName ( ) ) ;
}
}
} else {
College college = collegeMapper. selectById ( Integer. parseInt ( id) ) ;
if ( result == null) {
result = new StringBuffer ( ) ;
result. append ( college. getCollegeName ( ) ) ;
} else {
result. append ( "," ) . append ( college. getCollegeName ( ) ) ;
}
}
}
session. commit ( ) ;
} catch ( NumberFormatException e) {
logger. error ( e) ;
} finally {
Dbutil. close ( session) ;
}
}
return result == null ? "" : result. toString ( ) ;
}
没有联系可以直接删除的只改一下业务层就可斜体样式以实现了
@Override
public String removeAll ( String ids) {
String[ ] arr = ids. split ( "," ) ;
SqlSession session = Dbutil. getSession ( ) ;
if ( session != null) {
try {
MemberMapper memberMapper = session. getMapper ( MemberMapper. class ) ;
for ( String id : arr) {
int r = memberMapper. delete ( Integer. parseInt ( id) ) ;
}
session. commit ( ) ;
} catch ( NumberFormatException e) {
logger. error ( e) ;
}
}
return ids;
}