From c00cebc4e35289ea636998b7b82a5b084c410a6f Mon Sep 17 00:00:00 2001 From: "271556543@qq.com" <271556543@qq.com> Date: Mon, 7 Nov 2022 17:23:44 +0800 Subject: [PATCH] 2022.11.7 --- src/components/XyTable/index.vue | 9 +- src/utils/index.js | 25 +++++ src/views/business/component/addBusiness.vue | 54 ++++++++- src/views/customer/component/addCustomer.vue | 52 ++++----- src/views/customer/component/addOrder.vue | 105 ++++++++++-------- src/views/customer/customer.vue | 9 +- src/views/finance/component/detailServe.vue | 12 +- .../product/productComponent/addProduct.vue | 23 +++- 8 files changed, 199 insertions(+), 90 deletions(-) diff --git a/src/components/XyTable/index.vue b/src/components/XyTable/index.vue index 08ace0f..9de6827 100644 --- a/src/components/XyTable/index.vue +++ b/src/components/XyTable/index.vue @@ -128,6 +128,9 @@ export default { selectAllClick(selection){ this.$emit('select-all',selection) }, + selectChange(selection){ + this.$emit('selection-change',selection) + }, cellClick(row, column, cell) { this.$emit('cellClick', row, column, cell) }, @@ -184,6 +187,7 @@ export default { btnWidth, selectClick, selectAllClick, + selectChange, height, createIndexRow, tableStyle, @@ -230,9 +234,8 @@ export default { on={{ ['select']: selectClick, ['cell-click']: cellClick, - ['select-all']: selectAllClick}}> - - + ['select-all']: selectAllClick, + ['selection-change']:selectChange}}> { tableItem.map((item, index) => { //自定义表格内容 diff --git a/src/utils/index.js b/src/utils/index.js index 4c71f6f..ac5c399 100644 --- a/src/utils/index.js +++ b/src/utils/index.js @@ -145,3 +145,28 @@ export function getAgeByIdcard(identityCard){ } return age; } + +export function getBirth(idCard) { + let birthday = ""; + if(idCard != null && idCard != ""){ + if(idCard.length == 15){ + birthday = "19"+idCard.slice(6,12); + } else if(idCard.length == 18){ + birthday = idCard.slice(6,14); + } + birthday = birthday.replace(/(.{4})(.{2})/,"$1-$2-"); + //通过正则表达式来指定输出格式为:1990-01-01 + } + return birthday; +} + +export function getSex(idCard) { + let sexStr; + if (parseInt(idCard.slice(-2, -1)) % 2 == 1) { + sexStr = '男'; + } + else { + sexStr = '女'; + } + return sexStr; +} diff --git a/src/views/business/component/addBusiness.vue b/src/views/business/component/addBusiness.vue index f5f22f5..199909f 100644 --- a/src/views/business/component/addBusiness.vue +++ b/src/views/business/component/addBusiness.vue @@ -77,9 +77,16 @@ *关联服务:
- - - + + +
@@ -123,6 +130,29 @@ export default { {required: true, message: '请填写结算周期'} ] }, + + skuTable:[ + { + type:'selection', + width:44 + }, + { + prop:'name', + label:'服务名称', + width: 140 + }, + { + prop:'time_lenth', + label:'服务时长', + width: 120 + }, + { + prop:'service', + label:'服务内容', + minWidth: 160, + align:'left' + } + ] } }, methods: { @@ -136,6 +166,24 @@ export default { } }) console.log(res) + + //默认勾选 + this.$refs['table'].clearSelection() + let ids = this.form.product_sku_list.map(item => item.sku_id) + this.skus.forEach(item => { + if(ids.indexOf(item.id) !== -1){ + this.$refs['table'].toggleRowSelection(item) + } + }) + }, + + rowSelect(selection){ + console.log(selection) + this.form.product_sku_list = selection.map(item => { + return { + sku_id:item.id + } + }) }, submit() { diff --git a/src/views/customer/component/addCustomer.vue b/src/views/customer/component/addCustomer.vue index 8e0d2cb..37a03b0 100644 --- a/src/views/customer/component/addCustomer.vue +++ b/src/views/customer/component/addCustomer.vue @@ -138,32 +138,6 @@ - - - - @@ -339,6 +325,7 @@ import {getparameter} from '@/api/system/dictionary' import {save, getInfo} from '@/api/customer' import {save as orderSave} from '@/api/order' import {getList as productList} from "@/api/product"; +import {getBirth,getSex} from '@/utils' import moment from "moment"; export default { @@ -510,9 +497,6 @@ export default { customer_address_list: [ {required: true, message: '请填写地址'}, ], - sex: [ - {required: true, message: '请选择性别'}, - ], level_id: [ {required: true, message: '请选择失能等级'}, ] @@ -667,6 +651,8 @@ export default { submit() { this.$refs['dialog'].validate().then(res => { + this.form.sex = getSex(this.form.idcard) + this.form.birthday = getBirth(this.form.idcard) Object.defineProperty(this.form,'city_id',{ value:this.form.area[0] || '', enumerable: true, diff --git a/src/views/customer/component/addOrder.vue b/src/views/customer/component/addOrder.vue index baf6c29..e30c46b 100644 --- a/src/views/customer/component/addOrder.vue +++ b/src/views/customer/component/addOrder.vue @@ -68,53 +68,53 @@ - + + + + + + + + + + + - + + + + + + + + + + + - + + + + + + + + + + + - + + + + + + + + + + +