This commit is contained in:
xd 2024-06-27 11:47:06 +08:00
parent acbf9e7876
commit 061906589b
2 changed files with 88 additions and 53 deletions

View File

@ -663,7 +663,11 @@ public class RedBookController extends BaseController
return toAjax(redBookService.deleteQuotsByQuotId(quotId));
}
/**
* 导出所选的红本产品明细数据
* @param response
* @param selectedResultData
*/
@PostMapping("/exportProduct")
public void exportMaterial(HttpServletResponse response, @RequestParam("selectedResultData") String selectedResultData)
{

View File

@ -263,11 +263,6 @@
color: red;
}
/* 表格行颜色CSS样式 */
.row-background-color {
background-color: red; /* 你想要的颜色 */
}
</style>
<script>
import {toDecimal, productList,versionList,productRemarkList,productXinghList,judgeparent,productZlList,productYsxhListCheck,productYsxhList,productJmListCheck,productJmList,searchData,handleSearchData,saveQuot, madeQuot, madeXjQuot, updateSelectedResultData} from "@/api/redBook/redBook";
@ -329,6 +324,7 @@
searchResultCurrentPage: 1,
searchResultPageSize: 10,
searchResultData: [],
errIndex: [],///
/**==============已选择结果========================= */
selectedResultLoading: false,
@ -736,58 +732,66 @@
},
//
handleSaveClick() {
if(!this.isColumn1ValuesEqual){
this.$modal.msgError("存在与当前调价版本不一致的产品,请选择调价日期批量刷新");
return;
}
let flag = this.checkSl();
if(flag){
if(!this.isColumn1ValuesEqual){
this.$modal.msgError("存在与当前调价版本不一致的产品,请选择调价日期批量刷新");
return;
}
const allPrice = this.selectedResultData.reduce((sum, row) => sum + parseFloat(row.allPrice), 0);
this.form.totalPrice = toDecimal(allPrice);
this.form.selectedResultData = this.selectedResultData;
saveQuot(this.form).then(response => {
this.$modal.msgSuccess("保存报价单成功,单号:"+response.data.quotCode);
})
const allPrice = this.selectedResultData.reduce((sum, row) => sum + parseFloat(row.allPrice), 0);
this.form.totalPrice = toDecimal(allPrice);
this.form.selectedResultData = this.selectedResultData;
saveQuot(this.form).then(response => {
this.$modal.msgSuccess("保存报价单成功,单号:"+response.data.quotCode);
})
}
},
//
handleMadeQuotClick() {
if(!this.isColumn1ValuesEqual){
this.$modal.msgError("存在与当前调价版本不一致的产品,请选择调价日期批量刷新");
return;
}
this.form.selectedResultData = this.selectedResultData;
madeQuot(this.form).then(response => {
this.$modal.msgSuccess("生成报价单成功");
//
const content = response;
const blob = new Blob([content]);
const fileName = "RB_BJD_"+this.getTodayCourse()+".xls";
if ("download" in document.createElement("a")) {
// IE
const elink = document.createElement("a");
elink.download = fileName;
elink.style.display = "none";
elink.href = URL.createObjectURL(blob);
document.body.appendChild(elink);
elink.click();
URL.revokeObjectURL(elink.href); // URL
document.body.removeChild(elink);
}else {
// IE10+
navigator.msSaveBlob(blob, fileName);
let flag = this.checkSl();
if(flag){
if(!this.isColumn1ValuesEqual){
this.$modal.msgError("存在与当前调价版本不一致的产品,请选择调价日期批量刷新");
return;
}
});
this.form.selectedResultData = this.selectedResultData;
madeQuot(this.form).then(response => {
this.$modal.msgSuccess("生成报价单成功");
//
const content = response;
const blob = new Blob([content]);
const fileName = "RB_BJD_"+this.getTodayCourse()+".xls";
if ("download" in document.createElement("a")) {
// IE
const elink = document.createElement("a");
elink.download = fileName;
elink.style.display = "none";
elink.href = URL.createObjectURL(blob);
document.body.appendChild(elink);
elink.click();
URL.revokeObjectURL(elink.href); // URL
document.body.removeChild(elink);
}else {
// IE10+
navigator.msSaveBlob(blob, fileName);
}
});
}
},
//
handleMadeXjQuotClick() {
this.madeQuotDis = true;
this.form.selectedResultData = this.selectedResultData;
madeXjQuot(this.form).then(response => {
this.$modal.msgSuccess("生成询价单成功,单号:"+response.data.quotCode);
this.madeQuotDis = false;
});
let flag = this.checkSl();
if(flag){
this.madeQuotDis = true;
this.form.selectedResultData = this.selectedResultData;
madeXjQuot(this.form).then(response => {
this.$modal.msgSuccess("生成询价单成功,单号:"+response.data.quotCode);
this.madeQuotDis = false;
});
}
},
/** 产品数据导入按钮操作 */
@ -830,10 +834,13 @@
//
handleExport(){
const fileName = "RB_BJD_"+this.getTodayCourse();
this.download('redBook/redBook/exportProduct', {
selectedResultData: JSON.stringify(this.selectedResultData)
}, fileName +".xlsx")
let flag = this.checkSl();
if(flag){
const fileName = "RB_BJD_"+this.getTodayCourse();
this.download('redBook/redBook/exportProduct', {
selectedResultData: JSON.stringify(this.selectedResultData)
}, fileName +".xlsx")
}
},
//
@ -895,6 +902,30 @@
},
p(s) {
return s < 10 ? '0' + s : s;
},
// -
checkSl(){
let flag = true;
this.errIndex = [];
const label = /^(\+)?\d+(\.\d+)?$/;
this.selectedResultData.forEach((row, index) => {
let sl = row.count;
sl = sl.trim();
let reg = new RegExp(label);
if(sl){
if (!reg.test(sl)) {
this.errIndex.push(index+1);
}
}
});
if(this.errIndex.length!=0){
flag = false;
this.$modal.msgError("第"+this.errIndex.join(",")+"行报价产品明细【数量调整】格式错误");
}
return flag;
}
},