点击【操作】列中的桃心,设置默认值,整个列表只能有一个默认值,红色代表默认值。
- 前端
<script type="text/html" id="returnVal">
<a class="btn btn-xs btn-darkorange" href="javascript:setDefault()" title='默 认'><i class="fa fa-heart"></i></a>
<a class="btn btn-info btn-sm" href="javascript:modify()"><i class="fa fa-edit"></i>编 辑</a>
<a class="btn btn-info btn-sm" href="javascript:policyConfig()"><i class="fa fa-edit"></i>策略配置</a>
<a class="btn btn-danger btn-sm" href="javascript:remove()"><i class="fa fa-times"></i>删 除</a>
</script>
<script type="text/html" id="rvl">
<a class="btn btn-xs btn-info" href="javascript:setDefault()" title='默 认'><i class="fa fa-heart"></i></a>
<a class="btn btn-info btn-sm" href="javascript:modify()"><i class="fa fa-edit"></i>编 辑</a>
<a class="btn btn-info btn-sm" href="javascript:policyConfig()"><i class="fa fa-edit"></i>策略配置</a>
<a class="btn btn-danger btn-sm" href="javascript:remove()"><i class="fa fa-times"></i>删 除</a>
</script>
function setDefault() {
var row = $('#data_table').datagrid('getSelected');
var flag = true;
if(row.isDefault===true){flag=false;}
if(row !=null){
$.ajax({
url:'${basePath}/admin/policy/setDefault',
data:{
id:row.id,
flag:flag
},
dataType:'json',
success: function (data) {
if (data.header.flag) {
$('#data_table').datagrid("reload");
} else {
Notify(data.header.msg, 'top-right', '5000', 'danger', 'fa-bolt', true);
}
},
error: function () {
Notify("服务器异常", 'top-right', '5000', 'danger', 'fa-bolt', true);
}
});
}else{
Notify('请选择要操作的数据', 'top-right', '5000', 'danger', 'fa-bolt', true);
}
}
function formatOperator(value, row) {
if(row.isDefault===true){
return document.getElementById("returnVal").innerHTML;
}else{
return $("#rvl").html();
}
}
- controller
@RequestMapping("setDefault")
@ResponseBody
public Object setDefault(Integer id,Boolean flag,HttpServletRequest request){
//isDefault 全部设置为false
bdmPolicyService.initialDefault();
BdmPolicyInfoPo policyInfoPo = bdmPolicyService.getById(id);
policyInfoPo.setIsDefault(flag);
return bdmPolicyService.updatePolicy(policyInfoPo)==1?success("设置成功"):error("500","设置失败");
}
- service
@Override
public void initialDefault() {
BdmPolicyInfoPo po = new BdmPolicyInfoPo();
po.setIsDefault(false);
BdmPolicyInfoPoExample example = new BdmPolicyInfoPoExample();
example.createCriteria().andIsDefaultEqualTo(true);
this.commDAO.initDAO(BdmPolicyInfoPo.class).updateByExampleSelective(po,example);
}