From 2b5ef02510cffc0cdbe74ed53b53fd9826d0bacf Mon Sep 17 00:00:00 2001
From: 田源 <lastanimals@163.com>
Date: 星期二, 30 一月 2024 17:12:04 +0800
Subject: [PATCH] 首页布局更改
---
Source/UBCS-WEB/src/components/MasterCrud/VciMasterCrud.vue | 165 ++++++++++++++++++++++++++++++++++++++++++++++---------
1 files changed, 138 insertions(+), 27 deletions(-)
diff --git a/Source/UBCS-WEB/src/components/MasterCrud/VciMasterCrud.vue b/Source/UBCS-WEB/src/components/MasterCrud/VciMasterCrud.vue
index 51e6949..7b9018a 100644
--- a/Source/UBCS-WEB/src/components/MasterCrud/VciMasterCrud.vue
+++ b/Source/UBCS-WEB/src/components/MasterCrud/VciMasterCrud.vue
@@ -15,14 +15,24 @@
item.name
}}
</el-button>
- <span v-if="tableHeadFindData.length > 0">
- <el-select slot="prepend" v-model="keyWordFind" placeholder="璇烽�夋嫨" size="small">
+ <span v-if="tableHeadFindData.length > 0 ">
+ <el-select slot="prepend" v-model="keyWordFind" placeholder="璇烽�夋嫨" size="small" @change="searchChange">
<el-option v-for="item in tableHeadFindData" :key="item.id" :label="item.label"
- :value="item.prop"></el-option>
+ :value="item.query"></el-option>
</el-select>
- <el-input v-model="WupinFindValue" placeholder="璇疯緭鍏ュ叧閿瓧鎸夊洖杞︽煡璇�"
- size="small" style="width: 180px; margin-left: 5px; margin-top: 10px"
+ <el-input v-if="!isTimeStatus" v-model="WupinFindValue"
+ placeholder="璇疯緭鍏ュ叧閿瓧鎸夊洖杞︽煡璇�" size="small" style="width: 180px; margin-left: 5px; margin-top: 10px"
@keyup.enter.native="tableFindInp"></el-input>
+ </span>
+ <span v-if="tableHeadFindData.length > 0 && isTimeStatus" class="block">
+ <el-date-picker
+ v-model="dateValue"
+ placeholder="閫夋嫨鏃ユ湡"
+ size="small"
+ style="margin-left: 5px"
+ type="date"
+ @change="dateChange">
+ </el-date-picker>
</span>
<span v-if="tableHeadFindData.length > 0" style="margin-left: 10px">
<p style="font-size: 13px;display: inline-block;"> 鐘舵�侊細</p>
@@ -154,6 +164,21 @@
@current-change="handleCurrentChange">
</el-pagination>
</div>
+ <el-dialog :visible.sync="syncDialogBox" append-to-body title="鎵嬪姩鍚屾" top="200px" @close="syncClose" v-loading="syncLoading"width="30%">
+ <p style="display: inline-block">鏈�鍚庢洿鏂版椂闂达細</p>
+ <el-date-picker
+ v-model="SyncValue"
+ format="yyyy 骞� MM 鏈� dd 鏃� HH 鏃� mm 鍒� ss 绉�"
+ placeholder="閫夋嫨鏃ユ湡"
+ style="width: 300px"
+ type="date"
+ value-format="yyyy-MM-dd HH:mm:ss">
+ </el-date-picker>
+ <div slot="footer" class="dialog-footer">
+ <el-button @click="syncClose">鍙� 娑�</el-button>
+ <el-button type="primary" @click="submitSync">纭� 瀹�</el-button>
+ </div>
+ </el-dialog>
</div>
</div>
<div class="bottom">
@@ -178,7 +203,8 @@
applyGroupCode,
receiveEditApply,
applySaveCode,
- exportGroupCodeExcel
+ exportGroupCodeExcel,
+ syncSearch
} from "@/api/GetItem";
import {processTS, changeStatus} from "@/api/template/setPersonnel"
import {listCodeAttributeByClassId} from "@/api/integration/integration.js";
@@ -191,6 +217,7 @@
import fileInHtml from "@/components/file/inHtml.vue";
import {getUserInfo} from "@/api/system/user";
import func from "@/util/func";
+import moment from "moment/moment";
export default {
components: {
@@ -255,6 +282,13 @@
},
data() {
return {
+ //鎵嬪姩鍚屾model
+ SyncValue: '',
+ syncLoading: false,
+ syncDialogBox: false,
+ isTimeStatus: false,
+ isTimeName: '',
+ dateValue: "",
//鎵归噺缂栬緫瀵硅瘽妗�
bulkeditvisible: false,
LinkVisible: false,
@@ -283,7 +317,6 @@
btmtype: '',
code: "",
type: '',
- // this.visibleDeactivate ?'ENABLE':this.visibleEnable ? 'DISABLE' :this.visibleRecovery ? 'ROLLBACK' :'PUBLIC'
processName: "",
vars: {
codeClassifyOid: "",
@@ -305,7 +338,6 @@
key: "oid",
label: "name",
},
- tableHeadFindDatas: [],
applyvisible: false,
amendvisible: false,
addvisible: false,
@@ -348,6 +380,7 @@
fileOptions: {},
result: '',
elapsedTime: '',
+ conditionMap: [],
};
},
computed: {
@@ -382,7 +415,10 @@
},
tableHeadDataFateher: {
handler(newval, oldval) {
- this.options = newval.tableDefineVO.seniorQueryColumns
+ // console.log(newval)
+ if (newval.length > 0) {
+ this.options = newval.tableDefineVO.seniorQueryColumns
+ }
}
},
codeClassifyOid: {
@@ -393,24 +429,26 @@
},
tableDataArray: {
handler(newval, oldval) {
- // console.log('tableData',newval)
this.tableData = newval;
- this.searchResults = newval
+ this.searchResults = newval;
this.doLayout();
- this.fileOptions = {
- ownbizOid: "0",
- ownbizBtm: "0",
- fileDocClassify: '!=processAuditSuggest',
- fileDocClassifyName: '',
- hasDownload: true,
- hasUpload: true,
- height: 'auto'
+ if (newval.length > 0) {
+ this.fileOptions = {
+ ownbizOid: "0",
+ ownbizBtm: "0",
+ fileDocClassify: '!=processAuditSuggest',
+ fileDocClassifyName: '',
+ hasDownload: true,
+ hasUpload: true,
+ height: 'auto'
+ }
+ } else {
+ this.fileOptions = {};
}
},
},
tableHeadFindData: {
handler(newval, oldval) {
- // console.log(newval)
newval.forEach((record, _index) => {
if (record.queryField == 'id' && validatenull(record.templet)) {
//浼佷笟缂栫爜鐨勯粯璁ゆ坊鍔犺秴閾炬帴,鏆傛湭瀹炵幇
@@ -428,10 +466,14 @@
if (_index == 0) {
this.keyWordFind = record.queryField;
- console.log(record)
}
+ ;
+ // if(record.fieldType === "datetime"){
+ // this.isTimeStatus = true;
+ // console.log(this.isTimeStatus)
+ // console.log(record)
+ // }
})
- this.tableHeadFindDatas = newval;
if (newval) {
this.CodeArray = [];
if (newval.find(item => item.prop === 'id')) {
@@ -480,11 +522,15 @@
},
},
methods: {
+ // 缃┖鏌ヨ鏉′欢
+ resetConditionMap() {
+ this.conditionMap = {};
+ },
+
CodeLinkHandler(row) {
this.LinkObject = row;
this.LinkVisible = true;
this.LinkList = Object.keys(row).map(property => property)
-
},
//鐘舵�佹悳绱�
cellSelectHandler(row) {
@@ -496,6 +542,7 @@
},
cellStatusFind(lcstatus) {
this.isLoading = true;
+ this.conditionMap["conditionMap[lcstatus]"] = lcstatus;
TableData({
templateOid: this.templateOid,
codeClassifyOid: this.codeClassifyOid,
@@ -560,8 +607,34 @@
if (uniqueFlag === 'excelGroupCode') return this.excelGroupCode()
//闆嗗洟鐮佸鍏�
if (uniqueFlag === 'importGroupCode') return this.importGroupCode("groupCode")
+ //鎵嬪姩鍚屾
+ if (uniqueFlag === 'manualSyncing') return this.manualSyncing("groupCode")
});
},
+ //鎵嬪姩鍚屾
+ manualSyncing() {
+ this.syncDialogBox = true;
+ },
+ //鎵嬪姩鍚屾鍏抽棴
+ syncClose() {
+ this.syncDialogBox = false;
+ },
+ //鎵嬪姩鍚屾纭畾
+ async submitSync() {
+ if (this.SyncValue) {
+ this.syncLoading = true;
+ const response = await syncSearch({enDate: this.SyncValue})
+ if (response.status === 200) {
+ this.$message.success('鍚屾鎴愬姛锛�')
+ this.syncLoading = false;
+ this.syncDialogBox = false;
+ this.SyncValue = "";
+ }
+ } else {
+ this.$message.warning('璇烽�夋嫨鏈�鍚庢洿鏂版椂闂达紒')
+ }
+ },
+ //闆嗗洟鐮佸鍏�
importGroupCode(type) {
this.batchImportData.visible = true
this.batchImportData.type = type
@@ -855,6 +928,7 @@
codeClassifyOid: this.codeClassifyOid,
page: this.page.currentPage,
limit: this.page.pageSize,
+ ...this.conditionMap, /**甯︿笂鍒嗛〉鏌ヨ鏉′欢 */
});
const endTime = performance.now();
this.elapsedTime = Math.floor(endTime - startTime) * 1;
@@ -916,7 +990,7 @@
});
});
},
- // 灏嗘鍦ㄧ紪杈戠殑琛岀殑鐘舵�佸彉涓� null 锛屽嵆閫�鍑虹紪杈戠姸鎬�
+ //灏嗘鍦ㄧ紪杈戠殑琛岀殑鐘舵�佸彉涓� null 锛屽嵆閫�鍑虹紪杈戠姸鎬�
saveRow() {
this.editingRow = null;
},
@@ -940,6 +1014,7 @@
sort: val.prop,
page: this.page.currentPage,
limit: this.page.pageSize,
+ ...this.conditionMap
});
this.data = data.data;
} finally {
@@ -949,7 +1024,6 @@
//鍒嗛〉鍒锋柊
async onLoad(val) {
this.isLoading = true;
-
try {
let conditionMap = {};
if (this.statusSelect !== 'all') {
@@ -1002,11 +1076,14 @@
},
// 楂樼骇鏌ヨ
async echoContion(val) {
+ this.conditionMap = val;
try {
const res = await FindData({
templateOid: this.templateOid,
codeClassifyOid: this.codeClassifyOid,
...val,
+ page: this.page.currentPage = 1, /** 姣忔鐐瑰嚮楂樼骇鏌ヨ閮藉簲璇ヤ粠绗竴椤靛紑濮�*/
+ limit: this.page.pageSize
});
this.tableData = res.data.data;
this.page.total = res.data.total
@@ -1045,7 +1122,6 @@
},
//澧炲姞淇濆瓨
AddSumbit(val) {
- // console.log('val',val)
if (func.notEmpty(val.ts)) {
val.ts = func.formattedDateTime(val.ts);
//console.log(val.ts);
@@ -1085,10 +1161,45 @@
this.batchImportData.type = type
this.batchImportData.codeClassifyOid = this.codeClassifyOid
},
+ searchChange(val) {
+ this.isTimeName = val;
+ this.isTimeStatus = this.tableHeadFindData.some(item => {
+ if (item.fieldType === "datetime" && item.prop === val) {
+ return true;
+ }
+ return false;
+ });
+ // console.log(this.isTimeStatus)
+ },
+ dateChange(val) {
+ if (val) {
+ const momentDate = moment(this.dateValue);
+ const dateString = momentDate.format("yyyy-MM-DD");
+ this.isLoading = true;
+ try {
+ TableData({
+ templateOid: this.templateOid,
+ codeClassifyOid: this.codeClassifyOid,
+ page: this.page.currentPage,
+ limit: this.page.pageSize,
+ ['conditionMap[' + this.keyWordFind + ']']: dateString
+ }).then(res => {
+ this.tableData = res.data.data;
+ this.page.total = res.data.total;
+ })
+ } finally {
+ this.isLoading = false;
+ }
+ }
+ },
//杈撳叆鍥炶溅鎼滅储
tableFindInp() {
this.isLoading = true;
try {
+ this.conditionMap = {};
+ // 瀛樺偍鏌ヨ鏉′欢锛屼富瑕佹槸涓轰簡鐐瑰嚮椤电爜鏃跺甫涓婅繖涓潯浠�
+ this.conditionMap["conditionMap[" + this.keyWordFind + "]"] = '*' + this.WupinFindValue + '*';
+ console.log(this.conditionMap)
TableData({
templateOid: this.templateOid,
codeClassifyOid: this.codeClassifyOid,
@@ -1143,7 +1254,7 @@
.main {
display: flex;
flex-direction: column;
- height: calc(100vh - 150px);
+ height: calc(100vh - 145px);
min-height: 400px;
}
--
Gitblit v1.9.3