客户信息管理

ccongli-dev-0821
tengxi 1 year ago
parent a4285bd547
commit c15203a0be

@ -15,7 +15,8 @@ public interface ErrorCodeConstants {
ErrorCode UNIT_LIBRARY_NOT_EXISTS = new ErrorCode(1002025006, "单位库不存在"); ErrorCode UNIT_LIBRARY_NOT_EXISTS = new ErrorCode(1002025006, "单位库不存在");
// ========== 品牌库 TODO 补充编号 ========== // ========== 品牌库 TODO 补充编号 ==========
ErrorCode BRAND_LIBRARY_NOT_EXISTS = new ErrorCode(1002025007, "品牌库不存在"); ErrorCode BRAND_LIBRARY_NOT_EXISTS = new ErrorCode(1002025007, "品牌库不存在");
// ========== 客户信息 TODO 补充编号 ==========
ErrorCode CUSTOMER_NOT_EXISTS = new ErrorCode(1002025008, "客户信息不存在");
// ========== 部门模块 1002004000 ========== // ========== 部门模块 1002004000 ==========
ErrorCode MaterialCategory_NAME_DUPLICATE = new ErrorCode(1002004000, "已经存在该名字的部门"); ErrorCode MaterialCategory_NAME_DUPLICATE = new ErrorCode(1002004000, "已经存在该名字的部门");
ErrorCode MaterialCategory_PARENT_NOT_EXITS = new ErrorCode(1002004001,"父级部门不存在"); ErrorCode MaterialCategory_PARENT_NOT_EXITS = new ErrorCode(1002004001,"父级部门不存在");

@ -0,0 +1,82 @@
package com.yunxi.scm.module.xxjj.service.customer;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import org.springframework.validation.annotation.Validated;
import java.util.*;
import com.yunxi.scm.module.xxjj.controller.admin.customer.vo.*;
import com.yunxi.scm.module.xxjj.dal.dataobject.customer.CustomerDO;
import com.yunxi.scm.framework.common.pojo.PageResult;
import com.yunxi.scm.module.xxjj.convert.customer.CustomerConvert;
import com.yunxi.scm.module.xxjj.dal.mysql.customer.CustomerMapper;
import static com.yunxi.scm.framework.common.exception.util.ServiceExceptionUtil.exception;
import static com.yunxi.scm.module.xxjj.enums.ErrorCodeConstants.*;
/**
* Service
*
* @author
*/
@Service
@Validated
public class CustomerServiceImpl implements CustomerService {
@Resource
private CustomerMapper customerMapper;
@Override
public Long createCustomer(CustomerCreateReqVO createReqVO) {
// 插入
CustomerDO customer = CustomerConvert.INSTANCE.convert(createReqVO);
customerMapper.insert(customer);
// 返回
return customer.getId();
}
@Override
public void updateCustomer(CustomerUpdateReqVO updateReqVO) {
// 校验存在
validateCustomerExists(updateReqVO.getId());
// 更新
CustomerDO updateObj = CustomerConvert.INSTANCE.convert(updateReqVO);
customerMapper.updateById(updateObj);
}
@Override
public void deleteCustomer(Long id) {
// 校验存在
validateCustomerExists(id);
// 删除
customerMapper.deleteById(id);
}
private void validateCustomerExists(Long id) {
if (customerMapper.selectById(id) == null) {
throw exception(CUSTOMER_NOT_EXISTS);
}
}
@Override
public CustomerDO getCustomer(Long id) {
return customerMapper.selectById(id);
}
@Override
public List<CustomerDO> getCustomerList(Collection<Long> ids) {
return customerMapper.selectBatchIds(ids);
}
@Override
public PageResult<CustomerDO> getCustomerPage(CustomerPageReqVO pageReqVO) {
return customerMapper.selectPage(pageReqVO);
}
@Override
public List<CustomerDO> getCustomerList(CustomerExportReqVO exportReqVO) {
return customerMapper.selectList(exportReqVO);
}
}

@ -351,3 +351,16 @@ export const PromotionActivityStatusEnum = {
name: '下架' name: '下架'
} }
} }
/**
* 客户状态
*/
export const customerstatus = {
OPEN1: {
status: 0,
name: '开启'
},
CLOSE: {
status: 1,
name: '关闭'
}
}

