Browse Source

[fix]销售管理:

销售订单
修复销售订单业务主管审核页面计算模块不能正常回显
修改销售订单业务主管审核页面多个字段能修改问题
添加销售订单业务主管审核页面关联table表格缺少的字段
修改销售订单业务主管审核页面关联table中的字段为不可编辑状态
去掉添加 添加物料按钮
去掉销售订单业务主管审核页面的table的删除按钮
dev
liuxiaoxu 5 months ago
parent
commit
bff7580bab
  1. 173
      ruoyi-admin/src/main/resources/templates/system/salesOrder/taskYwzgVerify.html

173
ruoyi-admin/src/main/resources/templates/system/salesOrder/taskYwzgVerify.html

@ -261,31 +261,31 @@
<input class="col-sm-4" name="materialSum" <input class="col-sm-4" name="materialSum"
th:field="*{materialSum}" id="enterprise_edit" type="number" readonly /> th:field="*{materialSum}" id="enterprise_edit" type="number" readonly />
<label class=" col-sm-2">数量合计:</label> <label class=" col-sm-2">数量合计:</label>
<input class="col-sm-4" name="enterpriseSum" th:field="*{enterpriseSum}" id="enterpriseSum_edit" type="number" readonly /> <input class="col-sm-4" name="enterpriseSum" th:field="*{enterpriseSum}" type="number" readonly />
</div> </div>
<div class="col-xs-12 form-row"> <div class="col-xs-12 form-row">
<label class="col-sm-2"> 不含税单价:</label> <label class="col-sm-2"> 不含税单价:</label>
<input placeholder="RMB" class="col-sm-4" name="noRmbPrice" th:field="*{noRmbPrice}" id="noRmb_edit" type="number" readonly /> <input placeholder="RMB" class="col-sm-4" name="noRmbPrice" th:field="*{noRmbPrice}" type="number" readonly />
<label class="col-sm-2"> 不含税总价:</label> <label class="col-sm-2"> 不含税总价:</label>
<input placeholder="RMB" class="col-sm-4" name="noRmbSum" th:field="*{noRmbSum}" id="noRmbSum_edit" type="number" readonly/> <input placeholder="RMB" class="col-sm-4" name="noRmbSum" th:field="*{noRmbSum}" type="number" readonly/>
</div> </div>
<div class="col-xs-12 form-row"> <div class="col-xs-12 form-row">
<label class="col-sm-2"> 含税单价:</label> <label class="col-sm-2"> 含税单价:</label>
<input placeholder="RMB" class="col-sm-4" name="rmbPrice" th:field="*{rmbPrice}" id="rmb_edit" type="number" readonly /> <input placeholder="RMB" class="col-sm-4" name="rmbPrice" th:field="*{rmbPrice}" type="number" readonly />
<label class="col-sm-2"> 含税总价:</label> <label class="col-sm-2"> 含税总价:</label>
<input placeholder="RMB" class="col-sm-4" name="rmbTaxSum" th:field="*{rmbTaxSum}" id="rmbTax_edit" type="number" readonly /> <input placeholder="RMB" class="col-sm-4" name="rmbTaxSum" th:field="*{rmbTaxSum}" type="number" readonly />
</div> </div>
<div class="col-xs-12"> <div class="col-xs-12">
<label class="col-sm-2">不含税单价:</label> <label class="col-sm-2">不含税单价:</label>
<input placeholder="美元" class="col-sm-4" name="noUsdPrice" th:field="*{noUsdPrice}" id="noUsd_edit" type="number" readonly /> <input placeholder="美元" class="col-sm-4" name="noUsdPrice" th:field="*{noUsdPrice}" type="number" readonly />
<label class="col-sm-2">不含税总价:</label> <label class="col-sm-2">不含税总价:</label>
<input placeholder="美元" class="col-sm-4" name="noUsdSum" th:field="*{noUsdSum}" id="noUsdSum_edit" type="number" readonly /> <input placeholder="美元" class="col-sm-4" name="noUsdSum" th:field="*{noUsdSum}" type="number" readonly />
</div> </div>
<div class="col-xs-12 form-row"> <div class="col-xs-12 form-row">
<label class="col-sm-2">含税单价:</label> <label class="col-sm-2">含税单价:</label>
<input placeholder="美元" class="col-sm-4" name="usdPrice" th:field="*{usdPrice}" id="usd_edit" type="number" readonly /> <input placeholder="美元" class="col-sm-4" name="usdPrice" th:field="*{usdPrice}" type="number" readonly />
<label class="col-sm-2">含税总价:</label> <label class="col-sm-2">含税总价:</label>
<input placeholder="美元" class="col-sm-4" name="usdTaxSum" th:field="*{usdTaxSum}" id="usdSum_edit" type="number" readonly /> <input placeholder="美元" class="col-sm-4" name="usdTaxSum" th:field="*{usdTaxSum}" type="number" readonly />
</div> </div>
</div> </div>
<div class="container"> <div class="container">
@ -293,11 +293,6 @@
</div> </div>
</form> </form>
<div class="other-container"> <div class="other-container">
<div class="form-row">
<div class="btn-group-sm" id="toolbars" role="group">
<span>选择报价信息</span>
</div>
</div>
<div class="row"> <div class="row">
<div class="col-sm-12 select-table table-striped"> <div class="col-sm-12 select-table table-striped">
<table id="bootstrap-sub-table-editOrder2"></table> <table id="bootstrap-sub-table-editOrder2"></table>
@ -331,113 +326,48 @@
columns: [ columns: [
{checkbox: true}, {checkbox: true},
{field: 'index',align: 'center', title: "序号", {field: 'index',align: 'center', title: "序号",
formatter: function (value, row, index) { formatter: function (value, row, index,column) {
var columnIndex = $.common.sprintf("<input type='hidden' name='index' value='%s'>", $.table.serialNumber(index)); return $.table.serialNumber(index) - 1;
return columnIndex + $.table.serialNumber(index);
} }
}, },
{title: '物料索引id',field: 'materialId',align: 'center',visible: false}, {title: '物料索引id',field: 'materialId',align: 'center',visible: false},
{title: '料号',field: 'materialCode',align: 'center'}, {title: '料号',field: 'materialCode',align: 'center'},
{title: '物料名称',field: 'materialName',align: 'center'}, {title: '物料名称',field: 'materialName',align: 'center'},
{title: '图片',field: 'photoUrl', {title: '图片',field: 'photoUrl',formatter: function(value, row, index) {return $.table.imageView(value);} },
formatter: function(value, row, index) { {title: '物料类型',field: 'materialType',align: 'center',formatter: function(value, row, index) {return $.table.selectCategoryLabel(materialTypeDatas, value);}},
return $.table.imageView(value);
}
},
{title: '物料类型',field: 'materialType',align: 'center',
formatter: function(value, row, index) {
return $.table.selectCategoryLabel(materialTypeDatas, value);
}
},
{ title: '描述',field: 'describe',align: 'center'}, { title: '描述',field: 'describe',align: 'center'},
{title: '品牌',field: 'brand',align: 'center'}, {title: '品牌',field: 'brand',align: 'center'},
{ title: '单位',field: 'unit',align: 'center', { title: '单位',field: 'unit',align: 'center', formatter: function(value, row, index) {return $.table.selectDictLabel(sysUnitClassDatas, value);}},
formatter: function(value, row, index) { {title: '半成品类型',field: 'processMethod',align: 'center',formatter: function(value, row, index) {return $.table.selectDictLabel(processMethodDatas, value);}},
return $.table.selectDictLabel(sysUnitClassDatas, value); { title: '对外售价',field: 'materialSole'},
} {title: '国内税率',field: 'countTax',align: 'center'},
}, { title: '美元汇率',field: 'usdTax', align: 'center'},
{title: '半成品类型',field: 'processMethod',align: 'center',
formatter: function(value, row, index) {
return $.table.selectDictLabel(processMethodDatas, value);
}
},
{ title: '对外售价',field: 'materialSole',editable: false},
{title: '国内税率',field: 'countTax',align: 'center',editable: false},
{ title: '美元汇率',field: 'usdTax', align: 'center',editable: false},
{title: '物料的数量',field: 'materialNum',align: 'center',editable: false},
{ title: '物料的不含税单价(RMB)', { title: '物料的不含税单价(RMB)',
field: 'materialNoRmb', field: 'materialNoRmb',
align: 'center', align: 'center'
editable: {
type: 'text', mode: 'inline', // 同样设定为行内编辑模式
enabled: function() {return false; },
options: {placeholder: '请输入USD单价...', maxlength: 10}
}
}, },
{ title: '物料的含税单价(RMB)',field: 'materialRmb',align: 'center',},
{field: 'materialNum',align: 'center',title: '物料的数量',
},
{title: '物料的不含税总价(RMB)',field: 'materialNoRmbSum',align: 'center',},
{ title: '物料的含税总价(RMB)',field: 'materialRmbSum',align: 'center',},
{title: '物料的不含税单价(美元)', {title: '物料的不含税单价(美元)',
field: 'materialNoUsd', field: 'materialNoUsd',
align: 'center', align: 'center',
editable: {
type: 'text', mode: 'inline', // 同样设定为行内编辑模式
enabled: function() {return false; },
options: {placeholder: '请输入USD单价...', maxlength: 10}
}
}, },
{ title: '物料的含税单价(美元)',field: 'materialUsd',align: 'center'}, { title: '物料的含税单价(美元)',field: 'materialUsd',align: 'center',},
{ title: '物料的含税总价(美元)',field: 'materialUsdSum',align: 'center'}, { title: '物料的含税总价(美元)',field: 'materialUsdSum', align: 'center',},
{ title: '物料的不含税总价(美元)',field: 'materialNoUsdSum',align: 'center'}, { title: '物料的不含税总价(美元)',field: 'materialNoUsdSum',align: 'center',},
{ title: '物料的含税总价(RMB)',field: 'materialNoRmbSum', align: 'center'}, { title: '计划交付时间',field: 'deliveryTime',align: 'center' },
{ title: '物料的不含税总价(RMB)',field: 'materialRmbSum',align: 'center'}, {title: '质保天数',align: 'center',field: 'expiryDay',
{ title: '录入人',field: 'createBy',align: 'center',visible: false}, },
{ title: '录入时间',field: 'createTime',align: 'center',visible: false}, {field: 'remark',align: 'center',title: '备注',},
{ title: '更新人',field: 'updateBy',align: 'center',visible: false}, {field: 'auditStatus',align: 'center',title: '审核状态',visible: false,
{ title: '上次更新时间',field: 'updateTime',align: 'center',visible: false},
{ title: '备注',field: 'remark',align: 'center', visible: false },
{ title: '审核状态',field: 'auditStatus',align: 'center',visible: false,
formatter: function(value, row, index) { formatter: function(value, row, index) {
return $.table.selectDictLabel(auditStatusDatas, value); return $.table.selectDictLabel(auditStatusDatas, value);
} }
}, },
{title: '操作', align: 'center',
formatter: function (value, row, index) {
var actions = [];
actions.push('<a class="btn btn-danger btn-xs" href="javascript:void(0)" onclick="removeRow(\'' + row.index + '\')"><i class="fa fa-remove"></i>删除</a> ');
return actions.join('');
}
}
], ],
onEditableSave:function(field, row, oldValue, $el){
var commonCurrency1 = $("#commonCurrency_edit option:selected").val();
var rmbRateInput = parseFloat($("#rmbTax_edit").val()) || 0;
var rmbRate = rmbRateInput / 100;
rmbRate = parseFloat(rmbRate.toFixed(2)); // 确保rmbRate转换为两位小数的浮点数
var usdRate = parseFloat($("#usdTax_edit").val()) || 0;
var testMaterialNum = parseFloat(row.materialNum) || 0;
if (commonCurrency1 === '1') {
// RMB为基准货币
row.materialRmb = (parseFloat(row.materialNoRmb) * (1 + rmbRate)).toFixed(2);
row.materialRmbSum = (parseFloat(row.materialRmb) * testMaterialNum).toFixed(2);
row.materialNoRmbSum = (parseFloat(row.materialNoRmb) * testMaterialNum).toFixed(2);
row.materialNoUsd = (parseFloat(row.materialNoRmb) / usdRate).toFixed(2);
row.materialUsd = row.materialNoUsd; // 保持一致,除非有特别的计算逻辑
row.materialUsdSum = (parseFloat(row.materialUsd) * testMaterialNum).toFixed(2);
row.materialNoUsdSum = (parseFloat(row.materialNoUsd) * testMaterialNum).toFixed(2);
} else if (commonCurrency1 === '2') {
// USD为基准货币
row.materialUsd = row.materialNoUsd
row.materialUsdSum = (parseFloat(row.materialUsd) * testMaterialNum).toFixed(2);
row.materialNoUsdSum = (parseFloat(row.materialNoUsd) * testMaterialNum).toFixed(2);
row.materialNoRmb = (parseFloat(row.materialNoUsd) * usdRate).toFixed(2);
row.materialRmb = (parseFloat(row.materialNoRmb) * (1 + rmbRate)).toFixed(2);
row.materialNoRmbSum = (parseFloat(row.materialNoRmb) * testMaterialNum).toFixed(2);
row.materialRmbSum = (parseFloat(row.materialRmb) * testMaterialNum).toFixed(2);
}
// 确保getTotalAmount函数存在且正确引用
if (typeof getTotalAmount === 'function') {
getTotalAmount();
}
},
}; };
$.table.init(options); $.table.init(options);
$.ajax({ $.ajax({
@ -628,44 +558,7 @@
minView: "month", minView: "month",
autoclose: true autoclose: true
}); });
//计算
function getTotalAmount(){
// $("#addFinishbomTable").bootstrapTable('refresh');
let getData = $("#bootstrap-sub-table-editOrder2").bootstrapTable('getData',true);
let enterprise = 0;let enterpriseSum = 0; let noRmb = 0;
let rmb = 0;let noRmbSum =0;let rmbSum = 0;
let noUsd = 0;let usd = 0;let noUsdSum =0; let usdSum = 0;
enterprise = getData.length; // 直接获取数据长度
enterpriseSum = getData.reduce((sum, item) => sum + (parseInt(item.materialNum) || 0), 0);
for(var i=0;i<getData.length;i++){
noRmb += parseFloat(getData[i].materialNoRmb) || 0;
rmb += parseFloat(getData[i].materialRmb) || 0;
noRmbSum += parseFloat(getData[i].materialNoRmbSum) || 0;
rmbSum += parseFloat(getData[i].materialRmbSum) || 0;
noUsd += parseFloat(getData[i].materialNoUsd) || 0;
usd += parseFloat(getData[i].materialUsd) || 0;
noUsdSum += parseFloat(getData[i].materialNoUsdSum) || 0;
usdSum += parseFloat(getData[i].materialUsdSum) || 0;
}
noRmb = noRmb.toFixed(2);
rmb = rmb.toFixed(2);
noRmbSum = noRmbSum.toFixed(2);
rmbSum = rmbSum.toFixed(2);
noUsd = noUsd.toFixed(2);
usd = usd.toFixed(2);
noUsdSum = noUsdSum.toFixed(2);
usdSum = usdSum.toFixed(2);
$("input[name='materialSum']").val(enterprise);
$("input[name='enterpriseSum']").val(enterpriseSum);
$("input[name='noRmbPrice']").val(noRmb);
$("input[name='noRmbSum']").val(noRmbSum);
$("input[name='rmbPrice']").val(rmb);
$("input[name='rmbTaxSum']").val(rmbSum);
$("input[name='noUsdPrice']").val(noUsd);
$("input[name='noUsdSum']").val(noUsdSum);
$("input[name='usdPrice']").val(usd);
$("input[name='usdTaxSum']").val(usdSum);
}
function submitHandler() { function submitHandler() {
if ($.validate.form()) { if ($.validate.form()) {
if ($('textarea[name="comment"]').val()) { if ($('textarea[name="comment"]').val()) {

Loading…
Cancel
Save