diff --git a/js/car_application_audit/car_audit_detail.js b/js/car_application_audit/car_audit_detail.js
index f43d3be..f30b529 100644
--- a/js/car_application_audit/car_audit_detail.js
+++ b/js/car_application_audit/car_audit_detail.js
@@ -512,7 +512,7 @@ function setOperRecordInfo(list, obj) {
let imgUrl = '../../../images/user_head_icon.png';
let imgUrl2 = '../../../images/time_icon.png';
$.each(list, function (index, item) {
- const creator = item.userName;
+ const creator = item.auditUser;
// 1. 容错处理(统一处理空值、类型转换)
const remark = setNullValue(item.auditReason); // 已有空值处理,保留
const auditType = item.auditType + ''; // 确保为字符串(匹配原条件的字符串判断)
diff --git a/js/car_application_audit/car_audit_list.js b/js/car_application_audit/car_audit_list.js
index ab8e557..d3e2983 100644
--- a/js/car_application_audit/car_audit_list.js
+++ b/js/car_application_audit/car_audit_list.js
@@ -201,7 +201,7 @@ function initTable() {
let html = "";
let status = d.status;
html += "详情 ";
- if(status == -1){
+ if(status == -1 || status == 2){
html += "
+function handleFileType(index, file, result) {
+ let html = '', img = '';
+ if (file.ext) file.ext = file.ext.toLowerCase();
+ if (file.name) file.name = file.name.toLowerCase();
+ if (file.ext === 'doc' || file.ext === 'docx') {
+ img = '../../../images/docx.png';
+ } else if (file.ext === 'xls' || file.ext === 'xlsx') {
+ img = '../../../images/xlsx.png';
+ } else if (file.ext === 'pdf') {
+ img = '../../../images/pdf.png';
+ } else {
+ return `

`;
+ }
+ html = `
${file.name}
`;
@@ -250,110 +273,122 @@ function handleFileType(index,file,result){
}
// ------------------- 删除附件 -------------------
-$(document).on("click",".file-iteme .handle",function(e){
+$(document).on("click", ".file-iteme .handle", function (e) {
e.stopPropagation();
- const $item=$(this).closest('.file-iteme');
+ const $item = $(this).closest('.file-iteme');
const uid = $item.attr('data-uid');
const fileId = $item.attr('data-file-id');
- if(fileId && !delIdArr.includes(fileId)) delIdArr.push(fileId);
- fileList = fileList.filter(f=>f.uid!==uid);
+ if (fileId && !delIdArr.includes(fileId)) delIdArr.push(fileId);
+ fileList = fileList.filter(f => f.uid !== uid);
$item.remove();
});
// ------------------- 获取编辑后的实际值 -------------------
-function getEditedActualValues(){
- let actualValues={carActualList:[],craneActualList:[]};
- $('#dispatch-car-table .actual-gls').each(function(){
- const id=$(this).data('id');
- const val=formatToTwoDecimals($(this).val());
- actualValues.carActualList.push({outDetailId:id,exeGls:val,inMoney:0});
+function getEditedActualValues() {
+ let actualValues = {carActualList: [], craneActualList: []};
+ $('#dispatch-car-table .actual-gls').each(function () {
+ const id = $(this).data('id');
+ const val = formatToTwoDecimals($(this).val());
+ actualValues.carActualList.push({outDetailId: id, exeGls: val, inMoney: 0});
});
- $('#dispatch-car-table2 tr:not(:first)').each(function(){
- const id=$(this).find('.actual-dc-money').data('id');
- if(!id) return;
- const day=$(this).find('.actual-dc-planDay').val()||0;
- const money=formatToTwoDecimals($(this).find('.actual-dc-money').val());
- actualValues.craneActualList.push({outDetailId:id,exeDay:day,inMoney:money});
+ $('#dispatch-car-table2 tr:not(:first)').each(function () {
+ const id = $(this).find('.actual-dc-money').data('id');
+ if (!id) return;
+ const day = $(this).find('.actual-dc-planDay').val() || 0;
+ const money = formatToTwoDecimals($(this).find('.actual-dc-money').val());
+ actualValues.craneActualList.push({outDetailId: id, exeDay: day, inMoney: money});
});
return actualValues;
}
// ------------------- 格式化两位小数 -------------------
-function formatToTwoDecimals(num){ return isNaN(Number(num))? '0.00': Number(num).toFixed(2); }
+function formatToTwoDecimals(num) {
+ return isNaN(Number(num)) ? '0.00' : Number(num).toFixed(2);
+}
// ------------------- 正则校验输入框 -------------------
-$(document).on('input','.actual-gls,.actual-money,.actual-dc-money',function(){
- this.value=this.value.replace(/[^0-9.]/g,'').replace(/\.{2,}/g,'.').replace(/^0+(?=\d)/,'');
- if(this.value.indexOf('.')!==-1){ const parts=this.value.split('.'); this.value=parts[0]+'.'+parts[1].substring(0,2);}
- const numValue=Number(this.value||0); if(numValue>100000) this.value=(100000).toFixed(2);
+$(document).on('input', '.actual-gls,.actual-money,.actual-dc-money', function () {
+ this.value = this.value.replace(/[^0-9.]/g, '').replace(/\.{2,}/g, '.').replace(/^0+(?=\d)/, '');
+ if (this.value.indexOf('.') !== -1) {
+ const parts = this.value.split('.');
+ this.value = parts[0] + '.' + parts[1].substring(0, 2);
+ }
+ const numValue = Number(this.value || 0);
+ if (numValue > 100000) this.value = (100000).toFixed(2);
+});
+$(document).on('blur', '.actual-gls,.actual-money,.actual-dc-money', function () {
+ this.value = formatToTwoDecimals(this.value);
});
-$(document).on('blur','.actual-gls,.actual-money,.actual-dc-money',function(){ this.value=formatToTwoDecimals(this.value); });
// ------------------- 提交 -------------------
-function submitApply(data){
- if(fileList.length===0) return layer.msg('请上传付款单',{icon:7});
- if(jjDataArr.length===0) return layer.msg('请选择需求计划',{icon:7});
- if(allDataList.length===0) return layer.msg('用车明细数据为空,无法提交',{icon:7});
+function submitApply(data) {
+ if (fileList.length === 0) return layer.msg('请上传付款单', {icon: 7});
+ if (jjDataArr.length === 0) return layer.msg('请选择需求计划', {icon: 7});
+ if (allDataList.length === 0) return layer.msg('用车明细数据为空,无法提交', {icon: 7});
- data.field.supId=objParam.supId;
- data.field.id=objParam.id;
- data.field.delFileId=delIdArr.join(',');
+ data.field.supId = objParam.supId;
+ data.field.id = objParam.id;
+ data.field.delFileId = delIdArr.join(',');
- let planList=[],detailsList=[];
- jjDataArr.forEach(item=>{
+ let planList = [], detailsList = [];
+ jjDataArr.forEach(item => {
planList.push({
- id:item.id||'',
- planId:item.planId||item.id,
- supId:item.supId,
- money:item.money,
- type:item.type||'1',
- proId:item.proId||'',
- carNum:item.carNum||item.needNum||0
+ id: item.id || '',
+ planId: item.planId || item.id,
+ supId: item.supId,
+ money: item.money,
+ type: item.type || '1',
+ proId: item.proId || '',
+ carNum: item.carNum || item.needNum || 0
});
});
const actualValues = getEditedActualValues();
- allDataList.forEach(item=>{
- const carActual = actualValues.carActualList.find(v=>v.outDetailId==item.id);
- const craneActual = actualValues.craneActualList.find(v=>v.outDetailId==item.id);
+ allDataList.forEach(item => {
+ const carActual = actualValues.carActualList.find(v => v.outDetailId == item.id);
+ const craneActual = actualValues.craneActualList.find(v => v.outDetailId == item.id);
detailsList.push({
- id:item.id||'',
- planId:item.planId||'',
- type:item.type||'车辆',
- supId:item.supId||objParam.supId,
- proId:item.proId||'',
- money:item.cost||item.money||0,
- outId:item.outId||'',
- exeGls:carActual?.exeGls||item.exeGls||'',
- inMoney:carActual?.inMoney||craneActual?.inMoney||'',
- exeDay:craneActual?.exeDay||item.exeDay||'',
- outDetailId:item.outDetailId||'',
- modelId:item.modelId||'',
- ton:item.ton||0
+ id: item.id || '',
+ planId: item.planId || '',
+ type: item.type || '车辆',
+ supId: item.supId || objParam.supId,
+ proId: item.proId || '',
+ money: item.cost || item.money || 0,
+ outId: item.outId || '',
+ exeGls: carActual?.exeGls || item.exeGls || '',
+ inMoney: carActual?.inMoney || craneActual?.inMoney || '',
+ exeDay: craneActual?.exeDay || item.exeDay || '',
+ outDetailId: item.outDetailId || '',
+ modelId: item.modelId || '',
+ ton: item.ton || 0
});
});
- data.field.planList=planList;
- data.field.detailsList=detailsList;
+ data.field.planList = planList;
+ data.field.detailsList = detailsList;
let formData = new FormData();
- fileList.forEach(item=>{ if(!item.isExist && item.file) formData.append("file[]",item.file); });
- formData.append('params',JSON.stringify(data.field));
+ fileList.forEach(item => {
+ if (!item.isExist && item.file) formData.append("file[]", item.file);
+ });
+ formData.append('params', JSON.stringify(data.field));
- let loadingMsg = layer.msg('正在提交保存,请稍等...',{icon:16,shade:0.01,time:'0'});
- let url = dataUrl+'backstage/carBalance/updateBalanceData';
- ajaxRequestByUploadFile(url, formData, function(){
- $('.save,.cancel').addClass("layui-btn-disabled").attr("disabled",true);
- }, function(result){
+ let loadingMsg = layer.msg('正在提交保存,请稍等...', {icon: 16, shade: 0.01, time: '0'});
+ let url = dataUrl + 'backstage/carBalance/updateBalanceData';
+ ajaxRequestByUploadFile(url, formData, function () {
+ $('.save,.cancel').addClass("layui-btn-disabled").attr("disabled", true);
+ }, function (result) {
layer.close(loadingMsg);
- $('.save,.cancel').removeClass("layui-btn-disabled").attr("disabled",false);
- if(result.code===200){ parent.layer.msg(result.msg,{icon:1}); closePage(1);}
- else layer.msg(result.msg,{icon:2});
- }, function(xhr,status,error){
+ $('.save,.cancel').removeClass("layui-btn-disabled").attr("disabled", false);
+ if (result.code === 200) {
+ parent.layer.msg(result.msg, {icon: 1});
+ closePage(1);
+ } else layer.msg(result.msg, {icon: 2});
+ }, function (xhr, status, error) {
layer.close(loadingMsg);
- layer.msg('服务异常,请稍后重试',{icon:16,scrollbar:false,time:2000});
- $('.save,.cancel').removeClass("layui-btn-disabled").attr("disabled",false);
- errorFn(xhr,status,error);
+ layer.msg('服务异常,请稍后重试', {icon: 16, scrollbar: false, time: 2000});
+ $('.save,.cancel').removeClass("layui-btn-disabled").attr("disabled", false);
+ errorFn(xhr, status, error);
}, null);
}
@@ -362,8 +397,8 @@ function saveData2() {
}
// ------------------- 关闭页面 -------------------
-function closePage(type){
+function closePage(type) {
let index = parent.layer.getFrameIndex(window.name);
- if(type==1) window.parent.reloadData();
+ if (type == 1) window.parent.reloadData();
parent.layer.close(index);
}