@ -94,9 +94,14 @@ export const DICT_TYPE = {
UNIT_LIBRARY: 'unit_library', //单位库类型 UNIT_LIBRARY: 'unit_library', //单位库类型
UNIT_LIBRARY_STATUS: 'unit_library_status', //单位库状态 UNIT_LIBRARY_STATUS: 'unit_library_status', //单位库状态
// ============= UNIT_LIBRARY 模块================= // ============= BRAND_LIBRARY 模块=================
BRAND_LIBRARY: 'brand_library', //品牌库类型 BRAND_LIBRARY: 'brand_library', //品牌库类型
BRAND_LIBRARY_STATUS: 'brand_library_status', //品牌库状态 BRAND_LIBRARY_STATUS: 'brand_library_status', //品牌库状态
// ============= CUSTOMER 模块=================
CUSTOMER_TYPE: 'customer_type', //客户类型
CUSTOMER_NATUER: 'customer_nature', //客户性质
COOPERATION_MODE: 'cooperation_mode', //客户合作模式
} }
/** /**

@ -0,0 +1,547 @@
<template>
<div class="app-container">
<!-- 搜索工作栏 -->
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item label="客户名称" prop="customerName">
<el-input v-model="queryParams.customerName" placeholder="请输入客户名称" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="客户类型" prop="customerType">
<el-select v-model="queryParams.customerType" placeholder="请选择客户类型" clearable size="small">
<el-option v-for="dict in this.getDictDatas(DICT_TYPE.CUSTOMER_TYPE)"
:key="dict.value" :label="dict.label" :value="dict.value"/>
</el-select>
</el-form-item>
<el-form-item label="统一结算主体" prop="unifiedSettlement">
<el-input v-model="queryParams.unifiedSettlement" placeholder="请输入统一结算主体" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="客户性质" prop="customerNature">
<el-select v-model="queryParams.customerNature" placeholder="请选择客户性质" clearable size="small">
<el-option v-for="dict in this.getDictDatas(DICT_TYPE.CUSTOMER_NATUER)"
:key="dict.value" :label="dict.label" :value="dict.value"/>
</el-select>
</el-form-item>
<el-form-item label="合作模式" prop="cooperationMode">
<el-select v-model="queryParams.cooperationMode" placeholder="请选择合作模式" clearable size="small">
<el-option v-for="dict in this.getDictDatas(DICT_TYPE.COOPERATION_MODE)"
:key="dict.value" :label="dict.label" :value="dict.value"/>
</el-select>
</el-form-item>
<el-form-item label="隶属业务线" prop="linebusinessId">
<el-input v-model="queryParams.linebusinessId" placeholder="请输入隶属业务线" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="状态" prop="status">
<el-select v-model="queryParams.status" placeholder="请选择状态" clearable size="small">
<el-option v-for="dict in this.getDictDatas(DICT_TYPE.UNIT_LIBRARY_STATUS)"
:key="dict.value" :label="dict.label" :value="dict.value"/>
</el-select>
</el-form-item>
<el-form-item label="归属人员" prop="belongingPeople">
<el-input v-model="queryParams.belongingPeople" placeholder="请输入归属人员" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="创建时间" prop="createTime">
<el-date-picker v-model="queryParams.createTime" style="width: 240px" value-format="yyyy-MM-dd HH:mm:ss" type="daterange"
range-separator="-" start-placeholder="开始日期" end-placeholder="结束日期" :default-time="['00:00:00', '23:59:59']" />
</el-form-item>
<el-form-item label="更新时间" prop="updateTime">
<el-date-picker v-model="queryParams.updateTime" style="width: 240px" value-format="yyyy-MM-dd HH:mm:ss" type="daterange"
range-separator="-" start-placeholder="开始日期" end-placeholder="结束日期" :default-time="['00:00:00', '23:59:59']" />
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" @click="handleQuery"></el-button>
<el-button icon="el-icon-refresh" @click="resetQuery"></el-button>
</el-form-item>
</el-form>
<!-- 操作工具栏 -->
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleAdd"
v-hasPermi="['xxjj:customer:create']">新增</el-button>
</el-col>
<el-col :span="1.5">
<el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExport" :loading="exportLoading"
v-hasPermi="['xxjj:customer:export']">导出</el-button>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList" :columns="columns"></right-toolbar>
</el-row>
<el-tabs v-model="activeTabs" @tab-click="handleClick">
<el-tab-pane label="全部" name="all">
<!-- 列表 -->
<el-table v-loading="loading" :data="list" @selection-change="handleSelectionChange" sortable border custom-column stripe>
<el-table-column type="selection" width="55"align=center ></el-table-column>
<el-table-column label="编号" align="center" prop="id" v-if="columns[0].visible"/>
<el-table-column label="客户名称" align="center" prop="customerName" sortable v-if="columns[1].visible" />
<el-table-column label="客户类型" align="center" prop="customerType" sortable v-if="columns[2].visible" >
<template v-slot="scope">
<dict-tag :type="DICT_TYPE.CUSTOMER_TYPE" :value="scope.row.customerType" />
</template>
</el-table-column>
<el-table-column label="统一结算主体" align="center" prop="unifiedSettlement" sortable v-if="columns[3].visible"/>
<el-table-column label="客户性质" align="center" prop="customerNature" sortable v-if="columns[4].visible">
<template v-slot="scope">
<dict-tag :type="DICT_TYPE.CUSTOMER_NATUER" :value="scope.row.customerNature" />
</template>
</el-table-column>
<el-table-column label="合作模式" align="center" prop="cooperationMode" sortable v-if="columns[5].visible">
<template v-slot="scope">
<dict-tag :type="DICT_TYPE.COOPERATION_MODE" :value="scope.row.cooperationMode" />
</template>
</el-table-column>
<el-table-column label="隶属业务线" align="center" prop="linebusinessId" sortable v-if="columns[6].visible" />
<el-table-column label="状态" align="center" prop="status" sortable v-if="columns[7].visible">
<template v-slot="scope">
<dict-tag :type="DICT_TYPE.UNIT_LIBRARY_STATUS" :value="scope.row.status" />
</template>
</el-table-column>
<el-table-column label="归属人员" align="center" prop="belongingPeople" sortable v-if="columns[8].visible" />
<el-table-column label="创建时间" align="center" prop="createTime" width="180" v-if="columns[9].visible">
<template v-slot="scope">
<span>{{ parseTime(scope.row.createTime) }}</span>
</template>
</el-table-column>
<el-table-column label="更新时间" align="center" prop="updateTime" width="180" v-if="columns[10].visible" >
<template v-slot="scope">
<span>{{ parseTime(scope.row.updateTime) }}</span>
</template>
</el-table-column>
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template v-slot="scope">
<el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)"
v-hasPermi="['xxjj:customer:update']">修改</el-button>
<el-button size="mini" type="text" icon="el-icon-edit" @click="handleopen1close(scope.row)"
>{{scope.row.status == 0 ? '禁用' : '启用'}}</el-button>
<el-divider direction="vertical"></el-divider>
<el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)"
v-hasPermi="['xxjj:customer:delete']">删除</el-button>
</template>
</el-table-column>
</el-table>
</el-tab-pane>
<el-tab-pane label="已启用" name="open1">
<!-- 列表 -->
<el-table v-loading="loading" :data="list" @selection-change="handleSelectionChange" sortable border custom-column stripe>
<el-table-column type="selection" width="55"align=center ></el-table-column>
<el-table-column label="编号" align="center" prop="id" v-if="columns[0].visible"/>
<el-table-column label="客户名称" align="center" prop="customerName" sortable v-if="columns[1].visible" />
<el-table-column label="客户类型" align="center" prop="customerType" sortable v-if="columns[2].visible" >
<template v-slot="scope">
<dict-tag :type="DICT_TYPE.CUSTOMER_TYPE" :value="scope.row.customerType" />
</template>
</el-table-column>
<el-table-column label="统一结算主体" align="center" prop="unifiedSettlement" sortable v-if="columns[3].visible"/>
<el-table-column label="客户性质" align="center" prop="customerNature" sortable v-if="columns[4].visible">
<template v-slot="scope">
<dict-tag :type="DICT_TYPE.CUSTOMER_NATUER" :value="scope.row.customerNature" />
</template>
</el-table-column>
<el-table-column label="合作模式" align="center" prop="cooperationMode" sortable v-if="columns[5].visible">
<template v-slot="scope">
<dict-tag :type="DICT_TYPE.COOPERATION_MODE" :value="scope.row.cooperationMode" />
</template>
</el-table-column>
<el-table-column label="隶属业务线" align="center" prop="linebusinessId" sortable v-if="columns[6].visible" />
<el-table-column label="状态" align="center" prop="status" sortable v-if="columns[7].visible">
<template v-slot="scope">
<dict-tag :type="DICT_TYPE.UNIT_LIBRARY_STATUS" :value="scope.row.status" />
</template>
</el-table-column>
<el-table-column label="归属人员" align="center" prop="belongingPeople" sortable v-if="columns[8].visible" />
<el-table-column label="创建时间" align="center" prop="createTime" width="180" v-if="columns[9].visible">
<template v-slot="scope">
<span>{{ parseTime(scope.row.createTime) }}</span>
</template>
</el-table-column>
<el-table-column label="更新时间" align="center" prop="updateTime" width="180" v-if="columns[10].visible" >
<template v-slot="scope">
<span>{{ parseTime(scope.row.updateTime) }}</span>
</template>
</el-table-column>
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template v-slot="scope">
<el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)"
v-hasPermi="['xxjj:customer:update']">修改</el-button>
<el-button size="mini" type="text" icon="el-icon-edit" @click="handleopen1close(scope.row)"
>{{scope.row.status == 0 ? '禁用' : '启用'}}</el-button>
<el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)"
v-hasPermi="['xxjj:customer:delete']">删除</el-button>
</template>
</el-table-column>
</el-table>
</el-tab-pane>
<el-tab-pane label="已禁用" name="close">
<!-- 列表 -->
<el-table v-loading="loading" :data="list" @selection-change="handleSelectionChange" sortable border custom-column stripe>
<el-table-column type="selection" width="55"align=center ></el-table-column>
<el-table-column label="编号" align="center" prop="id" v-if="columns[0].visible"/>
<el-table-column label="客户名称" align="center" prop="customerName" sortable v-if="columns[1].visible" />
<el-table-column label="客户类型" align="center" prop="customerType" sortable v-if="columns[2].visible" >
<template v-slot="scope">
<dict-tag :type="DICT_TYPE.CUSTOMER_TYPE" :value="scope.row.customerType" />
</template>
</el-table-column>
<el-table-column label="统一结算主体" align="center" prop="unifiedSettlement" sortable v-if="columns[3].visible"/>
<el-table-column label="客户性质" align="center" prop="customerNature" sortable v-if="columns[4].visible">
<template v-slot="scope">
<dict-tag :type="DICT_TYPE.CUSTOMER_NATUER" :value="scope.row.customerNature" />
</template>
</el-table-column>
<el-table-column label="合作模式" align="center" prop="cooperationMode" sortable v-if="columns[5].visible">
<template v-slot="scope">
<dict-tag :type="DICT_TYPE.COOPERATION_MODE" :value="scope.row.cooperationMode" />
</template>
</el-table-column>
<el-table-column label="隶属业务线" align="center" prop="linebusinessId" sortable v-if="columns[6].visible" />
<el-table-column label="状态" align="center" prop="status" sortable v-if="columns[7].visible">
<template v-slot="scope">
<dict-tag :type="DICT_TYPE.UNIT_LIBRARY_STATUS" :value="scope.row.status" />
</template>
</el-table-column>
<el-table-column label="归属人员" align="center" prop="belongingPeople" sortable v-if="columns[8].visible" />
<el-table-column label="创建时间" align="center" prop="createTime" width="180" v-if="columns[9].visible">
<template v-slot="scope">
<span>{{ parseTime(scope.row.createTime) }}</span>
</template>
</el-table-column>
<el-table-column label="更新时间" align="center" prop="updateTime" width="180" v-if="columns[10].visible" >
<template v-slot="scope">
<span>{{ parseTime(scope.row.updateTime) }}</span>
</template>
</el-table-column>
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template v-slot="scope">
<el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)"
v-hasPermi="['xxjj:customer:update']">修改</el-button>
<el-button size="mini" type="text" icon="el-icon-edit" @click="handleopen1close(scope.row)"
>{{scope.row.status == 0 ? '禁用' : '启用'}}</el-button>
<el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)"
v-hasPermi="['xxjj:customer:delete']">删除</el-button>
</template>
</el-table-column>
</el-table>
</el-tab-pane>
</el-tabs>
<!-- 分页组件 -->
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNo" :limit.sync="queryParams.pageSize"
@pagination="getList"/>
<!-- 对话框(添加 / 修改) -->
<el-dialog :title="title" :visible.sync="open" width="500px" v-dialogDrag append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item label="客户名称" prop="customerName">
<el-input v-model="form.customerName" placeholder="请输入客户名称" />
</el-form-item>
<el-form-item label="客户类型" prop="customerType">
<el-select v-model="form.customerType" placeholder="请选择客户类型">
<el-option v-for="dict in this.getDictDatas(DICT_TYPE.CUSTOMER_TYPE)"
:key="dict.value" :label="dict.label" :value="dict.value" />
</el-select>
</el-form-item>
<el-form-item label="统一结算主体" prop="unifiedSettlement">
<el-input v-model="form.unifiedSettlement" placeholder="请输入统一结算主体" />
</el-form-item>
<el-form-item label="客户性质" prop="customerNature">
<el-select v-model="form.customerNature" placeholder="请选择客户性质">
<el-option v-for="dict in this.getDictDatas(DICT_TYPE.CUSTOMER_NATUER)"
:key="dict.value" :label="dict.label" :value="dict.value" />
</el-select>
</el-form-item>
<el-form-item label="合作模式" prop="cooperationMode">
<el-select v-model="form.cooperationMode" placeholder="请选择合作模式">
<el-option v-for="dict in this.getDictDatas(DICT_TYPE.COOPERATION_MODE)"
:key="dict.value" :label="dict.label" :value="dict.value" />
</el-select>
</el-form-item>
<el-form-item label="隶属业务线" prop="linebusinessId">
<el-input v-model="form.linebusinessId" placeholder="请输入隶属业务线" />
</el-form-item>
<el-form-item label="状态" prop="status">
<el-select v-model="form.status" placeholder="请选择状态">
<el-option v-for="dict in this.getDictDatas(DICT_TYPE.UNIT_LIBRARY_STATUS)"
:key="dict.value" :label="dict.label" :value="dict.value" />
</el-select>
</el-form-item>
<el-form-item label="归属人员" prop="belongingPeople">
<el-input v-model="form.belongingPeople" placeholder="请输入归属人员" />
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm"> </el-button>
<el-button @click="cancel"> </el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { createCustomer, updateCustomer, deleteCustomer, getCustomer, getCustomerPage, exportCustomerExcel } from "@/api/xxjj/customer";
import {customerstatus} from "@/utils/constants";
export default {
name: "Customer",
components: {
},
data() {
return {
activeTabs: "all",
//
loading: true,
//
exportLoading: false,
//
showSearch: true,
//
total: 0,
//
list: [],
//
title: "",
//
open: false,
//
queryParams: {
pageNo: 1,
pageSize: 10,
customerName: null,
customerType: null,
unifiedSettlement: null,
customerNature: null,
cooperationMode: null,
linebusinessId: null,
status: null,
belongingPeople: null,
createTime: [],
updateTime: [],
},
//
form: {},
//
rules: {
customerName: [{ required: true, message: "客户名称不能为空", trigger: "blur" }],
customerType: [{ required: true, message: "客户类型不能为空", trigger: "change" }],
customerNature: [{ required: true, message: "客户性质不能为空", trigger: "blur" }],
cooperationMode: [{ required: true, message: "合作模式不能为空", trigger: "blur" }],
status: [{ required: true, message: "状态不能为空", trigger: "blur" }],
},
//
columns: [
{ key: 0, label: `编号`, visible: true },
{ key: 1, label: `客户名称`, visible: true },
{ key: 2, label: `客户类型`, visible: true },
{ key: 3, label: `统一结算主体`, visible: true },
{ key: 4, label: `客户性质`, visible: true },
{ key: 5, label: `合作模式`, visible: true },
{ key: 6, label: `隶属业务线`, visible: true },
{ key: 7, label: `状态`, visible: true },
{ key: 8, label: `归属人员`, visible: true },
{ key: 9, label: `创建时间`, visible: true },
{ key: 10, label: `更新时间`, visible: true },
],
};
},
created() {
this.getList();
},
methods: {
//
handleSelectionChange(val) {
this.multipleSelection = val;
},
// tab
handleClick(val) {
if (val.name === "all") {
this.queryParams.status = undefined;
this.queryParams.alarmStock = undefined;
} else if (val.name === "open1") {
this.queryParams.status = customerstatus.OPEN1.status;
this.queryParams.alarmStock = undefined;
} else if (val.name === "close") {
this.queryParams.status = customerstatus.CLOSE.status;
this.queryParams.alarmStock = undefined;
}
this.getList();
},
//
handleopen1close(row) {
if (row.status == 1) {
this.$confirm('你确定要启用该客户吗', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(async () => {
try {
row.status = 0
updateCustomer(row).then(response => {
this.$modal.msgSuccess("启用成功");
this.open = false;
this.getList();
});
} catch (err) {
this.$message.error('启用失败')
}
})
} else if (row.status == 0) {
this.$confirm('你确定要禁用该客户吗', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(async () => {
try {
row.status = 1
updateCustomer(row).then(response => {
this.$modal.msgSuccess("禁用成功");
this.open = false;
this.getList();
});
} catch (err) {
this.$message.error('禁用失败')
}
})
}
},
/** 查询列表 */
getList() {
this.loading = true;
//
getCustomerPage(this.queryParams).then(response => {
this.list = response.data.list;
this.total = response.data.total;
this.loading = false;
});
},
/** 取消按钮 */
cancel() {
this.open = false;
this.reset();
},
/** 表单重置 */
reset() {
this.form = {
id: undefined,
customerName: undefined,
customerType: undefined,
unifiedSettlement: undefined,
customerNature: undefined,
cooperationMode: undefined,
linebusinessId: undefined,
status: undefined,
belongingPeople: undefined,
};
this.resetForm("form");
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNo = 1;
this.getList();
},
/** 重置按钮操作 */
resetQuery() {
this.resetForm("queryForm");
this.handleQuery();
},
/** 新增按钮操作 */
handleAdd() {
this.reset();
this.open = true;
this.title = "添加客户信息";
},
/** 修改按钮操作 */
handleUpdate(row) {
this.reset();
const id = row.id;
getCustomer(id).then(response => {
this.form = response.data;
this.open = true;
this.title = "修改客户信息";
});
},
/** 提交按钮 */
submitForm() {
this.$refs["form"].validate(valid => {
if (!valid) {
return;
}
//
if (this.form.id != null) {
updateCustomer(this.form).then(response => {
this.$modal.msgSuccess("修改成功");
this.open = false;
this.getList();
});
return;
}
//
createCustomer(this.form).then(response => {
this.$modal.msgSuccess("新增成功");
this.open = false;
this.getList();
});
});
},
/** 删除按钮操作 */
handleDelete(row) {
const id = row.id;
this.$modal.confirm('是否确认删除客户信息编号为"' + id + '"的数据项?').then(function() {
return deleteCustomer(id);
}).then(() => {
this.getList();
this.$modal.msgSuccess("删除成功");
}).catch(() => {});
},
/** 导出按钮操作 */
handleExport() {
//
let params = {...this.queryParams};
params.pageNo = undefined;
params.pageSize = undefined;
this.$modal.confirm('是否确认导出所有客户信息数据项?').then(() => {
this.exportLoading = true;
return exportCustomerExcel(params);
}).then(response => {
this.$download.excel(response, '客户信息.xls');
this.exportLoading = false;
}).catch(() => {});
}
}
};
</script>
<style lang="scss">
.app-container {
.el-tag + .el-tag {
margin-left: 10px;
}
}
</style>

