Commit dd1ec57f by 陈岩

feat: 抓拍修正

1 parent 14c2ded6
window._serverHost = ['localhost', '192.168.1.120'].includes(window.location.hostname) ? 'https://store.keliuyun.com/' : window.location.host
window._baseUrl = ['localhost', '192.168.1.120'].includes(window.location.hostname) ? 'https://store.keliuyun.com/tool/' : `${window.location.origin}/btool/`
window._reportUrl = ['localhost', '192.168.1.120'].includes(window.location.hostname) ? 'https://store.keliuyun.com/report/' : `${window.location.origin}/report/`
window._baseImgUrl = ['localhost', '192.168.1.120'].includes(window.location.hostname) ? 'https://store.keliuyun.com/images/' : `${window.location.origin}/images/`
window._serverHost = ['localhost', '192.168.1.120'].includes(window.location.hostname) ? 'https://wenan-poc.efivestar.com/' : window.location.host
window._baseUrl = ['localhost', '192.168.1.120'].includes(window.location.hostname) ? 'https://wenan-poc.efivestar.com/tool/' : `${window.location.origin}/btool/`
window._reportUrl = ['localhost', '192.168.1.120'].includes(window.location.hostname) ? 'https://wenan-poc.efivestar.com/report/' : `${window.location.origin}/report/`
window._baseImgUrl = ['localhost', '192.168.1.120'].includes(window.location.hostname) ? 'https://wenan-poc.efivestar.com/images/' : `${window.location.origin}/images/`
window._matchHost = ['localhost', '192.168.1.120'].includes(window.location.hostname) ? 'http://192.168.1.64:6689/' : window.location.host
window._socketUrl = ['localhost', '192.168.1.120'].includes(window.location.hostname) ? `wss://${window._serverHost}/btool/` : `wss://${window._serverHost}/btool/`
const log = console.log.bind(console)
\ No newline at end of file
......@@ -192,6 +192,10 @@
<a-form-item style="padding: 5px 0">
<a-button type="primary" @click="updatePersonInfoByGroup">类型修正</a-button>
</a-form-item>
<a-form-item style="padding: 5px 0">
<a-button type="primary" @click="updatePersonInfoByCluster">抓拍修正</a-button>
</a-form-item>
<!-- <a-form-item style="padding: 5px 0">
<a-button type="primary" @click="addOneCaptureData">添加抓拍记录</a-button>
</a-form-item> -->
......@@ -320,6 +324,9 @@
<singleImgComparisonDialog ref="singleImgComparisonRef"></singleImgComparisonDialog>
<PersonGroupEditor ref='personGroupEditorRef' @refresh="handleEditorRefresh" />
<!-- 抓拍修正 -->
<PersonClusterEditor :person-type-list="personTypeList" ref='personClusterEditorRef' @refresh="handleEditorRefresh" />
<UploadGroupDataEditor ref='uploadGroupDataEditorRef' @refresh="handleEditorRefresh" />
<PersonGroupMover ref='personGroupMoverRef' :data-params="currentSearchCondition" :data-list="dataList" @refresh="handleRefresh" />
<AddPersonnelPool ref='personnelPoolRef' :data-params="currentSearchCondition" @refresh="handleRefresh" />
......@@ -341,6 +348,8 @@ import PersonnelDialog from "../../ComparisonCapturedPictures/PersonnelDialog.vu
import DetailDialogComparison from "../../ComparisonCapturedPictures/DetailDialogComparisonNew.vue";
import singleImgComparisonDialog from "../singleImgComparisonDialog.vue";
import PersonGroupEditor from "./PersonGroupEditor.vue";
import PersonClusterEditor from "./PersonClusterEditor.vue";
import UploadGroupDataEditor from "./UploadGroupDataEditor.vue";
import PersonGroupDialog from "./PersonGroupDialog.vue";
import PersonGroupMover from "./PersonGroupMover.vue";
......@@ -352,6 +361,7 @@ export default {
components:{
AddEditSnapshotClusterDialog,
PersonGroupEditor,
PersonClusterEditor,
UploadGroupDataEditor,
PersonGroupDialog,
PersonGroupMover,
......@@ -989,6 +999,23 @@ export default {
}
}
// 人员抓拍修正
const personClusterEditorRef = ref();
// const isShowGroupEditor = ref(false)
const updatePersonInfoByCluster = function() {
if(currentItemId.value) {
personClusterEditorRef.value?.initDialog(currobj.value);
}else{
ElMessage(
{
message: `请选择聚类图片`,
type: 'warning'
}
)
return
}
}
// 上传数据
const uploadGroupDataEditorRef = ref();
const uploadGroupData = function(data) {
......@@ -1469,6 +1496,7 @@ export default {
formatGender,
downloadTrajectoryFile,
clickSearch,
updatePersonInfoByCluster,
handleRefresh,
handleEditorRefresh,
currentSearchCondition,
......@@ -1477,6 +1505,7 @@ export default {
DetailDialogRef,
personnelDialogRef,
personGroupDialogRef,
personClusterEditorRef,
personGroupEditorRef,
uploadGroupDataEditorRef,
DetailDialogComparisonRef,
......
......@@ -172,6 +172,18 @@ class ClusterResultApi {
}
)
}
// 人员抓拍修正
updateClusterPerson(data) {
return axiosInstance.request(
{
method: 'POST',
url: `/faceRecognitions/updateRecordOrg`,
data: data
}
)
}
// 多选删除
deletePerson(data) {
return axiosInstance.request(
......@@ -232,6 +244,15 @@ class ClusterResultApi {
}
)
}
getChannelSerielNumApi() {
return axiosInstance.request(
{
method: 'GET',
url: `/faceRecognitions/getAllChannel`,
}
)
}
//
// 搜索左侧图片列表
getAllfacePic(data) {
return axiosInstance.request(
......
<template>
<a-modal
title="抓拍修正"
v-if="isVisible"
v-model:visible="isVisible"
width="400px"
height="50%"
class="detail-modal"
>
<a-form :model="formData">
<a-form-item label="年龄">
<a-input-number
v-model:value="formData.age"
:min="1"
:max="200"
style="width: 100%"
/>
</a-form-item>
<a-form-item label="性别">
<a-select v-model:value="formData.gender" :allowClear="true">
<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="方向">
<a-select
v-model:value="formData.direction"
>
<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-option :value="2">过店</a-select-option>
<a-select-option :value="4">从左到右</a-select-option>
<a-select-option :value="5">从右到左</a-select-option>
<a-select-option :value="7">关注</a-select-option>
<a-select-option :value="8">触达</a-select-option>
</a-select>
</a-form-item>
<a-form-item label="类型">
<a-select
v-model:value="formData.type"
:options="personTypeList"
optionFilterProp="label"
:allowClear="true"
></a-select>
</a-form-item>
<a-form-item label="通道">
<a-select v-model:value="formData.channelSerialnum" :allowClear="true" show-search>
<a-select-option v-for="item in serielList" :key="item.serialnum" :value="item.serialnum">{{ item.serialnum }}</a-select-option>
</a-select>
</a-form-item>
</a-form>
<template #footer>
<a-button type="primary" @click="onSave">保存</a-button>
<a-button @click="onCancel">关闭</a-button>
</template>
</a-modal>
</template>
<script>
import { ref } from "vue";
import clusterResultApi from "@/views/SnapshotCluster/ClusterResult/ClusterResultApi";
import { ElMessage } from "element-plus";
export default {
name: "PersonClusterEditor",
props: {
personTypeList: {
type: Array,
default: () => [],
},
},
setup(props, { emit }) {
const isVisible = ref(false);
// 表单
const formData = ref({});
const initDialog = (data) => {
console.log("initDialog", data);
getChannelSerielList()
formData.value = {
mallId: data.mall_id,
age: data.age,
gender: data.gender,
type: data.person_type,
countdate: data.counttime,
direction: data.direction,
channelSerialnum: data.channel_serialnum,
unid: data.person_unid,
};
isVisible.value = true;
};
const serielList = ref([])
const getChannelSerielList = () => {
clusterResultApi.getChannelSerielNumApi().then((r) => {
if (r.msg_code == 200) {
serielList.value = r.data || []
} else {
ElMessage({
message: `获取通道列表失败`,
type: "error",
});
}
});
};
const onCancel = () => {
isVisible.value = false;
};
const onSave = () => {
clusterResultApi.updateClusterPerson(formData.value).then((r) => {
if (r.msg_code == 200) {
ElMessage({
message: `保存成功`,
type: "success",
});
// 刷新列表
emit("refresh");
onCancel();
} else {
ElMessage({
message: `保存失败`,
type: "error",
});
}
});
};
return {
isVisible,
formData,
onSave,
serielList,
onCancel,
initDialog
};
},
};
</script>
<style lang="less" scoped></style>
......@@ -265,10 +265,11 @@ export default {
addGroupLoading.value = false
})
}else{
// 新增处理
const param = {
dstPersonUnid:personUnid.value,
srcPersonUnid,
countdate:formData.value.date,
countDate:formData.value.date,
}
clusterResultApi.updateRecognitionApi(param).then((r) => {
if(r.msg_code === 200) {
......
......@@ -70,7 +70,7 @@ module.exports = {
}
},
'/': {
target: 'https://store.keliuyun.com/btool/',
target: 'https://wenan-poc.efivestar.com/btool/',
// target: 'http://117.133.143.116:33333/btool/',
changeOrigin: true
},
......
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!