前端js
主要是要用json类型
data: JSON.stringify(dataObj),
dataType: “json”,
contentType: ‘application/json;charset=utf-8’,
function saveFeeInfo(id) {
var dataObj = {};
dataObj.ProjectID = id;
dataObj.Type = "";
dataObj.ProjectType = "";
dataObj.MoneyType = $("#MoneyType").val();
dataObj.list = getTableContent('mytable');
$.ajax({
type: "post",
url: "/Admin_Fee/SaveFee/",
data: JSON.stringify(dataObj),
dataType: "json",
contentType: 'application/json;charset=utf-8',
async: false,
cache: false,
beforeSend: function () { $("#loading").show(); },
success: function (m) {
$("#loading").hide();
if (m == "success") {
xxxx;
}
else {
messageAlert(m);
}
},
error: function (e) {
messageAlert("保存失败!");
$("#loading").hide();
}
})
}
//table获取百分比值
function getTableContent(id) {
var mytable = document.getElementById(id);
var data = [];
for (var i = 1, rows = mytable.rows.length; i < rows; i++) {
var per = mytable.rows[i].cells[1].getElementsByTagName("input")[0].value;
if (per != null && per != "") {
var obj = {};
obj["AccountId"] = $.trim(mytable.rows[i].cells[0].id);
obj["AccountName"] = $.trim(mytable.rows[i].cells[0].innerHTML);
obj["ID"] = $.trim(mytable.rows[i].cells[1].id);
obj["Proportion"] = per;
data.push(obj);
}
}
return data;
}
model
public class FeeSettingModel
{
public string ProjectID { get; set; }//项目id
public string Type { get; set; }//类型
public string ProjectType { get; set; }//项目类型
public string MoneyType { get; set; }//资金类型
public List<PerModel> list { get; set; }
}
public class PerModel
{
public string ID { get; set; }//FeeSetting的唯一标识id
public string AccountId { get; set; }//费用id
public string AccountName { get; set; }//费用名称
public decimal Proportion { get; set; }//百分比
}
controler
public JsonResult SaveFee(FeeSettingModel infoModel)
{
userCode = userInfo != null ? userInfo.UserCode : "";
bool result = false;
foreach (var item in infoModel.list)
{
string sql = string.Empty;
if (string.IsNullOrEmpty(item.ID))
{
sql = string.Format(@"insert into {0} (ProjectID, Type, ProjectType, MoneyType, AccountId, AccountName, Proportion, SubmitTime, SubmitUser) values ('{1}','{2}','{3}','{4}','{5}','{6}','{7}','{8}','{9}')", dbcode, infoModel.ProjectID, infoModel.Type, infoModel.ProjectType, infoModel.MoneyType, item.AccountId, item.AccountName, item.Proportion, userDate.ToString("yyyy-MM-dd HH:mm:ss"), userCode);
}
else
{
sql = string.Format(@"UPDATE {0} SET Type='{1}',ProjectType='{2}',MoneyType='{3}',Proportion= '{4}',UpdateTime='{5}',UpdateUser='{6}' WHERE ProjectID ='{7}' AND AccountId ='{8}' AND ID ='{9}'", dbcode, infoModel.Type, infoModel.ProjectType, infoModel.MoneyType, item.Proportion, userDate.ToString("yyyy-MM-dd HH:mm:ss"), userCode, infoModel.ProjectID, item.AccountId, item.ID);
}
result = service.OperateSqlNode(sql);
if (!result)
{
break;
}
}
if (result)
{
return Json("success");
}
else
{
return Json("error");
}
}