Kaynağa Gözat

Merge branch 'master' into autoSR1012

autoSR1012
douzhuo 2 yıl önce
ebeveyn
işleme
4767a3d76f
7 değiştirilmiş dosya ile 182 ekleme ve 53 silme
  1. +1
    -1
      env/cl.js
  2. +1
    -1
      manifest.json
  3. +33
    -8
      pages/center/consumer/edit.vue
  4. +65
    -4
      pages/center/prohibited/details.vue
  5. +1
    -1
      pages/login/index.vue
  6. +54
    -27
      pages/mine/calibration.vue
  7. +27
    -11
      pages/mine/selectBuilding.vue

+ 1
- 1
env/cl.js Dosyayı Görüntüle

@@ -1,5 +1,5 @@
const ENV_PATH = {
baseUrl: 'http://192.168.31.231:8080/autoSR/api', // 长龙
baseUrl: 'http://192.168.31.244:8080/autoSR/api', // 长龙
}

module.exports = ENV_PATH

+ 1
- 1
manifest.json Dosyayı Görüntüle

@@ -91,7 +91,7 @@
},
"quickapp" : {},
"mp-weixin" : {
"appid" : "wx8f883dca5ecc5510",
"appid" : "wxe044603515ff2cb5",
"setting" : {
"urlCheck" : false,
"es6" : true,


+ 33
- 8
pages/center/consumer/edit.vue Dosyayı Görüntüle

@@ -96,7 +96,7 @@

<view v-for="(item,index) in allList" :key="index">
<view class="">
<view class="conmsg-msg-lab" style="border: none;">
<view class="conmsg-msg-lab" :class="{mustSe: item.level == 1 && item.mustSelected == 0 }" style="border: none;">
<view class="conmsg-msg-lab-1">
{{item.name}}
</view>
@@ -344,15 +344,30 @@
if (this.form.showPhones != this.form.showPhone) {
this.form.phone = this.form.showPhone
}
this.allList.map(item => {
item.children.map(item1 => {
if (item1.selected == 0) {
console.log(item, item1)
str.push(item1.keywordsId)
let isPass = false // 默认通过
let indexs = 0; //
try {
this.allList.forEach(item => {
if (item.mustSelected == 0) {
if (item.children.findIndex(item => item.selected == 0) == -1) {
throw new Error(item.name)
}
}
item.children.map(item1 => {
if (item1.selected == 0) {
str.push(item1.keywordsId)
}
})
})
})
} catch (e) {
console.log(e)
uni.showToast({
title: `${e.message}为必选项~`,
icon: 'none',
duration: 2000
})
return
}
str = str.join(',')
param = this.form
param.keywordIds = str
@@ -402,6 +417,7 @@
padding: 0 30rpx;

.conmsg-msg-lab {
position: relative;
height: 102rpx;
display: flex;
font-size: 30rpx;
@@ -410,6 +426,15 @@
border-bottom: 1px solid #E0E0E0;
line-height: 102rpx;

&.mustSe::before {
content: '*';
color: red;
position: absolute;
left: -10rpx;
right: -10rpx;
z-index: 10;
}

.conmsg-msg-lab-1 {
display: flex;
min-width: 136rpx;


+ 65
- 4
pages/center/prohibited/details.vue Dosyayı Görüntüle

@@ -68,6 +68,22 @@
</view>
</view>
</view>
<!-- 1 客户画像 2销讲词 3违禁 4 需求挖掘 -->
<view class="newmark" v-if="item.types">
<view class="mark-item" v-for="(subitem,i) in dealTypes(item.types)" :key="i">
<!-- <image v-if="dealword(subitem)[0]==1" class="markicon"
src="https://static.quhouse.com/37e0de3f8d1c421dac8bf699d5e7992d.png"></image>
<image v-if="dealword(subitem)[0]==2" class="markicon"
src="https://static.quhouse.com/b106e8e75db24a59a579a15a78830a76.png"></image> -->
<image v-if="dealword(subitem)[0]==3" class="markicon"
src="https://static.quhouse.com/8443a2ecb81d4639991ab29c422e9949.png"></image>
<!-- <image v-if="dealword(subitem)[0]==4" class="markicon"
src="https://static.quhouse.com/1cd794cb6c974d9dad948a6dd444518b.png"></image> -->
<view class="marktext" v-if="dealword(subitem)[0]==3" :style="dealword(subitem)[0]==3?'color:#E7483C':'color:#3E50E8'">
{{dealword(subitem)[1]}}
</view>
</view>
</view>
</block>
</view>
</scroll-view>
@@ -95,7 +111,7 @@
<view class="dialog-block" v-for="(dialog,i) in dialogList" :key="i">
<view :id="'dialog'+i" class="fileName">录音文件</view>
<block v-for="(item,index) in dialog.message" :key="index">
<view class="text" :id="'dialog'+csdFileindex+'text'+item.bg"
<view class="text" style="margin: 50rpx 30rpx" :id="'dialog'+csdFileindex+'text'+item.bg"
:class="{active: item.bg < playNow && item.ed > playNow, reverse: Number(item.speaker) % 2 == 0}"
:data-speaker="item.speaker">
<view class="avatar">
@@ -328,6 +344,26 @@
},

methods: {
// 对话加命中标签
dealTypes(type) {
if (type) {
let tem = type.split(',')
return tem
} else {
return []
}
},
// 对话加命中标签
dealword(type) {
if (type) {
let a = type.split('-')
let rest = type.substring(2).split('-').join(',')
let arr = [a[0], rest]
return arr
} else {
return []
}
},
// 获取违禁词
findTabooWords() {
this.$u.get('/customer/findTabooWords', {
@@ -1142,13 +1178,38 @@
color: #333333;
}
}
// 违禁正则标签
.newmark {
margin: 30rpx 0 10rpx 120rpx;

.mark-item {
display: flex;
flex-wrap: wrap;
margin-bottom: 12rpx;

.markicon {
width: 30rpx;
height: 30rpx;
margin-right: 12rpx;
}

.marktext {
font-size: 24rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #3E50E8;
min-height: 30rpx;
line-height: 30rpx;
max-width: 420rpx;
text-align: left;
word-break: break-all;
}
}
}
.text {
margin: 50upx 30upx;
margin: 0 30upx;
display: flex;
align-items: center;


.avatar {
margin-right: 24rpx;
width: 64upx;


+ 1
- 1
pages/login/index.vue Dosyayı Görüntüle

@@ -103,7 +103,7 @@
uni.setStorageSync(WXB_SESSION_LOGIN_DATA, data); //写入缓存
that.getMenu()
that.getUser();
util.showSuccess('登录成功');
// util.showSuccess('登录成功');
} else {
util.showNone("账号名或密码错误,请重试");
return false;


+ 54
- 27
pages/mine/calibration.vue Dosyayı Görüntüle

@@ -5,7 +5,8 @@
<view class="conmsg-msg">
<view v-for="(item,index) in allList" :key="index">
<view class="">
<view class="conmsg-msg-lab" style="border: none;">
<view class="conmsg-msg-lab" :class="{mustSe: item.level == 1 && item.mustSelected == 0 }"
style="border: none;">
<view class="conmsg-msg-lab-1">
{{item.name}}
</view>
@@ -36,35 +37,35 @@
export default {
data() {
return {
allList:[],
customerId:''
allList: [],
customerId: ''
}
},
onLoad(e) {
this.customerId=e.id;
this.customerId = e.id;
this.getListByType()
},
methods: {
Edittag(item,item1,index,i){
if(this.allList[index].children[i].selected==0){
this.allList[index].children[i].selected=1;
}else{
this.allList[index].children[i].selected=0;
Edittag(item, item1, index, i) {
if (this.allList[index].children[i].selected == 0) {
this.allList[index].children[i].selected = 1;
} else {
this.allList[index].children[i].selected = 0;
}
this.$forceUpdate()
this.$forceUpdate()
},
// 字典表接口
getListByType() {
this.$u.get("/matchKeywords/findManualCalibration", {
customerId: this.customerId,
type:2
type: 2
})
.then(res => {
res.forEach(item1 => {
item1.children.map(item => {
if (item.isInterval == 0) {
item.label = item.name + item.unit + '-' + item.endName + item
.unit;
.unit;
} else {
item.label = item.name
}
@@ -77,36 +78,52 @@
// 提交
submit() {
let param = {
keywordIds:'',
keywordIds: '',
id: this.customerId,
projectId: uni.getStorageSync('buildingID').id,
}
let str = []
this.allList.map(item => {
item.children.map(item1 => {
if (item1.selected == 0) {
str.push(item1.keywordsId)
let indexs = 0; //
try {
this.allList.forEach(item => {
if (item.mustSelected == 0) {
if (item.children.findIndex(item => item.selected == 0) == -1) {
throw new Error(item.name)
}
}
item.children.map(item1 => {
if (item1.selected == 0) {
str.push(item1.keywordsId)
}
})
})
})
} catch (e) {
console.log(e)
uni.showToast({
title: `${e.message}为必选项~`,
icon: 'none',
duration: 2000
})
return
}

str = str.join(',')
param.keywordIds = str
param.keywordIds = str
this.$u.post("matchKeywords/updateManualCalibration", param).then(res => {
uni.showToast({
title: '操作成功',
icon: 'none',
success: () => {
let sdd={
let sdd = {
keywordIds: this.customerId,
id: this.customerId,
bg:0,
speaker:0
bg: 0,
speaker: 0
}
let pages = getCurrentPages() //获取当前页面栈的信息
let prevPage = pages[pages.length - 2] //获取上一个页面
prevPage.setData({ //把需要回传的值保存到上一个页面
info: sdd
let pages = getCurrentPages() //获取当前页面栈的信息
let prevPage = pages[pages.length - 2] //获取上一个页面
prevPage.setData({ //把需要回传的值保存到上一个页面
info: sdd
});
uni.navigateBack()
}
@@ -144,6 +161,7 @@
padding: 0 30rpx;

.conmsg-msg-lab {
position: relative;
height: 102rpx;
display: flex;
font-size: 30rpx;
@@ -152,6 +170,15 @@
border-bottom: 1px solid #E0E0E0;
line-height: 102rpx;

&.mustSe::before {
content: '*';
color: red;
position: absolute;
left: -10rpx;
right: -10rpx;
z-index: 10;
}

.conmsg-msg-lab-1 {
display: flex;
min-width: 136rpx;


+ 27
- 11
pages/mine/selectBuilding.vue Dosyayı Görüntüle

@@ -4,8 +4,11 @@
<u-search placeholder="输入项目名称" v-model="search" @search="s" @custom="s"></u-search>
</view>
<view class="searchResultStyle">
<view class="searchList" v-for="(item,index) in list" :key="index" @click="okSelect(item.id,item.propertyName)">
{{item.propertyName}}
<view class="searchList" v-for="(item,index) in list" :key="index" @click="okSelect(item)">
<text style="flex-grow: 1;">
{{item.propertyName}}
</text>
<text v-if="item.daysRemaining < 0 || item.lockFlag == 1" style="color: #ff0000;flex-shrink: 0;font-size: 26rpx;">({{ item.daysRemaining < 0 ? '已过期' : '' }} {{ item.lockFlag == 1 ? '已禁用' : ''}})</text>
</view>
</view>
</view>
@@ -22,22 +25,32 @@
list: [],
};
},
methods:{
s(e){
methods: {
s(e) {
this.init(e)
},
okSelect(id,name){
okSelect(data) {
if (data.lockFlag == 1) {
uni.showToast({
title: `${data.propertyName}项目已禁用,不能操作`,
icon: 'none',
duration: 2000
})
return
}
let lopan = {
id,
name
id: data.id,
name: data.propertyName
}
uni.setStorageSync("buildingID", lopan);
uni.navigateBack({
delta:-1
delta: -1
})
},
init(e){
let data = {houseName:decodeURI(e)||''}
init(e) {
let data = {
houseName: decodeURI(e) || ''
}
uni.request({
url: config.service.getUser,
method: "GET",
@@ -67,10 +80,13 @@

.searchResultStyle {
padding: 0 30rpx;
.searchList{

.searchList {
border-bottom: 1rpx solid #E0E0E0;
padding: 30rpx 0;
font-size: 30rpx;
display: flex;
justify-content: space-between;
}
}
}


Yükleniyor…
İptal
Kaydet