js jsonData 写法
TRawMaterialStorageDetail.delete = function () {
//询问框
layer.confirm('対象データが削除され、\n' +
'在庫テーブルに反映されますが、\n' +
'よろしいでしょうか?', {
btn: ['いいえ','はい'], //按钮
title: '<p style="background-color: #2aabd2"> </p>',
btnAlign: 'c',
skin: 'demo-class',
title :" "
}, function(){
layer.closeAll();
}, function(){
var source_cd = $("#source_cd").val();
var data_no = $("#data_no").val();
var row=$("#TRawMaterialStorageDetailTable").bootstrapTable('getData');
var rowArray = [];
for(var i = 0;i<row.length;i++){
rowArray.push({
"epc":row[i].epc
})
}
var jsonData = { // json数据 此处键名称 需要跟 序列化对象Vo里的的属性名一致
"sourceCd" : source_cd,
"dataNo":data_no,
"epcList":rowArray
}
$.ajax({
type : "post",
contentType : "application/json;charset=UTF-8",
dataType: "json",
data : JSON.stringify(jsonData),// 将json数据转化为字符串
url : zcm.ctxPath+"/t-raw-material-storage/delete",
success:function(result){
zcm.success("削除成功");
//重定向
setTimeout(function(){
window.location.replace(zcm.ctxPath +"/t-raw-material-storage")
}, 1300);
},
error :function (result) {
zcm.error("削除失败");
}
});
});
};
Controller 写法
/**
* 删除详情
*/
@PostMapping(value = "/delete")
@ResponseBody
public Object delete(@RequestBody RawMaterialStorageVo rawMaterialStorageVo) throws Exception{
itStockService.deleteMaterialStorageDetail(rawMaterialStorageVo);
return this.SUCCESS_TIP;
}
Vo
public class RawMaterialStorageVo implements Serializable {
private String dataNo;
private String sourceCd;
private List<TRawMaterialStorageAllocation> epcList;
public String getDataNo() {
return dataNo;
}
public void setDataNo(String dataNo) {
this.dataNo = dataNo;
}
public String getSourceCd() {
return sourceCd;
}
public void setSourceCd(String sourceCd) {
this.sourceCd = sourceCd;
}
public List<TRawMaterialStorageAllocation> getEpcList() {
return epcList;
}
public void setEpcList(List<TRawMaterialStorageAllocation> epcList) {
this.epcList = epcList;
}
}
service
@Transactional
@Override
public void deleteMaterialStorageDetail(RawMaterialStorageVo rawMaterialStorageVo) throws Exception {
String dataNo = rawMaterialStorageVo.getDataNo();
String sourceCd = rawMaterialStorageVo.getSourceCd();
List<TRawMaterialStorageAllocation> epcList = rawMaterialStorageVo.getEpcList();
if (epcList.size() > 0) {
// ①更新在库表。
for (int i = 0; i < epcList.size(); i++) {
itStockService.updateSourceYardCdByEpc(epcList.get(i).getEpc(), sourceCd);
}
// ②将原材料放置场所移动分配表格(t_raw_material_storage_allocation)中与data_no绑定的相关的数据删除。
itRawMaterialStorageAllocationService.deleteByDataNo(dataNo);
// ③将原材料放置场所移动表格(t_raw_material_storage)中与data_no绑定的那条数据删除。
itRawMaterialStorageService.deleteByDataNo(dataNo);
} else {
throw new ServiceException(BizExceptionEnum.APPLICATION_ERROR);
}
}