Browse Source

销售添加

master
李双庆 1 year ago
parent
commit
3c0f1f106b
  1. 4
      .idea/dataSources.local.xml
  2. 362
      components/AQ/AQTabber.vue
  3. 30
      pages.json
  4. 377
      pages/market/clue/add_clues.vue
  5. 213
      pages/market/clue/new_task.vue
  6. 358
      pages/market/clue/writing_followUp.vue
  7. BIN
      static/images/index/addto.png
  8. BIN
      static/images/index/task.png
  9. BIN
      static/images/index/writing.png

4
.idea/dataSources.local.xml

@ -0,0 +1,4 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="dataSourceStorageLocal" created-in="PS-211.7442.50" />
</project>

362
components/AQ/AQTabber.vue

@ -1,156 +1,256 @@
<!--底部Tabber组件--> <!--底部Tabber组件-->
<template> <template>
<view class="main_box"> <view class="main_box">
<fui-tabbar :tabBar="tabBar" selectedColor="#5bdbbb" :current="tabBerIndex" @click="openView"></fui-tabbar> <fui-tabbar :tabBar="tabBar" selectedColor="#5bdbbb" :current="tabBerIndex" @click="openView"></fui-tabbar>
<fui-bottom-popup :show="show" @close="closePopup">
<view class="fui-custom__wrap">
<view class="title" style="font-size: 36rpx;text-align: center;padding: 36rpx 0;">快捷新增</view>
<view class="but-style">
<view class="but-style-top">
<view class="left" @click="writingFollowUp">
<image src="@/static/images/index/writing.png" class="drop-image-x"></image>
<view class="title-x">写作跟进</view>
</view>
<view class="right" @click="newTask">
<image src="@/static/images/index/task.png" class="drop-image-x"></image>
<view class="title-x">新建任务</view>
</view>
</view>
<view class="but-style-below" @click="addClues">
<image src="@/static/images/index/addto.png" class="drop-image-x"></image>
<view class="title-x">添加线索</view>
</view>
</view>
</view>
</fui-bottom-popup>
</view> </view>
</template> </template>
<script> <script>
import fuiTabbar from "@/components/firstui/fui-tabbar/fui-tabbar.vue" import fuiTabbar from "@/components/firstui/fui-tabbar/fui-tabbar.vue"
export default { export default {
name: "AQTabber", name: "AQTabber",
components:{ components: {
fuiTabbar fuiTabbar
}, },
data() { data() {
return { return {
userType:'1',//|1=,2=,3= userType: '1', //|1=,2=,3=
tabBerIndex:'0', tabBerIndex: '0',
tabBar: [] tabBar: [],
show: false
}; };
}, },
created(){ created() {
console.log(123) console.log(123)
this.init() this.init()
}, },
methods: { methods: {
async init(){ async init() {
uni.setStorageSync('userType','2') uni.setStorageSync('userType', '2')
let userType = uni.getStorageSync('userType') let userType = uni.getStorageSync('userType')
this.userType = userType this.userType = userType
let tabBerIndex = uni.getStorageSync('tabBerIndex') let tabBerIndex = uni.getStorageSync('tabBerIndex')
if(tabBerIndex){ if (tabBerIndex) {
this.tabBerIndex = String(tabBerIndex) this.tabBerIndex = String(tabBerIndex)
}else{ } else {
this.tabBerIndex = '0' this.tabBerIndex = '0'
} }
switch (String(this.userType)){ switch (String(this.userType)) {
case "1":// case "1": //
this.tabBar = [ this.tabBar = [{
{ text: "首页",
text: "首页", urlPath: '/pages/coach/home/index', //
urlPath:'/pages/coach/home/index',// iconPath: "/static/images/tabbar/home.png",
iconPath: "/static/images/tabbar/home.png", selectedIconPath: "/static/images/tabbar/home_selected.png"
selectedIconPath: "/static/images/tabbar/home_selected.png" },
}, {
{ text: "课表",
text: "课表", urlPath: '/pages/coach/course/list', //
urlPath:'/pages/coach/course/list',// iconPath: "/static/images/tabbar/my.png",
iconPath: "/static/images/tabbar/my.png", selectedIconPath: "/static/images/tabbar/my.png"
selectedIconPath: "/static/images/tabbar/my.png" },
}, {
{ text: "班级",
text: "班级", urlPath: '/pages/coach/class/list', //
urlPath:'/pages/coach/class/list',// iconPath: "/static/images/tabbar/my.png",
iconPath: "/static/images/tabbar/my.png", selectedIconPath: "/static/images/tabbar/my.png"
selectedIconPath: "/static/images/tabbar/my.png" },
}, {
{ text: "我的",
text: "我的", urlPath: '/pages/coach/my/index', //
urlPath:'/pages/coach/my/index',// iconPath: "/static/images/tabbar/my.png",
iconPath: "/static/images/tabbar/my.png", selectedIconPath: "/static/images/tabbar/my.png"
selectedIconPath: "/static/images/tabbar/my.png" }
} ]
] break;
break; case "2": //
case "2":// this.tabBar = [{
this.tabBar = [ text: "首页",
{ urlPath: '/pages/market/index/index', //
text: "首页", iconPath: "/static/images/tabbar/index.png",
urlPath:'/pages/market/index/index',// selectedIconPath: "/static/images/tabbar/indexs.png"
iconPath: "/static/images/tabbar/index.png", },
selectedIconPath: "/static/images/tabbar/indexs.png" {
}, text: "线索",
{ urlPath: '/pages/market/clue/index', //
text: "线索", iconPath: "/static/images/tabbar/clue.png",
urlPath:'/pages/market/clue/index',// selectedIconPath: "/static/images/tabbar/clues.png"
iconPath: "/static/images/tabbar/clue.png", },
selectedIconPath: "/static/images/tabbar/clues.png" {
}, text: "",
{ urlPath: '/pages/market/clue/add_clues', //
text: "", iconPath: "/static/images/tabbar/plus.png",
urlPath:'/pages/market/my/index',// selectedIconPath: "/static/images/tabbar/plus.png",
iconPath: "/static/images/tabbar/plus.png", midButton: true,
selectedIconPath: "/static/images/tabbar/plus.png", width: 70,
midButton: true, height: 70
width: 70, },
height: 70 {
}, text: "数据",
{ urlPath: '/pages/market/my/index', //
text: "数据", iconPath: "/static/images/tabbar/timetable.png",
urlPath:'/pages/market/my/index',// selectedIconPath: "/static/images/tabbar/timetables.png"
iconPath: "/static/images/tabbar/timetable.png", },
selectedIconPath: "/static/images/tabbar/timetables.png" {
}, text: "我的",
{ urlPath: '/pages/market/my/index', //
text: "我的", iconPath: "/static/images/tabbar/my.png",
urlPath:'/pages/market/my/index',// selectedIconPath: "/static/images/tabbar/mys.png"
iconPath: "/static/images/tabbar/my.png", }
selectedIconPath: "/static/images/tabbar/mys.png" ]
} break;
] case "3": //
break; this.tabBar = [{
case "3":// text: "首页",
this.tabBar = [ urlPath: '/pages/student/index/index', //
{ iconPath: "/static/images/tabbar/index.png",
text: "首页", selectedIconPath: "/static/images/tabbar/indexs.png",
urlPath:'/pages/student/index/index',// },
iconPath: "/static/images/tabbar/index.png", {
selectedIconPath: "/static/images/tabbar/indexs.png", text: "课表",
}, urlPath: '/pages/student/timetable/index', //
{ iconPath: "/static/images/tabbar/timetable.png",
text: "课表", selectedIconPath: "/static/images/tabbar/timetables.png",
urlPath:'/pages/student/timetable/index',// },
iconPath: "/static/images/tabbar/timetable.png", {
selectedIconPath: "/static/images/tabbar/timetables.png", text: "我的",
}, urlPath: '/pages/student/my/my', //
{ iconPath: "/static/images/tabbar/my.png",
text: "我的", selectedIconPath: "/static/images/tabbar/mys.png",
urlPath:'/pages/student/my/my',// }
iconPath: "/static/images/tabbar/my.png", ]
selectedIconPath: "/static/images/tabbar/mys.png", break;
} }
] },
break;
}
},
openView(e){ openView(e) {
console.log('点击跳转',e) console.log('点击跳转', e)
//tabBar if (e.text != '') {
uni.setStorageSync('tabBerIndex',e.index) //tabBar
uni.setStorageSync('tabBerIndex', e.index)
console.log('qqq',e.urlPath) console.log('qqq', e.urlPath)
uni.navigateTo({ uni.navigateTo({
url:e.urlPath url: e.urlPath
}) })
}, }else{
this.show = true
}
},
closePopup(type) {
this.show = false
},
//
writingFollowUp(){
uni.navigateTo({
url: '/pages/market/clue/writing_followUp'
})
},
//
newTask(){
uni.navigateTo({
url: '/pages/market/clue/new_task'
})
},
//线
addClues(){
uni.navigateTo({
url: '/pages/market/clue/add_clues'
})
}
} }
} }
</script> </script>
<style lang="less" scoped> <style lang="less" scoped>
.fui-wrap { .fui-wrap {
//NvuefixedHeighttrue`fui-safe-area` //NvuefixedHeighttrue`fui-safe-area`
/* #ifndef APP-NVUE */ /* #ifndef APP-NVUE */
padding-bottom: constant(safe-area-inset-bottom); padding-bottom: constant(safe-area-inset-bottom);
padding-bottom: env(safe-area-inset-bottom); padding-bottom: env(safe-area-inset-bottom);
/* #endif */ /* #endif */
} }
</style> .fui-custom__wrap {
width: 100%;
height: 600rpx;
}
.title{
font-size: 36rpx;
text-align: center;
padding: 36rpx 0;
}
.but-style{
width: 92%;
height: 70%;
margin: auto;
}
.but-style-top{
width: 100%;
display: flex;
justify-content: space-between;
}
.left{
width: 45%;
height: 180rpx;
border-radius: 16rpx;
background: #3ee9d7;
display: flex;
align-items: center;
justify-content: center;
}
.right{
width: 45%;
height: 180rpx;
border-radius: 16rpx;
background: #fad24e;
display: flex;
align-items: center;
justify-content: center;
}
.but-style-below{
width: 100%;
height: 180rpx;
margin-top: 36rpx;
border-radius: 16rpx;
background: #35bdae;
display: flex;
align-items: center;
justify-content: center;
}
.drop-image-x {
width: 50rpx;
height: 50rpx;
}
.title-x {
font-size: 32rpx;
color: #fff;
padding-left: 30rpx;
}
</style>

