diff --git a/klp-ui/src/api/crm/contract.js b/klp-ui/src/api/crm/contract.js new file mode 100644 index 00000000..c616ccab --- /dev/null +++ b/klp-ui/src/api/crm/contract.js @@ -0,0 +1,52 @@ +import request from '@/utils/request' + +// 查询合同信息列表 +export function listContract(query) { + return request({ + url: '/crm/contract/list', + method: 'get', + params: query + }) +} + +// 查询合同信息详细 +export function getContract(contractId) { + return request({ + url: '/crm/contract/' + contractId, + method: 'get' + }) +} + +// 新增合同信息 +export function addContract(data) { + return request({ + url: '/crm/contract', + method: 'post', + data: data + }) +} + +// 修改合同信息 +export function updateContract(data) { + return request({ + url: '/crm/contract', + method: 'put', + data: data + }) +} + +// 删除合同信息 +export function delContract(contractId) { + return request({ + url: '/crm/contract/' + contractId, + method: 'delete' + }) +} + +// 查询合同下的所有订单异议和收款记录 +export function listContractOrderObjection(contractId) { + return request({ + url: '/crm/orderItem/contractFinance/' + contractId, + method: 'get', + }) +} diff --git a/klp-ui/src/components/FileList/index.vue b/klp-ui/src/components/FileList/index.vue index 5b00ffcd..17121eef 100644 --- a/klp-ui/src/components/FileList/index.vue +++ b/klp-ui/src/components/FileList/index.vue @@ -1,44 +1,31 @@ @@ -112,8 +99,58 @@ export default { height: 200px; } -::v-deep .el-table { - --el-table-header-text-color: #606266; - --el-table-row-hover-bg-color: #f5f7fa; +.file-list { + width: 100%; + border: 1px solid #ebeef5; + border-radius: 4px; + overflow: hidden; +} + +.file-item { + display: flex; + justify-content: space-between; + align-items: center; + padding: 12px 16px; + border-bottom: 1px solid #ebeef5; + transition: background-color 0.3s; +} + +.file-item:last-child { + border-bottom: none; +} + +.file-item:hover { + background-color: #f5f7fa; +} + +.file-info { + display: flex; + align-items: center; + flex: 1; +} + +.file-info .el-icon-document { + margin-right: 8px; + color: #409eff; + font-size: 16px; +} + +.file-name { + font-size: 14px; + color: #606266; + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; + flex: 1; +} + +.download-btn { + margin: 0; + font-size: 14px; + color: #409eff; +} + +.download-btn:hover { + color: #66b1ff; } \ No newline at end of file diff --git a/klp-ui/src/components/QRCode/index.vue b/klp-ui/src/components/QRCode/index.vue index 9139b049..287157c2 100644 --- a/klp-ui/src/components/QRCode/index.vue +++ b/klp-ui/src/components/QRCode/index.vue @@ -25,7 +25,7 @@ export default { watch: { content: { handler(newVal, oldVal) { - if (newVal !== oldVal) { + if (newVal && newVal !== oldVal) { this.generateQRCode(); } }, diff --git a/klp-ui/src/views/crm/components/CustomerEdit.vue b/klp-ui/src/views/crm/components/CustomerEdit.vue index 26570d6e..7349e8f5 100644 --- a/klp-ui/src/views/crm/components/CustomerEdit.vue +++ b/klp-ui/src/views/crm/components/CustomerEdit.vue @@ -50,6 +50,15 @@ /> + + + + + + {{ customer.taxNumber || '-' }} {{ formattedAddress || '-' }} diff --git a/klp-ui/src/views/crm/components/OrderDetail.vue b/klp-ui/src/views/crm/components/OrderDetail.vue index 47e0a398..4ff27268 100644 --- a/klp-ui/src/views/crm/components/OrderDetail.vue +++ b/klp-ui/src/views/crm/components/OrderDetail.vue @@ -7,7 +7,7 @@ 新增 - 打印 + 刷新 @@ -15,6 +15,8 @@ + + @@ -62,6 +64,12 @@ + + + + + + diff --git a/klp-ui/src/views/crm/components/OrderEdit.vue b/klp-ui/src/views/crm/components/OrderEdit.vue index 889bc807..4ca35549 100644 --- a/klp-ui/src/views/crm/components/OrderEdit.vue +++ b/klp-ui/src/views/crm/components/OrderEdit.vue @@ -27,7 +27,10 @@ - + + + @@ -50,7 +53,17 @@ - + + + + + + + + + + @@ -65,6 +78,7 @@ diff --git a/klp-ui/src/views/crm/customer/index.vue b/klp-ui/src/views/crm/customer/index.vue index bccf8c7b..a8bac295 100644 --- a/klp-ui/src/views/crm/customer/index.vue +++ b/klp-ui/src/views/crm/customer/index.vue @@ -6,65 +6,45 @@
客户列表
- +
-
- - +
+ + - - + + + + + +
- +
+ + @@ -72,28 +52,17 @@ - + - +
- +
@@ -116,40 +85,30 @@ + + + - + - + - + - +
@@ -38,6 +33,9 @@
+ + @@ -55,6 +53,9 @@ {{ form.contactPerson }} {{ form.contactWay }} {{ form.remark }} + + + @@ -111,16 +112,28 @@ - + + + - - + + + + + + + + @@ -144,6 +157,8 @@ import OrderEdit from '../components/OrderEdit.vue'; import OrderObjection from '../components/OrderObjection.vue'; import ReceiveTable from '../components/ReceiveTable.vue'; import OrderRecord from '../components/OrderRecord.vue'; +import FileList from '@/components/FileList'; +import { listContract } from "@/api/crm/contract"; export default { name: 'OrderPage', @@ -153,9 +168,10 @@ export default { OrderEdit, OrderObjection, ReceiveTable, - OrderRecord + OrderRecord, + FileList }, - dicts: ['customer_level', 'customer_industry'], + dicts: ['customer_level', 'customer_industry', 'wip_pack_saleman'], data() { return { ORDER_STATUS, @@ -167,8 +183,11 @@ export default { salesman: '', orderStatus: '', orderType: ORDER_TYPE['正式订单'], - financeStatus: '' + financeStatus: '', + pageNum: 1, + pageSize: 10, }, + total: 0, activeTab: 'detail', currentOrder: {}, buttonLoading: false, @@ -181,11 +200,13 @@ export default { }, open: false, customerList: [], + contractList: [], } }, created() { this.getList() this.getCustomerList() + this.getContractList() }, methods: { toggleQuery() { @@ -197,6 +218,20 @@ export default { this.customerList = response.rows; }); }, + /** 查询合同列表 */ + getContractList() { + listContract({ pageNum: 1, pageSize: 1000 }).then(response => { + this.contractList = response.rows || []; + }); + }, + /** 合同号改变事件 */ + handleContractChange(contractId) { + const contract = this.contractList.find(item => item.contractId === contractId) + if (contract) { + this.form.contractCode = contract.contractNo + } + + }, /** 订单列表项点击事件 */ handleOrderClick(order) { this.currentOrder = order; @@ -211,6 +246,7 @@ export default { this.orderLoading = true; listOrder(this.queryParams).then(response => { this.orderList = response.rows || []; + this.total = response.total; this.orderLoading = false; }).catch(error => { console.error('获取正式订单主列表失败:', error) diff --git a/klp-ui/src/views/wms/coil/abnormalCoil.vue b/klp-ui/src/views/wms/coil/abnormalCoil.vue index ed82590f..46255cbe 100644 --- a/klp-ui/src/views/wms/coil/abnormalCoil.vue +++ b/klp-ui/src/views/wms/coil/abnormalCoil.vue @@ -68,6 +68,7 @@ +