This commit is contained in:
linfso 2024-12-01 10:42:28 +08:00
parent 711756590f
commit 0c84d1634d
8 changed files with 217 additions and 302 deletions

View File

@ -9,6 +9,14 @@ export function listEmisSettleBill(query) {
})
}
export function listSimple(query) {
return request({
url: '/oms2c/emisSettleBill/listSimple',
method: 'get',
params: query
})
}
// 查询结算总账单详细
export function getEmisSettleBill(id) {
return request({

View File

@ -2,41 +2,14 @@ import request from '@/utils/request'
import { parseStrEmpty } from "@/utils/custom";
// 查询用户列表
export function listUser(query) {
export function listOmsUser(query) {
return request({
url: '/system/user/list',
url: '/system/user/listOmsUser',
method: 'get',
params: query
})
}
// 租户用户列表
export function listTenantUser(query) {
return request({
url: '/system/user/listTenantUser',
method: 'get',
params: query
})
}
// 商户用户列表
export function listMerchantUser(query) {
return request({
url: '/system/user/listMerchantUser',
method: 'get',
params: query
})
}
// 查询用户详细
export function getNewEmpCode(ownerSiteCode) {
return request({
url: '/system/user/getNewEmpCode',
method: 'get',
params: {ownerSiteCode: ownerSiteCode}
})
}
// 查询用户详细
export function getUser(id) {
@ -47,6 +20,15 @@ export function getUser(id) {
})
}
export function getOmsUserInfo(id) {
return request({
url: '/system/user/getOmsUserInfo',
method: 'get',
params:{id:parseStrEmpty(id)}
})
}
// 新增用户
export function addUser(data) {
return request({
@ -65,6 +47,22 @@ export function updateUser(data) {
})
}
export function editOmsUser(data) {
return request({
url: '/system/user/editOmsUser',
method: 'post',
data: data
})
}
export function editOmsUserBaseInfo(data) {
return request({
url: '/system/user/editOmsUserBaseInfo',
method: 'post',
data: data
})
}
// 删除用户
export function delUser(userId) {
return request({

View File

@ -105,7 +105,7 @@
<script>
import { listEmisOmsSupplier, getEmisOmsSupplier, delEmisOmsSupplier, addEmisOmsSupplier, updateEmisOmsSupplier } from "@/api/oms/emisOmsSupplier";
import elDateSimplePicker from '@/components/DatePickerAdv/elDateSimplePicker';
// import emisOmsSupplierView from '@/views/emis/emisOmsSupplier/emisOmsSupplierView';
// import emisOmsSupplierView from '@/views/oms/emisOmsSupplier/emisOmsSupplierView';
import OmsSupplierForm from '@/views/oms/OmsSupplier/OmsSupplierForm';
export default {
@ -222,7 +222,7 @@ export default {
this.id=row.id;
this.titleView="查看";
this.openView=true;
// this.router.push({ path: '/emis/emisOmsSupplier/viewDetail', query: { id: row.id }})
// this.router.push({ path: '/oms2c/emisOmsSupplier/viewDetail', query: { id: row.id }})
},
handleFormChanged(){
this.openForm = false;

View File

@ -1,232 +1,176 @@
<template>
<div class="app-container">
<div style="margin-bottom:20px" >
<el-descriptions :title="$t('基本信息维护')" size="mini" :column="4">
<el-descriptions-item label="客户名称">{{ form.customerName }}</el-descriptions-item>
</el-descriptions>
</div>
<el-form ref="form" size="mini" :model="form" :rules="rules" label-width="100px">
<el-row :gutter="0" style="display: flex;flex-wrap: wrap;">
<!-- <el-col :span="8">
<el-form-item label="客户编码" prop="customerCode">
<el-input v-model="form.customerCode" placeholder="自动生成" disabled />
</el-form-item>
</el-col> -->
<el-col :span="10">
<el-form-item label="客户名称" prop="customerName">
<el-input v-model="form.customerName" placeholder="" />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="英文简称" prop="customerNameEn">
<el-input v-model="form.customerNameEn" placeholder="请输入英文简称" />
</el-form-item>
</el-col>
<el-col :span="6">
</el-col>
<el-collapse v-model="activeNames">
<el-collapse-item title="" name="2">
<template slot="title">
<div class="form-group-title"><span class="title">{{ $t('基本信息') }}</span></div>
</template>
<el-row :gutter="0" style="display: flex;flex-wrap: wrap;">
<el-col :span="8">
<el-form-item label="联系人" prop="contact">
<el-input v-model="form.contact" placeholder="" />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="手机号码" prop="phone" >
<el-input v-model="form.phone" placeholder="" />
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="客户名称:" class="tb-show-item" prop="customerName">
{{form.customerName}}
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="英文名称:" class="tb-show-item" prop="customerNameEn">
{{form.customerNameEn}}
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="客户编号:" class="tb-show-item" prop="customerCode">
{{form.customerCode}}
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="客户类型:" class="tb-show-item" prop="customerType">
<span v-if="form.customerType==1">现金客户</span>
<span v-if="form.customerType==2">月结客户</span>
</el-form-item>
</el-col>
<!-- <el-col :span="6">
<el-form-item label="所属网点:" class="tb-show-item" prop="ownerSite">
{{form.ownerSiteName}}
</el-form-item>
</el-col> -->
<el-col :span="6">
<el-form-item label="结算类型:" class="tb-show-item" prop="customerType">
<span v-if="form.customerType==1">现金</span>
<span v-if="form.customerType==2">月结</span>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="月结卡号:" class="tb-show-item" prop="monthlyPayCode">
{{form.monthlyPayCode}}
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="首次签约日期:" class="tb-show-item" prop="firstSigningDay">
{{form.firstSigningDay}}
</el-form-item>
</el-col>
<!-- <el-col :span="8">
<el-form-item label="结算类型" prop="settledType">
<el-select v-model="form.settledType" placeholder="请选择">
<el-option
v-for="dict in dict.type.emis_cus_settled_type"
:key="dict.value"
:label="dict.label"
:value="dict.value"
></el-option>
</el-select>
</el-form-item>
</el-col> -->
<!-- <el-col :span="8">
<el-form-item label="称呼" prop="nickName">
<el-input v-model="form.nickName" placeholder="请输入称呼" />
</el-form-item>
</el-col> -->
<el-col :span="6">
<el-form-item label="账期(天):" class="tb-show-item" prop="creditPeriod">
{{form.creditPeriod}}(天)
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="账单日:" class="tb-show-item" prop="settleDay">
每月 {{form.settleDay}} 日
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="回款联系人:" class="tb-show-item" prop="payee" >
{{form.payee}}
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="销售联系人:" class="tb-show-item" prop="salesmen" >
{{form.salesmen}}
</el-form-item>
</el-col>
<!-- <el-col :span="24">
<el-form-item label="备注:" prop="remark">
{{form.remark}}
</el-form-item>
</el-col> -->
<!-- <el-col :span="6">
</el-col> -->
</el-row>
</el-collapse-item>
<el-collapse-item title="" name="1">
<template slot="title">
<div class="form-group-title"><span class="title">{{ $t('联系信息') }}</span></div>
</template>
<el-row :gutter="0" style="display: flex;flex-wrap: wrap;">
<el-col :span="6">
<el-form-item label="联系人" prop="contact">
<el-input v-model="form.contact" placeholder="" :disabled="disableEdit" />
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="电话" prop="phone" >
<el-input v-model="form.phone" placeholder="" :disabled="disableEdit" />
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="邮箱" prop="email">
<el-input v-model="form.email" placeholder="请输入email" :disabled="disableEdit" />
</el-form-item>
</el-col>
<el-col :span="6">
</el-col>
<el-col :span="8">
<el-form-item label="邮箱" prop="email">
<el-input v-model="form.email" placeholder="请输入email" />
</el-form-item>
</el-col>
<!-- <el-col :span="8">
<el-form-item label="手机号" prop="mobile">
<el-input v-model="form.mobile" placeholder="请输入手机号" />
</el-form-item>
</el-col> -->
<!-- <el-col :span="8">
<el-form-item label="客户类型" prop="customerType">
<el-input v-model="form.customerType" placeholder="请输入客户类型" />
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="所属国家" prop="country">
<CountryPicker :placeholder="$t('所属国家')" v-model="form.country" :disabled="disableEdit"></CountryPicker>
</el-form-item>
</el-col>
<el-col :span="18">
</el-col>
<el-col :span="16">
<el-form-item label="省市区" prop="province">
<div style="display: inline-flex">
<ProvincePicker v-model="form.province" :countryCode="form.country" :disabled="disableEdit"></ProvincePicker>
<CityPicker v-model="form.city" :parentCode="form.province" :disabled="disableEdit"></CityPicker>
<DistrictPicker v-model="form.county" :parentCode="form.city" :disabled="disableEdit"></DistrictPicker>
<!-- <TownPicker v-model="form.town" :parentCode="form.county" ></TownPicker> -->
</div>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="用户类型" prop="userType">
<el-input v-model="form.userType" placeholder="请输入用户类型" />
</el-form-item>
</el-col> -->
<el-col :span="8">
<el-form-item label="月结卡号" prop="monthlyPayCode">
<el-input v-model="form.monthlyPayCode" placeholder="月结卡号" />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="首次签约日期" prop="firstSigningDay">
<el-date-picker
style="width: 100%;"
format="yyyy-MM-dd"
value-format="yyyy-MM-dd"
v-model="form.firstSigningDay"
type="date"
placeholder="首次签约日期"
></el-date-picker>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="地址" prop="address">
<el-input v-model="form.address" type="textarea" placeholder="请输入地址" :disabled="disableEdit" />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="所属国家" prop="country">
<CountryPicker :placeholder="$t('所属国家')" v-model="form.country" ></CountryPicker>
</el-form-item>
</el-col>
<el-col :span="16">
<el-form-item label="省市区" prop="province">
<div style="display: inline-flex">
<ProvincePicker v-model="form.province" :countryCode="form.country" ></ProvincePicker>
<CityPicker v-model="form.city" :parentCode="form.province" ></CityPicker>
<DistrictPicker v-model="form.county" :parentCode="form.city" ></DistrictPicker>
<!-- <TownPicker v-model="form.town" :parentCode="form.county" ></TownPicker> -->
</div>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="地址" prop="address">
<el-input v-model="form.address" type="textarea" placeholder="请输入地址" />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="账期(天)" prop="creditPeriod">
<el-input-number v-model="form.creditPeriod" placeholder="账期(天)" :min="0" :max="365" :controls="false" :precision="0"></el-input-number>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="账单日" prop="settleDay">
<el-input-number v-model="form.settleDay" placeholder="账单日" :min="1" :max="31" :controls="false" :precision="0"></el-input-number>
</el-form-item>
</el-col>
<!-- <el-col :span="8">
<el-form-item label="专属业务员" prop="opEmpCode" >
<EmisUserSimplePicker0 :placeholder="$t('专属业务员')" v-model="form.opEmpCode" ></EmisUserSimplePicker0>
</el-form-item>
</el-col> -->
<el-col :span="8">
<el-form-item label="主所属网点" prop="ownerSite">
<EmisSiteSimplePicker :placeholder="$t('所属站点')" v-model="form.ownerSite" ></EmisSiteSimplePicker>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="回款联系人" prop="payee" >
<PayeePicker :placeholder="$t('回款联系人')" v-model="form.payee" ></PayeePicker>
<!-- <EmisUserSimplePicker1 :placeholder="$t('回款联系人')" :siteCode="form.ownerSite" v-model="form.payee" ></EmisUserSimplePicker1> -->
</el-form-item>
</el-col>
<el-col :span="8">
<!-- postCode="OP" -->
<el-form-item label="销售联系人" prop="salesmen" >
<SalemanPicker :placeholder="$t('销售联系人')" v-model="form.salesmen" ></SalemanPicker>
<!-- <EmisUserSimplePicker2 :placeholder="$t('销售联系人')" :siteCode="form.ownerSite" v-model="form.salesmen" ></EmisUserSimplePicker2> -->
</el-form-item>
</el-col>
<el-col :span="24">
<!-- postCode="OP" -->
<el-form-item label="业务网点范围" prop="bizSite" >
<el-button
size="mini"
type="text"
@click="handleSelectSite"
>选择网点</el-button>
<el-input v-model="form.bizSiteName" rows="5" type="textarea" disabled placeholder="" />
</el-form-item>
</el-col>
<!-- <el-col :span="8">
<el-form-item label="启用状态" prop="status">
<el-input v-model="form.status" placeholder="请输入启用状态" />
</el-form-item>
</el-col> -->
<el-col :span="12">
<el-form-item label="开通OMS" prop="blOpenOms" >
<el-radio-group v-model="form.blOpenOms">
<el-radio :label="'1'">是</el-radio>
<el-radio :label="'0'">否</el-radio>
</el-radio-group>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="是否短信" prop="blSms">
<el-radio-group v-model="form.blSms">
<el-radio :label="'1'">是</el-radio>
<el-radio :label="'0'">否</el-radio>
</el-radio-group>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="启用状态" prop="status">
<el-radio-group v-model="form.status">
<el-radio :label="'1'">启用</el-radio>
<el-radio :label="'0'">停用</el-radio>
</el-radio-group>
</el-form-item>
</el-col>
<!-- <el-col :span="8">
<el-form-item label="专属业务员" prop="opEmpCode" >
<EmisUserSimplePicker0 :placeholder="$t('专属业务员')" v-model="form.opEmpCode" ></EmisUserSimplePicker0>
</el-form-item>
</el-col> -->
<!-- <el-col :span="8">
<el-form-item label="主所属网点" prop="ownerSite">
<EmisSiteSimplePicker :placeholder="$t('所属站点')" v-model="form.ownerSite" ></EmisSiteSimplePicker>
</el-form-item>
</el-col> -->
<!--
<el-col :span="8">
<el-form-item label="排序" prop="orderNum">
<el-input v-model="form.orderNum" placeholder="请输入排序" />
</el-form-item>
</el-col> -->
<el-col :span="24">
<el-form-item label="备注" prop="remark">
<el-input v-model="form.remark" type="textarea" placeholder="请输入备注" />
</el-form-item>
</el-col>
</el-row>
<el-col :span="24">
<el-form-item label="备注" prop="remark">
<el-input v-model="form.remark" type="textarea" placeholder="请输入备注" />
</el-form-item>
</el-col> -->
</el-row>
</el-collapse-item>
</el-collapse>
</el-form>
<div style="text-align: center;margin-bottom: 10px;">
<el-button type="primary" @click="submitForm">确 定</el-button>
<el-button @click="cancel">取 消</el-button>
<div style="text-align: center;margin-top: 20px;margin-bottom: 10px;">
<el-button type="primary" @click="submitForm" :disabled="disableEdit">保 存</el-button>
<el-button type="primary" @click="handleCanEdit" >修改</el-button>
<!-- <el-button @click="cancel">取 消</el-button> -->
</div>
<el-dialog title="选择网点" :visible.sync="openSiteSelectTreeForm" width="40%" :destroy-on-close="true" v-dialogDrag append-to-body>
<EmisSiteSelectTreePicker :selectSiteCode="form.bizSite" :selectSiteName="form.bizSiteName" @on-changed="onSelectSiteTreeCheckChange" @on-cancel="onSelectSiteTreeCheckChange" ></EmisSiteSelectTreePicker>
</el-dialog>
</div>
</template>
<script>
import { getEmisCustomerUser, addMonthUser, editMonthUser } from "@/api/oms/emisCustomerUser";
// import { getOmsUserInfo, editMonthUser } from "@/api/oms/emisCustomerUser";
import { getOmsUserInfo, editOmsUserBaseInfo } from "@/api/system/user";
import CountryPicker from '@/views/oms/EmisBaseTools/CountryPicker.vue';
import EmisSiteSimplePicker from '@/views/oms/EmisBaseTools/EmisSiteSimplePicker.vue';
import ProvincePicker from '@/views/oms/EmisBaseTools/ProvincePicker.vue';
@ -257,8 +201,11 @@ export default {
dicts: ['emis_cus_settled_type'],
data() {
return {
activeNames:['1','2','3','4','5'],
openSiteSelectTreeForm:false,
emisCustomerUserOptions: [],
disableEdit:true,
// 遮罩层
loading: true,
// 表单参数
@ -268,27 +215,15 @@ export default {
// company: [
// { required: true, message: "客户名称不能为空", trigger: "blur" }
// ],
customerName: [
{ required: true, message: "客户名称不能为空", trigger: "blur" }
],
// customerName: [
// { required: true, message: "客户名称不能为空", trigger: "blur" }
// ],
contact: [
{ required: true, message: "联系人不能为空", trigger: "blur" }
],
phone: [
{ required: true, message: "电话不能为空", trigger: "blur" }
],
customerType: [
{ required: true, message: "客户类型不能为空", trigger: "blur" }
],
settledType: [
{ required: true, message: "结算类型不能为空", trigger: "blur" }
],
monthlyPayCode: [
{ required: true, message: "主月结卡号不能为空", trigger: "blur" }
],
ownerSite: [
{ required: true, message: "归属站点不能为空", trigger:["blur",'change'] }
],
country: [
{ required: true, message: "国家不能为空", trigger: ["blur",'change'] }
],
@ -298,30 +233,9 @@ export default {
address: [
{ required: true, message: "地址不能为空", trigger: "blur" }
],
status: [
{ required: true, message: "启用状态不能为空", trigger: ["blur",'change'] }
],
payee: [
{ required: true, message: "回款联系人不能为空", trigger: ["blur",'change'] }
],
salesmen: [
{ required: true, message: "销售联系人不能为空", trigger: ["blur",'change'] }
],
blOpenOms: [
{ required: true, message: "是否开通oms不能为空", trigger: ["blur",'change'] }
],
blSms: [
{ required: true, message: "是否短信不能为空", trigger: ["blur",'change'] }
],
opEmpCode: [
{ required: true, message: "专属业务员不能为空", trigger: ["blur",'change'] }
],
creditPeriod: [
{ required: true, message: "账期不能为空", trigger: ["blur",'change'] }
],
settleDay: [
{ required: true, message: "账单日不能为空", trigger: ["blur",'change'] }
],
}
};
},
@ -333,6 +247,9 @@ export default {
},
methods: {
handleCanEdit(){
this.disableEdit=false;
},
handleSelectSite(){
this.openSiteSelectTreeForm=true;
},
@ -354,7 +271,7 @@ export default {
initData() {
this.id=this.$store.getters.userId;
this.loading = true;
getEmisCustomerUser(this.id).then(response => {
getOmsUserInfo(this.id).then(response => {
this.form = response.data;
this.loading = false;
});
@ -437,16 +354,10 @@ export default {
this.$refs["form"].validate(valid => {
if (valid) {
if (this.form.id != null) {
this.form.company=this.form.customerName;
editMonthUser(this.form).then(response => {
this.$modal.msgSuccess("修改成功");
editOmsUserBaseInfo(this.form).then(response => {
this.$modal.msgSuccess("保存成功");
this.$emit("on-changed");
});
} else {
addMonthUser(this.form).then(response => {
this.$modal.msgSuccess("新增成功");
this.$emit("on-changed");
});
}
}
});
@ -457,13 +368,11 @@ export default {
</script>
<style lang="scss" scoped>
// .el-row{
// display:flex;
// flex-wrap: wrap;
// }
.tb-show-item {
// height: 60px;
// line-height: 60px;
margin-bottom: 5px!important;
}
// .el-col{
// min-height: 1px;
// }
</style>

View File

@ -345,7 +345,7 @@ export default {
this.id=row.id;
this.titleView="查看";
this.openView=true;
// this.router.push({ path: '/emis/emisGoods/viewDetail', query: { id: row.id }})
// this.router.push({ path: '/oms2c/emisGoods/viewDetail', query: { id: row.id }})
},
handleFormChanged(){
this.openForm = false;

View File

@ -437,7 +437,7 @@ export default {
this.id=row.id;
this.titleView="查看";
this.openView=true;
// this.router.push({ path: '/emis/emisWarehouseInBatch/viewDetail', query: { id: row.id }})
// this.router.push({ path: '/oms2c/emisWarehouseInBatch/viewDetail', query: { id: row.id }})
},
handleFormChanged(){
this.openForm = false;

View File

@ -359,7 +359,7 @@ export default {
// this.titleView="查看";
// this.openView=true;
this.$emit("onSelect",row);
// this.router.push({ path: '/emis/emisWarehouseIn/viewDetail', query: { id: row.id }})
// this.router.push({ path: '/oms2c/emisWarehouseIn/viewDetail', query: { id: row.id }})
},
handleFormChanged(){
this.openForm = false;

View File

@ -247,7 +247,7 @@
</template>
<script>
import { listUser, getUser, delUser, addUser, updateUser, resetUserPwd, changeUserStatus } from "@/api/system/user";
import { listOmsUser, getOmsUserInfo, delUser, addUser, updateUser, resetUserPwd, changeUserStatus } from "@/api/system/user";
import { getToken } from "@/utils/auth";
export default {
@ -359,15 +359,15 @@ export default {
},
created() {
this.getList();
this.getConfigKey("sys.user.initPassword").then(response => {
this.initPassword = response.msg;
});
// this.getConfigKey("sys.user.initPassword").then(response => {
// this.initPassword = response.msg;
// });
},
methods: {
/** 查询用户列表 */
getList() {
this.loading = true;
listUser(this.addDateRange(this.queryParams, this.dateRange)).then(response => {
listOmsUser(this.addDateRange(this.queryParams, this.dateRange)).then(response => {
this.userList = response.rows;
this.total = response.total;
this.loading = false;
@ -450,7 +450,7 @@ export default {
handleUpdate(row) {
this.reset();
const id = row.id || this.ids[0];
getUser(id).then(response => {
getOmsUserInfo(id).then(response => {
this.form = response.data;
this.form.roleIds = response.roleIds;
this.open = true;