|
|
@@ -463,7 +463,7 @@
|
|
|
v-model="row.curCode"
|
|
|
placeholder="币别"
|
|
|
label="code"
|
|
|
- :url="'/blade-los/bcurrency/obtainRate?deptId=' + deptId + '&date=' + form.purchaseDate + '&type=1'"
|
|
|
+ :url="'/blade-los/bcurrency/obtainRate?deptId=' + deptId + '&date=' + form.effectiveDate + '&type=1'"
|
|
|
:filterable="true"
|
|
|
@selectChange="rowDicChange('curCodeD', $event, row)"
|
|
|
></dic-select>
|
|
|
@@ -698,7 +698,7 @@
|
|
|
v-model="row.curCode"
|
|
|
placeholder="币别"
|
|
|
label="code"
|
|
|
- :url="'/blade-los/bcurrency/obtainRate?deptId=' + deptId + '&date=' + form.purchaseDate + '&type=1'"
|
|
|
+ :url="'/blade-los/bcurrency/obtainRate?deptId=' + deptId + '&date=' + form.effectiveDate + '&type=1'"
|
|
|
:filterable="true"
|
|
|
@selectChange="rowDicChange('curCodeC', $event, row)"
|
|
|
></dic-select>
|
|
|
@@ -778,16 +778,24 @@
|
|
|
</el-tab-pane>
|
|
|
</el-tabs>
|
|
|
</div>
|
|
|
- <business-reports :id="form.id" :itemIds="itemIds" ref="print" businessValue="MYDL" :type="true"></business-reports>
|
|
|
+ <reports :id="form.id" :assemblyForm="form" businessValue="XGFY" ref="report"></reports>
|
|
|
+ <business-reports
|
|
|
+ :id="form.id"
|
|
|
+ :itemIds="itemCIds"
|
|
|
+ ref="printD"
|
|
|
+ businessValue="XGFY"
|
|
|
+ classifyCode="费用"
|
|
|
+ groupCode="应收"
|
|
|
+ :selecList="selectionfeedList"
|
|
|
+ ></business-reports>
|
|
|
<business-reports
|
|
|
:id="form.id"
|
|
|
:itemIds="itemCIds"
|
|
|
ref="printC"
|
|
|
- businessValue="OW-N"
|
|
|
+ businessValue="XGFY"
|
|
|
classifyCode="费用"
|
|
|
groupCode="应付"
|
|
|
:selecList="selectionfeecList"
|
|
|
- :type="true"
|
|
|
></business-reports>
|
|
|
<reports :id="form.id" :assemblyForm="form" businessValue="MYDL" ref="report"></reports>
|
|
|
<!--审核弹窗-->
|
|
|
@@ -823,6 +831,43 @@
|
|
|
pageLabel="退租"
|
|
|
></fee-modify>
|
|
|
<fee-modify-view ref="feeModifyView" :form="form"></fee-modify-view>
|
|
|
+ <reportContainer ref="reportContainer"></reportContainer>
|
|
|
+ <!--结算单位弹窗-->
|
|
|
+ <el-dialog title="打印" :visible.sync="printingDialog" append-to-body width="70%" :close-on-click-modal="false" :before-close="handleClose">
|
|
|
+ <div>
|
|
|
+ <el-row :gutter="10">
|
|
|
+ <el-col :span="4">
|
|
|
+ <avue-tree :option="reportOption" :data="reportTypeData" @node-click="reportNodeClick"></avue-tree>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="20">
|
|
|
+ <avue-crud
|
|
|
+ :option="optionPrinting"
|
|
|
+ :table-loading="printingLoading"
|
|
|
+ :data="PrintingData"
|
|
|
+ id="out-table"
|
|
|
+ :header-cell-class-name="headerClassName"
|
|
|
+ :row-style="{ height: '20px' }"
|
|
|
+ :cell-style="{ padding: '0px' }"
|
|
|
+ >
|
|
|
+ <template slot-scope="scope" slot="menu">
|
|
|
+ <el-button type="text" size="small" @click="dialogPreviewfun(scope.row)">打印预览</el-button>
|
|
|
+ </template>
|
|
|
+ </avue-crud>
|
|
|
+ </el-col>
|
|
|
+ </el-row>
|
|
|
+ </div>
|
|
|
+ <span slot="footer" class="dialog-footer">
|
|
|
+ <el-button size="small" @click="printingDialog = false">取 消</el-button>
|
|
|
+ </span>
|
|
|
+ </el-dialog>
|
|
|
+ <el-dialog title="打印" :visible.sync="selectPrintingDialog" append-to-body width="70%" :close-on-click-modal="false" :before-close="handleClose">
|
|
|
+ <div>
|
|
|
+ <reportformsList ref="reportformsList" @reportRadio="reportRadio"></reportformsList>
|
|
|
+ </div>
|
|
|
+ <span slot="footer" class="dialog-footer">
|
|
|
+ <el-button size="small" @click="selectPrintingDialog = false">取 消</el-button>
|
|
|
+ </span>
|
|
|
+ </el-dialog>
|
|
|
</div>
|
|
|
</template>
|
|
|
|
|
|
@@ -858,9 +903,14 @@ import reports from "@/components/tradeAgency/reports.vue";
|
|
|
import feeModify from "@/components/feeModify/boxMain.vue";
|
|
|
import feeModifyView from "@/components/feeModify/view.vue";
|
|
|
import { dateFormat } from "@/util/date";
|
|
|
+import { getList as reportsList } from "@/api/iosBasicData/reports";
|
|
|
+import { getFeeCenterCorpIds } from "@/api/iosBasicData/feecenter";
|
|
|
+import reportformsList from "@/views/iosBasicData/SeafreightExportF/bills/assembly/reportformsList.vue";
|
|
|
+import { reportsGetReportData } from "@/api/boxManagement/reports";
|
|
|
import { bcurrencyGetExrate } from "@/api/iosBasicData/rateManagement";
|
|
|
import { getToken } from "@/util/auth";
|
|
|
import _ from "lodash";
|
|
|
+import reportContainer from "@/views/iosBasicData/report-container/report-container.vue";
|
|
|
import { Header } from "element-ui";
|
|
|
import { values } from "lodash";
|
|
|
export default {
|
|
|
@@ -955,7 +1005,7 @@ export default {
|
|
|
itemCIds: null,
|
|
|
feeType: null,
|
|
|
selectionList: [],
|
|
|
- selectionfeedList:[],
|
|
|
+ selectionfeedList: [],
|
|
|
selectionfeecList: [],
|
|
|
checkId: "", // 审核需要的id
|
|
|
batchNo: "",
|
|
|
@@ -1825,7 +1875,79 @@ export default {
|
|
|
feeCenterListD: [],
|
|
|
feeCenterListC: [],
|
|
|
roleName: [],
|
|
|
- deptId: JSON.parse(localStorage.getItem("sysitemData")).deptId
|
|
|
+ deptId: JSON.parse(localStorage.getItem("sysitemData")).deptId,
|
|
|
+ printingDialog: false, // 打印弹窗开关
|
|
|
+ printingDC: "", // 打印弹窗选择是应收还是应付
|
|
|
+ PrintingData: [], // 打印弹窗列表数据
|
|
|
+ printingLoading: false, // 打印弹窗加载动画
|
|
|
+ optionPrinting: {
|
|
|
+ stripe: true,
|
|
|
+ maxHeight: "250",
|
|
|
+ calcHeight: 30,
|
|
|
+ tip: false,
|
|
|
+ searchShow: true,
|
|
|
+ searchMenuSpan: 6,
|
|
|
+ border: true,
|
|
|
+ selection: true,
|
|
|
+ dialogClickModal: false,
|
|
|
+ refreshBtn: false,
|
|
|
+ columnBtn: false,
|
|
|
+ addBtn: false,
|
|
|
+ viewBtn: false,
|
|
|
+ delBtn: false,
|
|
|
+ editBtn: false,
|
|
|
+ menuWidth: "100",
|
|
|
+ column: [
|
|
|
+ {
|
|
|
+ label: "币别",
|
|
|
+ prop: "curCode",
|
|
|
+ width: 100,
|
|
|
+ cell: true,
|
|
|
+ type: "select",
|
|
|
+ dicData: [
|
|
|
+ {
|
|
|
+ label: "全部",
|
|
|
+ value: null
|
|
|
+ },
|
|
|
+ {
|
|
|
+ label: "USD",
|
|
|
+ value: "USD"
|
|
|
+ },
|
|
|
+ {
|
|
|
+ label: "CNY",
|
|
|
+ value: "CNY"
|
|
|
+ }
|
|
|
+ ],
|
|
|
+ overHidden: true
|
|
|
+ },
|
|
|
+ {
|
|
|
+ label: "客户名称",
|
|
|
+ prop: "cnName",
|
|
|
+ overHidden: true
|
|
|
+ },
|
|
|
+ {
|
|
|
+ label: "客户编号",
|
|
|
+ prop: "code",
|
|
|
+ overHidden: true
|
|
|
+ }
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ reportOption: {
|
|
|
+ nodeKey: "id",
|
|
|
+ addBtn: false,
|
|
|
+ menu: false,
|
|
|
+ size: "small",
|
|
|
+ props: {
|
|
|
+ labelText: "标题",
|
|
|
+ label: "cnName",
|
|
|
+ value: "value",
|
|
|
+ children: "children"
|
|
|
+ }
|
|
|
+ },
|
|
|
+ reportTypeData: [], // 打印选择的数据
|
|
|
+ reportformsObj: {}, // 打印选择的数据
|
|
|
+ selectPrintingDialog: false, // 打印弹窗
|
|
|
+ idArr: []
|
|
|
};
|
|
|
},
|
|
|
components: {
|
|
|
@@ -1834,7 +1956,10 @@ export default {
|
|
|
businessReports,
|
|
|
reports,
|
|
|
feeModify,
|
|
|
- feeModifyView
|
|
|
+ feeModifyView,
|
|
|
+ reportformsList,
|
|
|
+ reportContainer
|
|
|
+
|
|
|
},
|
|
|
props: {
|
|
|
detailData: Object,
|
|
|
@@ -1884,6 +2009,330 @@ export default {
|
|
|
this.getDetail(this.pageIds[nextIndex]);
|
|
|
}
|
|
|
},
|
|
|
+
|
|
|
+ // 打印费用
|
|
|
+ printingCostsfun(dc) {
|
|
|
+ this.printingDC = dc;
|
|
|
+ let groupCode = "";
|
|
|
+ let selectionArr = [];
|
|
|
+ this.idArr = [];
|
|
|
+ for (let item of this.selectionfeedList) {
|
|
|
+ if (item.corpId != this.selectionfeedList[0].corpId) {
|
|
|
+ return this.$message.error("请选择相同的结算单位");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ for (let item of this.selectionfeecList) {
|
|
|
+ if (item.corpId != this.selectionfeecList[0].corpId) {
|
|
|
+ return this.$message.error("请选择相同的结算单位");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if (dc == "D") {
|
|
|
+ groupCode = "应收";
|
|
|
+ selectionArr = this.selectionfeedList;
|
|
|
+ this.idArr = this.selectionfeedList.map(item => {
|
|
|
+ return item.id;
|
|
|
+ });
|
|
|
+ } else {
|
|
|
+ groupCode = "应付";
|
|
|
+ selectionArr = this.selectionfeecList;
|
|
|
+ this.idArr = this.selectionfeecList.map(item => {
|
|
|
+ return item.id;
|
|
|
+ });
|
|
|
+ }
|
|
|
+ if (selectionArr.length > 0) {
|
|
|
+ // 打开选择弹窗
|
|
|
+ this.selectPrintingDialog = true;
|
|
|
+ let page = {
|
|
|
+ pageSize: 10,
|
|
|
+ currentPage: 1,
|
|
|
+ total: 0
|
|
|
+ };
|
|
|
+ this.$nextTick(() => {
|
|
|
+ this.$refs.reportformsList.onLoad(page, {
|
|
|
+ businessType: "XGFY",
|
|
|
+ classifyCode: "费用",
|
|
|
+ groupCode: groupCode
|
|
|
+ });
|
|
|
+ });
|
|
|
+ } else {
|
|
|
+ // 没有多选弹窗
|
|
|
+ this.printingLoading = true;
|
|
|
+ getFeeCenterCorpIds({
|
|
|
+ billId: this.form.id,
|
|
|
+ dc: dc,
|
|
|
+ type: "XGFY"
|
|
|
+ }).then(res => {
|
|
|
+ this.printingLoading = false;
|
|
|
+ res.data.data.forEach(e => {
|
|
|
+ e.$cellEdit = true;
|
|
|
+ e.curCode = null;
|
|
|
+ });
|
|
|
+ this.PrintingData = res.data.data;
|
|
|
+ });
|
|
|
+ this.reportsListfun({
|
|
|
+ businessType: "XGFY",
|
|
|
+ classifyCode: "费用",
|
|
|
+ groupCode: groupCode
|
|
|
+ });
|
|
|
+ this.printingDialog = true;
|
|
|
+ }
|
|
|
+ },
|
|
|
+ // 费用弹窗里的打印
|
|
|
+ dialogPreviewfun(row) {
|
|
|
+ if (!this.reportformsObj.id) {
|
|
|
+ this.$message.warning("请选择打印类型");
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ // 获取报表数据
|
|
|
+ reportsGetReportData({
|
|
|
+ billId: this.form.id,
|
|
|
+ reportCode: this.reportformsObj.classifyCode,
|
|
|
+ groupCode: this.reportformsObj.groupCode,
|
|
|
+ corpIds: row.id,
|
|
|
+ curCode: row.curCode,
|
|
|
+ type: "XGFY"
|
|
|
+ }).then(res => {
|
|
|
+ this.handleReportPreview(this.reportformsObj.url, res.data.data.data);
|
|
|
+ });
|
|
|
+ },
|
|
|
+ // 打印弹窗里回调
|
|
|
+ reportRadio(val) {
|
|
|
+ // 多选打印
|
|
|
+ // 获取报表数据
|
|
|
+ reportsGetReportData({
|
|
|
+ billId: this.form.id,
|
|
|
+ reportCode: val.classifyCode,
|
|
|
+ groupCode: val.groupCode,
|
|
|
+ itemIds: this.idArr.join(","),
|
|
|
+ type: "XGFY"
|
|
|
+ }).then(res => {
|
|
|
+ this.handleReportPreview(val.url, res.data.data.data);
|
|
|
+ });
|
|
|
+ },
|
|
|
+ // 获取打印表格数据
|
|
|
+ reportsListfun(obj) {
|
|
|
+ reportsList(1, 50, obj).then(res => {
|
|
|
+ this.reportTypeData = res.data.data.records;
|
|
|
+ // 获取第一项的值
|
|
|
+ this.reportformsObj = res.data.data.records[0];
|
|
|
+ });
|
|
|
+ },
|
|
|
+ // 打印表格选择
|
|
|
+ reportNodeClick(data) {
|
|
|
+ this.reportformsObj = data;
|
|
|
+ },
|
|
|
+
|
|
|
+ // 预览报表
|
|
|
+ handleReportPreview(url, data) {
|
|
|
+ console.log(url, 1670);
|
|
|
+ console.log(data, 1671);
|
|
|
+ Stimulsoft.Base.StiLicense.key =
|
|
|
+ "6vJhGtLLLz2GNviWmUTrhSqnOItdDwjBylQzQcAOiHn0s4gy0Fr5YoUZ9V00Y0igCSFQzwEqYBh/N77k4f0fWXTHW5rqeBNLkaurJDenJ9o97TyqHs9HfvINK18Uwzsc/bG01Rq+x3H3Rf+g7AY92gvWmp7VA2Uxa30Q97f61siWz2dE5kdBVcCnSFzC6awE74JzDcJMj8OuxplqB1CYcpoPcOjKy1PiATlC3UsBaLEXsok1xxtRMQ283r282tkh8XQitsxtTczAJBxijuJNfziYhci2jResWXK51ygOOEbVAxmpflujkJ8oEVHkOA/CjX6bGx05pNZ6oSIu9H8deF94MyqIwcdeirCe60GbIQByQtLimfxbIZnO35X3fs/94av0ODfELqrQEpLrpU6FNeHttvlMc5UVrT4K+8lPbqR8Hq0PFWmFrbVIYSi7tAVFMMe2D1C59NWyLu3AkrD3No7YhLVh7LV0Tttr/8FrcZ8xirBPcMZCIGrRIesrHxOsZH2V8t/t0GXCnLLAWX+TNvdNXkB8cF2y9ZXf1enI064yE5dwMs2fQ0yOUG/xornE";
|
|
|
+ // Stimulsoft.Base.StiLicense.Key = '6vJhGtLLLz2GNviWmUTrhSqnOItdDwjBylQzQcAOiHkcgIvwL0jnpsDqRpWg5FI5kt2G7A0tYIcUygBh1sPs7plofUOqPB1a4HBIXJB621mau2oiAIj+ysU7gKUXfjn/D5BocmduNB+ZMiDGPxFrAp3PoD0nYNkkWh8r7gBZ1v/JZSXGE3bQDrCQCNSy6mgby+iFAMV8/PuZ1z77U+Xz3fkpbm6MYQXYp3cQooLGLUti7k1TFWrnawT0iEEDJ2iRcU9wLqn2g9UiWesEZtKwI/UmEI2T7nv5NbgV+CHguu6QU4WWzFpIgW+3LUnKCT/vCDY+ymzgycw9A9+HFSzARiPzgOaAuQYrFDpzhXV+ZeX31AxWlnzjDWqpfluygSNPtGul5gyNt2CEoJD1Yom0VN9fvRonYsMsimkFFx2AwyVpPcs+JfVBtpPbTcZscnzUdmiIvxv8Gcin6sNSibM6in/uUKFt3bVgW/XeMYa7MLGF53kvBSwi78poUDigA2n12SmghLR0AHxyEDIgZGOTbNI33GWu7ZsPBeUdGu55R8w='
|
|
|
+ Stimulsoft.Base.Localization.StiLocalization.addLocalizationFile("/reports/stimulsoft/Localization/zh-CHS.xml", true, "zh-CHS");
|
|
|
+ Stimulsoft.Base.Localization.StiLocalization.setLocalizationFile("/reports/stimulsoft/Localization/zh-CHS.xml");
|
|
|
+ // 工具栏
|
|
|
+ var options = new Stimulsoft.Viewer.StiViewerOptions();
|
|
|
+ options.height = "100%";
|
|
|
+ options.appearance.scrollbarsMode = true; // 滚动条模式
|
|
|
+ options.toolbar.showDesignButton = false; // 显示设计按钮
|
|
|
+ options.toolbar.showAboutButton = false; // 显示关于按钮
|
|
|
+ options.toolbar.showResourcesButton = false; // 显示资源按钮
|
|
|
+ options.toolbar.showFullScreenButton = false; // 显示全屏按钮
|
|
|
+ options.toolbar.showOpenButton = false; // 显示打开按钮
|
|
|
+ options.appearance.showTooltips = false; // 显示工具提示
|
|
|
+ options.appearance.showDialogsHelp = false; // 显示对话框帮助
|
|
|
+ options.exports.showExportToDocument = false; // 显示导出到文档
|
|
|
+ options.toolbar.showParametersButton = true; // 显示参数按钮
|
|
|
+ options.appearance.bookmarksPrint = true; // 书签打印
|
|
|
+ options.toolbar.showSendEmailButton = true; // 显示发送邮件按钮
|
|
|
+ options.email.showEmailDialog = false;
|
|
|
+ options.email.showExportDialog = false;
|
|
|
+ // options.toolbar.showPrintButton = false // 打印按钮是否显示 下面直接自定义控制打印弹窗是否开启
|
|
|
+
|
|
|
+ // printDestination 参数:用于指定报表打印的目标位置,可以是打印机、PDF 文件或者直接打印到浏览器等。
|
|
|
+ // Stimulsoft.Viewer.StiPrintDestination.Direct:表示直接打印到打印机,即将报表内容直接发送至打印机进行打印。
|
|
|
+ // 通过设置不同的 printDestination 参数,你可以控制报表打印的行为,例如是直接打印到打印机,还是生成 PDF 文件,或者直接在浏览器中预览打印内容等。
|
|
|
+ options.toolbar.printDestination = Stimulsoft.Viewer.StiPrintDestination.Direct;
|
|
|
+ // htmlRenderMode html渲染模式
|
|
|
+ options.appearance.htmlRenderMode = Stimulsoft.Report.Export.StiHtmlExportMode.Table;
|
|
|
+ // 是创建一个 Stimulsoft 报表查看器的实例的代码
|
|
|
+ let viewer = new Stimulsoft.Viewer.StiViewer(options, "StiViewer", false);
|
|
|
+ viewer.onEmailReport = this.testMail;
|
|
|
+ // 报表
|
|
|
+ console.log("创建一个报表实例");
|
|
|
+ console.log();
|
|
|
+ let report = new window.Stimulsoft.Report.StiReport();
|
|
|
+
|
|
|
+ // 加载文件
|
|
|
+ console.log("从url加载报表");
|
|
|
+ // report.loadFile("/reports/stimulsoft/demos/SimpleList.mrt");
|
|
|
+ report.load(url);
|
|
|
+
|
|
|
+ // data.pageOne = "Page : 1 of 1";
|
|
|
+ // // 处理超长数据
|
|
|
+ // if (data.hshipperDetails) {
|
|
|
+ // var consignerIndex2 = data.hshipperDetails.indexOf("\n");
|
|
|
+ // for (let i = 0; i < 4; i++) {
|
|
|
+ // consignerIndex2 = data.hshipperDetails.indexOf("\n", consignerIndex2 + 1);
|
|
|
+ // }
|
|
|
+ // if (consignerIndex2 != -1) {
|
|
|
+ // var hshipperDetails = data.hshipperDetails.substring(consignerIndex2 + 2, data.hshipperDetails.length);
|
|
|
+ // data.hshipperDetails = data.hshipperDetails.substring(0, consignerIndex2) + " *";
|
|
|
+ // data.commodityDescr += "\n*" + hshipperDetails;
|
|
|
+ // }
|
|
|
+ // }
|
|
|
+
|
|
|
+ // if (data.hconsigneeDetails) {
|
|
|
+ // var consigneeIndex2 = data.hconsigneeDetails.indexOf("\n");
|
|
|
+ // for (let i = 0; i < 3; i++) {
|
|
|
+ // consigneeIndex2 = data.hconsigneeDetails.indexOf("\n", consigneeIndex2 + 1);
|
|
|
+ // }
|
|
|
+ // if (consigneeIndex2 != -1) {
|
|
|
+ // var hconsigneeDetails = data.hconsigneeDetails.substring(consigneeIndex2 + 2, data.hconsigneeDetails.length);
|
|
|
+ // data.hconsigneeDetails = data.hconsigneeDetails.substring(0, consigneeIndex2) + " **";
|
|
|
+ // data.commodityDescr += "\n**" + hconsigneeDetails;
|
|
|
+ // }
|
|
|
+ // }
|
|
|
+
|
|
|
+ // if (data.hnotifyDetails) {
|
|
|
+ // var notifierIndex2 = data.hnotifyDetails.indexOf("\n");
|
|
|
+ // for (let i = 0; i < 3; i++) {
|
|
|
+ // notifierIndex2 = data.hnotifyDetails.indexOf("\n", notifierIndex2 + 1);
|
|
|
+ // }
|
|
|
+ // if (notifierIndex2 != -1) {
|
|
|
+ // var hnotifyDetails = data.hnotifyDetails.substring(notifierIndex2 + 2, data.hnotifyDetails.length);
|
|
|
+ // data.hnotifyDetails = data.hnotifyDetails.substring(0, notifierIndex2) + " ***";
|
|
|
+ // data.commodityDescr += "\n***" + hnotifyDetails;
|
|
|
+ // }
|
|
|
+ // }
|
|
|
+
|
|
|
+ // // 处理箱号
|
|
|
+ // if (this.isPrintTheBoxNumber) {
|
|
|
+ // data.commodityDescr += "\n.\n.\n";
|
|
|
+ // }
|
|
|
+
|
|
|
+ // // PLACE & DATE OF ISSUE
|
|
|
+ // data.placeAndDateOfIssue = "";
|
|
|
+ // if (data.issueAt) {
|
|
|
+ // data.placeAndDateOfIssue += data.issueAt;
|
|
|
+ // }
|
|
|
+ // if (data.issueDate) {
|
|
|
+ // let date = new Date(data.issueDate.replace(/-/g, "/"));
|
|
|
+ // let yyyy = date.getFullYear();
|
|
|
+ // let mmmm = date.toDateString().split(" ")[1];
|
|
|
+ // let dd = date.getDate();
|
|
|
+ // data.placeAndDateOfIssue += ", " + dd + "-" + mmmm + "-" + yyyy;
|
|
|
+ // }
|
|
|
+
|
|
|
+ // // Total number of containers or packages received by the Carriers
|
|
|
+ // if (data.preContainersList) {
|
|
|
+ // let boxMap = new Map();
|
|
|
+ // for (let boxQuantity of data.preContainersList) {
|
|
|
+ // if (boxMap.get(boxQuantity.cntrTypeCode)) {
|
|
|
+ // let v = boxMap.get(boxQuantity.cntrTypeCode);
|
|
|
+ // boxMap.set(boxQuantity.cntrTypeCode, v + boxQuantity.quantity);
|
|
|
+ // } else {
|
|
|
+ // boxMap.set(boxQuantity.cntrTypeCode, boxQuantity.quantity);
|
|
|
+ // }
|
|
|
+ // }
|
|
|
+ // let boxs = "";
|
|
|
+ // boxMap.forEach(function(value, key, map) {
|
|
|
+ // boxs += value + "x" + key + ", ";
|
|
|
+ // });
|
|
|
+ // boxs = boxs.substring(0, boxs.length - 2);
|
|
|
+
|
|
|
+ // data.boxQuantity = boxs + " CONTAINER(S) ONLY";
|
|
|
+ // }
|
|
|
+
|
|
|
+ // // Number of original B/Ls
|
|
|
+ // if (data.numberOfObl) {
|
|
|
+ // data.numberOfObl += " (" + data.numberOfOblDigit + ")";
|
|
|
+ // }
|
|
|
+
|
|
|
+ // if (data.commodityDescr) {
|
|
|
+ // var descriptionIndex2 = data.commodityDescr.indexOf("\n");
|
|
|
+ // for (let i = 0; i < 19; i++) {
|
|
|
+ // descriptionIndex2 = data.commodityDescr.indexOf("\n", descriptionIndex2 + 1);
|
|
|
+ // }
|
|
|
+ // if (descriptionIndex2 != -1) {
|
|
|
+ // data.pageOne = "Page : 1 of 2";
|
|
|
+ // data.pageTwo = "Page : 2 of 2";
|
|
|
+ // var extraLongText = data.commodityDescr.substring(descriptionIndex2 + 2, data.commodityDescr.length);
|
|
|
+ // data.commodityDescr = data.commodityDescr.substring(0, descriptionIndex2);
|
|
|
+ // data.extraLongTips = "** TO BE CONTINUED ON ATTACHED LIST **";
|
|
|
+ // data.extraLongText = extraLongText;
|
|
|
+ // }
|
|
|
+ // }
|
|
|
+
|
|
|
+ // console.log(data.hshipperDetails, 'hshipperDetails2')
|
|
|
+
|
|
|
+ // 创建一个 Stimulsoft 数据集(DataSet)的实例的代码
|
|
|
+ var dataSet = new Stimulsoft.System.Data.DataSet("reportData");
|
|
|
+
|
|
|
+ dataSet.readJson(data); // 用于将 JSON 格式的数据加载到数据集中。data 是包含报表数据的 JSON 对象。
|
|
|
+ // 这是一个方法调用,用于在报表中注册数据源。参数 'reportData' 是数据源的名称,
|
|
|
+ // 第二个 'reportData' 是数据源的别名,dataSet 则是之前创建的数据集实例
|
|
|
+ report.regData("reportData", "reportData", dataSet);
|
|
|
+ // 从模版和数据加载报表
|
|
|
+ // loadReport(report, '', {})
|
|
|
+
|
|
|
+ // 这是将报表对象指定给报表查看器的属性。viewer 是报表查看器的实例,而 report 是之前创建的报表对象。
|
|
|
+ viewer.report = report;
|
|
|
+
|
|
|
+ this.$refs.reportContainer.showContainer(
|
|
|
+ () => {
|
|
|
+ setTimeout(() => {
|
|
|
+ viewer.renderHtml("reportContainer");
|
|
|
+ this.createViewerButtons(viewer);
|
|
|
+ }, 50);
|
|
|
+ },
|
|
|
+ () => {}
|
|
|
+ );
|
|
|
+ console.log("加载成功完成!");
|
|
|
+ },
|
|
|
+ createViewerButtons(viewer) {
|
|
|
+ viewer.jsObject.collections.images["myClose.png"] =
|
|
|
+ "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABmJLR0QA/wD/AP+gvaeTAAAA0ElEQVQ4ja3TO05CQRQG4A8iOwAbtYWETndAaecK7NwCKmETtJZsSBNLobEz8ZFIJQ0UnOGSm3DnYviTybzO/895DQXGWGCVGQuMEqkRcwcfuMOLalziCaf4TIe9UG9nyMJmFRzNGoRK1BU4xxx9G7cfwostciGk+x8MqgySwDXe4tU53hVV+MNtTmAoX84JGv9NYgrHyR6DV8wUSW7hItZLm36ZVoVQxsFJLOMsPOrH/h7dQwR2cdxOTEn8DtUbPGc4V2H7Vb4Yqfedf/GYSGt8VUmxgyfuBAAAAABJRU5ErkJggg==";
|
|
|
+ const closeBtn = viewer.jsObject.SmallButton("closeBtn", "关闭", "myClose.png");
|
|
|
+ // 增加打印弹窗配置
|
|
|
+ const printBtn = viewer.jsObject.SmallButton("printBtn", "打印报表", "myClose.png");
|
|
|
+ // console.log(viewer.jsObject.print(),'1013')
|
|
|
+ // 获取 关闭按钮的dom元素位置
|
|
|
+ const toolbarTable = viewer.jsObject.controls.toolbar.firstChild.firstChild;
|
|
|
+ const buttonsTable = toolbarTable.rows[0].lastChild.lastChild;
|
|
|
+ const userButtonCell = buttonsTable.rows[0].insertCell(0);
|
|
|
+ // 获取打印按钮的位置
|
|
|
+ const buttonsTablePrint = toolbarTable.rows[0].childNodes[0].lastChild; // 打印按钮
|
|
|
+ const userButtonPrint = buttonsTablePrint.rows[0].childNodes[0]; // 打印按钮dom位置
|
|
|
+
|
|
|
+ userButtonPrint.addEventListener("click", event => {
|
|
|
+ console.log("打印点击");
|
|
|
+ // event.preventDefault()
|
|
|
+ });
|
|
|
+ userButtonPrint.addEventListener("mouseover", event => {
|
|
|
+ console.log("移入打印按钮");
|
|
|
+ console.log(event, 1035);
|
|
|
+ });
|
|
|
+
|
|
|
+ userButtonCell.className = "stiJsViewerClearAllStyles";
|
|
|
+ userButtonCell.appendChild(closeBtn); // 添加关闭节点
|
|
|
+
|
|
|
+ // userButtonPrint.prepend(printBtn) // 在 printBtn 节点里最前面增加一个子级节点
|
|
|
+
|
|
|
+ let that = this;
|
|
|
+ // 关闭按钮的监听点击
|
|
|
+ closeBtn.action = function() {
|
|
|
+ console.log(that.$refs.ReportContainer, "1022");
|
|
|
+ if (that.$refs.reportContainer) that.$refs.reportContainer.hideContainer();
|
|
|
+ };
|
|
|
+
|
|
|
+ // // // 打印按钮监听
|
|
|
+ // printBtn.action = (e)=>{
|
|
|
+ // console.log('打印')
|
|
|
+ // window.print()
|
|
|
+ // }
|
|
|
+ },
|
|
|
viewFininvoices(row) {
|
|
|
this.fininvoicesData = [];
|
|
|
fininvoicesGetAccBillIdList({ accBillId: row.accBillId }).then(res => {
|
|
|
@@ -2177,12 +2626,12 @@ export default {
|
|
|
$cellEdit: true
|
|
|
});
|
|
|
},
|
|
|
-
|
|
|
+
|
|
|
async feedAddRow() {
|
|
|
if (!this.form.id) {
|
|
|
return this.$message.error("请保存数据");
|
|
|
}
|
|
|
- await this.checkRate(null, this.form.purchaseDate, null, 1, this.deptId);
|
|
|
+ await this.checkRate(null, this.form.effectiveDate, null, 1, this.deptId);
|
|
|
this.feeCenterListD.push({
|
|
|
pid: this.form.id,
|
|
|
feesType: 1,
|
|
|
@@ -2197,7 +2646,7 @@ export default {
|
|
|
if (!this.form.id) {
|
|
|
return this.$message.error("请保存数据");
|
|
|
}
|
|
|
- await this.checkRate(null, this.form.purchaseDate, null, 1, this.deptId);
|
|
|
+ await this.checkRate(null, this.form.effectiveDate, null, 1, this.deptId);
|
|
|
this.feeCenterListC.push({
|
|
|
pid: this.form.id,
|
|
|
feesType: 1,
|
|
|
@@ -2214,7 +2663,7 @@ export default {
|
|
|
boxSelectionChange(list) {
|
|
|
this.boxSelectionList = list;
|
|
|
},
|
|
|
- feedChange(list) {
|
|
|
+ feedChange(list) {
|
|
|
let ids = [];
|
|
|
list.forEach(e => {
|
|
|
ids.push(e.id);
|
|
|
@@ -2988,7 +3437,7 @@ export default {
|
|
|
return this.$message.error("请完善箱明细信息");
|
|
|
}
|
|
|
}
|
|
|
- for (let row of this.feeCenterListD) {
|
|
|
+ for (let row of this.feeCenterListD) {
|
|
|
row.amount = row.curCode == this.getLocalCurrency() ? row.amountCNY : row.amountUSD;
|
|
|
if (!row.billType || !row.corpCnName || !row.feeCnName || !row.curCode || !row.price || !row.quantity) {
|
|
|
this.$refs.crud2.rowCell(row, row.$index);
|