|
|
@@ -3,315 +3,163 @@
|
|
|
<div class="customer-head">
|
|
|
<div class="customer-back">
|
|
|
<!-- <i class="back-icon el-icon-arrow-left"></i><i style="font-style:normal">返回管理列表</i>-->
|
|
|
- <el-button
|
|
|
- type="danger"
|
|
|
- style="border: none;background: none;color: red"
|
|
|
- icon="el-icon-arrow-left"
|
|
|
- @click="backToList"
|
|
|
- >返回列表
|
|
|
+ <el-button type="danger" style="border: none;background: none;color: red" icon="el-icon-arrow-left"
|
|
|
+ @click="backToList">返回列表
|
|
|
</el-button>
|
|
|
</div>
|
|
|
<div class="add-customer-btn" v-if="showBut">
|
|
|
- <el-button
|
|
|
- type="primary"
|
|
|
- size="small"
|
|
|
- v-if="detailData.status == 1"
|
|
|
- class="el-button--small-yh "
|
|
|
- @click.stop="openEdit"
|
|
|
- >编辑
|
|
|
+ <el-button type="primary" size="small" v-if="detailData.status == 1" class="el-button--small-yh "
|
|
|
+ @click.stop="openEdit">编辑
|
|
|
</el-button>
|
|
|
-<!-- <el-button-->
|
|
|
-<!-- type="info"-->
|
|
|
-<!-- @click.stop="editCustomer('save')"-->
|
|
|
-<!-- v-if="form.deliveryStatus == '录入'"-->
|
|
|
-<!-- size="small"-->
|
|
|
-<!-- >确认发货</el-button-->
|
|
|
-<!-- >-->
|
|
|
-<!-- <el-button-->
|
|
|
-<!-- type="info"-->
|
|
|
-<!-- @click.stop="editCustomer('repeal')"-->
|
|
|
-<!-- v-if="form.deliveryStatus != '录入'"-->
|
|
|
-<!-- size="small"-->
|
|
|
-<!-- >撤销发货</el-button-->
|
|
|
-<!-- >-->
|
|
|
-<!-- <el-button-->
|
|
|
-<!-- type="success"-->
|
|
|
-<!-- :disabled="!form.id"-->
|
|
|
-<!-- size="small"-->
|
|
|
-<!-- @click="copyDoc"-->
|
|
|
-<!-- >-->
|
|
|
-<!-- 复制单据-->
|
|
|
-<!-- </el-button>-->
|
|
|
- <el-button
|
|
|
- type="primary"
|
|
|
- :disabled="disabled"
|
|
|
- @click="editCustomer('submit')"
|
|
|
- :loading="subLoading"
|
|
|
- v-if="detailData.status != 1"
|
|
|
- size="small"
|
|
|
- >保存数据
|
|
|
+ <!-- <el-button-->
|
|
|
+ <!-- type="info"-->
|
|
|
+ <!-- @click.stop="editCustomer('save')"-->
|
|
|
+ <!-- v-if="form.deliveryStatus == '录入'"-->
|
|
|
+ <!-- size="small"-->
|
|
|
+ <!-- >确认发货</el-button-->
|
|
|
+ <!-- >-->
|
|
|
+ <!-- <el-button-->
|
|
|
+ <!-- type="info"-->
|
|
|
+ <!-- @click.stop="editCustomer('repeal')"-->
|
|
|
+ <!-- v-if="form.deliveryStatus != '录入'"-->
|
|
|
+ <!-- size="small"-->
|
|
|
+ <!-- >撤销发货</el-button-->
|
|
|
+ <!-- >-->
|
|
|
+ <!-- <el-button-->
|
|
|
+ <!-- type="success"-->
|
|
|
+ <!-- :disabled="!form.id"-->
|
|
|
+ <!-- size="small"-->
|
|
|
+ <!-- @click="copyDoc"-->
|
|
|
+ <!-- >-->
|
|
|
+ <!-- 复制单据-->
|
|
|
+ <!-- </el-button>-->
|
|
|
+ <el-button type="primary" :disabled="disabled" @click="editCustomer('submit')" :loading="subLoading"
|
|
|
+ v-if="detailData.status != 1" size="small">保存数据
|
|
|
</el-button>
|
|
|
</div>
|
|
|
</div>
|
|
|
<div class="customer-main">
|
|
|
<trade-card title="基础信息">
|
|
|
- <avue-form
|
|
|
- ref="form"
|
|
|
- class="trading-form"
|
|
|
- v-model="form"
|
|
|
- :option="option"
|
|
|
- >
|
|
|
+ <avue-form ref="form" class="trading-form" v-model="form" :option="option">
|
|
|
<template slot="corpId">
|
|
|
- <crop-select
|
|
|
- v-model="form.corpId"
|
|
|
- corpType="KH"
|
|
|
- disabled
|
|
|
- ></crop-select>
|
|
|
+ <crop-select v-model="form.corpId" corpType="KH" disabled></crop-select>
|
|
|
</template>
|
|
|
<template slot="belongToCorpId">
|
|
|
<crop-select v-model="form.belongToCorpId" corpType="GS" disabled></crop-select>
|
|
|
</template>
|
|
|
<template slot="storageId">
|
|
|
- <warehouse-select
|
|
|
- v-model="form.storageId"
|
|
|
- :configuration="configuration2"
|
|
|
- :disabled="detailData.status == 1"
|
|
|
- ></warehouse-select>
|
|
|
+ <warehouse-select v-model="form.storageId" :configuration="configuration2"
|
|
|
+ :disabled="detailData.status == 1"></warehouse-select>
|
|
|
</template>
|
|
|
</avue-form>
|
|
|
</trade-card>
|
|
|
<trade-card title="商品信息">
|
|
|
- <avue-crud
|
|
|
- ref="crud"
|
|
|
- :data="data"
|
|
|
- :option="tableOption"
|
|
|
- @row-del="rowDel"
|
|
|
- @saveColumn="saveColumn"
|
|
|
- @resetColumn="resetColumn"
|
|
|
- :summary-method="summaryMethod"
|
|
|
- :cell-style="cellStyle"
|
|
|
- >
|
|
|
+ <avue-crud ref="crud" :data="data" :option="tableOption" @row-del="rowDel" @saveColumn="saveColumn"
|
|
|
+ @resetColumn="resetColumn" :summary-method="summaryMethod" :cell-style="cellStyle">
|
|
|
<template slot="headerSerial">
|
|
|
- <el-button
|
|
|
- type="primary"
|
|
|
- icon="el-icon-plus"
|
|
|
- size="mini"
|
|
|
- @click.stop="addRow"
|
|
|
- :disabled="detailData.status == 1"
|
|
|
- circle
|
|
|
- ></el-button>
|
|
|
+ <el-button type="primary" icon="el-icon-plus" size="mini" @click.stop="addRow"
|
|
|
+ :disabled="detailData.status == 1" circle></el-button>
|
|
|
</template>
|
|
|
<template slot="menuLeft">
|
|
|
- <el-button
|
|
|
- type="primary"
|
|
|
- icon="el-icon-plus"
|
|
|
- size="small"
|
|
|
- @click.stop="newDetails"
|
|
|
- :disabled="detailData.status == 1"
|
|
|
- >批量录入</el-button
|
|
|
- >
|
|
|
- <el-button
|
|
|
- type="info"
|
|
|
- icon="el-icon-printer"
|
|
|
- size="small"
|
|
|
- @click.stop="openReport()"
|
|
|
- >报表打印</el-button
|
|
|
- >
|
|
|
-<!-- <el-button :type="!form.customsStatus?'info':'primary'" size="small" :disabled="!form.id||form.estimateGoodGoods !='货备齐'" @click.native="dialog = true;fudaSatus = 1"-->
|
|
|
-<!-- >已报关</el-button>-->
|
|
|
-<!-- <el-button :type="!form.shippingStatus?'info':'warning'" size="small" :disabled="!form.id||form.estimateGoodGoods !='货备齐'" @click.native="dialog = true;fudaSatus = 2"-->
|
|
|
-<!-- >已出运</el-button>-->
|
|
|
-<!-- <el-button :type="form.documentaryStatus == '已寄单'?'success':'info'" size="small" :disabled="!form.id||form.estimateGoodGoods !='货备齐'" @click.native="dialog = true;fudaSatus = 3"-->
|
|
|
-<!-- >已寄单</el-button>-->
|
|
|
- <el-button :type="!form.customsStatus?'info':'primary'" size="small" :disabled="!form.id" @click.native="dialog = true;fudaSatus = 1"
|
|
|
- >已报关</el-button>
|
|
|
- <el-button :type="!form.shippingStatus?'info':'warning'" size="small" :disabled="!form.id" @click.native="dialog = true;fudaSatus = 2"
|
|
|
- >已出运</el-button>
|
|
|
- <el-button :type="form.documentaryStatus == '已寄单'?'success':'info'" size="small" :disabled="!form.id" @click.native="dialog = true;fudaSatus = 3"
|
|
|
- >已寄单</el-button>
|
|
|
+ <el-button type="primary" icon="el-icon-plus" size="small" @click.stop="newDetails"
|
|
|
+ :disabled="detailData.status == 1">批量录入</el-button>
|
|
|
+ <el-button type="info" icon="el-icon-printer" size="small" @click.stop="openReport()">报表打印</el-button>
|
|
|
+ <!-- <el-button :type="!form.customsStatus?'info':'primary'" size="small" :disabled="!form.id||form.estimateGoodGoods !='货备齐'" @click.native="dialog = true;fudaSatus = 1"-->
|
|
|
+ <!-- >已报关</el-button>-->
|
|
|
+ <!-- <el-button :type="!form.shippingStatus?'info':'warning'" size="small" :disabled="!form.id||form.estimateGoodGoods !='货备齐'" @click.native="dialog = true;fudaSatus = 2"-->
|
|
|
+ <!-- >已出运</el-button>-->
|
|
|
+ <!-- <el-button :type="form.documentaryStatus == '已寄单'?'success':'info'" size="small" :disabled="!form.id||form.estimateGoodGoods !='货备齐'" @click.native="dialog = true;fudaSatus = 3"-->
|
|
|
+ <!-- >已寄单</el-button>-->
|
|
|
+ <el-button :type="!form.customsStatus ? 'info' : 'primary'" size="small" :disabled="!form.id"
|
|
|
+ @click.native="dialog = true; fudaSatus = 1">已报关</el-button>
|
|
|
+ <el-button :type="!form.shippingStatus ? 'info' : 'warning'" size="small" :disabled="!form.id"
|
|
|
+ @click.native="dialog = true; fudaSatus = 2">已出运</el-button>
|
|
|
+ <el-button :type="form.documentaryStatus == '已寄单' ? 'success' : 'info'" size="small" :disabled="!form.id"
|
|
|
+ @click.native="dialog = true; fudaSatus = 3">已寄单</el-button>
|
|
|
</template>
|
|
|
<template slot-scope="{ row }" slot="corpId">
|
|
|
{{ row.corpsName }}
|
|
|
</template>
|
|
|
<template slot="itemType" slot-scope="{ row }">
|
|
|
- <el-select
|
|
|
- v-if="row.$cellEdit"
|
|
|
- v-model="row.itemType"
|
|
|
- filterable
|
|
|
- allow-create
|
|
|
- default-first-option
|
|
|
- placeholder="请输入"
|
|
|
- @focus="itemTypeFocus(row)"
|
|
|
- >
|
|
|
- <el-option
|
|
|
- v-for="(item, index) in itemtypeList"
|
|
|
- :key="index"
|
|
|
- :label="item.value"
|
|
|
- :value="item.value"
|
|
|
- >
|
|
|
+ <el-select v-if="row.$cellEdit" v-model="row.itemType" filterable allow-create default-first-option
|
|
|
+ placeholder="请输入" @focus="itemTypeFocus(row)">
|
|
|
+ <el-option v-for="(item, index) in itemtypeList" :key="index" :label="item.value" :value="item.value">
|
|
|
</el-option>
|
|
|
</el-select>
|
|
|
<span v-else>{{ row.itemType }}</span>
|
|
|
</template>
|
|
|
<template slot="cname" slot-scope="{ row, index }">
|
|
|
- <el-button
|
|
|
- size="small"
|
|
|
- type="text"
|
|
|
- @click="rePick(row, index)"
|
|
|
- :disabled="disabled"
|
|
|
- class="picker"
|
|
|
- style="padding:4px 10px;float:left"
|
|
|
- >选择</el-button
|
|
|
- >
|
|
|
+ <el-button size="small" type="text" @click="rePick(row, index)" :disabled="disabled" class="picker"
|
|
|
+ style="padding:4px 10px;float:left">选择</el-button>
|
|
|
<span> {{ row.cname }}</span>
|
|
|
</template>
|
|
|
<template slot="taxRate" slot-scope="{ row }">
|
|
|
- <el-input
|
|
|
- v-if="row.$cellEdit"
|
|
|
- size="mini"
|
|
|
- v-model="row.taxRate"
|
|
|
+ <el-input v-if="row.$cellEdit" size="mini" v-model="row.taxRate"
|
|
|
oninput="value=value.replace(/[^0-9.]/g,'').replace(/^(\-)*(\d+)\.(\d\d).*$/,'$1$2.$3')"
|
|
|
- @change="taxRateChange(row)"
|
|
|
- placeholder="请输入"
|
|
|
- />
|
|
|
+ @change="taxRateChange(row)" placeholder="请输入" />
|
|
|
<span v-else>{{ row.taxRate }}</span>
|
|
|
</template>
|
|
|
<template slot="menu" slot-scope="{ row, index }">
|
|
|
- <el-button
|
|
|
- size="small"
|
|
|
- icon="el-icon-edit"
|
|
|
- type="text"
|
|
|
- @click="rowCell(row, index)"
|
|
|
- :disabled="disabled"
|
|
|
- >{{ row.$cellEdit ? "保存" : "修改" }}</el-button
|
|
|
- >
|
|
|
- <el-button
|
|
|
- size="small"
|
|
|
- icon="el-icon-edit"
|
|
|
- type="text"
|
|
|
- @click="rowDel(row)"
|
|
|
- >删 除</el-button
|
|
|
- >
|
|
|
+ <el-button size="small" icon="el-icon-edit" type="text" @click="rowCell(row, index)" :disabled="disabled">{{
|
|
|
+ row.$cellEdit ? "保存" : "修改" }}</el-button>
|
|
|
+ <el-button size="small" icon="el-icon-edit" type="text" @click="rowDel(row)">删 除</el-button>
|
|
|
</template>
|
|
|
<template slot="price" slot-scope="{ row }">
|
|
|
- <el-input
|
|
|
- v-if="row.$cellEdit"
|
|
|
- v-model="row.price"
|
|
|
- size="small"
|
|
|
+ <el-input v-if="row.$cellEdit" v-model="row.price" size="small"
|
|
|
oninput="value=value.replace(/[^0-9.]/g,'').replace(/^(\-)*(\d+)\.(\d\d).*$/,'$1$2.$3')"
|
|
|
- @change="priceChange(row)"
|
|
|
- ></el-input>
|
|
|
- <span v-else>{{ row.price }}</span>
|
|
|
+ @change="priceChange(row)"></el-input>
|
|
|
+ <span v-else>{{ row.price | decimalFormat2 }}</span>
|
|
|
+ </template>
|
|
|
+ <template slot="contractAmount" slot-scope="{ row }">
|
|
|
+ <span>{{ row.contractAmount | decimalFormat2 }}</span>
|
|
|
</template>
|
|
|
<template slot="actualQuantity" slot-scope="{ row }">
|
|
|
- <el-input
|
|
|
- v-if="row.$cellEdit"
|
|
|
- v-model="row.actualQuantity"
|
|
|
- size="small"
|
|
|
- oninput='this.value=this.value.replace(/[^(\d)]/g,"")'
|
|
|
- @change="quantityChange(row)"
|
|
|
- ></el-input>
|
|
|
+ <el-input v-if="row.$cellEdit" v-model="row.actualQuantity" size="small"
|
|
|
+ oninput='this.value=this.value.replace(/[^(\d)]/g,"")' @change="quantityChange(row)"></el-input>
|
|
|
<span v-else>{{ row.actualQuantity | IntegerFormat }}</span>
|
|
|
</template>
|
|
|
</avue-crud>
|
|
|
</trade-card>
|
|
|
- <fee-info
|
|
|
- ref="feeInfo"
|
|
|
- :inCropId="true"
|
|
|
- :orderFeesList="orderFeesList"
|
|
|
- :disabled="detailData.status == 1"
|
|
|
- feeUrl="/blade-deliver-goods/deliveryfees/update"
|
|
|
- />
|
|
|
+ <fee-info ref="feeInfo" :inCropId="true" :orderFeesList="orderFeesList" :disabled="detailData.status == 1"
|
|
|
+ feeUrl="/blade-deliver-goods/deliveryfees/update" />
|
|
|
<containerTitle title="合同附件"></containerTitle>
|
|
|
- <c-upload
|
|
|
- typeUpload="CK"
|
|
|
- :data="orderFilesList"
|
|
|
- :disabled="detailData.status == 1"
|
|
|
- :enumerationValue="76"
|
|
|
- deleteUrl="/blade-deliver-goods/deliveryfiles/update"
|
|
|
- display
|
|
|
- />
|
|
|
+ <c-upload typeUpload="CK" :data="orderFilesList" :disabled="detailData.status == 1" :enumerationValue="76"
|
|
|
+ deleteUrl="/blade-deliver-goods/deliveryfiles/update" display />
|
|
|
</div>
|
|
|
- <el-dialog
|
|
|
- title="导入商品"
|
|
|
- append-to-body
|
|
|
- class="el-dialogDeep"
|
|
|
- :visible.sync="dialogVisible"
|
|
|
- width="80%"
|
|
|
- :close-on-click-modal="false"
|
|
|
- :destroy-on-close="true"
|
|
|
- :close-on-press-escape="false"
|
|
|
- @close="closeGoods"
|
|
|
- top="5vh"
|
|
|
- v-dialog-drag
|
|
|
- >
|
|
|
+ <el-dialog title="导入商品" append-to-body class="el-dialogDeep" :visible.sync="dialogVisible" width="80%"
|
|
|
+ :close-on-click-modal="false" :destroy-on-close="true" :close-on-press-escape="false" @close="closeGoods" top="5vh"
|
|
|
+ v-dialog-drag>
|
|
|
<span>
|
|
|
<el-row>
|
|
|
<el-col :span="4">
|
|
|
<div>
|
|
|
<el-scrollbar>
|
|
|
<basic-container>
|
|
|
- <avue-tree
|
|
|
- :option="treeOption"
|
|
|
- @node-click="nodeClick"
|
|
|
- :style="treeStyle"
|
|
|
- />
|
|
|
+ <avue-tree :option="treeOption" @node-click="nodeClick" :style="treeStyle" />
|
|
|
</basic-container>
|
|
|
</el-scrollbar>
|
|
|
</div>
|
|
|
</el-col>
|
|
|
<el-col :span="20">
|
|
|
- <avue-crud
|
|
|
- :option="goodsOption"
|
|
|
- :table-loading="loading"
|
|
|
- :data="goodsList"
|
|
|
- ref="goodsCrud"
|
|
|
- :search.sync="search"
|
|
|
- @search-change="searchChange"
|
|
|
- @refresh-change="refreshChange"
|
|
|
- @selection-change="selectionChange"
|
|
|
- @row-click="rowClick"
|
|
|
- :page.sync="page"
|
|
|
- @on-load="onLoad"
|
|
|
- @saveColumn="saveGoodsColumn"
|
|
|
- @resetColumn="resetGoodsColumn"
|
|
|
- :cell-style="cellStyle"
|
|
|
- ></avue-crud>
|
|
|
+ <avue-crud :option="goodsOption" :table-loading="loading" :data="goodsList" ref="goodsCrud"
|
|
|
+ :search.sync="search" @search-change="searchChange" @refresh-change="refreshChange"
|
|
|
+ @selection-change="selectionChange" @row-click="rowClick" :page.sync="page" @on-load="onLoad"
|
|
|
+ @saveColumn="saveGoodsColumn" @resetColumn="resetGoodsColumn" :cell-style="cellStyle"></avue-crud>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
</span>
|
|
|
|
|
|
<span slot="footer" class="dialog-footer">
|
|
|
<el-button @click="dialogVisible = false">取 消</el-button>
|
|
|
- <el-button
|
|
|
- type="primary"
|
|
|
- @click="importGoods"
|
|
|
- :disabled="selectionList.length == 0"
|
|
|
- >导入</el-button
|
|
|
- >
|
|
|
+ <el-button type="primary" @click="importGoods" :disabled="selectionList.length == 0">导入</el-button>
|
|
|
</span>
|
|
|
</el-dialog>
|
|
|
- <report-dialog
|
|
|
- :switchDialog="switchDialog"
|
|
|
- :reportId="form.id"
|
|
|
- reportName="跟单"
|
|
|
- @onClose="onClose()"
|
|
|
- ></report-dialog>
|
|
|
- <el-dialog
|
|
|
- title="选择日期"
|
|
|
- :visible.sync="dialog"
|
|
|
- v-if="dialog"
|
|
|
- width="30%"
|
|
|
- append-to-body>
|
|
|
+ <report-dialog :switchDialog="switchDialog" :reportId="form.id" reportName="跟单" @onClose="onClose()"></report-dialog>
|
|
|
+ <el-dialog title="选择日期" :visible.sync="dialog" v-if="dialog" width="30%" append-to-body>
|
|
|
<span>
|
|
|
- <el-date-picker
|
|
|
- v-model="pickerValue"
|
|
|
- type="date"
|
|
|
- style="width: 100%;"
|
|
|
- size="small"
|
|
|
- value-format="yyyy-MM-dd HH:ss:mm"
|
|
|
- placeholder="选择日期">
|
|
|
- </el-date-picker>
|
|
|
+ <el-date-picker v-model="pickerValue" type="date" style="width: 100%;" size="small"
|
|
|
+ value-format="yyyy-MM-dd HH:ss:mm" placeholder="选择日期">
|
|
|
+ </el-date-picker>
|
|
|
</span>
|
|
|
<span slot="footer" class="dialog-footer">
|
|
|
<el-button @click="dialog = false;">取 消</el-button>
|
|
|
@@ -337,18 +185,18 @@ import {
|
|
|
} from "@/api/basicData/invoice";
|
|
|
import uploadFile from "@/components/upload-file/main";
|
|
|
import reportDialog from "@/components/report-dialog/main";
|
|
|
-import { micrometerFormat, IntegerFormat } from "@/util/validate";
|
|
|
+import { micrometerFormat2, IntegerFormat, decimalFormat2 } from "@/util/validate";
|
|
|
import { contrastObj, contrastList } from "@/util/contrastData";
|
|
|
import _ from "lodash";
|
|
|
import fa from "element-ui/src/locale/lang/fa";
|
|
|
-import {dateFormat} from "@/util/date";
|
|
|
+import { dateFormat } from "@/util/date";
|
|
|
export default {
|
|
|
name: "detailsPageEdit",
|
|
|
data() {
|
|
|
return {
|
|
|
- fudaSatus:0,
|
|
|
- dialog:false,
|
|
|
- pickerValue:dateFormat(new Date(), "yyyy-MM-dd") + " 00:00:00",
|
|
|
+ fudaSatus: 0,
|
|
|
+ dialog: false,
|
|
|
+ pickerValue: dateFormat(new Date(), "yyyy-MM-dd") + " 00:00:00",
|
|
|
treeStyle: "height:" + (window.innerHeight - 315) + "px",
|
|
|
configuration2: {
|
|
|
multipleChoices: false,
|
|
|
@@ -381,7 +229,7 @@ export default {
|
|
|
],
|
|
|
span: 8,
|
|
|
slot: true
|
|
|
- },{
|
|
|
+ }, {
|
|
|
label: "公司主体",
|
|
|
prop: "belongToCorpId",
|
|
|
disabled: true,
|
|
|
@@ -436,17 +284,17 @@ export default {
|
|
|
type: "textarea",
|
|
|
minRows: 2,
|
|
|
disabled: true,
|
|
|
- },{
|
|
|
+ }, {
|
|
|
label: "订单日期",
|
|
|
prop: "businesDate",
|
|
|
span: 8,
|
|
|
disabled: true,
|
|
|
- },{
|
|
|
+ }, {
|
|
|
label: "计划交货日期",
|
|
|
prop: "plannedDeliveryDate",
|
|
|
span: 8,
|
|
|
disabled: true,
|
|
|
- },{
|
|
|
+ }, {
|
|
|
label: "联系人",
|
|
|
prop: "corpAttn",
|
|
|
disabled: true,
|
|
|
@@ -457,145 +305,145 @@ export default {
|
|
|
prop: "corpTel",
|
|
|
disabled: true,
|
|
|
span: 8
|
|
|
- },{
|
|
|
+ }, {
|
|
|
label: "货物类型",
|
|
|
prop: "cargoType",
|
|
|
span: 8,
|
|
|
disabled: true,
|
|
|
- },{
|
|
|
+ }, {
|
|
|
label: "起运港",
|
|
|
prop: "portOfLoad",
|
|
|
span: 8,
|
|
|
disabled: true,
|
|
|
- },{
|
|
|
+ }, {
|
|
|
label: "目的港",
|
|
|
prop: "portOfDestination",
|
|
|
span: 8,
|
|
|
disabled: true,
|
|
|
- },{
|
|
|
+ }, {
|
|
|
label: "运输方式",
|
|
|
prop: "transport",
|
|
|
span: 8,
|
|
|
disabled: true,
|
|
|
- },{
|
|
|
- label: "运输方式描述",
|
|
|
- prop: "transportDescription",
|
|
|
- span: 8,
|
|
|
- disabled: true,
|
|
|
- },{
|
|
|
+ }, {
|
|
|
+ label: "运输方式描述",
|
|
|
+ prop: "transportDescription",
|
|
|
+ span: 8,
|
|
|
+ disabled: true,
|
|
|
+ }, {
|
|
|
label: "价格条款",
|
|
|
prop: "priceTerms",
|
|
|
span: 8,
|
|
|
disabled: true,
|
|
|
- },{
|
|
|
+ }, {
|
|
|
label: "价格条款描述",
|
|
|
prop: "priceTermsDescription",
|
|
|
span: 8,
|
|
|
disabled: true,
|
|
|
- },{
|
|
|
+ }, {
|
|
|
label: "币别",
|
|
|
prop: "currency",
|
|
|
span: 8,
|
|
|
disabled: true,
|
|
|
- },{
|
|
|
+ }, {
|
|
|
label: "付款方式",
|
|
|
prop: "paymentType",
|
|
|
span: 8,
|
|
|
disabled: true,
|
|
|
- },{
|
|
|
+ }, {
|
|
|
label: "收付款方式描述",
|
|
|
prop: "paymentTypeDescription",
|
|
|
span: 8,
|
|
|
disabled: true,
|
|
|
- },{
|
|
|
+ }, {
|
|
|
label: "汇率",
|
|
|
prop: "exchangeRate",
|
|
|
span: 8,
|
|
|
disabled: true,
|
|
|
- },{
|
|
|
+ }, {
|
|
|
label: "日期条款",
|
|
|
prop: "dateClause",
|
|
|
span: 8,
|
|
|
disabled: true,
|
|
|
- },{
|
|
|
+ }, {
|
|
|
label: "日期说明",
|
|
|
prop: "dateDesc",
|
|
|
span: 8,
|
|
|
disabled: true,
|
|
|
- },{
|
|
|
+ }, {
|
|
|
label: "船名",
|
|
|
prop: "shipName",
|
|
|
span: 8,
|
|
|
- },{
|
|
|
+ }, {
|
|
|
label: "航次",
|
|
|
prop: "voyage",
|
|
|
span: 8,
|
|
|
- },{
|
|
|
+ }, {
|
|
|
label: "工作号",
|
|
|
prop: "jobNumber",
|
|
|
span: 8,
|
|
|
- },{
|
|
|
+ }, {
|
|
|
label: "采购备注",
|
|
|
prop: "purchaseRemark",
|
|
|
type: "textarea",
|
|
|
minRows: 2,
|
|
|
disabled: true,
|
|
|
span: 16
|
|
|
- },{
|
|
|
+ }, {
|
|
|
label: '需产地证',
|
|
|
prop: 'certificateOriginRequired',
|
|
|
type: 'select',
|
|
|
span: 8,
|
|
|
dicData: [{
|
|
|
- label: "是",
|
|
|
- value: "1"
|
|
|
+ label: "是",
|
|
|
+ value: "1"
|
|
|
}, {
|
|
|
- label: "否",
|
|
|
- value: "0"
|
|
|
+ label: "否",
|
|
|
+ value: "0"
|
|
|
}],
|
|
|
value: "1"
|
|
|
- },{
|
|
|
+ }, {
|
|
|
label: "船务备注",
|
|
|
prop: "shippingRemark",
|
|
|
type: "textarea",
|
|
|
minRows: 2,
|
|
|
disabled: true,
|
|
|
span: 16
|
|
|
- },{
|
|
|
+ }, {
|
|
|
label: "签单方式",
|
|
|
prop: "signingMethod",
|
|
|
span: 8,
|
|
|
type: "select",
|
|
|
dicUrl: "/api/blade-system/dict-biz/dictionary?code=signing_method",
|
|
|
props: {
|
|
|
- label: "dictValue",
|
|
|
- value: "dictValue"
|
|
|
+ label: "dictValue",
|
|
|
+ value: "dictValue"
|
|
|
},
|
|
|
rules: [{
|
|
|
- required: false,
|
|
|
- message: "",
|
|
|
- trigger: "blur"
|
|
|
+ required: false,
|
|
|
+ message: "",
|
|
|
+ trigger: "blur"
|
|
|
}]
|
|
|
- },{
|
|
|
+ }, {
|
|
|
label: "备注",
|
|
|
prop: "deliveryRemarks",
|
|
|
type: "textarea",
|
|
|
minRows: 2,
|
|
|
span: 16
|
|
|
- },{
|
|
|
+ }, {
|
|
|
label: "三方检验",
|
|
|
prop: "tripartiteInspection",
|
|
|
span: 8,
|
|
|
type: "select",
|
|
|
dicUrl: "/api/blade-system/dict-biz/dictionary?code=tripartite_inspection",
|
|
|
props: {
|
|
|
- label: "dictValue",
|
|
|
- value: "dictValue"
|
|
|
+ label: "dictValue",
|
|
|
+ value: "dictValue"
|
|
|
},
|
|
|
rules: [{
|
|
|
- required: false,
|
|
|
- message: "",
|
|
|
- trigger: "blur"
|
|
|
+ required: false,
|
|
|
+ message: "",
|
|
|
+ trigger: "blur"
|
|
|
}]
|
|
|
}
|
|
|
]
|
|
|
@@ -603,7 +451,7 @@ export default {
|
|
|
treeOption: {
|
|
|
nodeKey: "id",
|
|
|
lazy: true,
|
|
|
- treeLoad: function(node, resolve) {
|
|
|
+ treeLoad: function (node, resolve) {
|
|
|
const parentId = node.level === 0 ? 0 : node.data.id;
|
|
|
getDeptLazyTree(parentId).then(res => {
|
|
|
resolve(
|
|
|
@@ -688,9 +536,9 @@ export default {
|
|
|
this.findObject(this.tableOption.column, "unit").dicData = res.data.data;
|
|
|
});
|
|
|
},
|
|
|
- watch:{
|
|
|
+ watch: {
|
|
|
dialog(newVla, oldVal) {
|
|
|
- if (newVla){
|
|
|
+ if (newVla) {
|
|
|
this.pickerValue = dateFormat(new Date(), "yyyy-MM-dd") + " 00:00:00"
|
|
|
}
|
|
|
}
|
|
|
@@ -698,6 +546,9 @@ export default {
|
|
|
filters: {
|
|
|
IntegerFormat(num) {
|
|
|
return IntegerFormat(num);
|
|
|
+ },
|
|
|
+ decimalFormat2(num) {
|
|
|
+ return decimalFormat2(num);
|
|
|
}
|
|
|
},
|
|
|
methods: {
|
|
|
@@ -707,8 +558,8 @@ export default {
|
|
|
copyDoc() {
|
|
|
this.$emit("copyOrder", this.form.id);
|
|
|
},
|
|
|
- PSModification(type){
|
|
|
- if (!this.pickerValue)return this.$message.error("请选择日期")
|
|
|
+ PSModification(type) {
|
|
|
+ if (!this.pickerValue) return this.$message.error("请选择日期")
|
|
|
const loading = this.$loading({
|
|
|
lock: true,
|
|
|
text: '操作中',
|
|
|
@@ -716,18 +567,18 @@ export default {
|
|
|
background: 'rgba(255,255,255,0.7)'
|
|
|
});
|
|
|
purchaseStatusUpdate({
|
|
|
- id:this.form.id,
|
|
|
- documentaryStatusType:type,
|
|
|
- documentaryDate:this.pickerValue,
|
|
|
- customsDate:this.pickerValue,
|
|
|
- shippingDate:this.pickerValue
|
|
|
- }).then(res=>{
|
|
|
+ id: this.form.id,
|
|
|
+ documentaryStatusType: type,
|
|
|
+ documentaryDate: this.pickerValue,
|
|
|
+ customsDate: this.pickerValue,
|
|
|
+ shippingDate: this.pickerValue
|
|
|
+ }).then(res => {
|
|
|
loading.close();
|
|
|
this.$message.success("操作成功")
|
|
|
this.pickerValue = ''
|
|
|
this.dialog = false
|
|
|
this.getDetail(this.form.id);
|
|
|
- }).catch(err=>{
|
|
|
+ }).catch(err => {
|
|
|
loading.close();
|
|
|
this.pickerValue = ''
|
|
|
this.dialog = false
|
|
|
@@ -926,78 +777,78 @@ export default {
|
|
|
background: 'rgba(255,255,255,0.7)'
|
|
|
});
|
|
|
detail(id).then(res => {
|
|
|
- if (this.detailData.status == "copy") {
|
|
|
- delete res.data.data.id;
|
|
|
- delete res.data.data.sysNo;
|
|
|
- delete res.data.data.orderNo;
|
|
|
- delete res.data.data.orgOrderNo;
|
|
|
- delete res.data.data.srcOrderNo;
|
|
|
- delete res.data.data.createTime;
|
|
|
- delete res.data.data.createUser;
|
|
|
- delete res.data.data.createUserName;
|
|
|
- delete res.data.data.updateTime;
|
|
|
- delete res.data.data.updateUser;
|
|
|
- delete res.data.data.updateUserName;
|
|
|
- delete res.data.data.morderNo;
|
|
|
- delete res.data.data.status;
|
|
|
- delete res.data.data.ifEnquiry;
|
|
|
- delete res.data.data.ifShipping;
|
|
|
- delete res.data.data.customsStatus;
|
|
|
- delete res.data.data.shippingStatus;
|
|
|
- delete res.data.data.documentaryStatus;
|
|
|
- res.data.data.orderStatus = "录入";
|
|
|
- res.data.data.deliveryItemsList.forEach(e => {
|
|
|
- delete e.id;
|
|
|
- delete e.pid;
|
|
|
- delete e.createTime;
|
|
|
- delete e.createUser;
|
|
|
- delete e.updateTime;
|
|
|
- delete e.updateUser;
|
|
|
- delete e.orgOrderNo;
|
|
|
- delete e.srcId;
|
|
|
- delete e.status;
|
|
|
- delete e.isDeleted;
|
|
|
- });
|
|
|
- res.data.data.deliveryFeesList.forEach(e => {
|
|
|
- delete e.id;
|
|
|
- delete e.pid;
|
|
|
- delete e.createTime;
|
|
|
- delete e.createUser;
|
|
|
- delete e.updateTime;
|
|
|
- delete e.updateUser;
|
|
|
- delete e.status;
|
|
|
- delete e.isDeleted;
|
|
|
- });
|
|
|
- res.data.data.deliveryFilesList.forEach(e => {
|
|
|
- delete e.id;
|
|
|
- delete e.pid;
|
|
|
- delete e.createTime;
|
|
|
- delete e.createUser;
|
|
|
- delete e.updateTime;
|
|
|
- delete e.updateUser;
|
|
|
- delete e.status;
|
|
|
- delete e.isDeleted;
|
|
|
- });
|
|
|
- }
|
|
|
- this.form = res.data.data;
|
|
|
- this.data = res.data.data.deliveryItemsList;
|
|
|
- this.orderFeesList = res.data.data.deliveryFeesList;
|
|
|
- this.orderFilesList = res.data.data.deliveryFilesList;
|
|
|
- this.oldform = res.data.data;
|
|
|
- this.olddata = this.deepClone(res.data.data.deliveryItemsList);
|
|
|
- this.oldorderFeesList = this.deepClone(
|
|
|
- res.data.data.deliveryFeesList
|
|
|
- );
|
|
|
- this.oldorderFilesList = this.deepClone(
|
|
|
- res.data.data.deliveryFilesList
|
|
|
- );
|
|
|
- loading.close();
|
|
|
- }).finally(() => {
|
|
|
- this.loading = false;
|
|
|
- this.showBut = true;
|
|
|
- this.pageLoading = false;
|
|
|
+ if (this.detailData.status == "copy") {
|
|
|
+ delete res.data.data.id;
|
|
|
+ delete res.data.data.sysNo;
|
|
|
+ delete res.data.data.orderNo;
|
|
|
+ delete res.data.data.orgOrderNo;
|
|
|
+ delete res.data.data.srcOrderNo;
|
|
|
+ delete res.data.data.createTime;
|
|
|
+ delete res.data.data.createUser;
|
|
|
+ delete res.data.data.createUserName;
|
|
|
+ delete res.data.data.updateTime;
|
|
|
+ delete res.data.data.updateUser;
|
|
|
+ delete res.data.data.updateUserName;
|
|
|
+ delete res.data.data.morderNo;
|
|
|
+ delete res.data.data.status;
|
|
|
+ delete res.data.data.ifEnquiry;
|
|
|
+ delete res.data.data.ifShipping;
|
|
|
+ delete res.data.data.customsStatus;
|
|
|
+ delete res.data.data.shippingStatus;
|
|
|
+ delete res.data.data.documentaryStatus;
|
|
|
+ res.data.data.orderStatus = "录入";
|
|
|
+ res.data.data.deliveryItemsList.forEach(e => {
|
|
|
+ delete e.id;
|
|
|
+ delete e.pid;
|
|
|
+ delete e.createTime;
|
|
|
+ delete e.createUser;
|
|
|
+ delete e.updateTime;
|
|
|
+ delete e.updateUser;
|
|
|
+ delete e.orgOrderNo;
|
|
|
+ delete e.srcId;
|
|
|
+ delete e.status;
|
|
|
+ delete e.isDeleted;
|
|
|
+ });
|
|
|
+ res.data.data.deliveryFeesList.forEach(e => {
|
|
|
+ delete e.id;
|
|
|
+ delete e.pid;
|
|
|
+ delete e.createTime;
|
|
|
+ delete e.createUser;
|
|
|
+ delete e.updateTime;
|
|
|
+ delete e.updateUser;
|
|
|
+ delete e.status;
|
|
|
+ delete e.isDeleted;
|
|
|
+ });
|
|
|
+ res.data.data.deliveryFilesList.forEach(e => {
|
|
|
+ delete e.id;
|
|
|
+ delete e.pid;
|
|
|
+ delete e.createTime;
|
|
|
+ delete e.createUser;
|
|
|
+ delete e.updateTime;
|
|
|
+ delete e.updateUser;
|
|
|
+ delete e.status;
|
|
|
+ delete e.isDeleted;
|
|
|
+ });
|
|
|
+ }
|
|
|
+ this.form = res.data.data;
|
|
|
+ this.data = res.data.data.deliveryItemsList;
|
|
|
+ this.orderFeesList = res.data.data.deliveryFeesList;
|
|
|
+ this.orderFilesList = res.data.data.deliveryFilesList;
|
|
|
+ this.oldform = res.data.data;
|
|
|
+ this.olddata = this.deepClone(res.data.data.deliveryItemsList);
|
|
|
+ this.oldorderFeesList = this.deepClone(
|
|
|
+ res.data.data.deliveryFeesList
|
|
|
+ );
|
|
|
+ this.oldorderFilesList = this.deepClone(
|
|
|
+ res.data.data.deliveryFilesList
|
|
|
+ );
|
|
|
loading.close();
|
|
|
- });
|
|
|
+ }).finally(() => {
|
|
|
+ this.loading = false;
|
|
|
+ this.showBut = true;
|
|
|
+ this.pageLoading = false;
|
|
|
+ loading.close();
|
|
|
+ });
|
|
|
},
|
|
|
getGenerate(data) {
|
|
|
this.form = data;
|
|
|
@@ -1032,32 +883,32 @@ export default {
|
|
|
deliveryFeesList: orderFeesList,
|
|
|
deliveryFilesList: this.orderFilesList
|
|
|
}).then(res => {
|
|
|
- this.$message.success("保存成功");
|
|
|
- this.form = res.data.data;
|
|
|
- this.data = res.data.data.deliveryItemsList;
|
|
|
- this.orderFeesList = res.data.data.deliveryFeesList;
|
|
|
- this.orderFilesList = res.data.data.deliveryFilesList;
|
|
|
- this.oldform = res.data.data;
|
|
|
- this.olddata = this.deepClone(res.data.data.deliveryItemsList);
|
|
|
- this.oldorderFeesList = this.deepClone(
|
|
|
- res.data.data.deliveryFeesList
|
|
|
- );
|
|
|
- this.oldorderFilesList = this.deepClone(
|
|
|
- res.data.data.deliveryFilesList
|
|
|
- );
|
|
|
- if (status2 == "goBack") {
|
|
|
- if (this.form.id) {
|
|
|
- this.unLock({
|
|
|
- moduleName: "fh",
|
|
|
- tableName: "business_order",
|
|
|
- billId: this.form.id,
|
|
|
- billNo: this.form.orgOrderNo
|
|
|
- });
|
|
|
- }
|
|
|
- this.$emit("goBack");
|
|
|
- this.leaveDetailsKey(this.$route.name);
|
|
|
+ this.$message.success("保存成功");
|
|
|
+ this.form = res.data.data;
|
|
|
+ this.data = res.data.data.deliveryItemsList;
|
|
|
+ this.orderFeesList = res.data.data.deliveryFeesList;
|
|
|
+ this.orderFilesList = res.data.data.deliveryFilesList;
|
|
|
+ this.oldform = res.data.data;
|
|
|
+ this.olddata = this.deepClone(res.data.data.deliveryItemsList);
|
|
|
+ this.oldorderFeesList = this.deepClone(
|
|
|
+ res.data.data.deliveryFeesList
|
|
|
+ );
|
|
|
+ this.oldorderFilesList = this.deepClone(
|
|
|
+ res.data.data.deliveryFilesList
|
|
|
+ );
|
|
|
+ if (status2 == "goBack") {
|
|
|
+ if (this.form.id) {
|
|
|
+ this.unLock({
|
|
|
+ moduleName: "fh",
|
|
|
+ tableName: "business_order",
|
|
|
+ billId: this.form.id,
|
|
|
+ billNo: this.form.orgOrderNo
|
|
|
+ });
|
|
|
}
|
|
|
- })
|
|
|
+ this.$emit("goBack");
|
|
|
+ this.leaveDetailsKey(this.$route.name);
|
|
|
+ }
|
|
|
+ })
|
|
|
.finally(() => {
|
|
|
this.subLoading = false;
|
|
|
});
|
|
|
@@ -1190,11 +1041,11 @@ export default {
|
|
|
});
|
|
|
//数量总计
|
|
|
if (item.property == "actualQuantity") {
|
|
|
- sums[index] = qtySum ? qtySum.toFixed(2) : "0.00";
|
|
|
+ sums[index] = micrometerFormat2(qtySum);
|
|
|
}
|
|
|
//金额总计
|
|
|
if (item.property == "contractAmount") {
|
|
|
- sums[index] = micrometerFormat(amountSum);
|
|
|
+ sums[index] = micrometerFormat2(amountSum);
|
|
|
}
|
|
|
}
|
|
|
});
|
|
|
@@ -1297,9 +1148,11 @@ export default {
|
|
|
.trading-form ::v-deep .el-form-item {
|
|
|
margin-bottom: 8px !important;
|
|
|
}
|
|
|
+
|
|
|
::v-deep .el-form-item__error {
|
|
|
display: none !important;
|
|
|
}
|
|
|
+
|
|
|
::v-deep .select-component {
|
|
|
display: flex !important;
|
|
|
}
|