30
pages.json

@ -310,9 +310,33 @@
{
"path": "pages/market/clue/writing_followUp",
"style": {
"navigationBarTitleText": "写新跟进",
"navigationStyle": "default",
"navigationBarBackgroundColor": "#fff",
"navigationBarTextStyle": "black"
}
},
{
"path": "pages/market/clue/new_task",
"style": {
"navigationBarTitleText": "新建任务",
"navigationStyle": "default",
"navigationBarBackgroundColor": "#fff",
"navigationBarTextStyle": "black"
}
},
{
"path": "pages/market/clue/add_clues",
"style": {
"navigationBarTitleText": "添加线索",
"navigationStyle": "default",
"navigationBarBackgroundColor": "#fff",
"navigationBarTextStyle": "black"
}
},
{ {
"path": "pages/market/clue/clue_info", "path": "pages/market/clue/clue_info",
"style": { "style": {

377
pages/market/clue/add_clues.vue

@ -0,0 +1,377 @@
<template>
<view class="assemble">
<view class="form-style">
<fui-form ref="form" top="0" :model="formData" :show="false">
<view class="title" style="margin-top: 20rpx;">基础信息</view>
<view class="input-style">
<fui-form-item label="跟进类型" asterisk asteriskPosition="right" labelSize='26' prop="name" background='#434544' labelColor='#fff'
:bottomBorder='false'>
<view class="input-title" style="margin-right:14rpx;" v-if="result_leixing == ''"
@click="selectCon(2)">点击选择</view>
<view class="input-title" style="margin-right:14rpx;" v-else @click="selectCon(2)">{{ result_leixing }}
</view>
</fui-form-item>
<fui-form-item label="跟进时间" labelSize='26' asterisk asteriskPosition="right" prop="mobile"
background='#434544' labelColor='#fff' :bottomBorder='false'>
<view class="input-title" style="margin-right:14rpx;" @click="selectCon(1)"
v-if="result_date == ''">点击选择</view>
<view class="input-title" style="margin-right:14rpx;" @click="selectCon(1)" v-else>{{ result_date }}
</view>
</fui-form-item>
<fui-form-item label="上传录音" labelSize='26' asterisk asteriskPosition="right" prop="mobile" background='#434544' labelColor='#fff'
:bottomBorder='false'>
<fui-input :borderBottom="false" :padding="[0]" placeholder="点击填写" v-model="formData.mobile"
backgroundColor="#434544" size="26" color="#fff"></fui-input>
</fui-form-item>
<fui-form-item label="学员名称" labelSize='26' asterisk asteriskPosition="right" prop="mobile"
background='#434544' labelColor='#fff' :bottomBorder='false'>
<view class="input-title" style="margin-right:14rpx;" @click="selectCon(3)"
v-if="result_student == ''">点击选择</view>
<view class="input-title" style="margin-right:14rpx;" @click="selectCon(3)" v-else>{{ result_student }}
</view>
</fui-form-item>
<fui-form-item label="客户状态" labelSize='26' asterisk asteriskPosition="right" prop="mobile"
background='#434544' labelColor='#fff' :bottomBorder='false'>
<view class="input-title" style="margin-right:14rpx;" @click="selectCon(4)"
v-if="result_status == ''">点击选择</view>
<view class="input-title" style="margin-right:14rpx;" @click="selectCon(4)" v-else>{{ result_status }}
</view>
</fui-form-item>
<fui-form-item label="签单意向联系人" labelWidth="230" labelSize='26' asterisk asteriskPosition="right" prop="mobile"
background='#434544' labelColor='#fff' :bottomBorder='false'>
<view class="input-title" style="margin-right:14rpx;" @click="selectCon(5)"
v-if="result_intention == ''">点击选择</view>
<view class="input-title" style="margin-right:14rpx;" @click="selectCon(5)" v-else>{{ result_intention }}
</view>
</fui-form-item>
</view>
<view class="input-style" style="margin-top: 50rpx;">
<view class="input-style">
<fui-form-item label="客户状态" labelSize='26' asterisk asteriskPosition="right" prop="mobile"
background='#434544' labelColor='#fff' :bottomBorder='false'>
<view class="input-title" style="margin-right:14rpx;" @click="selectCon(4)"
v-if="result_status == ''">点击选择</view>
<view class="input-title" style="margin-right:14rpx;" @click="selectCon(4)" v-else>{{ result_status }}
</view>
</fui-form-item>
<fui-form-item label="签单意向联系人" labelWidth="230" labelSize='26' asterisk asteriskPosition="right" prop="mobile"
background='#434544' labelColor='#fff' :bottomBorder='false'>
<view class="input-title" style="margin-right:14rpx;" @click="selectCon(5)"
v-if="result_intention == ''">点击选择</view>
<view class="input-title" style="margin-right:14rpx;" @click="selectCon(5)" v-else>{{ result_intention }}
</view>
</fui-form-item>
</view>
<view>
<fui-form-item label="跟进内容" labelSize='26' asterisk asteriskPosition="right" prop="mobile"
background='#434544' labelColor='#fff' :bottomBorder='false'>
</fui-form-item>
<view style="width: 100%;background: #434544;">
<view style="margin: auto;width: 92%;padding: 20rpx 0 50rpx;">
<fui-textarea :padding="[0]" v-model="formData.mobile"
backgroundColor="#434544" size="26" color="#fff" :textareaBorder="true"></fui-textarea>
</view>
</view>
</view>
</view>
<view class="title" style="margin-top: 20rpx;">跟进任务</view>
<view class="input-style">
<fui-form-item label="创建下次跟进任务" labelWidth="250" labelSize='26' asterisk asteriskPosition="right" prop="mobile"
background='#434544' labelColor='#fff' :bottomBorder='false'>
<fui-switch @change="switchChange" checked></fui-switch>
</fui-form-item>
<view v-if="switchChange_type == 1">
<fui-form-item label="跟进时间" labelSize='26' asterisk asteriskPosition="right" prop="mobile"
background='#434544' labelColor='#fff' :bottomBorder='false'>
<view class="input-title" style="margin-right:14rpx;" @click="selectCon(6)"
v-if="result_dates == ''">点击选择</view>
<view class="input-title" style="margin-right:14rpx;" @click="selectCon(6)" v-else>{{ result_dates }}
</view>
</fui-form-item>
<fui-form-item label="跟进内容" labelSize='26' prop="mobile" background='#434544' labelColor='#fff'
:bottomBorder='false'>
<fui-input :borderBottom="false" :padding="[0]" placeholder="点击填写" v-model="formData.mobile"
backgroundColor="#434544" size="26" color="#fff"></fui-input>
</fui-form-item>
<fui-form-item label="跟进人员" labelSize='26' asterisk asteriskPosition="right" prop="mobile"
background='#434544' labelColor='#fff' :bottomBorder='false'>
<fui-input :borderBottom="false" :padding="[0]" placeholder="点击填写" v-model="formData.mobile"
backgroundColor="#434544" size="26" color="#fff"></fui-input>
</fui-form-item>
<fui-form-item label="任务提醒" labelSize='26' prop="mobile" background='#434544' labelColor='#fff'
:bottomBorder='false'>
<view class="input-title" style="margin-right:14rpx;" @click="selectCon(7)"
v-if="result_renwu == ''">点击选择</view>
<view class="input-title" style="margin-right:14rpx;" @click="selectCon(7)" v-else>{{ result_renwu }}
</view>
</fui-form-item>
<fui-form-item label="提醒方式" labelSize='26' prop="mobile" background='#434544' labelColor='#fff'
:bottomBorder='false'>
<view class="input-title" style="margin-right:14rpx;" @click="selectCon(8)"
v-if="result_fangshi == ''">点击选择</view>
<view class="input-title" style="margin-right:14rpx;" @click="selectCon(8)" v-else>{{ result_fangshi }}
</view>
</fui-form-item>
</view>
</view>
</fui-form>
</view>
<view class="fui-btn__box">
<fui-button background="#434544" color="#24BA9F" borderColor="#24BA9F" @click="submit">保存</fui-button>
</view>
<!-- 年月日-选择时间 -->
<fui-date-picker :show="show_date" type="3" @change="change_date" @cancel="cancel_date"></fui-date-picker>
<!-- 选择器 -->
<fui-picker :linkage='linkage' :options="options" :layer="1" :show="show" @change="change" @cancel="cancel"></fui-picker>
</view>
</template>
<script>
const rules = [{
name: "mobile",
rule: ["required", "isMobile"],
msg: ["请输入手机号", "请输入正确的手机号"]
}];
export default {
data() {
return {
switchChange_type: 1,
rules,
formData: {},
show_date: false,
result_date: '',
result_leixing: '',
result_student: '',
result_status: '',
result_intention: '',
result_dates: '',
result_renwu: '',
result_fangshi: '',
show: false,
options: [],
linkage: true,
options_type : undefined,
options_leixing: [{
'value': 1,
'text': '类型1'
}, {
'value': 2,
'text': '类型2'
}, {
'value': 3,
'text': '类型3'
}],
options_student: [{
'value': 1,
'text': '张三'
}, {
'value': 2,
'text': '李四'
}, {
'value': 3,
'text': '王五'
}],
options_status: [{
'value': 1,
'text': '状态1'
}, {
'value': 2,
'text': '状态2'
}, {
'value': 3,
'text': '状态3'
}],
options_intention: [{
'value': 1,
'text': '张三1'
}, {
'value': 2,
'text': '李四2'
}, {
'value': 3,
'text': '王五3'
}],
options_kehu: [{
'value': 1,
'text': '张三'
}, {
'value': 2,
'text': '李四'
}, {
'value': 3,
'text': '王五'
}],
options_renwu: [{
'value': 1,
'text': '是'
}, {
'value': 2,
'text': '否'
}],
options_fangshi: [{
'value': 1,
'text': '短信'
}, {
'value': 2,
'text': '微信'
}]
}
},
methods: {
submit() {
console.log(this.formData)
this.$refs.form.validator(null, null, true).then(res => {
console.log(res)
if (res.isPassed) {
console.log('校验通过!')
} else {
console.log('向上滑动页面查看错误提示!')
}
}).catch(err => {
console.log(err)
})
},
//
selectCon(type) {
if (type == 1) {
//
this.options_date_type = 1
this.show_date = true
} else if (type == 2) {
this.options_type = 2
this.options = this.options_leixing
this.show = true
this.linkage = true
} else if (type == 3) {
this.options_type = 3
this.options = this.options_student
this.show = true
this.linkage = true
} else if (type == 4) {
this.options_type = 4
this.options = this.options_status
this.show = true
this.linkage = true
} else if (type == 5) {
this.options_type = 5
this.options = this.options_intention
this.show = true
this.linkage = true
}else if (type == 6) {
//
this.options_date_type = 6
this.show_date = true
} else if (type == 7) {
//
this.options_type = 7
this.options = this.options_renwu
this.show = true
this.linkage = true
} else if (type == 8) {
//
this.options_type = 8
this.options = this.options_fangshi
this.show = true
this.linkage = true
}
},
//
change_date(e) {
if(this.options_date_type == 1){
this.show_date = false
this.result_date = e.result ?? ''
}else if(this.options_date_type == 6){
this.show_date = false
this.result_dates = e.result ?? ''
}
},
//
cancel_date() {
this.show_date = false
},
//
change(e) {
this.show = false
console.log(e)
if(this.options_type == 2){
this.result_leixing = e.result
} else if (this.options_type == 3) {
this.result_student = e.result
} else if (this.options_type == 4) {
this.result_status = e.result
} else if (this.options_type == 5) {
this.result_intention = e.result
} else if(this.options_type == 7){
this.result_renwu = e.result
} else if(this.options_type == 8){
this.result_fangshi = e.result
}
},
//
cancel() {
this.show = false
},
//
switchChange(e){
if(e.detail.value){
this.switchChange_type = 1
}else{
this.switchChange_type = 2
}
}
}
}
</script>
<style lang="less" scoped>
.assemble {
width: 100%;
height: 100vh;
background: #292929;
overflow: auto;
}
.title {
font-size: 26rpx;
color: #fff;
padding: 26rpx 0 26rpx 32rpx;
}
.input-title {
font-size: 26rpx;
color: #fff;
}
.form-style {
width: 100%;
// background: #434544;
}
.form-style-vid {
display: flex;
align-items: center;
justify-content: space-between;
padding: 12rpx 0;
}
.input-style {
text-align: right !important;
}
.fui-btn__box {
margin: 50rpx auto 120rpx;
width: 92%;
}
</style>

213
pages/market/clue/new_task.vue

@ -0,0 +1,213 @@
<template>
<view class="assemble">
<view class="title">跟进任务</view>
<view class="form-style">
<fui-form class="input-style" ref="form" top="0" :model="formData" :show="false">
<fui-form-item label="跟进客户" labelSize='26' prop="name" background='#434544' labelColor='#fff'
:bottomBorder='false'>
<view class="input-title" style="margin-right:14rpx;" v-if="result_name == ''"
@click="selectCon(2)">点击选择</view>
<view class="input-title" style="margin-right:14rpx;" v-else @click="selectCon(2)">{{ result_name }}
</view>
</fui-form-item>
<fui-form-item label="跟进时间" labelSize='26' asterisk asteriskPosition="right" prop="mobile"
background='#434544' labelColor='#fff' :bottomBorder='false'>
<view class="input-title" style="margin-right:14rpx;" @click="selectCon(1)"
v-if="result_date == ''">点击选择</view>
<view class="input-title" style="margin-right:14rpx;" @click="selectCon(1)" v-else>{{ result_date }}
</view>
</fui-form-item>
<fui-form-item label="跟进内容" labelSize='26' prop="mobile" background='#434544' labelColor='#fff'
:bottomBorder='false'>
<fui-input :borderBottom="false" :padding="[0]" placeholder="点击填写" v-model="formData.mobile"
backgroundColor="#434544" size="26" color="#fff"></fui-input>
</fui-form-item>
<fui-form-item label="跟进人员" labelSize='26' asterisk asteriskPosition="right" prop="mobile"
background='#434544' labelColor='#fff' :bottomBorder='false'>
<fui-input :borderBottom="false" :padding="[0]" placeholder="点击填写" v-model="formData.mobile"
backgroundColor="#434544" size="26" color="#fff"></fui-input>
</fui-form-item>
<fui-form-item label="任务提醒" labelSize='26' prop="mobile" background='#434544' labelColor='#fff'
:bottomBorder='false'>
<view class="input-title" style="margin-right:14rpx;" @click="selectCon(3)"
v-if="result_renwu == ''">点击选择</view>
<view class="input-title" style="margin-right:14rpx;" @click="selectCon(3)" v-else>{{ result_renwu }}
</view>
</fui-form-item>
<fui-form-item label="提醒方式" labelSize='26' prop="mobile" background='#434544' labelColor='#fff'
:bottomBorder='false'>
<view class="input-title" style="margin-right:14rpx;" @click="selectCon(4)"
v-if="result_fangshi == ''">点击选择</view>
<view class="input-title" style="margin-right:14rpx;" @click="selectCon(4)" v-else>{{ result_fangshi }}
</view>
</fui-form-item>
</fui-form>
</view>
<view class="fui-btn__box">
<fui-button background="#434544" color="#24BA9F" borderColor="#24BA9F" @click="submit">保存</fui-button>
</view>
<!-- 年月日-选择时间 -->
<fui-date-picker :show="show_date" type="3" @change="change_date" @cancel="cancel_date"></fui-date-picker>
<!-- 选择器 -->
<fui-picker :linkage='linkage' :options="options" :layer="1" :show="show" @change="change" @cancel="cancel"></fui-picker>
</view>
</template>
<script>
const rules = [{
name: "mobile",
rule: ["required", "isMobile"],
msg: ["请输入手机号", "请输入正确的手机号"]
}];
export default {
data() {
return {
rules,
formData: {},
show_date: false,
result_date: '',
result_name: '',
result_renwu: '',
result_fangshi: '',
show: false,
options: [],
linkage: true,
options_type : undefined,
options_kehu: [{
'value': 1,
'text': '张三'
}, {
'value': 2,
'text': '李四'
}, {
'value': 3,
'text': '王五'
}],
options_renwu: [{
'value': 1,
'text': '是'
}, {
'value': 2,
'text': '否'
}],
options_fangshi: [{
'value': 1,
'text': '短信'
}, {
'value': 2,
'text': '微信'
}]
}
},
methods: {
submit() {
console.log(this.formData)
this.$refs.form.validator(null, null, true).then(res => {
console.log(res)
if (res.isPassed) {
console.log('校验通过!')
} else {
console.log('向上滑动页面查看错误提示!')
}
}).catch(err => {
console.log(err)
})
},
//
selectCon(type) {
if (type == 1) {
//
this.show_date = true
} else if (type == 2) {
//
this.options_type = 2
this.options = this.options_kehu
this.show = true
this.linkage = true
} else if (type == 3) {
//
this.options_type = 3
this.options = this.options_renwu
this.show = true
this.linkage = true
} else if (type == 4) {
//
this.options_type = 4
this.options = this.options_fangshi
this.show = true
this.linkage = true
}
},
//
change_date(e) {
this.show_date = false
this.result_date = e.result ?? ''
console.log(this.result_date, '选择')
},
//
cancel_date() {
this.show_date = false
},
//
change(e) {
this.show = false
console.log(e)
if(this.options_type == 2){
this.result_name = e.result
}else if(this.options_type == 3){
this.result_renwu = e.result
}else if(this.options_type == 4){
this.result_fangshi = e.result
}
},
//
cancel() {
this.show = false
}
}
}
</script>
<style lang="less" scoped>
.assemble {
width: 100%;
height: 100vh;
background: #292929;
}
.title {
font-size: 26rpx;
color: #fff;
padding: 26rpx 0 26rpx 32rpx;
}
.input-title {
font-size: 26rpx;
color: #fff;
}
.form-style {
width: 100%;
background: #434544;
}
.form-style-vid {
display: flex;
align-items: center;
justify-content: space-between;
padding: 12rpx 0;
}
.input-style {
text-align: right !important;
}
.fui-btn__box {
margin: 20rpx auto;
width: 92%;
}
</style>

358
pages/market/clue/writing_followUp.vue

@ -0,0 +1,358 @@
<template>
<view class="assemble">
<view class="form-style">
<fui-form ref="form" top="0" :model="formData" :show="false">
<view class="input-style">
<fui-form-item label="跟进类型" asterisk asteriskPosition="right" labelSize='26' prop="name" background='#434544' labelColor='#fff'
:bottomBorder='false'>
<view class="input-title" style="margin-right:14rpx;" v-if="result_leixing == ''"
@click="selectCon(2)">点击选择</view>
<view class="input-title" style="margin-right:14rpx;" v-else @click="selectCon(2)">{{ result_leixing }}
</view>
</fui-form-item>
<fui-form-item label="跟进时间" labelSize='26' asterisk asteriskPosition="right" prop="mobile"
background='#434544' labelColor='#fff' :bottomBorder='false'>
<view class="input-title" style="margin-right:14rpx;" @click="selectCon(1)"
v-if="result_date == ''">点击选择</view>
<view class="input-title" style="margin-right:14rpx;" @click="selectCon(1)" v-else>{{ result_date }}
</view>
</fui-form-item>
<fui-form-item label="上传录音" labelSize='26' asterisk asteriskPosition="right" prop="mobile" background='#434544' labelColor='#fff'
:bottomBorder='false'>
<fui-input :borderBottom="false" :padding="[0]" placeholder="点击填写" v-model="formData.mobile"
backgroundColor="#434544" size="26" color="#fff"></fui-input>
</fui-form-item>
</view>
<view>
<fui-form-item label="跟进内容" labelSize='26' asterisk asteriskPosition="right" prop="mobile"
background='#434544' labelColor='#fff' :bottomBorder='false'>
</fui-form-item>
<view style="width: 100%;background: #434544;">
<view style="margin: auto;width: 92%;padding: 20rpx 0 50rpx;">
<fui-textarea :padding="[0]" v-model="formData.mobile"
backgroundColor="#434544" size="26" color="#fff" :textareaBorder="true"></fui-textarea>
</view>
</view>
</view>
<view class="input-style" style="margin-top: 50rpx;">
<fui-form-item label="学员名称" labelSize='26' asterisk asteriskPosition="right" prop="mobile"
background='#434544' labelColor='#fff' :bottomBorder='false'>
<view class="input-title" style="margin-right:14rpx;" @click="selectCon(3)"
v-if="result_student == ''">点击选择</view>
<view class="input-title" style="margin-right:14rpx;" @click="selectCon(3)" v-else>{{ result_student }}
</view>
</fui-form-item>
<fui-form-item label="客户状态" labelSize='26' asterisk asteriskPosition="right" prop="mobile"
background='#434544' labelColor='#fff' :bottomBorder='false'>
<view class="input-title" style="margin-right:14rpx;" @click="selectCon(4)"
v-if="result_status == ''">点击选择</view>
<view class="input-title" style="margin-right:14rpx;" @click="selectCon(4)" v-else>{{ result_status }}
</view>
</fui-form-item>
<fui-form-item label="签单意向联系人" labelWidth="230" labelSize='26' asterisk asteriskPosition="right" prop="mobile"
background='#434544' labelColor='#fff' :bottomBorder='false'>
<view class="input-title" style="margin-right:14rpx;" @click="selectCon(5)"
v-if="result_intention == ''">点击选择</view>
<view class="input-title" style="margin-right:14rpx;" @click="selectCon(5)" v-else>{{ result_intention }}
</view>
</fui-form-item>
</view>
<view class="title" style="margin-top: 20rpx;">跟进任务</view>
<view class="input-style">
<fui-form-item label="创建下次跟进任务" labelWidth="250" labelSize='26' asterisk asteriskPosition="right" prop="mobile"
background='#434544' labelColor='#fff' :bottomBorder='false'>
<fui-switch @change="switchChange" checked></fui-switch>
</fui-form-item>
<view v-if="switchChange_type == 1">
<fui-form-item label="跟进时间" labelSize='26' asterisk asteriskPosition="right" prop="mobile"
background='#434544' labelColor='#fff' :bottomBorder='false'>
<view class="input-title" style="margin-right:14rpx;" @click="selectCon(6)"
v-if="result_dates == ''">点击选择</view>
<view class="input-title" style="margin-right:14rpx;" @click="selectCon(6)" v-else>{{ result_dates }}
</view>
</fui-form-item>
<fui-form-item label="跟进内容" labelSize='26' prop="mobile" background='#434544' labelColor='#fff'
:bottomBorder='false'>
<fui-input :borderBottom="false" :padding="[0]" placeholder="点击填写" v-model="formData.mobile"
backgroundColor="#434544" size="26" color="#fff"></fui-input>
</fui-form-item>
<fui-form-item label="跟进人员" labelSize='26' asterisk asteriskPosition="right" prop="mobile"
background='#434544' labelColor='#fff' :bottomBorder='false'>
<fui-input :borderBottom="false" :padding="[0]" placeholder="点击填写" v-model="formData.mobile"
backgroundColor="#434544" size="26" color="#fff"></fui-input>
</fui-form-item>
<fui-form-item label="任务提醒" labelSize='26' prop="mobile" background='#434544' labelColor='#fff'
:bottomBorder='false'>
<view class="input-title" style="margin-right:14rpx;" @click="selectCon(7)"
v-if="result_renwu == ''">点击选择</view>
<view class="input-title" style="margin-right:14rpx;" @click="selectCon(7)" v-else>{{ result_renwu }}
</view>
</fui-form-item>
<fui-form-item label="提醒方式" labelSize='26' prop="mobile" background='#434544' labelColor='#fff'
:bottomBorder='false'>
<view class="input-title" style="margin-right:14rpx;" @click="selectCon(8)"
v-if="result_fangshi == ''">点击选择</view>
<view class="input-title" style="margin-right:14rpx;" @click="selectCon(8)" v-else>{{ result_fangshi }}
</view>
</fui-form-item>
</view>
</view>
</fui-form>
</view>
<view class="fui-btn__box">
<fui-button background="#434544" color="#24BA9F" borderColor="#24BA9F" @click="submit">保存</fui-button>
</view>
<!-- 年月日-选择时间 -->
<fui-date-picker :show="show_date" type="3" @change="change_date" @cancel="cancel_date"></fui-date-picker>
<!-- 选择器 -->
<fui-picker :linkage='linkage' :options="options" :layer="1" :show="show" @change="change" @cancel="cancel"></fui-picker>
</view>
</template>
<script>
const rules = [{
name: "mobile",
rule: ["required", "isMobile"],
msg: ["请输入手机号", "请输入正确的手机号"]
}];
export default {
data() {
return {
switchChange_type: 1,
rules,
formData: {},
show_date: false,
result_date: '',
result_leixing: '',
result_student: '',
result_status: '',
result_intention: '',
result_dates: '',
result_renwu: '',
result_fangshi: '',
show: false,
options: [],
linkage: true,
options_type : undefined,
options_leixing: [{
'value': 1,
'text': '类型1'
}, {
'value': 2,
'text': '类型2'
}, {
'value': 3,
'text': '类型3'
}],
options_student: [{
'value': 1,
'text': '张三'
}, {
'value': 2,
'text': '李四'
}, {
'value': 3,
'text': '王五'
}],
options_status: [{
'value': 1,
'text': '状态1'
}, {
'value': 2,
'text': '状态2'
}, {
'value': 3,
'text': '状态3'
}],
options_intention: [{
'value': 1,
'text': '张三1'
}, {
'value': 2,
'text': '李四2'
}, {
'value': 3,
'text': '王五3'
}],
options_kehu: [{
'value': 1,
'text': '张三'
}, {
'value': 2,
'text': '李四'
}, {
'value': 3,
'text': '王五'
}],
options_renwu: [{
'value': 1,
'text': '是'
}, {
'value': 2,
'text': '否'
}],
options_fangshi: [{
'value': 1,
'text': '短信'
}, {
'value': 2,
'text': '微信'
}]
}
},
methods: {
submit() {
console.log(this.formData)
this.$refs.form.validator(null, null, true).then(res => {
console.log(res)
if (res.isPassed) {
console.log('校验通过!')
} else {
console.log('向上滑动页面查看错误提示!')
}
}).catch(err => {
console.log(err)
})
},
//
selectCon(type) {
if (type == 1) {
//
this.options_date_type = 1
this.show_date = true
} else if (type == 2) {
this.options_type = 2
this.options = this.options_leixing
this.show = true
this.linkage = true
} else if (type == 3) {
this.options_type = 3
this.options = this.options_student
this.show = true
this.linkage = true
} else if (type == 4) {
this.options_type = 4
this.options = this.options_status
this.show = true
this.linkage = true
} else if (type == 5) {
this.options_type = 5
this.options = this.options_intention
this.show = true
this.linkage = true
}else if (type == 6) {
//
this.options_date_type = 6
this.show_date = true
} else if (type == 7) {
//
this.options_type = 7
this.options = this.options_renwu
this.show = true
this.linkage = true
} else if (type == 8) {
//
this.options_type = 8
this.options = this.options_fangshi
this.show = true
this.linkage = true
}
},
//
change_date(e) {
if(this.options_date_type == 1){
this.show_date = false
this.result_date = e.result ?? ''
}else if(this.options_date_type == 6){
this.show_date = false
this.result_dates = e.result ?? ''
}
},
//
cancel_date() {
this.show_date = false
},
//
change(e) {
this.show = false
console.log(e)
if(this.options_type == 2){
this.result_leixing = e.result
} else if (this.options_type == 3) {
this.result_student = e.result
} else if (this.options_type == 4) {
this.result_status = e.result
} else if (this.options_type == 5) {
this.result_intention = e.result
} else if(this.options_type == 7){
this.result_renwu = e.result
} else if(this.options_type == 8){
this.result_fangshi = e.result
}
},
//
cancel() {
this.show = false
},
//
switchChange(e){
if(e.detail.value){
this.switchChange_type = 1
}else{
this.switchChange_type = 2
}
}
}
}
</script>
<style lang="less" scoped>
.assemble {
width: 100%;
height: 100vh;
background: #292929;
overflow: auto;
}
.title {
font-size: 26rpx;
color: #fff;
padding: 26rpx 0 26rpx 32rpx;
}
.input-title {
font-size: 26rpx;
color: #fff;
}
.form-style {
width: 100%;
// background: #434544;
}
.form-style-vid {
display: flex;
align-items: center;
justify-content: space-between;
padding: 12rpx 0;
}
.input-style {
text-align: right !important;
}
.fui-btn__box {
margin: 50rpx auto 120rpx;
width: 92%;
}
</style>

BIN
static/images/index/addto.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.7 KiB

BIN
static/images/index/task.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.6 KiB

BIN
static/images/index/writing.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.9 KiB

Loading…
Cancel
Save