main
bibi 3 years ago
parent 1cf7f614d5
commit 74de427762

@ -1,5 +1,13 @@
import httpService from "@/request"
// 发送验证码
export function sendTelCode(params) {
return httpService({
url: `/manage/sendTelCode`,
method: 'post',
data: params,
})
}
// 登录
export function loginTel(params) {
return httpService({

@ -20,7 +20,7 @@ const httpService = axios.create({
baseURL: process.env.VUE_APP_URL + '/1',// TODO:具体的配置可以根据项目情况而来
timeout: 5000
})
// + communityCode
//axios的拦截--request
httpService.interceptors.request.use(config => {
const rqParams = filterRequestData(config.params);

@ -81,6 +81,15 @@ export default [
},
]
},
{
path: '/Workorder',
name: "Workorder",
title: "工单管理",
icon: 'solution',
hide: false,
component: resolve => require(['@/views/Basic/WorkOrder'], resolve),
meta: {title: '工单管理'}
},
// {
// path: '/attendance',
// name: "Attendance",

@ -1,20 +1,23 @@
<template>
<div>
<div class="cardTitle">住户审核&nbsp;
<a-radio-group default-value="1" button-style="solid" @change="tabsChange">
<a-radio-button value="0">
全部
</a-radio-button>
<a-radio-button value="1">
待审核
</a-radio-button>
<a-radio-button value="3">
已通过
</a-radio-button>
<a-radio-button value="2">
已驳回
</a-radio-button>
</a-radio-group>
<div class="cardTitle">
<a-space size="large">
<span>住户审核</span>
<a-radio-group default-value="1" button-style="solid" @change="tabsChange">
<a-radio-button value="1">
待审核
</a-radio-button>
<a-radio-button value="3">
已通过
</a-radio-button>
<a-radio-button value="2">
已驳回
</a-radio-button>
<a-radio-button value="0">
全部
</a-radio-button>
</a-radio-group>
</a-space>
</div>
<div class="search-box">
<a-row>

@ -0,0 +1,266 @@
<template>
<div>
<div class="cardTitle">
<a-space size="large">
<span>工单管理</span>
<a-radio-group v-model='activeName' button-style="solid" @change="tabsChange">
<a-radio-button value="0">
全部
</a-radio-button>
<a-radio-button value="1">
待分配
</a-radio-button>
<a-radio-button value="2">
工单池
</a-radio-button>
<a-radio-button value="3">
已接单
</a-radio-button>
<a-radio-button value="4">
处理中
</a-radio-button>
<a-radio-button value="5">
已完成
</a-radio-button>
<a-radio-button value="6">
已评价
</a-radio-button>
<a-radio-button value="7">
已拒绝
</a-radio-button>
</a-radio-group>
</a-space>
</div>
<div class="search-box">
<a-row>
<a-col :span="20">
<a-space size="large">
<a-select placeholder="请选择" style="width:200px"/>
<a-button type="primary"> </a-button>
<a-button> </a-button>
</a-space>
</a-col>
<a-col :span="4">
<a-button class='add-btn'>添加工单</a-button>
</a-col>
</a-row>
</div>
<div class="main">
<div style="margin-bottom: 16px">
<!-- 批量操作 -->
<a-select
type="primary"
v-model="activeAction"
:disabled="!hasSelected"
:loading="loading"
style="width: 120px"
@change="Actions"
placeholder="请选择操作"
>
批量
<a-select-option v-for="item in ActionsList" :key="item.value">
{{ item.label }}
</a-select-option>
</a-select>
<span style="margin-left: 8px">
<template v-if="hasSelected">
{{ `已选择 ${selectedRowKeys.length}` }}
</template>
</span>
</div>
<!-- 表格 -->
<a-table
:columns="columns"
:data-source="tableData"
:pagination="pagination"
:scroll="{ x: 1300 }"
:row-selection="{
selectedRowKeys: selectedRowKeys,
onChange: selectionChoosed,
}"
:row-key="
(record, index) => {
return index;
}
"
>
<span slot="name" slot-scope="text, row">
{{
row.manageBuildingName +
"栋/" +
row.manageUnitName +
"单元/" +
row.floorLocation +
"层-" +
row.name +
"室"
}}
</span>
<span slot="action" slot-scope="text, row">
<a-space>
<a class="ant-dropdown-link" v-show="row.status===1" @click="put(row)"></a>
<a class="ant-dropdown-link" v-show="row.status===1" @click="shift(row)"></a>
<a class="ant-dropdown-link" v-show="row.status===1" @click="assign(row)"></a>
<a class="ant-dropdown-link" v-show="row.status===1" @click="shiftAssign(row)"></a>
<a class="ant-dropdown-link" v-show="row.status===1" @click="finish(row)"></a>
<a class="ant-dropdown-link" v-show="row.status===1" @click="deal(row)"></a>
<a class="ant-dropdown-link" v-show="row.status===1" @click="refuse(row)"></a>
</a-space>
</span>
<span slot="tags" slot-scope="tag">
<a-tag
:color="tag === 1 ? 'volcano' : tag === 2 ? 'geekblue' : tag === 3 ? 'geekblue' : 'red'"
>
{{ tag === 1 ? "业主" : tag === 2 ? "业主亲属" :tag === 3 ? "租户":tag === 4 ? "租户亲属":'-' }}
</a-tag>
</span>
</a-table>
</div>
</div>
</template>
<script>
export default {
data() {
return {
activeName:'0',
pagination: {
current: 1,
total: 0,
pageSize: 10,
showTotal: (total) => `${total}`,
showSizeChanger: true,
showQuickJumper: true,
},
searchForm:{
status:null,
identity:null
},
activeAction: undefined,
loading: false,
// index
selectedRowKeys: [],
tableChoosed: [],
//
//
columns: [
{
title: "申请人身份",
key: "tags",
width: "14%",
dataIndex: "status",
scopedSlots: { customRender: "tags" },
},
{
title: "工单号",
width: "14%",
dataIndex: "code",
},
{
title: "申请人",
width: "14%",
dataIndex: "people",
},
{
title: "手机号",
width: "14%",
dataIndex: "tel",
},
{
title: "工单类型",
width: "14%",
dataIndex: "type",
},
{
title: "工单类型",
width: "14%",
dataIndex: "content",
},
{
title: "操作",
dataIndex: "action",
key: "action",
width: "300",
fixed: "right",
scopedSlots: { customRender: "action" },
},
],
//
tableData: [
],
ActionsList: [
{
label: "批量删除",
value: 1,
},
{
label: "批量导出",
value: 2,
},
],
};
},
mounted(){
this.getData()
},
methods: {
getData(){},
tabsChange(e){
this.searchForm.status = e.target.value
this.getData()
},
//
put(){
},
//
shift(){
},
//
assign(){
},
//
shiftAssign(){
},
//
finish(){
},
//
deal(){
},
//
refuse(){
},
handleTableChange(pagination) {
console.log(pagination);
const pager = { ...this.pagination };
pager.current = pagination.current;
pager.pageSize = pagination.pageSize;
this.pagination = pager;
},
Actions(data) {
console.log(data);
this.activeAction = undefined;
},
selectionChoosed(data) {
console.log(data);
this.tableChoosed = data;
},
},
computed: {
// selection
hasSelected() {
return this.selectedRowKeys.length > 0;
},
},
};
</script>
<style lang="less" scoped>
</style>

@ -13,12 +13,12 @@
<!-- 登录 -->
<a-col class="box-b" v-if="status === 1">
<a-tabs v-model="activeName" @change="tabsSwitch">
<a-tab-pane key="1" tab="密码登录">
</a-tab-pane>
<!-- <a-tab-pane key="1" tab="密码登录">
</a-tab-pane> -->
<a-tab-pane key="2" tab="验证码登录">
</a-tab-pane>
</a-tabs>
<div class="login-input">
<div class="login-input" v-if="activeName==='1'">
<a-input placeholder="请输入手机号码"></a-input>
<a-input type="password" placeholder="请输入密码"></a-input>
<a-row>
@ -36,6 +36,25 @@
</a-col>
</a-row>
</div>
<div class="login-input" v-else-if="activeName==='2'">
<a-input placeholder="请输入手机号码"></a-input>
<a-input type="password" placeholder="请输入验证码" style="width:60%"></a-input>
<a-button type="primary" @click='getCode'>获取验证码</a-button>
<a-row>
<a-col :span="12" style="margin-left:23px"><a-checkbox></a-checkbox>&nbsp;&nbsp;</a-col>
</a-row>
<a-button type="primary" @click='login' style="width:90%;margin:30px">
登录
</a-button>
<a-row style="margin-top:20px;margin-left:23px">
<a-col :span="14">
<a-checkbox></a-checkbox>&nbsp;&nbsp;
</a-col>
<a-col :span="10">
<span class="logintext" @click="status=3"></span>&nbsp;&nbsp;&nbsp;&nbsp;<span class="logintext" @click="status=2"></span>
</a-col>
</a-row>
</div>
</a-col>
<!-- 注册 -->
<a-col class="box-b" v-if="status === 2">
@ -44,9 +63,7 @@
ref="ruleForm"
:model="form"
:rules="rules"
:label-col="inline"
layout="vertical"
:wrapper-col="wrapperCol"
>
<a-form-model-item ref="tel" label="手机号码" prop="tel">
<a-input
@ -97,9 +114,7 @@
ref="ruleForm"
:model="form"
:rules="rules"
:label-col="inline"
layout="vertical"
:wrapper-col="wrapperCol"
>
<a-form-model-item ref="tel" label="手机号码" prop="tel">
<a-input
@ -149,13 +164,13 @@
</template>
<script>
import {loginTel} from "../../api/login"
import { loginTel,sendTelCode } from "../../api/login"
export default {
name: "Login",
data() {
return {
status: 1,
activeName:'1',
activeName:'2',
form:{
tel:''
},
@ -198,7 +213,13 @@ export default {
console.log(res);
},
//
getCode(){},
getCode(){
sendTelCode(this.form).then(res=>{
if(res){
this.$message.success(res.msg)
}
})
},
onSubmit() {
this.$refs.ruleForm.validate((valid) => {
if (valid) {

Loading…
Cancel
Save