Commit 789321b3 by tianlonglong
2 parents 2c850ddd e68b0a64
This diff could not be displayed because it is too large.
......@@ -20,7 +20,6 @@
"lodash": "^4.17.21",
"moment": "^2.29.1",
"vue": "^3.2.27",
"vue-photo-zoom-pro": "^3.0.1",
"vue-router": "^4.0.8",
"vuex": "^4.0.0"
},
......
window._serverHost = ['localhost', '192.168.1.125'].includes(window.location.hostname) ? 'https://store.keliuyun.com/' : window.location.host
window._baseUrl = ['localhost', '192.168.1.125'].includes(window.location.hostname) ? 'https://store.keliuyun.com/btool/' : `https://${window._serverHost}/btool/`
window._baseImgUrl = ['localhost', '192.168.1.125'].includes(window.location.hostname) ? 'https://store.keliuyun.com/images/' : `${window.location.origin}/images/`
window._socketUrl = ['localhost', '192.168.1.125'].includes(window.location.hostname) ? `wss://${window._serverHost}/` : `wss://${window._serverHost}/`
window._serverHost = ['localhost', '192.168.1.28'].includes(window.location.hostname) ? 'https://store.keliuyun.com' : window.location.host
window._baseUrl = ['localhost', '192.168.1.28'].includes(window.location.hostname) ? 'https://store.keliuyun.com/btool/' : `https://${window._serverHost}/btool/`
window._baseImgUrl = ['localhost', '192.168.1.28'].includes(window.location.hostname) ? 'https://store.keliuyun.com/images/' : `${window.location.origin}/images/`
window._socketUrl = ['localhost', '192.168.1.28'].includes(window.location.hostname) ? `wss://${window._serverHost}/` : `wss://${window._serverHost}/`
const log = console.log.bind(console)
......@@ -4,7 +4,7 @@ import Cookies from "js-cookie"
import {getTimestampString} from "@/PublicUtil/PublicUtil"
import {ElMessage} from 'element-plus'
// 创建 axios 的一个实例
let baseURL = ['localhost', '192.168.1.125'].includes(window.location.hostname) ? '' : window._baseUrl
let baseURL = ['localhost', '192.168.1.28'].includes(window.location.hostname) ? '' : window._baseUrl
const axiosInstance = axios.create(
{
baseURL: baseURL,
......@@ -14,14 +14,14 @@ const axiosInstance = axios.create(
// 请求拦截器
axiosInstance.interceptors.request.use(
config => {
// Cookies.set('atoken','090afed9-d637-4710-b556-4910eb7f6e15')
// Cookies.set('atoken','e433d448-d61e-4aba-9a3e-06c2fcb4a7e5')
if(!Cookies.get('atoken')){
ElMessage({
message: `登录过期,请重新登录`,
type: 'warning'
})
setTimeout(()=>{
let url = ['localhost', '192.168.1.125'].includes(window.location.hostname) ? 'https://store.keliuyun.com/' : window.location.origin
let url = ['localhost', '192.168.1.28'].includes(window.location.hostname) ? 'https://store.keliuyun.com/' : window.location.origin
// if(url.includes('36.112.68.214')){
// url = 'http://36.112.68.214:33333/'
// }
......@@ -45,7 +45,7 @@ axiosInstance.interceptors.response.use(
type: 'warning'
})
setTimeout(()=>{
let url = ['localhost', '192.168.1.125'].includes(window.location.hostname) ? 'https://store.keliuyun.com/' : window.location.origin
let url = ['localhost', '192.168.1.28'].includes(window.location.hostname) ? 'https://store.keliuyun.com/' : window.location.origin
// if(url.includes('36.112.68.214')){
// url = 'http://36.112.68.214:33333/'
// }
......
......@@ -2,7 +2,6 @@ import {createApp} from 'vue'
import App from './App.vue'
import Antd from 'ant-design-vue'
import 'ant-design-vue/dist/antd.css'
import VuePhotoZoomPro from 'vue-photo-zoom-pro'
import router from './router'
import store from './store'
import installElementPlus from './plugins/element'
......@@ -10,7 +9,6 @@ import installElementPlus from './plugins/element'
const app = createApp(App)
installElementPlus(app)
app.use(store)
app.use(VuePhotoZoomPro)
app.use(router)
app.use(Antd)
app.mount('#app')
......@@ -28,10 +28,11 @@
<a-select-option :value="0">人脸+全身照特征</a-select-option>
<a-select-option :value="1">人脸特征</a-select-option>
<a-select-option :value="2">全身照特征</a-select-option>
<a-select-option :value="3">店员特征</a-select-option>
<a-select-option :value="3">店员特征(人脸+人体)</a-select-option>
<a-select-option :value="4">人员特征(人脸+人体)</a-select-option>
</a-select>
</a-form-item>
<a-form-item label="选择日期:" v-if="queryForm.featureRevisitType !== 3" style="padding: 5px 0">
<a-form-item label="选择日期:" v-if="queryForm.featureRevisitType < 3" style="padding: 5px 0">
<a-date-picker v-model:value="queryForm.date" style="width: 280px"/>
</a-form-item>
<a-form-item style="padding: 5px 0">
......@@ -218,14 +219,20 @@ export default {
}
featureReExtractApi.getFeatureResult(data)
}
else
{
else if(rawData.featureRevisitType==3){
const data = {
mallIds: rawData.plaza_id,
featureType: rawData.featureRevisitType,
scheduleType: `revisitFeature${rawData.featureRevisitType}`,
}
featureReExtractApi.getStaffFeatureResult(data)
}else{
const data = {
mallIds: rawData.plaza_id,
featureType: rawData.featureRevisitType,
scheduleType: `revisitFeature${rawData.featureRevisitType}`,
}
featureReExtractApi.getPersonFeatureResult(data)
}
}
......
......@@ -22,6 +22,16 @@ class FeatureReExtractApi {
)
}
getPersonFeatureResult(data){
return axiosInstance.request(
{
method: 'POST',
url: `/person/reFeature`,
data: data
}
)
}
}
const featureReExtractApi = new FeatureReExtractApi()
......
......@@ -3,7 +3,7 @@
<a-form :model="queryForm" layout="inline" :label-col="{ style: { width: '70px' } }">
<a-form-item label="集团:" style="padding: 5px 0">
<a-select v-model:value="queryForm.account_id"
style="width: 280px"
style="width: 240px"
mode="multiple"
:maxTagCount="1"
@change="onAccountChange"
......@@ -15,7 +15,7 @@
</a-form-item>
<a-form-item label="广场:" style="padding: 5px 0">
<a-select v-model:value="queryForm.plaza_id"
style="width: 280px"
style="width: 240px"
mode="multiple"
:maxTagCount="1"
@change="onPlazaChange"
......@@ -26,7 +26,7 @@
</a-select>
</a-form-item>
<a-form-item label="出入类型:" style="padding: 5px 0">
<a-select v-model:value="queryForm.type" style="width: 280px">
<a-select v-model:value="queryForm.type" style="width: 240px">
<a-select-option :value="0">全场</a-select-option>
<a-select-option :value="1">广场出入口</a-select-option>
<a-select-option :value="2">楼层出入口</a-select-option>
......@@ -36,7 +36,7 @@
</a-form-item>
<a-form-item label="区域信息:" style="padding: 5px 0">
<a-select v-model:value="queryForm.zone_id"
style="width: 280px"
style="width: 240px"
mode="multiple"
:maxTagCount="1"
@change="onZoneChange"
......@@ -48,7 +48,7 @@
</a-form-item>
<a-form-item label="监控点:" style="padding: 5px 0">
<a-select v-model:value="queryForm.gate_id"
style="width: 280px"
style="width: 240px"
mode="multiple"
:maxTagCount="1"
:options="gateList"
......@@ -62,14 +62,14 @@
<a-select v-model:value="queryForm.direction"
mode="multiple"
:maxTagCount="1"
style="width: 280px">
style="width: 240px">
<a-select-option :value="1"></a-select-option>
<a-select-option :value="-1"></a-select-option>
<a-select-option :value="0">横穿</a-select-option>
</a-select>
</a-form-item>
<a-form-item label="抓拍类型:" style="padding: 5px 0">
<a-select v-model:value="queryForm.picType" style="width: 280px">
<a-select v-model:value="queryForm.picType" style="width: 240px">
<a-select-option :value="1">半身照</a-select-option>
<a-select-option :value="2">全身照</a-select-option>
</a-select>
......@@ -78,14 +78,24 @@
<a-select v-model:value="queryForm.personType"
mode="multiple"
:maxTagCount="1"
style="width: 280px">
style="width: 240px">
<a-select-option :value="1">店员</a-select-option>
<a-select-option :value="0">顾客</a-select-option>
<a-select-option :value="-99">未知</a-select-option>
</a-select>
</a-form-item>
<a-form-item label="年龄类型:" style="padding: 5px 0">
<a-select v-model:value="queryForm.childAdult"
mode="multiple"
:maxTagCount="1"
style="width: 240px">
<a-select-option :value="1">成人</a-select-option>
<a-select-option :value="0">儿童</a-select-option>
<a-select-option :value="-1">未知</a-select-option>
</a-select>
</a-form-item>
<a-form-item label="选择日期:" style="padding: 5px 0">
<a-date-picker v-model:value="queryForm.date" :format="'YYYY-MM-DD'" style="width: 280px"/>
<a-date-picker v-model:value="queryForm.date" :format="'YYYY-MM-DD'" style="width: 240px"/>
</a-form-item>
<a-form-item label="选择时间:" style="padding: 5px 0">
<a-time-picker v-model:value="queryForm.startTime" style="width: 140px"/>
......@@ -141,7 +151,7 @@
class="single-image" >
</el-image>
<div>时间:{{ item.counttime }}</div>
<div>人员类型:{{ item.person_type==1?'店员':(item.person_type==0?'顾客':'未知') }}</div>
<div>人员类型:{{ item.person_type==1?'店员':(item.person_type==0?'顾客':'未知') }}({{ item.childAdult==1?'成人':(item.childAdult==0?'儿童':'未知') }})</div>
<div>性别:{{ formatGender(item.gender) }}({{item.age}})</div>
<div class="direction" :class="'direction'+item.direction">方向:{{ formatDirection(item.direction) }}</div>
<div>地点:{{ item.gate_name }}</div>
......@@ -228,6 +238,7 @@ export default {
endTime: moment('23:59:59', 'HH:mm:ss'),
minPic: 0,
maxPic: 100,
childAdult:[],
}
)
const searchCondition = ref({})
......@@ -427,6 +438,7 @@ export default {
maxPic: rawData.maxPic,
page: pageNum.value - 1,
pageSize: pageSize.value,
childAdult: rawData.childAdult.toString(),
}
)
const storageData = filterEmptyValueInObject(
......
......@@ -82,6 +82,16 @@
<a-select-option :value="-99">未知</a-select-option>
</a-select>
</a-form-item>
<a-form-item label="年龄类型:" style="padding: 5px 0">
<a-select v-model:value="queryForm.childAdult"
mode="multiple"
:maxTagCount="1"
style="width: 280px">
<a-select-option :value="1">成人</a-select-option>
<a-select-option :value="0">儿童</a-select-option>
<a-select-option :value="-1">未知</a-select-option>
</a-select>
</a-form-item>
<a-form-item label="选择日期:" style="padding: 5px 0">
<a-date-picker v-model:value="queryForm.date" :format="'YYYY-MM-DD'" style="width: 280px"/>
</a-form-item>
......@@ -117,7 +127,7 @@
class="single-image">
</el-image>
<div>时间:{{ item.counttime }}</div>
<div>人员类型:{{ item.person_type==1?'店员':(item.person_type==0?'顾客':'未知')}}</div>
<div>人员类型:{{ item.person_type==1?'店员':(item.person_type==0?'顾客':'未知')}}({{ item.childAdult==1?'成人':(item.childAdult==0?'儿童':'未知') }})</div>
<div>性别:{{ formatGender(item.gender) }}({{item.age}})</div>
<div class="direction" :class="'direction'+item.direction">方向:{{ formatDirection(item.direction) }}</div>
<div>地点:{{ item.gate_name }}</div>
......@@ -192,6 +202,7 @@ export default {
date: moment(moment().format('YYYY-MM-DD'), 'YYYY-MM-DD'),
startTime: moment('00:00:00', 'HH:mm:ss'),
endTime: moment('23:59:59', 'HH:mm:ss'),
childAdult:[],
}
)
const searchCondition = ref({})
......@@ -383,6 +394,7 @@ export default {
endTime: formatDate(rawData.date) + ' ' + formatTime(rawData.endTime),
page: pageNum.value - 1,
pageSize: pageSize.value,
childAdult: rawData.childAdult.toString(),
}
)
const storageData = filterEmptyValueInObject(
......
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!