修改地址

master
wqy 2 years ago
parent e45f5ff222
commit fb76b1cc02

@ -77,6 +77,14 @@ export function deliverProduct(data){
}) })
} }
export function updateReceiverAddress(data){
return request({
url: '/oms/order/receiver/update',
method: 'post',
data: data
})
}
// 查看订单操作日志 // 查看订单操作日志
export function viewLog(orderId){ export function viewLog(orderId){
return request({ return request({

@ -8,7 +8,7 @@
v-bind="$props" v-bind="$props"
clearable clearable
placeholder="请选择..." placeholder="请选择..."
size="small" :size="size"
/> />
</div> </div>
</template> </template>
@ -20,7 +20,7 @@ import {mapGetters} from "vuex";
export default { export default {
name: 'AddressSelector', name: 'AddressSelector',
// register the component // register the component
props: ['value', 'props'], props: ['value', 'props', 'size'],
computed: { computed: {
...mapGetters(['areaSelect']), ...mapGetters(['areaSelect']),
tempValue: { tempValue: {
@ -47,7 +47,7 @@ export default {
recurs(list) { recurs(list) {
list.forEach(it => { list.forEach(it => {
it.label = it.name it.label = it.name
it.value = it.id it.value = it.name
if (it.children) { if (it.children) {
this.recurs(it.children) this.recurs(it.children)
} }

@ -15,7 +15,7 @@
@keyup.enter.native="handleQuery"/> @keyup.enter.native="handleQuery"/>
</el-form-item> </el-form-item>
<el-form-item label="省市区" prop="provinces"> <el-form-item label="省市区" prop="provinces">
<address-selector v-model="queryParams.provinces"></address-selector> <address-selector v-model="queryParams.provinces" size="small"></address-selector>
</el-form-item> </el-form-item>
<el-form-item label="下单时间" prop="Time"> <el-form-item label="下单时间" prop="Time">
<el-date-picker v-model="queryParams.Time" type="datetimerange" :picker-options="pickerOptions" <el-date-picker v-model="queryParams.Time" type="datetimerange" :picker-options="pickerOptions"
@ -49,7 +49,7 @@
<el-button <el-button
size="mini" size="mini"
type="text" type="text"
@click="handleUpdate()" @click="handleUpdate(scope.row)"
>修改 >修改
</el-button> </el-button>
</div> </div>
@ -242,20 +242,45 @@
</el-timeline-item> </el-timeline-item>
</el-timeline> </el-timeline>
</el-dialog> </el-dialog>
<el-dialog title="修改收件信息" :visible.sync="modifyReceiverInfo.open" width="500px" append-to-body
:close-on-click-modal="false">
<el-form ref="modifyReceiverInfoForm" :model="modifyReceiverInfo.form" label-width="100px"
:rules="modifyReceiverInfo.rules">
<el-form-item label="收件人姓名" prop="receiverName">
<el-input v-model="modifyReceiverInfo.form.receiverName"/>
</el-form-item>
<el-form-item label="收件人电话" prop="receiverPhone">
<el-input v-model="modifyReceiverInfo.form.receiverPhone"/>
</el-form-item>
<el-form-item label="省市区" prop="fullArea">
<AddressSelector v-model="modifyReceiverInfo.form.fullArea" style="width: 100%"/>
</el-form-item>
<el-form-item label="详细地址" prop="receiverDetailAddress">
<el-input v-model="modifyReceiverInfo.form.receiverDetailAddress"/>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" size="small" @click="asyncOk">
确认修改
</el-button>
<el-button size="small" @click="modifyReceiverInfo.open = false"> </el-button>
</div>
</el-dialog>
</div> </div>
</template> </template>
<script> <script>
import { import {
listOmsOrder,
getOmsOrder,
delOmsOrder,
getDecryptPhone,
addOmsOrder, addOmsOrder,
updateOmsOrder, deliverProduct,
delOmsOrder,
exportOmsOrder, exportOmsOrder,
getDecryptPhone,
listOmsOrder,
saveMerchantNote, saveMerchantNote,
deliverProduct, updateOmsOrder,
updateReceiverAddress,
viewLog viewLog
} from '@/api/oms/order' } from '@/api/oms/order'
import AddressSelector from "@/views/components/AddressSelector/index.vue"; import AddressSelector from "@/views/components/AddressSelector/index.vue";
@ -273,6 +298,14 @@ export default {
AddressSelector AddressSelector
}, },
data() { data() {
const validArea = (rule, value, callback) => {
const fullArea = this.modifyReceiverInfo.form.fullArea
if (fullArea.length < 3) {
callback(new Error("请选择省市区"));
} else {
callback();
}
};
return { return {
show: false, show: false,
// //
@ -306,9 +339,9 @@ export default {
status: null, status: null,
Time: [], Time: [],
provinces: [], provinces: [],
receiverProvinceId: null, receiverProvince: null,
receiverCityId: null, receiverCity: null,
receiverDistrictId: null, receiverDistrict: null,
orderSn: null, orderSn: null,
productName: null, productName: null,
userPhone: null, userPhone: null,
@ -360,6 +393,22 @@ export default {
logList: null, logList: null,
open: false, open: false,
loading: false loading: false
},
modifyReceiverInfo: {
open: false,
form: {},
rules: {
receiverName: [
{required: true, message: "收件人姓名不能为空", trigger: "blur"}
],
receiverPhone: [
{required: true, message: "收件人电话不能为空", trigger: "blur"}
], fullArea: [
{required: true, validator: validArea, trigger: "change"}
], receiverDetailAddress: [
{required: true, message: "详细地址不能为空", trigger: "blur"}
],
}
} }
}; };
}, },
@ -397,14 +446,14 @@ export default {
const {pageNum, pageSize} = this.queryParams; const {pageNum, pageSize} = this.queryParams;
const query = {...this.queryParams, pageNum: undefined, pageSize: undefined}; const query = {...this.queryParams, pageNum: undefined, pageSize: undefined};
if (query.provinces) { if (query.provinces) {
const [receiverProvinceId, receiverCityId, receiverDistrictId] = query.provinces const [receiverProvince, receiverCity, receiverDistrict] = query.provinces
query.receiverProvinceId = receiverProvinceId query.receiverProvince = receiverProvince
query.receiverCityId = receiverCityId query.receiverCity = receiverCity
query.receiverDistrictId = receiverDistrictId query.receiverDistrict = receiverDistrict
} else { } else {
query.receiverProvinceId = null query.receiverProvince = null
query.receiverCityId = null query.receiverCity = null
query.receiverDistrictId = null query.receiverDistrict = null
} }
const pageReq = {page: pageNum - 1, size: pageSize}; const pageReq = {page: pageNum - 1, size: pageSize};
listOmsOrder(query, pageReq).then(response => { listOmsOrder(query, pageReq).then(response => {
@ -441,9 +490,6 @@ export default {
receiverProvince: null, receiverProvince: null,
receiverCity: null, receiverCity: null,
receiverDistrict: null, receiverDistrict: null,
receiverProvinceId: null,
receiverCityId: null,
receiverDistrictId: null,
receiverDetailAddress: null, receiverDetailAddress: null,
note: null, note: null,
confirmStatus: 0, confirmStatus: 0,
@ -481,8 +527,12 @@ export default {
this.title = "添加订单表"; this.title = "添加订单表";
}, },
/** 修改按钮操作 */ /** 修改按钮操作 */
handleUpdate() { async handleUpdate(row) {
this.$modal.msgError("无操作权限"); await this.handleWatch(row)
const {receiverCity, receiverDistrict, receiverProvince} = row
row.fullArea = [receiverProvince, receiverCity, receiverDistrict]
this.modifyReceiverInfo.form = row
this.modifyReceiverInfo.open = true
}, },
handleWatch(row) { handleWatch(row) {
getDecryptPhone(row.id).then(response =>{ getDecryptPhone(row.id).then(response =>{
@ -676,8 +726,30 @@ export default {
this.logObj.open = true this.logObj.open = true
this.logObj.loading = false this.logObj.loading = false
}) })
},
asyncOk() {
this.$refs['modifyReceiverInfoForm'].validate((valid) => {
if (valid) {
const {id, receiverName, fullArea, receiverPhone, receiverDetailAddress} = this.modifyReceiverInfo.form
const [receiverProvince, receiverCity, receiverDistrict] = fullArea
updateReceiverAddress({
id,
receiverCity,
receiverDetailAddress,
receiverDistrict,
receiverName,
receiverPhone,
receiverProvince
}).then(resp => {
this.$modal.msgSuccess('修改成功')
this.getList()
this.modifyReceiverInfo.open = false
})
}
})
} }
} },
}; };
</script> </script>

Loading…
Cancel
Save