You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

253 lines
7.7 KiB
JavaScript

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

var answerHelper = new arrayHelper("ExamPointId");
$(function () {
//获取URL参数
var Id = $.getUrlParam("Id");
//下拉菜单
selectHelper.GetSelect({
url: "/Teacher/Value/GetFinancialTypeList",
Id: "#selectFinancialType",
value: "请选择"
});
selectHelper.GetSelect({
url: "/Teacher/Value/GetExamContentList",
Id: "#selectExamContent",
flag: false,
changeFun: function (value) {
GetExamPointList(value);
}
});
var Status = $.getUrlParam("Status");//进入状态
//当查看进入时,不可输入
if (Status == "View") {
$("#CustomerName,#IDNum,#selectFinancialType").addClass("b-gray").attr("disabled", "disabled");//禁用案例
//textarea不能禁用
$("#CustomerStory").addClass("b-gray").attr("readonly", true);
$("#ExamContentList").find("input[type='text']").addClass("b-gray").attr("disabled", "disabled");//禁用考点
$("#btnSave").css("display", "none"); //隐藏保存按钮
$("#btnCaseCancle").val("返回");
}
//获取案例
if (Id != null && Id != "" && Id != undefined) {
GetCase(Id);
}
//初次加载时根据考核内容Id获取考核点
GetExamPointList($("#selectExamContent").val());
//答案文本框绑定离开事件:离开时,把答案放入答案列表内
$("input[name='answer']").live("blur", function () {
var answer = new Object();
answer["Id"] = 0;
answer["ExamPointId"] = $(this).attr("tag");
answer["Answer"] = $.trim($(this).val());
//新增/修改答案
answerHelper.Add(answer);
});
//新增、修改
$("#btnSubmit").unbind("click").click(function () {
EditCase();
});
});
/**
* @name 根据考核内容Id获取考核点
*/
function GetExamPointList(ContentId) {
$.ajax({
url: "/Teacher/Value/GetExamPointList",
type: "POST",
async: false,
dataType: "json",
data:
{
ContentId: ContentId,
rId: Math.random()
},
success: function (data) {
//生成考核点列表
GenerationHtmlList(data);
}
});
}
function GenerationHtmlList(data) {
var StrHtml = "";
//先绑模块及考核点
var ModuleLength = data.ExamModuleList.length;
var PointLength = data.ExamPointList.length;
for (var i = 0; i < ModuleLength; i++) {
var ExamModuleName = data.ExamModuleList[i].ExamModuleName;
var Id = data.ExamModuleList[i].Id;
if (ExamModuleName != "" && ExamModuleName != null) {
StrHtml += " <tr> <td colspan=\"3\" align=\"left\"> " + ExamModuleName + " </td> </tr>";
}
if (ExamModuleName == "") {
StrHtml += " <tr> <td colspan=\"3\" align=\"left\" style='height:20px'></td> </tr>";
}
for (var j = 0; j < PointLength; j++) {
var ExamModuleId = data.ExamPointList[j].ExamModuleId;
var ExamPointId = data.ExamPointList[j].Id
if (ExamModuleId == Id) {
var ExamPointType = data.ExamPointList[j].ExamPointType;
var TypeName = "客观题";
var MaxLength = 50;
if (ExamPointType == 2) {
TypeName = "主观题";
MaxLength = 500;
}
//查找当前考核点答案
var Record = answerHelper.FindRecord(ExamPointId);
var Answer = "";
if (Record != undefined && Record.Answer != null) {
Answer = Record.Answer;
}
StrHtml += " <tr> <td>" + TypeName + "</td> <td> " + data.ExamPointList[j].ExamPointName + " </td> ";
StrHtml += " <td> <input class=\"ipt-text IsMaxLength IsMinLength\" msgreg=\"请输入0到" + MaxLength + "的字符\" minlength=\"0\" maxlength=\"" + MaxLength + "\" msgname=\"data.ExamPointList[j].ExamPointName\" tag=\"" + ExamPointId + "\" value=\"" + Answer + "\" name=\"answer\" type=\"text\"> </td> </tr> ";
}
}
}
$("#ExamContentList").empty().append(StrHtml);
var Status = $.getUrlParam("Status");//进入状态
//当查看进入时,不可输入
if (Status == "View") {
$("#ExamContentList").find("input[type='text']").addClass("b-gray").attr("disabled", "disabled");//禁用考点
}
}
/**
* @name 获取案例
*/
function GetCase(Id) {
$.ajax({
url: "/Teacher/Case/GetCase",
type: "POST",
async: false,
dataType: "json",
data:
{
Id: Id,
rId: Math.random()
},
success: function (data) {
//给界面上控件赋值
$("#hdCaseId").val(data.Id);
$("#hdUserId").val(data.UserId);
$("#CustomerName").val(data.CustomerName);
$("#IDNum").val(data.IDNum);
$("#selectFinancialType").val(data.FinancialTypeId);
$("#CustomerStory").val(data.CustomerStory);
//答案
$(data.ExamPointAnswer).each(function (index, dom) {
answerHelper.Add(dom);
});
}
});
}
/**
* @name 新增/修改案例
*/
function EditCase() {
////页面字段检测
if (!VerificationHelper.checkFrom("ContextDiv")) {
return;
}
var IDNum = $("#IDNum").val();
var CaseId = $("#hdCaseId").val();
var Flag = false;
//判断身份证号是否重复
$.ajax({
url: "/Teacher/Case/CheckRepeat",
type: "POST",
async: false,
dataType: "json",
data: { CaseId: CaseId, IDNum: IDNum },
success: function (data) {
Flag = true;
}
});
if (!Flag) {
return;
}
if (CaseId > 0) {
var flag1 = CheckCaseByUsed(CaseId);
if (flag1)
{
dialogHelper.Error({
content: "不能修改,该案例已被待发布的销售机会或实训考核引用"
});
return;
}
}
//此处参数必须跟VM一致
var obj = new Object();
obj["Id"] = $("#hdCaseId").val();
obj["CustomerName"] = $("#CustomerName").val();
obj["IDType"] = 1;//扩展字段默认固定暂为1身份证
obj["IDNum"] = $("#IDNum").val();
obj["FinancialTypeId"] = $("#selectFinancialType").val();
obj["CustomerStory"] = $("#CustomerStory").val();
obj["CaseSource"] = EnumList.CaseSource.Custom;
obj["UserId"] = $("#hdUserId").val();
obj["ExamPointAnswer"] = answerHelper.GetList();
$.ajax({
url: "/Teacher/Case/SaveCase",
type: "POST",
async: false,
dataType: "json",
data: JSON.stringify(obj),
contentType: "application/json",
success: function (data) {
if (data != null) {
//弹出成功提示
dialogHelper.Success({
content: "保存成功!",
success: function () {
btnCancel();
}
});
$("#hdCaseId").val(data.Id);
}
}
});
}
//取消返回到列表
function btnCancel() {
location.href = "/Teacher/Case/Index";
}
//检查案列是否被用在未发布的销售机会/实训中,编辑和删除前需要判断
function CheckCaseByUsed(Id) {
var Flag = false;
$.ajax({
url: "/Teacher/Case/CheckCaseByUsed",
type: "POST",
async: false,
dataType: "json",
data:
{
caseId: Id,
},
success: function (data) {
//刷新当前页
Flag = data
}
});
return Flag;
}