前端传ison数组 后端接收转换

前端 传来的json数组字符串 后台如何转换  


前端  js

//保存
function save() {
//获取答案
var planId = $("#planId").val();
var formId = '${formId}';
var assessment = [];
$(".questionList").each(function() {
var questionId = $(this).find("input[name=questionId]").val();
var answer = $(this).find("[name='answer']").val();
assessment.push({
questionId : questionId,
formId : formId,
answer : answer,
planId : planId
});
});
$.ajax({
async : false,
type : 'post',
url : '${path}/selfAssessment/save',
data : {
'assessment' : JSON.stringify(assessment)
},
dataType : 'json',
success : function(data) {
if (data.success == true) {
$("#save").modal("show");


}
}
});
}






后端

@RequestMapping(value = "/save")
@ResponseBody
public AjaxJson save(String assessment) {
AjaxJson json = new AjaxJson();
if(StringUtils.isBlank(assessment)){
json.setSuccess(false);
return json;
}
TUser tUser = userService.getCurrentLoginUser();
JSONArray jsonArray = JSONArray.parseArray(assessment);
// 批量保存
List<TSelfAssessment> list = new ArrayList<TSelfAssessment>();
//批量更新
List<TSelfAssessment> edit_list = new ArrayList<TSelfAssessment>();
for (int i = 0; i < jsonArray.size(); i++) {
JSONObject jsonJ = jsonArray.getJSONObject(i);
Integer questionId = jsonJ.getInteger("questionId");
Integer planId = jsonJ.getInteger("planId");
Integer formId =jsonJ.getInteger("formId");
String answer = jsonJ.getString("answer");
//检查数据库是否已存在数据、
TSelfAssessment tSelfAssessment=selfAssessmentService.getselfAssessmen(planId,questionId,tUser.getUserId());
logger.info(tSelfAssessment);
if(tSelfAssessment==null){
tSelfAssessment = new TSelfAssessment();
TEvaluationPlan evaluationPlan = new TEvaluationPlan();
evaluationPlan.setId(planId);
TEvaluationForm evaluationForm=new TEvaluationForm();
evaluationForm.setId(formId);
TQuestionSubjectiveItem questionSubjective =questionSubjectiveItemService.getOne(questionId);

tSelfAssessment.setAnswer(answer);
tSelfAssessment.setQuestiontitledesc(questionSubjective.getQuestionTitledesc());
tSelfAssessment.setQuestiontitledescEn(questionSubjective.getQuestionTitledesc_en());
tSelfAssessment.setQuestionSubjective(questionSubjective);
tSelfAssessment.setEvaluationForm(evaluationForm);
tSelfAssessment.setEvaluationPlan(evaluationPlan);
tSelfAssessment.setCreateUserId(tUser.getUserId());
tSelfAssessment.setParticipantcode(tUser.getUserId());
tSelfAssessment.setCreateDate(new Date());
tSelfAssessment.setSubmitSave(CICCPEConstants.SUBMIT_SAVE_0);


//要是找不到数据 就保存到数据库
              list.add(tSelfAssessment);
}else{
tSelfAssessment.setAnswer(answer);
tSelfAssessment.setUpdateDate(new Date());
tSelfAssessment.setUpdateUserId(tUser.getUserId());

edit_list.add(tSelfAssessment);
}
}
if(list.size() >0){
selfAssessmentService.saveOnly(list);
}else{
selfAssessmentService.batchUpdate(edit_list);
}


return json;


}





  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值