import * as $$ from '../../../../utils/utility';
|
|
/**
|
* 验证并填充案件数据,确保所有必要参数都存在
|
* @param {Object} data - 原始案件数据
|
* @returns {Object} - 填充后的案件数据
|
*/
|
export const validateAndFillCaseData = (data) => {
|
// 创建一个新对象,避免修改原始数据
|
const result = { ...data };
|
|
// 检查案件ID,这是最重要的
|
if (!result.id) {
|
// 尝试从sessionStorage获取
|
const newCaseId = sessionStorage.getItem('newCaseId');
|
if (newCaseId) {
|
result.id = newCaseId;
|
console.log('从sessionStorage获取案件ID:', newCaseId);
|
} else {
|
// 如果没有,生成一个本地ID
|
result.id = $$.getBusinessId();
|
console.warn('未找到案件ID,使用本地生成的ID:', result.id);
|
}
|
}
|
|
// 设置基本信息默认值
|
const defaultValues = {
|
caseLevel: result.caseLevel || "3", // 默认三级
|
peopleNum: result.peopleNum || 1, // 默认1人
|
occurTime: result.occurTime || $$.timeFormat(new Date()), // 当前时间
|
majorStatus: typeof result.majorStatus === 'number' ? result.majorStatus : 0, // 默认非重大案件
|
amount: result.amount || 0, // 默认金额0
|
caseTypeFirst: result.caseTypeFirst || "",
|
caseTypeFirstName: result.caseTypeFirstName || "",
|
caseType: result.caseType || "",
|
caseTypeName: result.caseTypeName || "",
|
queArea: result.queArea || "",
|
queAreaName: result.queAreaName || "",
|
queRoad: result.queRoad || "",
|
queRoadName: result.queRoadName || "",
|
caseDes: result.caseDes || "",
|
caseClaim: result.caseClaim || "",
|
addr: result.addr || "",
|
fileInfoList: result.fileInfoList || [],
|
personList: result.personList || [],
|
agentList: result.agentList || [],
|
isSelfAccept: typeof result.isSelfAccept === 'number' ? result.isSelfAccept : 0,
|
isDraft: typeof result.isDraft === 'number' ? result.isDraft : 0,
|
operateType: typeof result.operateType === 'number' ? result.operateType : 0,
|
canal: result.canal || "22_00001-3", // 默认自行排查
|
canalName: result.canalName || "自行排查" // 默认自行排查
|
};
|
|
// 将默认值应用到结果对象上
|
Object.keys(defaultValues).forEach(key => {
|
result[key] = result[key] || defaultValues[key];
|
});
|
|
// 检查personList中的每个人是否有id
|
if (result.personList && result.personList.length > 0) {
|
result.personList = result.personList.map(person => {
|
if (!person.id) {
|
return {
|
...person,
|
id: $$.getBusinessId()
|
};
|
}
|
return person;
|
});
|
}
|
|
// 如果personList为空,添加一个默认的申请方当事人
|
if (!result.personList || result.personList.length === 0) {
|
result.personList = [{
|
extreme: 0,
|
nation: "09_00005-1",
|
nationName: "汉族",
|
sex: "09_00003-1",
|
sexName: "男",
|
trueName: "默认申请人",
|
perType: "15_020008-1",
|
perClass: "09_01001-1",
|
perTypeName: "申请方当事人",
|
perClassName: "自然人",
|
id: $$.getBusinessId()
|
}];
|
}
|
|
console.log('验证并填充后的案件数据:', result);
|
return result;
|
};
|
|
/**
|
* 案件登记提交
|
* @param {Object} submitData - 提交的表单数据
|
* @returns {Promise} - 请求的Promise对象
|
*/
|
export const submitCaseRegister = (submitData) => {
|
return $$.ax.request({
|
url: 'caseInfo/caseRegister',
|
type: 'post',
|
data: submitData,
|
service: 'mediate'
|
});
|
};
|
|
/**
|
* 自行受理案件
|
* @param {Object} data - 案件数据
|
* @returns {Promise} - 请求的Promise对象
|
*/
|
export const selfAcceptCase = (data) => {
|
// 验证并填充案件数据
|
const validatedData = validateAndFillCaseData(data);
|
|
// 生产环境调用真实API
|
return submitCaseRegister({
|
...validatedData,
|
isSelfAccept: 1, // 表示自行受理
|
isDraft: 0, // 非草稿状态
|
operateType: 0, // 操作类型
|
});
|
};
|
|
/**
|
* 提交正式案件
|
* @param {Object} data - 案件数据
|
* @returns {Promise} - 请求的Promise对象
|
*/
|
export const submitFormalCase = (data) => {
|
// 验证并填充案件数据
|
const validatedData = validateAndFillCaseData(data);
|
|
// 生产环境调用真实API
|
return submitCaseRegister({
|
...validatedData,
|
isSelfAccept: 0, // 表示提交
|
isDraft: 0, // 非草稿状态
|
operateType: 0, // 操作类型
|
});
|
};
|