From 7662665a4f88da0f8afa804bd4a34dfbefc1fb56 Mon Sep 17 00:00:00 2001
From: cuiqian2004 <cuiqian2004@163.com>
Date: 星期五, 29 八月 2025 15:17:59 +0800
Subject: [PATCH] get_pre_page_subtable_next_row
---
pages/selpsn/index.vue | 253 ++++++++++++++++++++++++++++---------------------
1 files changed, 144 insertions(+), 109 deletions(-)
diff --git a/pages/selpsn/index.vue b/pages/selpsn/index.vue
index 8445b92..416c86b 100644
--- a/pages/selpsn/index.vue
+++ b/pages/selpsn/index.vue
@@ -1,50 +1,8 @@
-<style>
- .content {
- width: 100vw;
- height: 93vh;
- background: #EAEAEA;
- padding: 14rpx 0rpx 0rpx 0rpx;
- }
- input{
- border: 1px solid #d5d5d5;
- width: 77%;
- height: 80rpx;
- border-radius: 60rpx!important;
- padding: 0 60rpx 0 66rpx;
- margin: 0rpx 20rpx 10rpx 20rpx;
- background: #FFF;
- }
- .dv_query_body {
- height: 91%;
- overflow: auto;
- background-color: #fff;
- border: 2rpx solid #d5d5d5;
- padding: 14rpx;
- }
- .psn {
- margin: 0 12rpx 12rpx 0;
- padding: 8rpx 20rpx 10rpx;
- background-color: #55a1dd;
- font-size: 30rpx;
- color: #fff;
- border-radius: 20rpx;
- display: inline-block;
- cursor: pointer;
- }
- button.btn_sava {
- margin-top: 47rpx;
- padding: 20rpx;
- line-height: 1.2;
- background: #27A6E1;
- border: none;
- color: #fff;
- }
-</style>
-
<template>
- <view class="content">
+ <view class="uni-page-selpsn" :class="largeMode?'large-mode':''">
<view style="height:90%;">
- <input type="text" class="txt_search" v-model="searchVal" @input="onkeyup" placeholder="璇疯緭鍏ヤ汉鍛樺鍚嶆垨绠�嫾杩涜鏌ヨ" >
+ <input type="text" class="txt_search" v-model="searchVal" @input="onkeyup"
+ :placeholder="translate('input_user_name_jp_query')">
<!-- <div class="dv_query_body" >
<div class="psn">
<checkbox-group class="ischeck" @change="onchange" data-ischeck="false" data-index="0" >
@@ -57,7 +15,7 @@
</div> -->
<div class="dv_query_body">
<div class="psn" v-for="(psn,index) in data">
- <checkbox-group class="ischeck" @change="onchange" :data-ischeck="psn.ischeck" :data-index="index" >
+ <checkbox-group class="ischeck" @change="onchange" :data-ischeck="psn.ischeck" :data-index="index">
<label>
<checkbox :checked="psn.ischeck" />
<text>{{psn.Name}}</text>
@@ -65,103 +23,180 @@
</checkbox-group>
</div>
</div>
-
- <button type="default" @tap="sava" class="btn_sava">纭畾</button>
+
+ <button type="default" @tap="sava" class="btn_sava">{{translateSys("ok")}}</button>
</view>
-
+
</view>
-</template>
+</template>
<script>
+ import {
+ querySelPsn
+ } from "@/api/index.js"
+ import {showInfo,
+ showError} from "@/js/Page.js"
export default {
data() {
return {
- title: '閫夋嫨浜哄憳',
- mulit:'',
- param:{},
- searchVal:'',
- ischecked:false,
- data:[]
+ largeMode: getApp().globalData.largeMode || false,
+ title: this.translate('select_user'),
+ mulit: '',
+ param: {},
+ searchVal: '',
+ ischecked: false,
+ data: []
}
},
onLoad(options) {
console.log(options);
var param = JSON.parse(options.param);
- this.$data.param=param;
- this.$data.mulit=options.mulit;
- // console.log(this.$data.param);
+ this.param = param;
+ this.mulit = options.mulit;
+ // console.log(this.param);
},
methods: {
+ setData(obj) {
+ let that = this;
+ let keys = [];
+ let val, data;
+
+ Object.keys(obj).forEach(function(key) {
+ keys = key.split(".");
+ val = obj[key];
+ data = that.$data;
+ keys.forEach(function(key2, index) {
+ if (index + 1 == keys.length) {
+ that.$set(data, key2, val);
+ } else {
+ if (!data[key2]) {
+ that.$set(data, key2, {});
+ }
+ }
+ data = data[key2];
+ });
+ });
+ },
+
onkeyup(e) {
console.log(e);
- console.log(this.$data.searchVal);
- if(this.$data.searchVal){
- var datainfo ={ jp: this.$data.searchVal, dept_id: '' };
- // console.log(datainfo);
- this.$store.dispatch('querySelpsn',datainfo).then(success=>{
- console.log(success);
- if (success.code=='00000') { //Mobox2
- for(var i in success.data){
- success.data[i].ischeck=false;
- }
- this.$data.data = success.data;
- } else if(success.err_code == 0){ //Mobox3
- var json =[];
- for(var i in success.result){
+ console.log(this.searchVal);
+ if (this.searchVal) {
+ var datainfo = {
+ jp: this.searchVal,
+ dept_id: ''
+ };
+ querySelPsn(datainfo).then(res => {
+ const result = res || []
+ var json = [];
+ for (var i in result) {
json.push({
- Login: success.result[i].login,
- Name: success.result[i].name,
- NamePY: success.result[i].name_py,
- Sex: success.result[i].gender,
- State: success.result[i].status,
- Level: success.result[i].level,
+ Login: result[i].login,
+ Name: result[i].name,
+ NamePY: result[i].name_py,
+ Sex: result[i].gender,
+ State: result[i].status,
+ Level: result[i].level,
Depart: "",
Unit: "",
- ischeck:false
+ ischeck: false
})
}
- this.$data.data = json;
- } else{
- uni.showModal({title:"閿欒",content:success.msg?success.msg:success.err_msg,showCancel:false,confirmText:"鍙栨秷"});
- }
- }).catch(ex=>{
- // console.log(ex);
- uni.showModal({title:"閿欒",content:ex.errMsg,showCancel:false,confirmText:"鍙栨秷"});
- });
- } else
- this.$data.data = [];
+ this.data = json;
+ })
+ .catch(ex => {
+ // console.log(ex);
+ showError(ex, this.translateSys('error') )
+ });
+ } else
+ this.data = [];
},
onchange(e) {
// console.log(e.target);
- var data = this.$data.data;
- this.$data.data=[];
- if(this.$data.mulit=="false"){
- for(var i in data){
- data[i].ischeck=false;
+ var data = this.data;
+ this.data = [];
+ if (this.mulit == "false") {
+ for (var i in data) {
+ data[i].ischeck = false;
}
}
-
- data[e.target.dataset.index].ischeck=e.target.dataset.ischeck?false:true
- this.$data.data=data;
+
+ data[e.target.dataset.index].ischeck = e.target.dataset.ischeck ? false : true
+ this.data = data;
},
- sava(){ //鐐瑰嚮鍔熻兘鐐硅烦杞〉闈�+ sava() { //鐐瑰嚮鍔熻兘鐐硅烦杞〉闈� var data = [];
- for(var i in this.$data.data){
- if(this.$data.data[i].ischeck==true){
- data.push(this.$data.data[i]);
+ for (var i in this.data) {
+ if (this.data[i].ischeck == true) {
+ data.push(this.data[i]);
}
}
- if(data.length==0){
- uni.showModal({title:"鎻愮ず",content:'鏈�鎷╀汉鍛橈紒',showCancel:false,confirmText:"鍙栨秷"});
+ if (data.length == 0) {
+ showInfo(this.translate('tip_no_select_user'))
+
return;
}
- const eventChannel = this.$scope.eventChannel;
+ const eventChannel = this.getOpenerEventChannel();
// const eventChannel = this.getOpenerEventChannel();
- eventChannel.emit('AddPer',data,this.$data.param);
-
+ eventChannel.emit('AddPer', data, this.param);
+
uni.navigateBack()
- }
-
+ },
+ translate(t) {
+ if (typeof this.$t == "function") return this.$t(`page.${t}`)
+ else return t;
+ },
+ translateSys(t) {
+ if (typeof this.$t == "function") return this.$t(`sys.${t}`)
+ else return t;
+ },
+
}
}
</script>
+<style lang="scss">
+ .uni-page-selpsn {
+ width: 100vw;
+ height: 93vh;
+ background: #EAEAEA;
+ padding: 14rpx 0rpx 0rpx 0rpx;
+
+ input {
+ border: 1px solid #d5d5d5;
+ width: 77%;
+ height: 80rpx;
+ border-radius: 60rpx !important;
+ padding: 0 60rpx 0 66rpx;
+ margin: 0rpx 20rpx 10rpx 20rpx;
+ background: #FFF;
+ }
+
+ .dv_query_body {
+ height: 91%;
+ overflow: auto;
+ background-color: #fff;
+ border: 2rpx solid #d5d5d5;
+ padding: 14rpx;
+ }
+
+ .psn {
+ margin: 0 12rpx 12rpx 0;
+ padding: 8rpx 20rpx 10rpx;
+ background-color: #55a1dd;
+ font-size: 30rpx;
+ color: #fff;
+ border-radius: 20rpx;
+ display: inline-block;
+ cursor: pointer;
+ }
+
+ button.btn_sava {
+ margin-top: 47rpx;
+ padding: 20rpx;
+ line-height: 1.2;
+ background: #27A6E1;
+ border: none;
+ color: #fff;
+ }
+ }
+</style>
\ No newline at end of file
--
Gitblit v1.9.1