From 96fdf32bd5612b6c16dcbcc8352a9f54adcc8e7e Mon Sep 17 00:00:00 2001
From: yangfeng <wanwan926_4@163.com>
Date: 星期五, 18 八月 2023 16:26:59 +0800
Subject: [PATCH] 產品相關及bug修復
---
src/views/service/serviceContract/DetailServiceContract.vue | 32
src/views/service/clientServiceOrder/DetailClientServiceOrder.vue | 2
src/views/sales/salesDetails/AddSalesDetailsDialog.vue | 164 ++--
src/components/makepager/TableCommonView.vue | 10
src/views/sales/salesDetails/DetailSpecification.vue | 32
src/views/other/payment/receipt/index.vue | 10
src/views/client/followupRecords/index.vue | 2
src/views/sales/salesReturn/DetailReturn.vue | 32
src/views/sales/subOrder/DetailSubOrder.vue | 32
src/views/other/payment/collectionPlan/AddCollectionPlan.vue | 195 ++---
src/views/client/contacts/DetailContacts.vue | 2
src/views/sales/salesDetails/index.vue | 21
src/views/service/serviceContract/AddServiceContractDialog.vue | 134 ++--
src/views/sales/refundForm/DetailRefundForm.vue | 38
src/views/client/client/DetailClientManage.vue | 12
src/views/sales/generatePlan/DetailGeneratePlan.vue | 6
src/components/makepager/CommonFormTableView.vue | 239 ++++++
src/views/other/commonDialog/SelectCommonDialog.vue | 5
src/views/sales/contractManage/DetailContractManage.vue | 6
src/views/sales/masterOrder/AddMasterOrderDialog.vue | 106 +-
src/views/sales/salesReturn/AddSalesReturnDialog.vue | 171 ++++-
src/views/sales/refundForm/AddRefundFormDialog.vue | 161 +++-
src/views/service/serviceFollowup/DetailServiceFollowup.vue | 6
src/views/client/salesLead/DetailSalesLead.vue | 56 +
src/views/sales/salesOpportunity/AddSalesOpportunityDialog.vue | 12
src/views/sales/quotation/AddQuotationDialog.vue | 116 +-
src/views/sales/quotation/DetailQuotation.vue | 32
src/views/sales/subOrder/AddSubOrderDialog.vue | 205 ++----
src/views/other/payment/collectionPlan/index.vue | 10
src/views/sales/contractManage/AddContractManageDialog.vue | 4
src/views/sales/quotation/index.vue | 6
31 files changed, 1,009 insertions(+), 850 deletions(-)
diff --git a/src/components/makepager/CommonFormTableView.vue b/src/components/makepager/CommonFormTableView.vue
index 128caa4..b955bf0 100644
--- a/src/components/makepager/CommonFormTableView.vue
+++ b/src/components/makepager/CommonFormTableView.vue
@@ -1,15 +1,15 @@
<template>
<div class="page-view">
- <el-form ref="form" :model="productTableList" :show-message="false" label-position="right">
+ <el-form ref="form" :model="tableList" :show-message="false" label-position="right">
<el-table
- :data="productTableList.tableData"
+ :data="tableList.tableData"
:show-summary="showSummary.show"
:summary-method="getSummaries"
:span-method="arraySpanMethod"
style="width: 100%"
>
<el-table-column
- v-for="(item, i) in productTableList.tableColumn"
+ v-for="(item, i) in tableList.tableColumn"
:key="i"
:prop="item.prop"
:label="item.label"
@@ -43,6 +43,32 @@
></el-input>
</el-form-item>
<el-form-item
+ v-else-if="item.productName"
+ label=" "
+ :prop="'tableData.' + scope.$index + '.' + item.prop"
+ :rules="[{ required: item.isRequird ? true : false, message: '浜у搧鍚嶇О涓嶈兘涓虹┖' }]"
+ >
+ <div class="custom-name">
+ <el-autocomplete
+ v-model="scope.row[item.prop]"
+ :fetch-suggestions="querySearchAsync"
+ value-key="name"
+ size="mini"
+ @select="
+ (val) => {
+ handleSelectClient(val, item.prop, scope.row)
+ }
+ "
+ ></el-autocomplete>
+ <div class="common-select-btn" @click="selClientClick(scope.row, item.prop)">
+ <i class="el-icon-circle-plus-outline" title="閫夋嫨"></i>
+ </div>
+ <div class="common-select-btn" @click="clearupClient(scope.row)">
+ <i class="el-icon-edit-outline" title="娓呴櫎"></i>
+ </div>
+ </div>
+ </el-form-item>
+ <el-form-item
v-else-if="item.date"
label=" "
:prop="'tableData.' + scope.$index + '.' + item.prop"
@@ -51,6 +77,47 @@
<!-- <el-input v-model.trim="scope.row[item.prop]" maxlength="50" size="mini"></el-input> -->
<el-date-picker v-model="scope.row[item.prop]" type="date" size="mini" style="width: 110px">
</el-date-picker>
+ </el-form-item>
+ <el-form-item
+ v-else-if="item.inputNumber"
+ label=" "
+ :prop="'tableData.' + scope.$index + '.' + item.prop"
+ :rules="[{ required: item.isRequird ? true : false, message: '杈撳叆涓嶈兘涓虹┖' }]"
+ >
+ <el-input-number
+ v-model="scope.row[item.prop]"
+ placeholder=""
+ :min="0"
+ :controls="false"
+ size="mini"
+ style="width: 100%; margin-right: 5px"
+ @change="
+ (val) => {
+ commonInputChange(val, item.prop, scope.row)
+ }
+ "
+ ></el-input-number>
+ </el-form-item>
+ <el-form-item
+ v-else-if="item.inputFloat"
+ label=" "
+ :prop="'tableData.' + scope.$index + '.' + item.prop"
+ :rules="[{ required: item.isRequird ? true : false, message: '杈撳叆涓嶈兘涓虹┖' }]"
+ >
+ <el-input-number
+ v-model="scope.row[item.prop]"
+ placeholder=""
+ :min="0"
+ :precision="2"
+ :controls="false"
+ size="mini"
+ style="width: 100%; margin-right: 5px"
+ @change="
+ (val) => {
+ commonInputChange(val, item.prop, scope.row)
+ }
+ "
+ ></el-input-number>
</el-form-item>
<span v-else>{{ scope.row[item.prop] }}</span>
</template>
@@ -77,12 +144,21 @@
</el-col>
</el-row>
</div>
+ <!-- 鍚堝悓璁㈠崟 -->
+ <SelectCommonDialog
+ v-if="editSelCommonConfig.editVisible"
+ :edit-common-config="editSelCommonConfig"
+ @selClient="selClient"
+ />
</div>
</template>
<script>
+import { getProductList } from "@/api/common/other"
+import SelectCommonDialog from "@/views/other/commonDialog/SelectCommonDialog"
export default {
name: "CommmonFormTableView",
+ components: { SelectCommonDialog },
props: {
detailEnter: {
type: Boolean,
@@ -115,11 +191,39 @@
},
data() {
return {
- total: 0
+ total: 0,
+ productList: [],
+ tableList: [],
+ editSelCommonConfig: {
+ editVisible: false,
+ title: "",
+ infomation: {}
+ },
+ productIndex: 0
}
+ },
+ created() {
+ this.getProductList()
+ this.tableList = this.productTableList
},
computed: {},
methods: {
+ // 浜у搧鍚嶇О
+ async getProductList() {
+ await getProductList({
+ productName: "",
+ productNumber: "",
+ page: 1,
+ pageSize: 5
+ }).then((res) => {
+ console.log(res.data)
+ if (res.data.code === 200) {
+ if (res.data.data.data && res.data.data.data.length > 0) {
+ this.productList = res.data.data.data
+ }
+ }
+ })
+ },
handleReserve(row) {
return row._id ? row._id : row.id
},
@@ -144,32 +248,41 @@
},
// 鍚堣
getSummaries(param) {
- if (this.showSummary.show) {
- const { columns, data } = param
- const sums = []
- columns.forEach((column, index) => {
- if (index === this.showSummary.mergeNumber) {
- sums[index] = "灏忚"
- }
- const values = data.map((item) => Number(item[column.property]))
- // if (column.property === this.showSummary.sumProp) {
- if (this.showSummary.sumProp.includes(column.property)) {
- sums[index] = values.reduce((prev, curr) => {
- const value = Number(curr)
- if (!isNaN(value)) {
- return this.number_format(prev + curr, 2, ".", ",")
- } else {
- return this.number_format(prev, 2, ".", ",")
- }
- }, 0)
- if (column.property === "total") {
- this.total = sums[index]
+ const { columns, data } = param
+ const sums = []
+ columns.forEach((column, index) => {
+ // // 鏇存敼琛屽悕绉�
+ if (index === this.showSummary.mergeNumber) {
+ sums[index] = "灏忚:"
+ return
+ }
+ const title = ["#"]
+ // 鍘婚櫎鏌愪簺涓嶉渶瑕佽绠楃殑鏁版嵁
+ if (title.includes(column.label)) {
+ sums[index] = ""
+ return
+ }
+ // 鎶婂綋鍓嶈〃鏍兼暟鎹腑鍚屼釜鍒嗙被鐨勬暟鎹敹闆嗚捣鏉�
+ const values = data.map((item) => Number(item[column.property]))
+ // 杩囨护鎺�
+ if (!values.every((value) => Number.isNaN(value))) {
+ sums[index] = ` ${values.reduce((prev, curr) => {
+ const value = Number(curr)
+ if (!Number.isNaN(value)) {
+ const num = prev + curr
+ return Number(num.toFixed(2))
+ } else {
+ return Number(prev.toFixed(2))
}
- sums[index]
- }
- })
- return sums
- }
+ }, 0)}`
+ } else {
+ sums[index] = ""
+ }
+ if (column.property === "total") {
+ this.total = sums[index]
+ }
+ })
+ return sums
},
// 鏁板瓧鎹㈣涓洪噾棰濇樉绀烘牸寮�
number_format(number, decimals, dec_point, thousands_sep) {
@@ -223,6 +336,63 @@
this.$emit("recalculateProductClick")
})
.catch(() => {})
+ },
+ // 閫夋嫨浜у搧鍚嶇О鐩稿叧鏂规硶
+ querySearchAsync(queryString, cb) {
+ var restaurants = this.productList
+ var results = queryString ? restaurants.filter(this.createStateFilter(queryString)) : restaurants
+ cb(results)
+ },
+ createStateFilter(queryString) {
+ return (state) => {
+ return state.name.toLowerCase().indexOf(queryString.toLowerCase()) === 0
+ }
+ },
+ handleSelectClient(item, prop, row) {
+ // this.clientId = item.id
+ console.log(item, prop, row)
+ this.tableList.tableData.map((ite) => {
+ if (ite.name === item.name) {
+ ite.amount = item.amount || 1
+ ite.number = item.number
+ ite.price = item.price
+ ite.total = item.amount ? item.amount * item.price : 1 * item.price
+ }
+ })
+ },
+ selClientClick(row, prop) {
+ console.log(row, prop)
+ this.productIndex = row.productId - 1
+ this.editSelCommonConfig.title = "浜у搧鍚嶇О"
+ this.editSelCommonConfig.editVisible = true
+ },
+ selClient(item) {
+ console.log(item)
+ console.log(this.tableList.tableData)
+ // this.editConfig.infomation.client_name = row.name
+ this.tableList.tableData.map((ite, index) => {
+ if (index === this.productIndex) {
+ ite.name = item.name
+ ite.amount = item.amount || 1
+ ite.number = item.number
+ ite.price = item.price
+ ite.total = item.amount ? item.amount * item.price : 1 * item.price
+ }
+ })
+ },
+ // 娓呴櫎宸查�夋嫨鐢ㄦ埛
+ clearupClient(row) {
+ this.productIndex = row.productId - 1
+ this.tableList.tableData.map((ite, index) => {
+ if (index === this.productIndex) {
+ ite.name = ""
+ ite.amount = 1
+ ite.number = ""
+ ite.price = 0
+ ite.total = 0
+ }
+ })
+ this.$emit("clearupProduct", this.tableList.tableData)
}
}
}
@@ -233,6 +403,14 @@
.page-view {
.el-form-item {
margin-bottom: 0;
+ .custom-name {
+ display: flex;
+ .common-select-btn {
+ margin-left: 5px;
+ font-size: 18px;
+ cursor: pointer;
+ }
+ }
}
}
::v-deep {
@@ -251,5 +429,8 @@
.el-table th.el-table__cell > .cell {
padding: 0 5px;
}
+ .el-input__inner {
+ text-align: left;
+ }
}
</style>
diff --git a/src/components/makepager/TableCommonView.vue b/src/components/makepager/TableCommonView.vue
index 5abfbd8..e390ee3 100644
--- a/src/components/makepager/TableCommonView.vue
+++ b/src/components/makepager/TableCommonView.vue
@@ -92,6 +92,16 @@
</ul>
<div v-else class="no-product">{{ "--" }}</div>
</div>
+ <div v-else-if="item.isProductCommon" class="product-view">
+ <ul v-if="scope.row.products && scope.row.products.length > 0">
+ <li v-for="(item, index) in scope.row.products" :key="index">
+ <div :class="scope.row.products.length === 1 ? 'name-view no-bottom' : 'name-view'">
+ {{ item.prop === "price" ? item.price : item.total }}
+ </div>
+ </li>
+ </ul>
+ <div v-else class="no-product">{{ "--" }}</div>
+ </div>
<span v-else>{{ scope.row[item.prop] ? scope.row[item.prop] : "--" }}</span>
</template>
</el-table-column>
diff --git a/src/views/client/client/DetailClientManage.vue b/src/views/client/client/DetailClientManage.vue
index ac60d6b..d71dab4 100644
--- a/src/views/client/client/DetailClientManage.vue
+++ b/src/views/client/client/DetailClientManage.vue
@@ -306,11 +306,11 @@
leftStr: "鎵�灞炲叕娴�",
leftValue: "",
rightStr: "涓嬫鍥炶鏃ユ湡",
- rightValue: this.processTime(item.next_visit_time)
+ rightValue: item.next_visit_time
},
{
leftStr: "鏈�鏅氭湇鍔″埌鏈熸棩",
- leftValue: this.processTime(item.latest_service_time),
+ leftValue: item.latest_service_time,
rightStr: "鍒涘缓鏃堕棿",
rightValue: ""
},
@@ -364,7 +364,7 @@
},
{
leftStr: "娉ㄥ唽鏃堕棿",
- leftValue: this.processTime(item.registration_time),
+ leftValue: item.registration_time,
rightStr: "娉ㄥ唽璧勯噾",
rightValue: item.RegisteredCapital.name
},
@@ -421,12 +421,6 @@
} else if (value === "annex") {
this.isAnnexExpand = !this.isAnnexExpand
}
- },
- // 澶勭悊鏃堕棿
- processTime(dateTime) {
- return this.dateFormat("YYYY-mm-dd HH:MM:SS", dateTime) === "1900-01-01 08:00:00"
- ? "--"
- : this.dateFormat("YYYY-mm-dd HH:MM:SS", dateTime)
},
// 鏃堕棿鏄剧ず
dateFormat(fmt, date) {
diff --git a/src/views/client/contacts/DetailContacts.vue b/src/views/client/contacts/DetailContacts.vue
index 74d6407..b375e17 100644
--- a/src/views/client/contacts/DetailContacts.vue
+++ b/src/views/client/contacts/DetailContacts.vue
@@ -203,7 +203,7 @@
},
{
leftStr: "涓嬫鍥炶鏃ユ湡",
- leftValue: "",
+ leftValue: item.Client.next_visit_time,
rightStr: "鏈�鏂拌仈绯绘棩鏈�",
rightValue: ""
},
diff --git a/src/views/client/followupRecords/index.vue b/src/views/client/followupRecords/index.vue
index 7227a7e..9922a00 100644
--- a/src/views/client/followupRecords/index.vue
+++ b/src/views/client/followupRecords/index.vue
@@ -153,7 +153,7 @@
{ label: "鑱旂郴浜哄鍚�", prop: "contact_name", min: 100, isContactClick: true }, // 鑱旂郴浜哄鍚�
{ label: "瀹㈡埛鐘舵��", prop: "client_status", min: 100 }, // 瀹㈡埛鐘舵��
{ label: "鑱旂郴鏂瑰紡", prop: "contact_information_name", min: 100 }, // 鑱旂郴鏂瑰紡
- { label: "鑱旂郴浜烘棩鏈�", prop: "follow_time", min: 130 }, // 鑱旂郴浜烘棩鏈�
+ { label: "鑱旂郴鏃ユ湡", prop: "follow_time", min: 130 }, // 鑱旂郴浜烘棩鏈�
{ label: "涓嬫鍥炶鏃ユ湡", prop: "next_follow_time", min: 130 }, // 涓嬫鍥炶鏃ユ湡
{ label: "璐熻矗浜�", prop: "member_name", min: 110 }, // 璐熻矗浜�
{ label: "璺熻繘璁板綍", prop: "record", min: 130 } // 璺熻繘璁板綍
diff --git a/src/views/client/salesLead/DetailSalesLead.vue b/src/views/client/salesLead/DetailSalesLead.vue
index 4a7745e..8a3a847 100644
--- a/src/views/client/salesLead/DetailSalesLead.vue
+++ b/src/views/client/salesLead/DetailSalesLead.vue
@@ -61,6 +61,10 @@
</div>
</li>
</ul>
+ <div class="business_scope">
+ <div class="content-title">{{ "鏈�鏂拌繘灞�" }}</div>
+ <div class="content-data">{{ record ? record : "--" }}</div>
+ </div>
</div>
</div>
<!-- 鍦板潃淇℃伅 -->
@@ -145,11 +149,12 @@
addressInfoList: [],
isRemarkExpand: true, // 澶囨敞淇℃伅
remarkInfoList: [],
- addConfig: {}
+ addConfig: {},
+ record: ""
}
},
created() {
- this.setData()
+ this.setData(this.detailConfig.infomation)
this.addConfig = {
id_name: "sales_leads_id",
id: this.detailConfig.infomation.id,
@@ -160,31 +165,34 @@
},
mounted() {},
methods: {
- setData() {
+ setData(item) {
+ if (item.FollowRecord && item.FollowRecord.length > 0) {
+ this.record = item.FollowRecord[0].record
+ }
this.basicInfoList = [
{
leftStr: "瀹㈡埛鍚嶇О",
- leftValue: this.detailConfig.infomation.name,
+ leftValue: item.name,
rightStr: "閿�鍞嚎绱㈢紪鍙�",
- rightValue: this.detailConfig.infomation.number
+ rightValue: item.number
},
{
leftStr: "鑱旂郴浜哄鍚�",
- leftValue: this.detailConfig.infomation.contact_name,
+ leftValue: item.contact_name,
rightStr: "鑱旂郴浜鸿亴鍔�",
- rightValue: this.detailConfig.infomation.contact_position
+ rightValue: item.contact_position
},
{
leftStr: "鎵嬫満鍙风爜",
- leftValue: this.detailConfig.infomation.contact_phone,
+ leftValue: item.contact_phone,
rightStr: "鍟嗘満鐘舵��",
rightValue: "鏂板缓"
},
{
leftStr: "鍟嗘満鏉ユ簮",
- leftValue: this.detailConfig.infomation.sales_resources,
+ leftValue: item.sales_resources,
rightStr: "璐熻矗浜�",
- rightValue: this.detailConfig.infomation.member_name
+ rightValue: item.member_name
},
{
leftStr: "鍒嗛厤鏃ユ湡",
@@ -209,13 +217,13 @@
{
leftStr: "鏈仈绯诲ぉ鏁�",
leftValue: "",
- rightStr: "鏈�鏂版帹杩涙椂闂�",
+ rightStr: "鏈�鏂拌仈绯绘棩鏈�",
rightValue: ""
},
{
leftStr: "鏈�鏂拌繘灞�",
- leftValue: "",
- rightStr: "鏈�鏂拌仈绯绘棩鏈�",
+ leftValue: this.record,
+ rightStr: "",
rightValue: ""
}
]
@@ -224,11 +232,11 @@
leftStr: "鍥藉",
leftValue: "涓浗",
rightStr: "鐪佷唤",
- rightValue: this.detailConfig.infomation.Province.name
+ rightValue: item.Province.name
},
{
leftStr: "鍩庡競",
- leftValue: this.detailConfig.infomation.City.name,
+ leftValue: item.City.name,
rightStr: "",
rightValue: ""
}
@@ -335,6 +343,24 @@
width: 100%;
}
}
+ .business_scope {
+ display: flex;
+ align-items: center;
+ font-size: 14px;
+ min-height: 40px;
+ .content-title {
+ width: 320px;
+ text-align: right;
+ color: #555;
+ }
+ .content-data {
+ flex: 1;
+ padding: 5px;
+ text-align: left;
+ margin-left: 25px;
+ color: #333;
+ }
+ }
}
}
}
diff --git a/src/views/other/commonDialog/SelectCommonDialog.vue b/src/views/other/commonDialog/SelectCommonDialog.vue
index fcc993e..60238cb 100644
--- a/src/views/other/commonDialog/SelectCommonDialog.vue
+++ b/src/views/other/commonDialog/SelectCommonDialog.vue
@@ -145,9 +145,8 @@
this.tableList = {
tableInfomation: [],
tableColumn: [
- { label: "浜у搧鍚嶇О", prop: "Name", isClick: true },
- { label: "浜у搧缂栧彿", prop: "Number" },
- { label: "瑙勬牸鍨嬪彿", prop: "MaterialMode" }
+ { label: "浜у搧鍚嶇О", prop: "name", isClick: true },
+ { label: "浜у搧缂栧彿", prop: "number" }
]
}
this.searchSel = { value: "Name", label: "浜у搧鍚嶇О" }
diff --git a/src/views/other/payment/collectionPlan/AddCollectionPlan.vue b/src/views/other/payment/collectionPlan/AddCollectionPlan.vue
index 64b634c..bf6b7cd 100644
--- a/src/views/other/payment/collectionPlan/AddCollectionPlan.vue
+++ b/src/views/other/payment/collectionPlan/AddCollectionPlan.vue
@@ -13,8 +13,8 @@
<div class="collection-view">
<div class="label">鏀舵璁″垝绫诲瀷</div>
<el-select v-model="editConfig.infomation.collectionType" size="mini">
- <el-option label="璁″垝鏀舵鏃ユ湡" value="1"></el-option>
- <el-option label="椤圭洰鐘舵��" value="2"></el-option>
+ <el-option label="璁″垝鏀舵鏃ユ湡" :value="1"></el-option>
+ <el-option label="椤圭洰鐘舵��" :value="2"></el-option>
</el-select>
</div>
<div class="collection-view">
@@ -191,11 +191,13 @@
sourceId: this.editCommonConfig.infomation.id,
principalId: 0,
planAmount: 0, // 璁″垝閲戦
- firstDate: this.getCurrentDate(1)
+ firstDate: this.getCurrentDate(1),
+ collectionType: 1,
+ tableInfomation: []
}
},
created() {
- console.log(this.editCommonConfig.sourceType)
+ console.log(this.editCommonConfig)
this.setData()
this.setTableForm()
this.getCommonData()
@@ -204,7 +206,7 @@
// 璁剧疆鍒濆鍊�
setData() {
this.editConfig.infomation = {
- collectionType: "1",
+ collectionType: this.collectionType,
moneyType: "浜烘皯甯�",
amount: this.amount.toFixed(2)
}
@@ -261,63 +263,9 @@
this.editConfig.visible = false
},
setTableForm() {
+ this.setTableInfomation(this.firstDate)
this.tableData = {
- tableInfomation: [
- {
- amount: this.amount,
- amountReceivable: this.amount * 0.3,
- amountReceived: 0,
- amountTotal: 0,
- collectionDate: this.getCurrentDate(1),
- collectionType: 0,
- fileId: 0,
- id: 0,
- moneyType: "浜烘皯甯�",
- percent: 30,
- principalId: this.principalId,
- remark: "",
- sourceId: this.sourceId,
- sourceType: this.sourceType,
- status: 1,
- term: 1
- },
- {
- amount: this.amount,
- amountReceivable: this.amount * 0.5,
- amountReceived: 0,
- amountTotal: 0,
- collectionDate: this.getCurrentDate(2),
- collectionType: 0,
- fileId: 0,
- id: 0,
- moneyType: "浜烘皯甯�",
- percent: 50,
- principalId: this.principalId,
- remark: "",
- sourceId: this.sourceId,
- sourceType: this.sourceType,
- status: 1,
- term: 2
- },
- {
- amount: this.amount,
- amountReceivable: this.amount * 0.2,
- amountReceived: 0,
- amountTotal: 0,
- collectionDate: this.getCurrentDate(3),
- collectionType: 0,
- fileId: 0,
- id: 0,
- moneyType: "浜烘皯甯�",
- percent: 20,
- principalId: this.principalId,
- remark: "",
- sourceId: this.sourceId,
- sourceType: this.sourceType,
- status: 1,
- term: 3
- }
- ],
+ tableInfomation: this.tableInfomation,
tableColumn: [
{ label: "鎿嶄綔", prop: "operate", width: 60 },
{ label: "鏈熸", prop: "term", inputNumber: true, width: 90 },
@@ -327,6 +275,65 @@
{ label: "澶囨敞", prop: "remark", input: true }
]
}
+ },
+ setTableInfomation(date) {
+ console.log(this.sourceId)
+ this.tableInfomation = [
+ {
+ amount: this.amount,
+ amountReceivable: this.amount * 0.3,
+ amountReceived: 0,
+ amountTotal: 0,
+ collectionDate: this.setDate(date, 0),
+ collectionType: this.editConfig.infomation.collectionType,
+ fileId: 0,
+ id: 0,
+ moneyType: "浜烘皯甯�",
+ percent: 30,
+ principalId: this.principalId,
+ remark: "",
+ sourceId: this.sourceId,
+ sourceType: this.sourceType,
+ status: 1,
+ term: 1
+ },
+ {
+ amount: this.amount,
+ amountReceivable: this.amount * 0.5,
+ amountReceived: 0,
+ amountTotal: 0,
+ collectionDate: this.setDate(date, 1),
+ collectionType: this.editConfig.infomation.collectionType,
+ fileId: 0,
+ id: 0,
+ moneyType: "浜烘皯甯�",
+ percent: 50,
+ principalId: this.principalId,
+ remark: "",
+ sourceId: this.sourceId,
+ sourceType: this.sourceType,
+ status: 1,
+ term: 2
+ },
+ {
+ amount: this.amount,
+ amountReceivable: this.amount * 0.2,
+ amountReceived: 0,
+ amountTotal: 0,
+ collectionDate: this.setDate(date, 2),
+ collectionType: this.editConfig.infomation.collectionType,
+ fileId: 0,
+ id: 0,
+ moneyType: "浜烘皯甯�",
+ percent: 20,
+ principalId: this.principalId,
+ remark: "",
+ sourceId: this.sourceId,
+ sourceType: this.sourceType,
+ status: 1,
+ term: 3
+ }
+ ]
},
// 閲嶇畻
recalculateClick() {
@@ -341,7 +348,7 @@
amountReceived: 0,
amountTotal: 0,
collectionDate: this.setDate(this.firstDate, 0),
- collectionType: 0,
+ collectionType: this.editConfig.infomation.collectionType,
fileId: 0,
id: 0,
moneyType: "浜烘皯甯�",
@@ -362,7 +369,7 @@
amountReceived: 0,
amountTotal: 0,
collectionDate: this.setDate(this.firstDate, 0),
- collectionType: 0,
+ collectionType: this.editConfig.infomation.collectionType,
fileId: 0,
id: 0,
moneyType: "浜烘皯甯�",
@@ -380,7 +387,7 @@
amountReceived: 0,
amountTotal: 0,
collectionDate: this.setDate(this.firstDate, 1),
- collectionType: 0,
+ collectionType: this.editConfig.infomation.collectionType,
fileId: 0,
id: 0,
moneyType: "浜烘皯甯�",
@@ -394,62 +401,8 @@
}
]
} else if (this.allTerms === 3) {
- this.tableData.tableInfomation = [
- {
- amount: this.amount,
- amountReceivable: this.amount * 0.3,
- amountReceived: 0,
- amountTotal: 0,
- collectionDate: this.setDate(this.firstDate, 0),
- collectionType: 0,
- fileId: 0,
- id: 0,
- moneyType: "浜烘皯甯�",
- percent: 30,
- principalId: this.principalId,
- remark: "",
- sourceId: this.sourceId,
- sourceType: this.sourceType,
- status: 1,
- term: 1
- },
- {
- amount: this.amount,
- amountReceivable: this.amount * 0.5,
- amountReceived: 0,
- amountTotal: 0,
- collectionDate: this.setDate(this.firstDate, 1),
- collectionType: 0,
- fileId: 0,
- id: 0,
- moneyType: "浜烘皯甯�",
- percent: 50,
- principalId: this.principalId,
- remark: "",
- sourceId: this.sourceId,
- sourceType: this.sourceType,
- status: 1,
- term: 2
- },
- {
- amount: this.amount,
- amountReceivable: this.amount * 0.2,
- amountReceived: 0,
- amountTotal: 0,
- collectionDate: this.setDate(this.firstDate, 2),
- collectionType: 0,
- fileId: 0,
- id: 0,
- moneyType: "浜烘皯甯�",
- percent: 20,
- principalId: this.principalId,
- remark: "",
- sourceId: this.sourceId,
- sourceType: this.sourceType,
- status: 1,
- term: 3
- }
- ]
+ this.setTableInfomation(this.firstDate)
+ this.tableData.tableInfomation = this.tableInfomation
}
},
delClick(row) {
@@ -482,6 +435,8 @@
},
principalClick(val) {
this.principalId = val
+ this.setTableInfomation(this.firstDate)
+ this.tableData.tableInfomation = this.tableInfomation
}
}
}
diff --git a/src/views/other/payment/collectionPlan/index.vue b/src/views/other/payment/collectionPlan/index.vue
index 02ab516..4f5ffa8 100644
--- a/src/views/other/payment/collectionPlan/index.vue
+++ b/src/views/other/payment/collectionPlan/index.vue
@@ -112,6 +112,7 @@
},
created() {
this.setTable()
+ console.log(this.addConfig)
if (!this.isDetail) {
this.serviceContractId = 0
} else {
@@ -148,15 +149,15 @@
serviceContractId: this.serviceContractId
})
.then((res) => {
- if (res.code === 200) {
- if (res.data.list && res.data.list.length > 0) {
- const list = res.data.list.map((item) => {
+ if (res.data.code === 200) {
+ if (res.data.data.data && res.data.data.data.length > 0) {
+ const list = res.data.data.data.map((item) => {
return {
...item
}
})
this.tableList.tableInfomation = list || []
- this.pagerOptions.totalCount = res.data.count
+ this.pagerOptions.totalCount = res.data.data.count
} else {
this.tableList.tableInfomation = []
}
@@ -193,7 +194,6 @@
// 鏂板缓
addBtnClick() {
if (this.tableList.tableInfomation && this.tableList.tableInfomation.length > 0) {
- this.$message.success("璇ヨ鍗曞凡鍒涘缓鏀舵璁″垝")
this.$confirm("璇ヨ鍗曞凡鍒涘缓鏀舵璁″垝", "鎻愮ず", {
confirmButtonText: "纭畾",
cancelButtonText: "鍙栨秷",
diff --git a/src/views/other/payment/receipt/index.vue b/src/views/other/payment/receipt/index.vue
index 2145240..63f0b6d 100644
--- a/src/views/other/payment/receipt/index.vue
+++ b/src/views/other/payment/receipt/index.vue
@@ -154,17 +154,17 @@
})
.then((res) => {
console.log(res)
- if (res.code === 200) {
- if (res.data.list && res.data.list.length > 0) {
- const list = res.data.list.map((item) => {
+ if (res.data.code === 200) {
+ if (res.data.data.data && res.data.data.data.length > 0) {
+ const list = res.data.data.data.map((item) => {
return {
...item,
- paymentType_name: item.PaymentType.name,
+ paymentType_name: item.paymentType.name,
principal_name: item.principal.username
}
})
this.tableList.tableInfomation = list || []
- this.pagerOptions.totalCount = res.data.count
+ this.pagerOptions.totalCount = res.data.data.count
} else {
this.tableList.tableInfomation = []
}
diff --git a/src/views/sales/contractManage/AddContractManageDialog.vue b/src/views/sales/contractManage/AddContractManageDialog.vue
index 9338216..2303dd3 100644
--- a/src/views/sales/contractManage/AddContractManageDialog.vue
+++ b/src/views/sales/contractManage/AddContractManageDialog.vue
@@ -128,11 +128,11 @@
</el-row>
</div> -->
<!-- 灞曞紑鏀惰捣 -->
- <div v-if="editConfig.title === '鏂板缓'" class="unflod-collapse" @click="unflodCollapseClick">
+ <!-- <div v-if="editConfig.title === '鏂板缓'" class="unflod-collapse" @click="unflodCollapseClick">
<div>{{ unflodCollapseStr }}</div>
<div v-if="isUnflod"><i class="el-icon-arrow-up"></i></div>
<div v-else><i class="el-icon-arrow-down"></i></div>
- </div>
+ </div> -->
<!-- 閫夋嫨瀹℃壒娴佺▼ -->
<!-- <div class="basic-info-title">閫夋嫨瀹℃壒娴佺▼</div>
<div class="basic-info-view">
diff --git a/src/views/sales/contractManage/DetailContractManage.vue b/src/views/sales/contractManage/DetailContractManage.vue
index 7937296..1bf21f0 100644
--- a/src/views/sales/contractManage/DetailContractManage.vue
+++ b/src/views/sales/contractManage/DetailContractManage.vue
@@ -39,11 +39,11 @@
<div class="tab-view">
<el-tabs v-model="activeName" @tab-click="tabsClick">
<el-tab-pane label="璇︽儏" name="first"></el-tab-pane>
- <el-tab-pane label="闄勪欢绠$悊" name="annex">
- <!-- <template slot="label">
+ <!-- <el-tab-pane label="闄勪欢绠$悊" name="annex"> -->
+ <!-- <template slot="label">
<div>璺熻繘璁板綍<el-badge type="primary" :value="2"> </el-badge></div>
</template> -->
- </el-tab-pane>
+ <!-- </el-tab-pane> -->
</el-tabs>
</div>
<div v-if="activeName === 'first'" class="detail">
diff --git a/src/views/sales/generatePlan/DetailGeneratePlan.vue b/src/views/sales/generatePlan/DetailGeneratePlan.vue
index 772f613..3b4c7e2 100644
--- a/src/views/sales/generatePlan/DetailGeneratePlan.vue
+++ b/src/views/sales/generatePlan/DetailGeneratePlan.vue
@@ -17,11 +17,11 @@
<div class="tab-view">
<el-tabs v-model="activeName" @tab-click="tabsClick">
<el-tab-pane label="璇︽儏" name="first"></el-tab-pane>
- <el-tab-pane label="闄勪欢绠$悊" name="annex">
- <!-- <template slot="label">
+ <!-- <el-tab-pane label="闄勪欢绠$悊" name="annex"> -->
+ <!-- <template slot="label">
<div>璺熻繘璁板綍<el-badge type="primary" :value="2"> </el-badge></div>
</template> -->
- </el-tab-pane>
+ <!-- </el-tab-pane> -->
</el-tabs>
</div>
<div v-if="activeName === 'first'" class="detail">
diff --git a/src/views/sales/masterOrder/AddMasterOrderDialog.vue b/src/views/sales/masterOrder/AddMasterOrderDialog.vue
index 3040d17..7135130 100644
--- a/src/views/sales/masterOrder/AddMasterOrderDialog.vue
+++ b/src/views/sales/masterOrder/AddMasterOrderDialog.vue
@@ -27,14 +27,18 @@
<div class="custom-name">
<el-autocomplete
v-model="editConfig.infomation.client_name"
- :fetch-suggestions="querySearchAsync"
+ :fetch-suggestions="
+ (queryString, callback) => {
+ querySearchAsync(queryString, callback, 'client')
+ }
+ "
value-key="name"
- @select="handleSelectClient"
+ @select="handleSelectClient('client', $event)"
></el-autocomplete>
- <div class="common-select-btn" @click="selClientClick">
+ <div class="common-select-btn" @click="selClientClick('client')">
<i class="el-icon-circle-plus-outline" title="閫夋嫨"></i>
</div>
- <div class="common-select-btn" @click="clearupClient">
+ <div class="common-select-btn" @click="clearupClient('client')">
<i class="el-icon-edit-outline" title="娓呴櫎"></i>
</div>
</div>
@@ -182,7 +186,8 @@
editVisible: false,
title: "",
infomation: {}
- }
+ },
+ clientId: this.editCommonConfig.infomation.client_id
}
},
created() {
@@ -207,37 +212,23 @@
const params = this.saveParams()
console.log(params)
if (this.editConfig.title === "鏂板缓") {
- getAddMasterOrder(params)
- .then((res) => {
- console.log(res)
- this.editConfig.visible = false
- if (res.code === 200) {
- this.$message({
- message: "娣诲姞鎴愬姛",
- type: "success"
- })
- this.$parent.getData()
- }
- })
- .catch((err) => {
- console.log(err)
- })
+ getAddMasterOrder(params).then((res) => {
+ console.log(res)
+ this.editConfig.visible = false
+ if (res.code === 200) {
+ this.$message.success("娣诲姞鎴愬姛")
+ this.$parent.getData()
+ }
+ })
} else {
- getUpdateMasterOrder(params)
- .then((res) => {
- console.log(res)
- this.editConfig.visible = false
- if (res.code === 200) {
- this.$message({
- message: "缂栬緫鎴愬姛",
- type: "success"
- })
- this.$parent.getData()
- }
- })
- .catch((err) => {
- console.log(err)
- })
+ getUpdateMasterOrder(params).then((res) => {
+ console.log(res)
+ this.editConfig.visible = false
+ if (res.code === 200) {
+ this.$message.success("缂栬緫鎴愬姛")
+ this.$parent.getData()
+ }
+ })
}
} else {
console.log("error submit")
@@ -249,10 +240,10 @@
let data = this.editConfig.infomation
let params = {
id: this.editConfig.title === "鏂板缓" ? 0 : data.id,
- client_id: parseInt(data.client_id) || 0,
+ client_id: this.clientId || 0,
end_time: data.end_time || "",
member_id: data.member_id || 0,
- money: parseFloat(data.money) || "0",
+ money: data.money || 0,
number: data.number || "",
start_time: data.start_time || ""
}
@@ -261,9 +252,12 @@
handleClose() {
this.editConfig.visible = false
},
- // 閫夋嫨瀹㈡埛鐩稿叧鏂规硶
- querySearchAsync(queryString, cb) {
- var restaurants = this.clientList
+ // 閫夋嫨鐢ㄦ埛鐩稿叧鏂规硶
+ querySearchAsync(queryString, cb, value) {
+ var restaurants = []
+ if (value === "client") {
+ restaurants = this.clientList
+ }
var results = queryString ? restaurants.filter(this.createStateFilter(queryString)) : restaurants
cb(results)
},
@@ -272,21 +266,31 @@
return state.name.toLowerCase().indexOf(queryString.toLowerCase()) === 0
}
},
- handleSelectClient(item) {
- this.editConfig.infomation.client_id = item.id
+ handleSelectClient(value, item) {
+ if (value === "client") {
+ this.clientId = item.id
+ }
},
- selClientClick() {
- this.editSelectClientConfig.editVisible = true
+ selClientClick(value) {
+ if (value === "client") {
+ this.editSelectClientConfig.editVisible = true
+ }
},
- selClient(row) {
- console.log(row)
- this.editConfig.infomation.client_name = row.name
- this.editConfig.infomation.client_id = row.id
+ selClient(row, value) {
+ if (value === "client") {
+ this.editConfig.infomation.client_name = row.name
+ this.clientId = row.id
+ }
},
// 娓呴櫎宸查�夋嫨鐢ㄦ埛
- clearupClient() {
- this.editConfig.infomation.client_name = ""
- this.editConfig.infomation.client_id = 0
+ clearupClient(value) {
+ if (value === "client") {
+ this.editConfig.infomation.client_name = ""
+ this.clientId = 0
+ } else if (value === "contact") {
+ this.editConfig.infomation.contact_name = ""
+ this.contactId = 0
+ }
},
// 娣诲姞闄勪欢
addAnnexClick() {},
diff --git a/src/views/sales/quotation/AddQuotationDialog.vue b/src/views/sales/quotation/AddQuotationDialog.vue
index 309abba..45e4c87 100644
--- a/src/views/sales/quotation/AddQuotationDialog.vue
+++ b/src/views/sales/quotation/AddQuotationDialog.vue
@@ -203,6 +203,7 @@
@addProductClick="addProductClick"
@emptyProductClick="emptyProductClick"
@recalculateProductClick="recalculateProductClick"
+ @clearupProduct="clearupProduct"
/>
</div>
<!-- 閫夋嫨瀹℃壒娴佺▼ -->
@@ -327,8 +328,8 @@
showSummary: {
show: true,
total: true,
- sumProp: ["Amount", "Unit", "other3"],
- mergeNumber: 3
+ sumProp: ["Amount", "total"],
+ mergeNumber: 2
},
editSelectClientConfig: {
editVisible: false,
@@ -350,8 +351,7 @@
saleChanceId: this.editCommonConfig.infomation.sale_chance_id,
tableData: [],
productId: 1,
- addProductArr: [],
- isProductName: false
+ isNoProduct: true
}
},
created() {
@@ -380,23 +380,19 @@
}
})
},
- productNameValidate() {
- for (let i = 0; i < this.tableData.length; i++) {
- if (this.tableData[i].Name === "") {
- this.isProductName = true
- return
- } else {
- this.isProductName = false
- }
- }
- },
// 淇濆瓨
saveClick(formName) {
- this.productNameValidate()
this.$refs[formName].validate((valid) => {
if (valid) {
- console.log(this.isProductName)
- if (this.isProductName) {
+ for (let i = 0; i < this.tableData.length; i++) {
+ if (this.tableData[i].name.length === 0) {
+ this.isNoProduct = true
+ break
+ } else {
+ this.isNoProduct = false
+ }
+ }
+ if (this.isNoProduct) {
this.$message.error("浜у搧鍚嶇О涓嶈兘涓虹┖")
} else {
const params = this.saveParams()
@@ -514,86 +510,84 @@
// 璁剧疆鍏佽涓婁紶鏂囦欢鏍煎紡
setFormatClick() {},
setTableForm() {
- if (this.editConfig.title === "鏂板缓" || this.editConfig.infomation.products === null) {
+ if (this.editConfig.title === "鏂板缓") {
this.tableData = [
{
- id: 1,
- Amount: 0,
- IsSale: true,
- MaterialMode: "",
- MinInventory: 0,
- Name: "",
- Number: "",
- PurchaseType: "",
- SalePrice: 0,
- Unit: ""
+ productId: this.productId,
+ id: 0,
+ amount: 0,
+ desc: "",
+ name: "",
+ number: "",
+ price: 0,
+ total: 0
}
]
} else {
this.tableData = this.editConfig.infomation.products
+ this.tableData.map((item, index) => {
+ item.productId = index + 1
+ })
}
this.productTableList = {
tableData: this.tableData,
tableColumn: [
- { label: "#", prop: "id", width: 40 },
- { label: "浜у搧鍚嶇О", prop: "Name", input: true, isRequird: true },
- { label: "浜у搧缂栧彿", prop: "Number" },
- { label: "鏁伴噺", prop: "Amount", input: true, isRequird: true },
- { label: "閿�鍞崟浠�", prop: "Unit", input: true },
- { label: "浠风◣鍚堣", prop: "total", input: true },
- { label: "鎻忚堪", prop: "other8" }
+ { label: "#", prop: "productId", width: 40 },
+ { label: "浜у搧鍚嶇О", prop: "name", productName: true, isRequird: true },
+ { label: "浜у搧缂栧彿", prop: "number" },
+ { label: "鏁伴噺", prop: "amount", inputNumber: true, isRequird: true },
+ { label: "閿�鍞崟浠�", prop: "price", inputFloat: true },
+ { label: "浠风◣鍚堣", prop: "total", inputFloat: true }
]
}
},
// 浜у搧鍒楄〃杈撳叆
inputContent(val, prop, row) {
- console.log("aaaaaaaa")
- console.log(val, prop)
- this.productId = row.id
+ this.productId = row.productId
this.tableData.map((item) => {
- if (item.id === row.id) {
+ if (item.productId === row.productId) {
item[prop] = val
}
})
- console.log(this.tableData)
},
// 浜у搧鏂板
addProductClick() {
this.productId++
this.tableData.push({
- id: this.productId,
- Amount: 0,
- IsSale: true,
- MaterialMode: "",
- MinInventory: 0,
- Name: "",
- Number: "",
- PurchaseType: "",
- SalePrice: 0,
- Unit: ""
+ productId: this.productId,
+ id: 0,
+ amount: 0,
+ desc: "",
+ name: "",
+ number: "",
+ price: 0,
+ total: 0
})
+ this.showSummary.show = true
},
// 浜у搧娓呯┖
emptyProductClick() {
this.productId = 1
this.tableData = [
{
- id: 1,
- Amount: 0,
- IsSale: true,
- MaterialMode: "",
- MinInventory: 0,
- Name: "",
- Number: "",
- PurchaseType: "",
- SalePrice: 0,
- Unit: ""
+ productId: this.productId,
+ id: 0,
+ amount: 0,
+ desc: "",
+ name: "",
+ number: "",
+ price: 0,
+ total: 0
}
]
this.productTableList.tableData = this.tableData
},
// 浜у搧閲嶇畻
- recalculateProductClick() {}
+ recalculateProductClick() {},
+ clearupProduct(data) {
+ this.tableData = data
+ this.productTableList.tableData = this.tableData
+ }
}
}
</script>
diff --git a/src/views/sales/quotation/DetailQuotation.vue b/src/views/sales/quotation/DetailQuotation.vue
index 8f65d45..bf0fc69 100644
--- a/src/views/sales/quotation/DetailQuotation.vue
+++ b/src/views/sales/quotation/DetailQuotation.vue
@@ -249,33 +249,13 @@
},
setTableForm() {
this.productTableList = {
- tableData: [
- {
- id: "1",
- productName: "涓婃捣鏈夐檺鍏徃",
- other0: "ZDYBD03-1",
- other1: "12",
- other2: "5.00",
- other4: "3.00",
- other3: "2.00"
- }
- ],
+ tableData: this.detailConfig.infomation.products,
tableColumn: [
- { label: "#", prop: "id", width: 40 },
- { label: "鍚◣鍗曚环", prop: "other9", input: true },
- { label: "浜у搧鍚嶇О", prop: "productName", input: true, isRequird: true },
- { label: "浜у搧缂栧彿", prop: "other0" },
- { label: "鏁伴噺", prop: "other1", input: true, isRequird: true },
- { label: "鎶樻墸鐜�(%)", prop: "other6", input: true },
- { label: "涓嶅惈绋庡崟浠�", prop: "other7", input: true },
- { label: "鎶樻墸棰�", prop: "other2" },
- { label: "绋�(閿�鍞�)", prop: "other7", input: true },
- { label: "瀹為檯鍚◣鍗曚环", prop: "other3" },
- { label: "涓嶅惈绋庨噾棰�", prop: "other4" },
- { label: "浠风◣鍚堣", prop: "other3", input: true },
- { label: "鎻忚堪", prop: "other8" },
- { label: "婧愬崟绫诲瀷", prop: "other5" },
- { label: "婧愬崟", prop: "other6" }
+ { label: "浜у搧鍚嶇О", prop: "name", productName: true, isRequird: true },
+ { label: "浜у搧缂栧彿", prop: "number" },
+ { label: "鏁伴噺", prop: "amount", inputNumber: true, isRequird: true },
+ { label: "閿�鍞崟浠�", prop: "price", inputFloat: true },
+ { label: "浠风◣鍚堣", prop: "total", inputFloat: true }
]
}
}
diff --git a/src/views/sales/quotation/index.vue b/src/views/sales/quotation/index.vue
index 54f7b5f..c9606c0 100644
--- a/src/views/sales/quotation/index.vue
+++ b/src/views/sales/quotation/index.vue
@@ -144,9 +144,9 @@
{ label: "鏈夋晥鏈�", prop: "validity_date", min: 100 }, // 淇敼鏃堕棿
// { label: "灏忚", prop: "subTotal" }, // 灏忚
// { label: "鍚堣", prop: "total" }, // 鍚堣
- { label: "浜у搧鍚嶇О", prop: "productName", isProduct: true }, // 浜у搧鍚嶇О
- { label: "鏁伴噺", prop: "number1" }, // 鏁伴噺
- { label: "浠风◣鍚堣", prop: "priceTax" } // 浠风◣鍚堣
+ { label: "浜у搧鍚嶇О", prop: "productName", isProductName: true },
+ { label: "鏁伴噺", prop: "productNumber", isProductAmount: true },
+ { label: "浠风◣鍚堣", prop: "priceTax", isProductCommon: true }
]
}
this.searchOptions = []
diff --git a/src/views/sales/refundForm/AddRefundFormDialog.vue b/src/views/sales/refundForm/AddRefundFormDialog.vue
index b024999..f00aa48 100644
--- a/src/views/sales/refundForm/AddRefundFormDialog.vue
+++ b/src/views/sales/refundForm/AddRefundFormDialog.vue
@@ -192,7 +192,15 @@
</div>
</div>
<div class="product-view">
- <CommonFormTableView :show-summary="showSummary" :product-table-list="productTableList" />
+ <CommonFormTableView
+ :show-summary="showSummary"
+ :product-table-list="productTableList"
+ @inputContent="inputContent"
+ @addProductClick="addProductClick"
+ @emptyProductClick="emptyProductClick"
+ @recalculateProductClick="recalculateProductClick"
+ @clearupProduct="clearupProduct"
+ />
</div>
<!-- 閫夋嫨瀹℃壒娴佺▼ -->
<!-- <div v-if="editConfig.title === '鏂板缓'" class="basic-info-title">閫夋嫨瀹℃壒娴佺▼</div>
@@ -305,7 +313,9 @@
title: "",
infomation: {}
},
- clientId: this.editCommonConfig.infomation.client_id
+ clientId: this.editCommonConfig.infomation.client_id,
+ productId: 1,
+ isNoProduct: true
}
},
created() {
@@ -332,26 +342,38 @@
this.$refs[formName].validate((valid) => {
if (valid) {
console.log(this.editConfig.infomation)
- const params = this.saveParams()
- console.log(params)
- if (this.editConfig.title === "鏂板缓") {
- getAddSalesRefund(params).then((res) => {
- console.log(res)
- this.editConfig.visible = false
- if (res.code === 200) {
- this.$message.success("娣诲姞鎴愬姛")
- this.$parent.getData()
- }
- })
+ for (let i = 0; i < this.tableData.length; i++) {
+ if (this.tableData[i].name.length === 0) {
+ this.isNoProduct = true
+ break
+ } else {
+ this.isNoProduct = false
+ }
+ }
+ if (this.isNoProduct) {
+ this.$message.error("浜у搧鍚嶇О涓嶈兘涓虹┖")
} else {
- getUpdateSalesRefund(params).then((res) => {
- console.log(res)
- this.editConfig.visible = false
- if (res.code === 200) {
- this.$message.success("缂栬緫鎴愬姛")
- this.$parent.getData()
- }
- })
+ const params = this.saveParams()
+ console.log(params)
+ if (this.editConfig.title === "鏂板缓") {
+ getAddSalesRefund(params).then((res) => {
+ console.log(res)
+ this.editConfig.visible = false
+ if (res.code === 200) {
+ this.$message.success("娣诲姞鎴愬姛")
+ this.$parent.getData()
+ }
+ })
+ } else {
+ getUpdateSalesRefund(params).then((res) => {
+ console.log(res)
+ this.editConfig.visible = false
+ if (res.code === 200) {
+ this.$message.success("缂栬緫鎴愬姛")
+ this.$parent.getData()
+ }
+ })
+ }
}
} else {
console.log("error submit")
@@ -412,36 +434,83 @@
// 璁剧疆鍏佽涓婁紶鏂囦欢鏍煎紡
setFormatClick() {},
setTableForm() {
- this.productTableList = {
- tableData: [
+ if (this.editConfig.title === "鏂板缓") {
+ this.tableData = [
{
- id: "1",
- productName: "涓婃捣鏈夐檺鍏徃",
- other0: "ZDYBD03-1",
- other1: "12",
- other2: "5.00",
- other4: "3.00",
- other3: "2.00"
+ productId: this.productId,
+ id: 0,
+ amount: 0,
+ desc: "",
+ name: "",
+ number: "",
+ price: 0,
+ total: 0
}
- ],
+ ]
+ } else {
+ this.tableData = this.editConfig.infomation.products
+ this.tableData.map((item, index) => {
+ item.productId = index + 1
+ })
+ }
+ this.productTableList = {
+ tableData: this.tableData,
tableColumn: [
- { label: "#", prop: "id", width: 40 },
- { label: "浜у搧鍚嶇О", prop: "productName", input: true, isRequird: true },
- { label: "浜у搧缂栧彿", prop: "other0" },
- { label: "婧愬崟绫诲瀷", prop: "other5" },
- { label: "婧愬崟", prop: "other6" },
- { label: "鏁伴噺", prop: "other1", input: true, isRequird: true },
- { label: "鍚◣鍗曚环", prop: "other9", input: true },
- { label: "涓嶅惈绋庡崟浠�", prop: "other7", input: true },
- { label: "鎶樻墸鐜�(%)", prop: "other6", input: true },
- { label: "鎶樻墸棰�", prop: "other2" },
- { label: "绋�(閿�鍞�)", prop: "other7", input: true },
- { label: "瀹為檯鍚◣鍗曚环", prop: "other3" },
- { label: "涓嶅惈绋庨噾棰�", prop: "other4" },
- { label: "浠风◣鍚堣", prop: "other3", input: true },
- { label: "鎻忚堪", prop: "other8" }
+ { label: "#", prop: "productId", width: 40 },
+ { label: "浜у搧鍚嶇О", prop: "name", productName: true, isRequird: true },
+ { label: "浜у搧缂栧彿", prop: "number" },
+ { label: "鏁伴噺", prop: "amount", inputNumber: true, isRequird: true },
+ { label: "閿�鍞崟浠�", prop: "price", inputFloat: true },
+ { label: "浠风◣鍚堣", prop: "total", inputFloat: true }
]
}
+ },
+ // 浜у搧鍒楄〃杈撳叆
+ inputContent(val, prop, row) {
+ this.productId = row.productId
+ this.tableData.map((item) => {
+ if (item.productId === row.productId) {
+ item[prop] = val
+ }
+ })
+ },
+ // 浜у搧鏂板
+ addProductClick() {
+ this.productId++
+ this.tableData.push({
+ productId: this.productId,
+ id: 0,
+ amount: 0,
+ desc: "",
+ name: "",
+ number: "",
+ price: 0,
+ total: 0
+ })
+ this.showSummary.show = true
+ },
+ // 浜у搧娓呯┖
+ emptyProductClick() {
+ this.productId = 1
+ this.tableData = [
+ {
+ productId: this.productId,
+ id: 0,
+ amount: 0,
+ desc: "",
+ name: "",
+ number: "",
+ price: 0,
+ total: 0
+ }
+ ]
+ this.productTableList.tableData = this.tableData
+ },
+ // 浜у搧閲嶇畻
+ recalculateProductClick() {},
+ clearupProduct(data) {
+ this.tableData = data
+ this.productTableList.tableData = this.tableData
}
}
}
diff --git a/src/views/sales/refundForm/DetailRefundForm.vue b/src/views/sales/refundForm/DetailRefundForm.vue
index 1353ee3..42422bb 100644
--- a/src/views/sales/refundForm/DetailRefundForm.vue
+++ b/src/views/sales/refundForm/DetailRefundForm.vue
@@ -17,11 +17,11 @@
<div class="tab-view">
<el-tabs v-model="activeName" @tab-click="tabsClick">
<el-tab-pane label="璇︽儏" name="first"></el-tab-pane>
- <el-tab-pane label="闄勪欢绠$悊" name="annex">
- <!-- <template slot="label">
+ <!-- <el-tab-pane label="闄勪欢绠$悊" name="annex"> -->
+ <!-- <template slot="label">
<div>璺熻繘璁板綍<el-badge type="primary" :value="2"> </el-badge></div>
</template> -->
- </el-tab-pane>
+ <!-- </el-tab-pane> -->
</el-tabs>
</div>
<div v-if="activeName === 'first'" class="detail">
@@ -205,33 +205,13 @@
},
setTableForm() {
this.productTableList = {
- tableData: [
- {
- id: "1",
- productName: "涓婃捣鏈夐檺鍏徃",
- other0: "ZDYBD03-1",
- other1: "12",
- other2: "5.00",
- other4: "3.00",
- other3: "2.00"
- }
- ],
+ tableData: this.detailConfig.infomation.products,
tableColumn: [
- { label: "#", prop: "id", width: 40 },
- { label: "鍚◣鍗曚环", prop: "other9", input: true },
- { label: "浜у搧鍚嶇О", prop: "productName", input: true, isRequird: true },
- { label: "浜у搧缂栧彿", prop: "other0" },
- { label: "鏁伴噺", prop: "other1", input: true, isRequird: true },
- { label: "鎶樻墸鐜�(%)", prop: "other6", input: true },
- { label: "涓嶅惈绋庡崟浠�", prop: "other7", input: true },
- { label: "鎶樻墸棰�", prop: "other2" },
- { label: "绋�(閿�鍞�)", prop: "other7", input: true },
- { label: "瀹為檯鍚◣鍗曚环", prop: "other3" },
- { label: "涓嶅惈绋庨噾棰�", prop: "other4" },
- { label: "浠风◣鍚堣", prop: "other3", input: true },
- { label: "鎻忚堪", prop: "other8" },
- { label: "婧愬崟绫诲瀷", prop: "other5" },
- { label: "婧愬崟", prop: "other6" }
+ { label: "浜у搧鍚嶇О", prop: "name", productName: true, isRequird: true },
+ { label: "浜у搧缂栧彿", prop: "number" },
+ { label: "鏁伴噺", prop: "amount", inputNumber: true, isRequird: true },
+ { label: "閿�鍞崟浠�", prop: "price", inputFloat: true },
+ { label: "浠风◣鍚堣", prop: "total", inputFloat: true }
]
}
}
diff --git a/src/views/sales/salesDetails/AddSalesDetailsDialog.vue b/src/views/sales/salesDetails/AddSalesDetailsDialog.vue
index 3aa7e53..b019896 100644
--- a/src/views/sales/salesDetails/AddSalesDetailsDialog.vue
+++ b/src/views/sales/salesDetails/AddSalesDetailsDialog.vue
@@ -206,7 +206,11 @@
<el-row>
<el-col :span="24">
<el-form-item label="澶囨敞" prop="remark">
- <el-input type="textarea" :autosize="{ minRows: 2 }" v-model="editConfig.infomation.notes"></el-input>
+ <el-input
+ type="textarea"
+ :autosize="{ minRows: 2 }"
+ v-model="editConfig.infomation.remark"
+ ></el-input>
</el-form-item>
</el-col>
</el-row>
@@ -257,6 +261,7 @@
@addProductClick="addProductClick"
@emptyProductClick="emptyProductClick"
@recalculateProductClick="recalculateProductClick"
+ @clearupProduct="clearupProduct"
/>
</div>
<!-- 閫夋嫨瀹℃壒娴佺▼ -->
@@ -376,7 +381,7 @@
showSummary: {
show: true,
total: true,
- sumProp: ["other1", "other7"],
+ sumProp: ["Amount", "total"],
mergeNumber: 2
},
editSelectClientConfig: {
@@ -391,7 +396,8 @@
},
clientId: this.editCommonConfig.infomation.client_id,
saleChanceId: this.editCommonConfig.infomation.saleChanceId,
- productId: 1
+ productId: 1,
+ isNoProduct: true
}
},
created() {
@@ -423,26 +429,38 @@
this.$refs[formName].validate((valid) => {
if (valid) {
console.log(this.editConfig.infomation)
- const params = this.saveParams()
- console.log(params)
- if (this.editConfig.title === "鏂板缓") {
- getAddSalesDetails(params).then((res) => {
- console.log(res)
- this.editConfig.visible = false
- if (res.code === 200) {
- this.$message.success("娣诲姞鎴愬姛")
- this.$parent.getData()
- }
- })
+ for (let i = 0; i < this.tableData.length; i++) {
+ if (this.tableData[i].name.length === 0) {
+ this.isNoProduct = true
+ break
+ } else {
+ this.isNoProduct = false
+ }
+ }
+ if (this.isNoProduct) {
+ this.$message.error("浜у搧鍚嶇О涓嶈兘涓虹┖")
} else {
- getUpdateSalesDetails(params).then((res) => {
- console.log(res)
- this.editConfig.visible = false
- if (res.code === 200) {
- this.$message.success("缂栬緫鎴愬姛")
- this.$parent.getData()
- }
- })
+ const params = this.saveParams()
+ console.log(params)
+ if (this.editConfig.title === "鏂板缓") {
+ getAddSalesDetails(params).then((res) => {
+ console.log(res)
+ this.editConfig.visible = false
+ if (res.code === 200) {
+ this.$message.success("娣诲姞鎴愬姛")
+ this.$parent.getData()
+ }
+ })
+ } else {
+ getUpdateSalesDetails(params).then((res) => {
+ console.log(res)
+ this.editConfig.visible = false
+ if (res.code === 200) {
+ this.$message.success("缂栬緫鎴愬姛")
+ this.$parent.getData()
+ }
+ })
+ }
}
} else {
console.log("error submit")
@@ -461,17 +479,7 @@
memberId: data.memberId || 0,
number: data.number || "",
phone: data.phone || "",
- products: [
- {
- amount: 0,
- desc: "",
- id: 0,
- name: "",
- number: "",
- price: 0,
- total: 0
- }
- ],
+ products: this.tableData,
remark: data.remark || "",
saleChanceId: this.saleChanceId || 0,
saleType: data.saleType || 0,
@@ -529,9 +537,9 @@
}
},
selClient(row, value) {
- if (value === "contact") {
- this.editConfig.infomation.contact_name = row.name
- this.contactId = row.id
+ if (value === "client") {
+ this.editConfig.infomation.client_name = row.name
+ this.clientId = row.id
} else if (value === "chance") {
this.editConfig.infomation.sale_chance_name = row.name
this.saleChanceId = row.id
@@ -555,83 +563,81 @@
if (this.editConfig.title === "鏂板缓") {
this.tableData = [
{
- id: 1,
- Amount: 0,
- IsSale: true,
- MaterialMode: "",
- MinInventory: 0,
- Name: "",
- Number: "",
- PurchaseType: "",
- SalePrice: 0,
- Unit: ""
+ productId: this.productId,
+ id: 0,
+ amount: 0,
+ desc: "",
+ name: "",
+ number: "",
+ price: 0,
+ total: 0
}
]
} else {
this.tableData = this.editConfig.infomation.products
+ this.tableData.map((item, index) => {
+ item.productId = index + 1
+ })
}
this.productTableList = {
tableData: this.tableData,
tableColumn: [
- { label: "#", prop: "id", width: 40 },
- { label: "浜у搧鍚嶇О", prop: "Name", input: true, isRequird: true },
- { label: "浜у搧缂栧彿", prop: "Number" },
- { label: "鏁伴噺", prop: "Amount", input: true, isRequird: true },
- { label: "閿�鍞崟浠�", prop: "Unit", input: true },
- { label: "浠风◣鍚堣", prop: "total", input: true },
- { label: "鎻忚堪", prop: "other8" }
+ { label: "#", prop: "productId", width: 40 },
+ { label: "浜у搧鍚嶇О", prop: "name", productName: true, isRequird: true },
+ { label: "浜у搧缂栧彿", prop: "number" },
+ { label: "鏁伴噺", prop: "amount", inputNumber: true, isRequird: true },
+ { label: "閿�鍞崟浠�", prop: "price", inputFloat: true },
+ { label: "浠风◣鍚堣", prop: "total", inputFloat: true }
]
}
},
// 浜у搧鍒楄〃杈撳叆
inputContent(val, prop, row) {
- console.log("aaaaaaaa")
- console.log(val, prop)
- this.productId = row.id
+ this.productId = row.productId
this.tableData.map((item) => {
- if (item.id === row.id) {
+ if (item.productId === row.productId) {
item[prop] = val
}
})
- console.log(this.tableData)
},
// 浜у搧鏂板
addProductClick() {
this.productId++
this.tableData.push({
- id: this.productId,
- Amount: 0,
- IsSale: true,
- MaterialMode: "",
- MinInventory: 0,
- Name: "",
- Number: "",
- PurchaseType: "",
- SalePrice: 0,
- Unit: ""
+ productId: this.productId,
+ id: 0,
+ amount: 0,
+ desc: "",
+ name: "",
+ number: "",
+ price: 0,
+ total: 0
})
+ this.showSummary.show = true
},
// 浜у搧娓呯┖
emptyProductClick() {
this.productId = 1
this.tableData = [
{
- id: 1,
- Amount: 0,
- IsSale: true,
- MaterialMode: "",
- MinInventory: 0,
- Name: "",
- Number: "",
- PurchaseType: "",
- SalePrice: 0,
- Unit: ""
+ productId: this.productId,
+ id: 0,
+ amount: 0,
+ desc: "",
+ name: "",
+ number: "",
+ price: 0,
+ total: 0
}
]
this.productTableList.tableData = this.tableData
},
// 浜у搧閲嶇畻
- recalculateProductClick() {}
+ recalculateProductClick() {},
+ clearupProduct(data) {
+ this.tableData = data
+ this.productTableList.tableData = this.tableData
+ }
}
}
</script>
diff --git a/src/views/sales/salesDetails/DetailSpecification.vue b/src/views/sales/salesDetails/DetailSpecification.vue
index 540e5f7..2667545 100644
--- a/src/views/sales/salesDetails/DetailSpecification.vue
+++ b/src/views/sales/salesDetails/DetailSpecification.vue
@@ -411,33 +411,13 @@
},
setTableForm() {
this.productTableList = {
- tableData: [
- {
- id: "1",
- productName: "涓婃捣鏈夐檺鍏徃",
- other0: "ZDYBD03-1",
- other1: "12",
- other2: "5.00",
- other4: "3.00",
- other3: "2.00"
- }
- ],
+ tableData: this.detailConfig.infomation.products,
tableColumn: [
- { label: "#", prop: "id", width: 40 },
- { label: "鍚◣鍗曚环", prop: "other9", input: true },
- { label: "浜у搧鍚嶇О", prop: "productName", input: true, isRequird: true },
- { label: "浜у搧缂栧彿", prop: "other0" },
- { label: "鏁伴噺", prop: "other1", input: true, isRequird: true },
- { label: "鎶樻墸鐜�(%)", prop: "other6", input: true },
- { label: "涓嶅惈绋庡崟浠�", prop: "other7", input: true },
- { label: "鎶樻墸棰�", prop: "other2" },
- { label: "绋�(閿�鍞�)", prop: "other7", input: true },
- { label: "瀹為檯鍚◣鍗曚环", prop: "other3" },
- { label: "涓嶅惈绋庨噾棰�", prop: "other4" },
- { label: "浠风◣鍚堣", prop: "other3", input: true },
- { label: "鎻忚堪", prop: "other8" },
- { label: "婧愬崟绫诲瀷", prop: "other5" },
- { label: "婧愬崟", prop: "other6" }
+ { label: "浜у搧鍚嶇О", prop: "name", productName: true, isRequird: true },
+ { label: "浜у搧缂栧彿", prop: "number" },
+ { label: "鏁伴噺", prop: "amount", inputNumber: true, isRequird: true },
+ { label: "閿�鍞崟浠�", prop: "price", inputFloat: true },
+ { label: "浠风◣鍚堣", prop: "total", inputFloat: true }
]
}
}
diff --git a/src/views/sales/salesDetails/index.vue b/src/views/sales/salesDetails/index.vue
index 560a58d..155b823 100644
--- a/src/views/sales/salesDetails/index.vue
+++ b/src/views/sales/salesDetails/index.vue
@@ -160,11 +160,10 @@
{ label: "搴旀敹浣欓", prop: "amountReceivable", price: true },
{ label: "宸插紑绁ㄩ噾棰�", prop: "invoicedAmount", price: true },
{ label: "鏈紑绁ㄩ噾棰�", prop: "uninvoicedAmount", price: true },
- { label: "浜у搧鍚嶇О", prop: "productName" },
- { label: "鏁伴噺", prop: "number1" },
- { label: "鍚◣鍗曚环", prop: "taxUnitPrice", price: true },
- { label: "鏈嚭搴撴暟閲�", prop: "unOutoundNo" },
- { label: "浠风◣鍚堣", prop: "priceTax", price: true }
+ { label: "浜у搧鍚嶇О", prop: "productName", isProductName: true },
+ { label: "鏁伴噺", prop: "productNumber", isProductAmount: true },
+ { label: "閿�鍞崟浠�", prop: "taxUnitPrice", isProductCommon: true },
+ { label: "浠风◣鍚堣", prop: "priceTax", isProductCommon: true }
]
}
this.searchOptions = []
@@ -301,9 +300,15 @@
}
}
::v-deep {
- .el-table .cell,
- .el-table th.el-table__cell > .cell {
- padding: 0 2px;
+ .el-table .el-table__cell {
+ padding: 0;
+ }
+ .el-table__header tr,
+ .el-table__header th {
+ height: 48px;
+ }
+ .el-table__footer-wrapper tbody td.el-table__cell {
+ height: 48px;
}
}
</style>
diff --git a/src/views/sales/salesOpportunity/AddSalesOpportunityDialog.vue b/src/views/sales/salesOpportunity/AddSalesOpportunityDialog.vue
index 55c02f7..b57cefe 100644
--- a/src/views/sales/salesOpportunity/AddSalesOpportunityDialog.vue
+++ b/src/views/sales/salesOpportunity/AddSalesOpportunityDialog.vue
@@ -215,7 +215,14 @@
</el-col>
<el-col :span="12">
<el-form-item label="棰勭畻缁濆鍊�" prop="budget">
- <el-input v-model="editConfig.infomation.budget"></el-input>
+ <el-input-number
+ v-model="editConfig.infomation.budget"
+ placeholder="璇疯緭鍏�"
+ :min="0"
+ :precision="2"
+ :controls="false"
+ style="width: 25%; margin-right: 5px"
+ ></el-input-number>
</el-form-item>
</el-col>
<el-col :span="12">
@@ -653,9 +660,6 @@
this.editConfig.visible = false
if (res.code === 200) {
this.$message.success("娣诲姞鎴愬姛")
- // if (this.editConfig.title === "鏂板缓" && this.editConfig.infomation.client_name) {
- // this.$parent.handleClose()
- // } else {
this.$parent.getData()
// }
}
diff --git a/src/views/sales/salesReturn/AddSalesReturnDialog.vue b/src/views/sales/salesReturn/AddSalesReturnDialog.vue
index 1c1bedc..90aae43 100644
--- a/src/views/sales/salesReturn/AddSalesReturnDialog.vue
+++ b/src/views/sales/salesReturn/AddSalesReturnDialog.vue
@@ -168,13 +168,21 @@
<div style="margin-left: 400px">
甯佺
<el-select v-model="editConfig.infomation.currency" placeholder="璇烽�夋嫨" size="mini" style="width: 63%">
- <el-option v-for="item in currencyOptions" :key="item.value" :label="item.label" :value="item.value">
+ <el-option v-for="item in currencyOptions" :key="item.id" :label="item.name" :value="item.id">
</el-option>
</el-select>
</div>
</div>
<div class="product-view">
- <CommonFormTableView :show-summary="showSummary" :product-table-list="productTableList" />
+ <CommonFormTableView
+ :show-summary="showSummary"
+ :product-table-list="productTableList"
+ @inputContent="inputContent"
+ @addProductClick="addProductClick"
+ @emptyProductClick="emptyProductClick"
+ @recalculateProductClick="recalculateProductClick"
+ @clearupProduct="clearupProduct"
+ />
</div>
</div>
</el-form>
@@ -235,16 +243,17 @@
productTableList: {},
showSummary: {
show: true,
- total: false,
- refundable: true,
- sumProp: ["other1", "other2", "other3", "other4"],
- mergeNumber: 4
+ total: true,
+ sumProp: ["Amount", "total"],
+ mergeNumber: 2
},
editSelectClientConfig: {
editVisible: false,
title: "",
infomation: {}
- }
+ },
+ productId: 1,
+ isNoProduct: true
}
},
created() {
@@ -259,7 +268,6 @@
.then((res) => {
this.memberOptions = res.data.member
this.repositoryOptions = res.data.repository
- // this.currencyOptions = res.data.currency
this.statusOptions = res.data.salesReturnStatus
})
.catch((err) => {
@@ -282,30 +290,42 @@
this.$refs[formName].validate((valid) => {
if (valid) {
console.log(this.editConfig.infomation)
- const params = this.saveParams()
- console.log(params)
- if (this.editConfig.title === "鏂板缓") {
- getAddSalesReturn(params).then((res) => {
- console.log(res)
- this.editConfig.visible = false
- if (res.code === 200) {
- this.$message.success("娣诲姞鎴愬姛")
- this.$parent.getData()
- }
- })
+ for (let i = 0; i < this.tableData.length; i++) {
+ if (this.tableData[i].name.length === 0) {
+ this.isNoProduct = true
+ break
+ } else {
+ this.isNoProduct = false
+ }
+ }
+ if (this.isNoProduct) {
+ this.$message.error("浜у搧鍚嶇О涓嶈兘涓虹┖")
} else {
- getUpdateSalesReturn(params).then((res) => {
- console.log(res)
- this.editConfig.visible = false
- if (res.code === 200) {
- this.$message.success("缂栬緫鎴愬姛")
- this.$message({
- message: "缂栬緫鎴愬姛",
- type: "success"
- })
- this.$parent.getData()
- }
- })
+ const params = this.saveParams()
+ console.log(params)
+ if (this.editConfig.title === "鏂板缓") {
+ getAddSalesReturn(params).then((res) => {
+ console.log(res)
+ this.editConfig.visible = false
+ if (res.code === 200) {
+ this.$message.success("娣诲姞鎴愬姛")
+ this.$parent.getData()
+ }
+ })
+ } else {
+ getUpdateSalesReturn(params).then((res) => {
+ console.log(res)
+ this.editConfig.visible = false
+ if (res.code === 200) {
+ this.$message.success("缂栬緫鎴愬姛")
+ this.$message({
+ message: "缂栬緫鎴愬姛",
+ type: "success"
+ })
+ this.$parent.getData()
+ }
+ })
+ }
}
} else {
console.log("error submit")
@@ -375,26 +395,83 @@
// 璁剧疆鍏佽涓婁紶鏂囦欢鏍煎紡
setFormatClick() {},
setTableForm() {
+ if (this.editConfig.title === "鏂板缓") {
+ this.tableData = [
+ {
+ productId: this.productId,
+ id: 0,
+ amount: 0,
+ desc: "",
+ name: "",
+ number: "",
+ price: 0,
+ total: 0
+ }
+ ]
+ } else {
+ this.tableData = this.editConfig.infomation.products
+ this.tableData.map((item, index) => {
+ item.productId = index + 1
+ })
+ }
this.productTableList = {
- tableData: [],
+ tableData: this.tableData,
tableColumn: [
- { label: "#", prop: "id", width: 40 },
- { label: "浜у搧鍚嶇О", prop: "productName", input: true, isRequird: true },
- { label: "浜у搧缂栧彿", prop: "other0" },
- { label: "婧愬崟绫诲瀷", prop: "other5" },
- { label: "婧愬崟", prop: "other6" },
- { label: "鏁伴噺", prop: "other1", input: true, isRequird: true },
- { label: "鍚◣鍗曚环", prop: "other9", input: true },
- { label: "涓嶅惈绋庡崟浠�", prop: "other7", input: true },
- { label: "鎶樻墸鐜�(%)", prop: "other6", input: true },
- { label: "鎶樻墸棰�", prop: "other2" },
- { label: "绋�(閿�鍞�)", prop: "other7", input: true },
- { label: "瀹為檯鍚◣鍗曚环", prop: "other3" },
- { label: "涓嶅惈绋庨噾棰�", prop: "other4" },
- { label: "浠风◣鍚堣", prop: "other3", input: true },
- { label: "鎻忚堪", prop: "other8" }
+ { label: "#", prop: "productId", width: 40 },
+ { label: "浜у搧鍚嶇О", prop: "name", productName: true, isRequird: true },
+ { label: "浜у搧缂栧彿", prop: "number" },
+ { label: "鏁伴噺", prop: "amount", inputNumber: true, isRequird: true },
+ { label: "閿�鍞崟浠�", prop: "price", inputFloat: true },
+ { label: "浠风◣鍚堣", prop: "total", inputFloat: true }
]
}
+ },
+ // 浜у搧鍒楄〃杈撳叆
+ inputContent(val, prop, row) {
+ this.productId = row.productId
+ this.tableData.map((item) => {
+ if (item.productId === row.productId) {
+ item[prop] = val
+ }
+ })
+ },
+ // 浜у搧鏂板
+ addProductClick() {
+ this.productId++
+ this.tableData.push({
+ productId: this.productId,
+ id: 0,
+ amount: 0,
+ desc: "",
+ name: "",
+ number: "",
+ price: 0,
+ total: 0
+ })
+ this.showSummary.show = true
+ },
+ // 浜у搧娓呯┖
+ emptyProductClick() {
+ this.productId = 1
+ this.tableData = [
+ {
+ productId: this.productId,
+ id: 0,
+ amount: 0,
+ desc: "",
+ name: "",
+ number: "",
+ price: 0,
+ total: 0
+ }
+ ]
+ this.productTableList.tableData = this.tableData
+ },
+ // 浜у搧閲嶇畻
+ recalculateProductClick() {},
+ clearupProduct(data) {
+ this.tableData = data
+ this.productTableList.tableData = this.tableData
}
}
}
diff --git a/src/views/sales/salesReturn/DetailReturn.vue b/src/views/sales/salesReturn/DetailReturn.vue
index c47b0c1..24b03ca 100644
--- a/src/views/sales/salesReturn/DetailReturn.vue
+++ b/src/views/sales/salesReturn/DetailReturn.vue
@@ -256,33 +256,13 @@
},
setTableForm() {
this.productTableList = {
- tableData: [
- {
- id: "1",
- productName: "涓婃捣鏈夐檺鍏徃",
- other0: "ZDYBD03-1",
- other1: "12",
- other2: "5.00",
- other4: "3.00",
- other3: "2.00"
- }
- ],
+ tableData: this.detailConfig.infomation.products,
tableColumn: [
- { label: "#", prop: "id", width: 40 },
- { label: "鍚◣鍗曚环", prop: "other9", input: true },
- { label: "浜у搧鍚嶇О", prop: "productName", input: true, isRequird: true },
- { label: "浜у搧缂栧彿", prop: "other0" },
- { label: "鏁伴噺", prop: "other1", input: true, isRequird: true },
- { label: "鎶樻墸鐜�(%)", prop: "other6", input: true },
- { label: "涓嶅惈绋庡崟浠�", prop: "other7", input: true },
- { label: "鎶樻墸棰�", prop: "other2" },
- { label: "绋�(閿�鍞�)", prop: "other7", input: true },
- { label: "瀹為檯鍚◣鍗曚环", prop: "other3" },
- { label: "涓嶅惈绋庨噾棰�", prop: "other4" },
- { label: "浠风◣鍚堣", prop: "other3", input: true },
- { label: "鎻忚堪", prop: "other8" },
- { label: "婧愬崟绫诲瀷", prop: "other5" },
- { label: "婧愬崟", prop: "other6" }
+ { label: "浜у搧鍚嶇О", prop: "name", productName: true, isRequird: true },
+ { label: "浜у搧缂栧彿", prop: "number" },
+ { label: "鏁伴噺", prop: "amount", inputNumber: true, isRequird: true },
+ { label: "閿�鍞崟浠�", prop: "price", inputFloat: true },
+ { label: "浠风◣鍚堣", prop: "total", inputFloat: true }
]
}
}
diff --git a/src/views/sales/subOrder/AddSubOrderDialog.vue b/src/views/sales/subOrder/AddSubOrderDialog.vue
index bbd4601..2003554 100644
--- a/src/views/sales/subOrder/AddSubOrderDialog.vue
+++ b/src/views/sales/subOrder/AddSubOrderDialog.vue
@@ -126,70 +126,14 @@
</div>
<div class="product-view">
<CommonFormTableView
+ :show-summary="showSummary"
:product-table-list="productTableList"
@inputContent="inputContent"
@addProductClick="addProductClick"
@emptyProductClick="emptyProductClick"
@recalculateProductClick="recalculateProductClick"
+ @clearupProduct="clearupProduct"
/>
- </div>
- <!-- 鍚堣 -->
- <div class="basic-info-view">
- <el-row>
- <el-col :span="7" :offset="17">
- <el-form-item prop="discount">
- <template slot="label">
- <span>鏁村崟鎶樻墸</span>
- <el-select
- v-model="discount"
- placeholder="璇烽�夋嫨"
- size="mini"
- style="width: 104px; margin-left: 3px"
- disabled
- >
- <el-option
- v-for="item in discountOptions"
- :key="item.value"
- :label="item.label"
- :value="item.value"
- >
- </el-option>
- </el-select>
- </template>
- <el-input v-model="editConfig.infomation.discount" disabled></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="7" :offset="17">
- <el-form-item prop="discount">
- <template slot="label">
- <span>璋冩暣</span>
- <el-select
- v-model="adjust"
- placeholder="璇烽�夋嫨"
- size="mini"
- style="width: 74px; margin-left: 3px"
- disabled
- >
- <el-option
- v-for="item in adjustOptions"
- :key="item.value"
- :label="item.label"
- :value="item.value"
- >
- </el-option>
- </el-select>
- </template>
- <el-input v-model="editConfig.infomation.discount" disabled></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="7" :offset="17">
- <el-form-item label="鍚堣" prop="total">
- <el-button type="text" v-model="editConfig.infomation.total" style="color: #555; font-size: 13px">{{
- editConfig.infomation.total ? editConfig.infomation.total : "0.00"
- }}</el-button>
- </el-form-item>
- </el-col>
- </el-row>
</div>
</div>
</el-form>
@@ -266,9 +210,9 @@
productTableList: {},
showSummary: {
show: true,
- total: false,
- sumProp: ["other1", "other7"],
- mergeNumber: 7
+ total: true,
+ sumProp: ["Amount", "total"],
+ mergeNumber: 2
},
editSelectClientConfig: {
editVisible: false,
@@ -319,26 +263,38 @@
this.$refs[formName].validate((valid) => {
if (valid) {
console.log(this.editConfig.infomation)
- const params = this.saveParams()
- console.log(params)
- if (this.editConfig.title === "鏂板缓") {
- getAddSubOrder(params).then((res) => {
- console.log(res)
- this.editConfig.visible = false
- if (res.code === 200) {
- this.$message.success("娣诲姞鎴愬姛")
- this.$parent.getData()
- }
- })
+ for (let i = 0; i < this.tableData.length; i++) {
+ if (this.tableData[i].name.length === 0) {
+ this.isNoProduct = true
+ break
+ } else {
+ this.isNoProduct = false
+ }
+ }
+ if (this.isNoProduct) {
+ this.$message.error("浜у搧鍚嶇О涓嶈兘涓虹┖")
} else {
- getUpdateSubOrder(params).then((res) => {
- console.log(res)
- this.editConfig.visible = false
- if (res.code === 200) {
- this.$message.success("缂栬緫鎴愬姛")
- this.$parent.getData()
- }
- })
+ const params = this.saveParams()
+ console.log(params)
+ if (this.editConfig.title === "鏂板缓") {
+ getAddSubOrder(params).then((res) => {
+ console.log(res)
+ this.editConfig.visible = false
+ if (res.code === 200) {
+ this.$message.success("娣诲姞鎴愬姛")
+ this.$parent.getData()
+ }
+ })
+ } else {
+ getUpdateSubOrder(params).then((res) => {
+ console.log(res)
+ this.editConfig.visible = false
+ if (res.code === 200) {
+ this.$message.success("缂栬緫鎴愬姛")
+ this.$parent.getData()
+ }
+ })
+ }
}
} else {
console.log("error submit")
@@ -369,11 +325,6 @@
} else if (value === "master") {
restaurants = this.masterOrderList
}
- // else if (value === "chance") {
- // restaurants = this.saleChancelist
- // } else {
- // restaurants = this.saleLeadlist
- // }
var results = queryString ? restaurants.filter(this.createStateFilter(queryString, value)) : restaurants
cb(results)
},
@@ -433,83 +384,81 @@
if (this.editConfig.title === "鏂板缓") {
this.tableData = [
{
- id: 1,
- Amount: 0,
- IsSale: true,
- MaterialMode: "",
- MinInventory: 0,
- Name: "",
- Number: "",
- PurchaseType: "",
- SalePrice: 0,
- Unit: ""
+ productId: this.productId,
+ id: 0,
+ amount: 0,
+ desc: "",
+ name: "",
+ number: "",
+ price: 0,
+ total: 0
}
]
} else {
this.tableData = this.editConfig.infomation.products
+ this.tableData.map((item, index) => {
+ item.productId = index + 1
+ })
}
this.productTableList = {
tableData: this.tableData,
tableColumn: [
- { label: "#", prop: "id", width: 40 },
- { label: "浜у搧鍚嶇О", prop: "Name", input: true, isRequird: true },
- { label: "浜у搧缂栧彿", prop: "Number" },
- { label: "鏁伴噺", prop: "Amount", input: true, isRequird: true },
- { label: "閿�鍞崟浠�", prop: "Unit", input: true },
- { label: "浠风◣鍚堣", prop: "total", input: true },
- { label: "鎻忚堪", prop: "other8" }
+ { label: "#", prop: "productId", width: 40 },
+ { label: "浜у搧鍚嶇О", prop: "name", productName: true, isRequird: true },
+ { label: "浜у搧缂栧彿", prop: "number" },
+ { label: "鏁伴噺", prop: "amount", inputNumber: true, isRequird: true },
+ { label: "閿�鍞崟浠�", prop: "price", inputFloat: true },
+ { label: "浠风◣鍚堣", prop: "total", inputFloat: true }
]
}
},
// 浜у搧鍒楄〃杈撳叆
inputContent(val, prop, row) {
- console.log("aaaaaaaa")
- console.log(val, prop)
- this.productId = row.id
+ this.productId = row.productId
this.tableData.map((item) => {
- if (item.id === row.id) {
+ if (item.productId === row.productId) {
item[prop] = val
}
})
- console.log(this.tableData)
},
// 浜у搧鏂板
addProductClick() {
this.productId++
this.tableData.push({
- id: this.productId,
- Amount: 0,
- IsSale: true,
- MaterialMode: "",
- MinInventory: 0,
- Name: "",
- Number: "",
- PurchaseType: "",
- SalePrice: 0,
- Unit: ""
+ productId: this.productId,
+ id: 0,
+ amount: 0,
+ desc: "",
+ name: "",
+ number: "",
+ price: 0,
+ total: 0
})
+ this.showSummary.show = true
},
// 浜у搧娓呯┖
emptyProductClick() {
this.productId = 1
this.tableData = [
{
- id: 1,
- Amount: 0,
- IsSale: true,
- MaterialMode: "",
- MinInventory: 0,
- Name: "",
- Number: "",
- PurchaseType: "",
- SalePrice: 0,
- Unit: ""
+ productId: this.productId,
+ id: 0,
+ amount: 0,
+ desc: "",
+ name: "",
+ number: "",
+ price: 0,
+ total: 0
}
]
this.productTableList.tableData = this.tableData
},
// 浜у搧閲嶇畻
- recalculateProductClick() {}
+ recalculateProductClick() {},
+ clearupProduct(data) {
+ this.tableData = data
+ this.productTableList.tableData = this.tableData
+ }
}
}
</script>
diff --git a/src/views/sales/subOrder/DetailSubOrder.vue b/src/views/sales/subOrder/DetailSubOrder.vue
index 5e47425..277c4a7 100644
--- a/src/views/sales/subOrder/DetailSubOrder.vue
+++ b/src/views/sales/subOrder/DetailSubOrder.vue
@@ -202,33 +202,13 @@
},
setTableForm() {
this.productTableList = {
- tableData: [
- {
- id: "1",
- productName: "涓婃捣鏈夐檺鍏徃",
- other0: "ZDYBD03-1",
- other1: "12",
- other2: "5.00",
- other4: "3.00",
- other3: "2.00"
- }
- ],
+ tableData: this.detailConfig.infomation.products,
tableColumn: [
- { label: "#", prop: "id", width: 40 },
- { label: "鍚◣鍗曚环", prop: "other9", input: true },
- { label: "浜у搧鍚嶇О", prop: "productName", input: true, isRequird: true },
- { label: "浜у搧缂栧彿", prop: "other0" },
- { label: "鏁伴噺", prop: "other1", input: true, isRequird: true },
- { label: "鎶樻墸鐜�(%)", prop: "other6", input: true },
- { label: "涓嶅惈绋庡崟浠�", prop: "other7", input: true },
- { label: "鎶樻墸棰�", prop: "other2" },
- { label: "绋�(閿�鍞�)", prop: "other7", input: true },
- { label: "瀹為檯鍚◣鍗曚环", prop: "other3" },
- { label: "涓嶅惈绋庨噾棰�", prop: "other4" },
- { label: "浠风◣鍚堣", prop: "other3", input: true },
- { label: "鎻忚堪", prop: "other8" },
- { label: "婧愬崟绫诲瀷", prop: "other5" },
- { label: "婧愬崟", prop: "other6" }
+ { label: "浜у搧鍚嶇О", prop: "name", productName: true, isRequird: true },
+ { label: "浜у搧缂栧彿", prop: "number" },
+ { label: "鏁伴噺", prop: "amount", inputNumber: true, isRequird: true },
+ { label: "閿�鍞崟浠�", prop: "price", inputFloat: true },
+ { label: "浠风◣鍚堣", prop: "total", inputFloat: true }
]
}
}
diff --git a/src/views/service/clientServiceOrder/DetailClientServiceOrder.vue b/src/views/service/clientServiceOrder/DetailClientServiceOrder.vue
index 8eaf37b..6ca36fb 100644
--- a/src/views/service/clientServiceOrder/DetailClientServiceOrder.vue
+++ b/src/views/service/clientServiceOrder/DetailClientServiceOrder.vue
@@ -17,7 +17,7 @@
<div class="tab-view">
<el-tabs v-model="activeName" @tab-click="tabsClick">
<el-tab-pane label="璇︽儏" name="first"></el-tab-pane>
- <el-tab-pane label="闄勪欢绠$悊" name="annex"></el-tab-pane>
+ <!-- <el-tab-pane label="闄勪欢绠$悊" name="annex"></el-tab-pane> -->
<el-tab-pane label="鏈嶅姟鍥炶鍗�" name="followup">
<!-- <template slot="label">
<div>璺熻繘璁板綍<el-badge type="primary" :value="2"> </el-badge></div>
diff --git a/src/views/service/serviceContract/AddServiceContractDialog.vue b/src/views/service/serviceContract/AddServiceContractDialog.vue
index ff2b7dc..52743f7 100644
--- a/src/views/service/serviceContract/AddServiceContractDialog.vue
+++ b/src/views/service/serviceContract/AddServiceContractDialog.vue
@@ -312,6 +312,7 @@
@addProductClick="addProductClick"
@emptyProductClick="emptyProductClick"
@recalculateProductClick="recalculateProductClick"
+ @clearupProduct="clearupProduct"
/>
</div>
<!-- 閫夋嫨瀹℃壒娴佺▼ -->
@@ -480,7 +481,8 @@
contractId: this.editCommonConfig.infomation.salesDetailsId,
quotationId: this.editCommonConfig.infomation.quotationId,
tableData: [],
- productId: 1
+ productId: 1,
+ isNoProduct: true
}
},
created() {
@@ -512,26 +514,38 @@
this.$refs[formName].validate((valid) => {
if (valid) {
console.log(this.editConfig.infomation)
- const params = this.saveParams()
- console.log(params)
- if (this.editConfig.title === "鏂板缓") {
- getAddServiceContract(params).then((res) => {
- console.log(res)
- this.editConfig.visible = false
- if (res.code === 200) {
- this.$message.success("娣诲姞鎴愬姛")
- this.$parent.getData()
- }
- })
+ for (let i = 0; i < this.tableData.length; i++) {
+ if (this.tableData[i].name.length === 0) {
+ this.isNoProduct = true
+ break
+ } else {
+ this.isNoProduct = false
+ }
+ }
+ if (this.isNoProduct) {
+ this.$message.error("浜у搧鍚嶇О涓嶈兘涓虹┖")
} else {
- getUpdateServiceContract(params).then((res) => {
- console.log(res)
- this.editConfig.visible = false
- if (res.code === 200) {
- this.$message.success("缂栬緫鎴愬姛")
- this.$parent.getData()
- }
- })
+ const params = this.saveParams()
+ console.log(params)
+ if (this.editConfig.title === "鏂板缓") {
+ getAddServiceContract(params).then((res) => {
+ console.log(res)
+ this.editConfig.visible = false
+ if (res.code === 200) {
+ this.$message.success("娣诲姞鎴愬姛")
+ this.$parent.getData()
+ }
+ })
+ } else {
+ getUpdateServiceContract(params).then((res) => {
+ console.log(res)
+ this.editConfig.visible = false
+ if (res.code === 200) {
+ this.$message.success("缂栬緫鎴愬姛")
+ this.$parent.getData()
+ }
+ })
+ }
}
} else {
console.log("error submit")
@@ -676,79 +690,71 @@
if (this.editConfig.title === "鏂板缓") {
this.tableData = [
{
- id: 1,
- Amount: 0,
- IsSale: true,
- MaterialMode: "",
- MinInventory: 0,
- Name: "",
- Number: "",
- PurchaseType: "",
- SalePrice: 0,
- Unit: ""
+ productId: this.productId,
+ id: 0,
+ amount: 0,
+ desc: "",
+ name: "",
+ number: "",
+ price: 0,
+ total: 0
}
]
} else {
this.tableData = this.editConfig.infomation.products
+ this.tableData.map((item, index) => {
+ item.productId = index + 1
+ })
}
this.productTableList = {
tableData: this.tableData,
tableColumn: [
- { label: "#", prop: "id", width: 40 },
- { label: "浜у搧鍚嶇О", prop: "Name", input: true, isRequird: true },
- { label: "浜у搧缂栧彿", prop: "Number" },
- { label: "鏈嶅姟寮�濮嬫棩", prop: "other5", date: true, isRequird: true, min: 100 },
- { label: "鏈嶅姟鍒版湡鏃�", prop: "other6", date: true, isRequird: true, min: 100 },
- { label: "鏁伴噺", prop: "Amount", input: true, isRequird: true },
- { label: "閿�鍞崟浠�", prop: "Unit", input: true },
- { label: "浠风◣鍚堣", prop: "total", input: true },
- { label: "鎻忚堪", prop: "other8" }
+ { label: "#", prop: "productId", width: 40 },
+ { label: "浜у搧鍚嶇О", prop: "name", productName: true, isRequird: true },
+ { label: "浜у搧缂栧彿", prop: "number" },
+ { label: "鏁伴噺", prop: "amount", inputNumber: true, isRequird: true },
+ { label: "閿�鍞崟浠�", prop: "price", inputFloat: true },
+ { label: "浠风◣鍚堣", prop: "total", inputFloat: true }
]
}
},
// 浜у搧鍒楄〃杈撳叆
inputContent(val, prop, row) {
- console.log("aaaaaaaa")
- console.log(val, prop)
- this.productId = row.id
+ this.productId = row.productId
this.tableData.map((item) => {
- if (item.id === row.id) {
+ if (item.productId === row.productId) {
item[prop] = val
}
})
- console.log(this.tableData)
},
// 浜у搧鏂板
addProductClick() {
this.productId++
this.tableData.push({
- id: this.productId,
- Amount: 0,
- IsSale: true,
- MaterialMode: "",
- MinInventory: 0,
- Name: "",
- Number: "",
- PurchaseType: "",
- SalePrice: 0,
- Unit: ""
+ productId: this.productId,
+ id: 0,
+ amount: 0,
+ desc: "",
+ name: "",
+ number: "",
+ price: 0,
+ total: 0
})
+ this.showSummary.show = true
},
// 浜у搧娓呯┖
emptyProductClick() {
this.productId = 1
this.tableData = [
{
- id: 1,
- Amount: 0,
- IsSale: true,
- MaterialMode: "",
- MinInventory: 0,
- Name: "",
- Number: "",
- PurchaseType: "",
- SalePrice: 0,
- Unit: ""
+ productId: this.productId,
+ id: 0,
+ amount: 0,
+ desc: "",
+ name: "",
+ number: "",
+ price: 0,
+ total: 0
}
]
this.productTableList.tableData = this.tableData
diff --git a/src/views/service/serviceContract/DetailServiceContract.vue b/src/views/service/serviceContract/DetailServiceContract.vue
index 2e0123b..403dc17 100644
--- a/src/views/service/serviceContract/DetailServiceContract.vue
+++ b/src/views/service/serviceContract/DetailServiceContract.vue
@@ -328,33 +328,13 @@
},
setTableForm() {
this.productTableList = {
- tableData: [
- {
- id: "1",
- productName: "涓婃捣鏈夐檺鍏徃",
- other0: "ZDYBD03-1",
- other1: "12",
- other2: "5.00",
- other4: "3.00",
- other3: "2.00"
- }
- ],
+ tableData: this.detailConfig.infomation.products,
tableColumn: [
- { label: "#", prop: "id", width: 40 },
- { label: "鍚◣鍗曚环", prop: "other9", input: true },
- { label: "浜у搧鍚嶇О", prop: "productName", input: true, isRequird: true },
- { label: "浜у搧缂栧彿", prop: "other0" },
- { label: "鏁伴噺", prop: "other1", input: true, isRequird: true },
- { label: "鎶樻墸鐜�(%)", prop: "other6", input: true },
- { label: "涓嶅惈绋庡崟浠�", prop: "other7", input: true },
- { label: "鎶樻墸棰�", prop: "other2" },
- { label: "绋�(閿�鍞�)", prop: "other7", input: true },
- { label: "瀹為檯鍚◣鍗曚环", prop: "other3" },
- { label: "涓嶅惈绋庨噾棰�", prop: "other4" },
- { label: "浠风◣鍚堣", prop: "other3", input: true },
- { label: "鎻忚堪", prop: "other8" },
- { label: "婧愬崟绫诲瀷", prop: "other5" },
- { label: "婧愬崟", prop: "other6" }
+ { label: "浜у搧鍚嶇О", prop: "name", productName: true, isRequird: true },
+ { label: "浜у搧缂栧彿", prop: "number" },
+ { label: "鏁伴噺", prop: "amount", inputNumber: true, isRequird: true },
+ { label: "閿�鍞崟浠�", prop: "price", inputFloat: true },
+ { label: "浠风◣鍚堣", prop: "total", inputFloat: true }
]
}
}
diff --git a/src/views/service/serviceFollowup/DetailServiceFollowup.vue b/src/views/service/serviceFollowup/DetailServiceFollowup.vue
index 0891623..d27b411 100644
--- a/src/views/service/serviceFollowup/DetailServiceFollowup.vue
+++ b/src/views/service/serviceFollowup/DetailServiceFollowup.vue
@@ -17,11 +17,11 @@
<div class="tab-view">
<el-tabs v-model="activeName" @tab-click="tabsClick">
<el-tab-pane label="璇︽儏" name="first"></el-tab-pane>
- <el-tab-pane label="闄勪欢绠$悊" name="annex">
- <!-- <template slot="label">
+ <!-- <el-tab-pane label="闄勪欢绠$悊" name="annex"> -->
+ <!-- <template slot="label">
<div>璺熻繘璁板綍<el-badge type="primary" :value="2"> </el-badge></div>
</template> -->
- </el-tab-pane>
+ <!-- </el-tab-pane> -->
</el-tabs>
</div>
<div v-if="activeName === 'first'" class="detail">
--
Gitblit v1.8.0