@ -84,7 +84,7 @@
<!-- 全部 --> <!-- 全部 -->
<el-tab-pane label="全部" name="all"> <el-tab-pane label="全部" name="all">
<!-- 列表 --> <!-- 列表 -->
<el-table v-loading="loading" :data="list" @selection-change="handleSelectionChange" sortable border custom-column stripe> <el-table v-loading="loading" :data="list" @selection-change="handleSelectionChange" sortable border custom-column stripe>
<el-table-column type="selection" width="55"></el-table-column> <el-table-column type="selection" width="55"></el-table-column>
<!-- <el-table-column label="编号" align="center" prop="id" /> --> <!-- <el-table-column label="编号" align="center" prop="id" /> -->
<el-table-column label="物料名称" width="250px" > <el-table-column label="物料名称" width="250px" >
@ -143,7 +143,7 @@
<!-- 已上架 --> <!-- 已上架 -->
<el-tab-pane label="已上架" name="up"> <el-tab-pane label="已上架" name="up">
<!-- 列表 --> <!-- 列表 -->
<el-table v-loading="loading" :data="list" @selection-change="handleSelectionChange" sortable custom-column > <el-table v-loading="loading" :data="list" @selection-change="handleSelectionChange" sortable custom-column >
<el-table-column type="selection" width="55"></el-table-column> <el-table-column type="selection" width="55"></el-table-column>
<!-- <el-table-column label="编号" align="center" prop="id" /> --> <!-- <el-table-column label="编号" align="center" prop="id" /> -->
<el-table-column label="物料名称" width="250px" > <el-table-column label="物料名称" width="250px" >
@ -202,7 +202,7 @@
<!-- 已下架 --> <!-- 已下架 -->
<el-tab-pane label="已下架" name="down"> <el-tab-pane label="已下架" name="down">
<!-- 列表 --> <!-- 列表 -->
<el-table v-loading="loading" :data="list" @selection-change="handleSelectionChange" sortable custom-column > <el-table v-loading="loading" :data="list" @selection-change="handleSelectionChange" sortable custom-column >
<el-table-column type="selection" width="55"></el-table-column> <el-table-column type="selection" width="55"></el-table-column>
<!-- <el-table-column label="编号" align="center" prop="id" /> --> <!-- <el-table-column label="编号" align="center" prop="id" /> -->
<el-table-column label="物料名称" width="250px" > <el-table-column label="物料名称" width="250px" >

Loading…
Cancel
Save