style:字典信息
Showing
13 changed files
with
1039 additions
and
1004 deletions
1 | <!-- | ||
2 | * @Description: | ||
3 | * @Autor: renchao | ||
4 | * @LastEditTime: 2023-07-19 09:50:23 | ||
5 | --> | ||
1 | <template> | 6 | <template> |
2 | <dialogBox :title="editFlag ? '编辑接口信息' : '新增接口信息'" @submitForm="submitForm" saveButton="保存" width="50%" :isFullscreen="false" | 7 | <dialogBox :title="editFlag ? '编辑接口信息' : '新增接口信息'" @submitForm="submitForm" saveButton="保存" width="50%" :isFullscreen="false" |
3 | @closeDialog="closeDialog" v-model="value"> | 8 | @closeDialog="closeDialog" v-model="value"> |
... | @@ -26,7 +31,7 @@ | ... | @@ -26,7 +31,7 @@ |
26 | <el-col :span="12"> | 31 | <el-col :span="12"> |
27 | <el-form-item label="接口方式:" prop="interfaceMethod"> | 32 | <el-form-item label="接口方式:" prop="interfaceMethod"> |
28 | <el-select v-model="ruleForm.interfaceMethod" class="width100" placeholder="请选择"> | 33 | <el-select v-model="ruleForm.interfaceMethod" class="width100" placeholder="请选择"> |
29 | <el-option v-for="item in interfaceMethods" :key="item" :label="item" :value="item" ></el-option> | 34 | <el-option v-for="item in interfaceMethods" :key="item" :label="item" :value="item"></el-option> |
30 | </el-select> | 35 | </el-select> |
31 | </el-form-item> | 36 | </el-form-item> |
32 | </el-col> | 37 | </el-col> |
... | @@ -58,115 +63,115 @@ | ... | @@ -58,115 +63,115 @@ |
58 | </template> | 63 | </template> |
59 | 64 | ||
60 | <script> | 65 | <script> |
61 | import { addSysInterface, editSysInterface} from "@/api/ptjk.js" | 66 | import { addSysInterface, editSysInterface } from "@/api/ptjk.js" |
62 | export default { | 67 | export default { |
63 | components: { | 68 | components: { |
64 | }, | 69 | }, |
65 | computed: { | 70 | computed: { |
66 | }, | 71 | }, |
67 | props: { | 72 | props: { |
68 | value: { type: Boolean, default: false }, | 73 | value: { type: Boolean, default: false }, |
69 | editFlag: {type: Boolean,default:false} | 74 | editFlag: { type: Boolean, default: false } |
70 | }, | 75 | }, |
71 | data () { | 76 | data () { |
72 | return { | 77 | return { |
73 | //表单提交数据 | 78 | //表单提交数据 |
74 | interfaceMethods: ['webapi','webservice'], | 79 | interfaceMethods: ['webapi', 'webservice'], |
75 | interfaceTypes: [ | 80 | interfaceTypes: [ |
76 | {'label': '工作流服务平台','value':'1'}, | 81 | { 'label': '工作流服务平台', 'value': '1' }, |
77 | {'label': '权限平台','value':'2'}, | 82 | { 'label': '权限平台', 'value': '2' }, |
78 | {'label': '定时器服务','value':'3'}, | 83 | { 'label': '定时器服务', 'value': '3' }, |
79 | {'label': '其他第三方平台','value':'4'}, | 84 | { 'label': '其他第三方平台', 'value': '4' }, |
80 | ], | ||
81 | ruleForm: { | ||
82 | interfaceCode: '', | ||
83 | interfaceService: '', | ||
84 | interfaceDescription: '', | ||
85 | interfaceApi: '', | ||
86 | interfaceMethod: '', | ||
87 | interfaceType: '', | ||
88 | interfaceKey: '', | ||
89 | }, | ||
90 | rules: { | ||
91 | interfaceCode: [ | ||
92 | { required: true, message: '接口代码不能为空', trigger: 'blur' } | ||
93 | ], | ||
94 | interfaceService: [ | ||
95 | { required: true, message: '接口服务名称不能为空', trigger: 'blur' } | ||
96 | ], | ||
97 | interfaceApi: [ | ||
98 | { required: true, message: '接口api地址不能为空', trigger: 'blur' } | ||
99 | ], | ||
100 | interfaceMethod: [ | ||
101 | { required: true, message: '接口方式不能为空', trigger: 'change' } | ||
102 | ], | ||
103 | interfaceType: [ | ||
104 | { required: true, message: '入库编号不能为空', trigger: 'change' } | ||
105 | ], | 85 | ], |
106 | }, | 86 | ruleForm: { |
107 | } | 87 | interfaceCode: '', |
108 | }, | 88 | interfaceService: '', |
109 | methods: { | 89 | interfaceDescription: '', |
110 | //表单提交 | 90 | interfaceApi: '', |
111 | submitForm () { | 91 | interfaceMethod: '', |
112 | let that = this; | 92 | interfaceType: '', |
113 | that.$refs.ruleForm.validate(valid => { | 93 | interfaceKey: '', |
114 | if (valid) { | 94 | }, |
115 | if(this.editFlag){ | 95 | rules: { |
116 | this.editInterface(); | 96 | interfaceCode: [ |
117 | }else{ | 97 | { required: true, message: '接口代码不能为空', trigger: 'blur' } |
118 | this.addInterface(); | 98 | ], |
119 | } | 99 | interfaceService: [ |
120 | } else { | 100 | { required: true, message: '接口服务名称不能为空', trigger: 'blur' } |
121 | // console.log('error submit!!'); | 101 | ], |
122 | return false; | 102 | interfaceApi: [ |
123 | } | 103 | { required: true, message: '接口api地址不能为空', trigger: 'blur' } |
124 | }); | 104 | ], |
105 | interfaceMethod: [ | ||
106 | { required: true, message: '接口方式不能为空', trigger: 'change' } | ||
107 | ], | ||
108 | interfaceType: [ | ||
109 | { required: true, message: '入库编号不能为空', trigger: 'change' } | ||
110 | ], | ||
111 | }, | ||
112 | } | ||
125 | }, | 113 | }, |
126 | //新增接口 | 114 | methods: { |
127 | addInterface(){ | 115 | //表单提交 |
128 | addSysInterface(this.ruleForm).then(res => { | 116 | submitForm () { |
129 | if(res.code == 200){ | 117 | let that = this; |
130 | this.$message.success("保存成功"); | 118 | that.$refs.ruleForm.validate(valid => { |
131 | this.closeDialog(); | 119 | if (valid) { |
132 | this.$parent.queryClick(); | 120 | if (this.editFlag) { |
133 | }else{ | 121 | this.editInterface(); |
134 | this.$message.error(res.message) | 122 | } else { |
123 | this.addInterface(); | ||
135 | } | 124 | } |
125 | } else { | ||
126 | // console.log('error submit!!'); | ||
127 | return false; | ||
128 | } | ||
129 | }); | ||
130 | }, | ||
131 | //新增接口 | ||
132 | addInterface () { | ||
133 | addSysInterface(this.ruleForm).then(res => { | ||
134 | if (res.code == 200) { | ||
135 | this.$message.success("保存成功"); | ||
136 | this.closeDialog(); | ||
137 | this.$parent.queryClick(); | ||
138 | } else { | ||
139 | this.$message.error(res.message) | ||
140 | } | ||
136 | }) | 141 | }) |
137 | }, | 142 | }, |
138 | //编辑接口 | 143 | //编辑接口 |
139 | editInterface(){ | 144 | editInterface () { |
140 | editSysInterface(this.ruleForm).then(res => { | 145 | editSysInterface(this.ruleForm).then(res => { |
141 | if(res.code == 200){ | 146 | if (res.code == 200) { |
142 | this.$message.success("编辑成功"); | 147 | this.$message.success("编辑成功"); |
143 | this.closeDialog(); | 148 | this.closeDialog(); |
144 | this.$parent.queryClick(); | 149 | this.$parent.queryClick(); |
145 | }else{ | 150 | } else { |
146 | this.$message.error(res.message) | 151 | this.$message.error(res.message) |
147 | } | 152 | } |
148 | }) | 153 | }) |
149 | }, | 154 | }, |
150 | //获取详情 | 155 | //获取详情 |
151 | getDetailInfo(item){ | 156 | getDetailInfo (item) { |
152 | this.ruleForm = item | 157 | this.ruleForm = item |
153 | }, | 158 | }, |
154 | //关闭弹窗 | 159 | //关闭弹窗 |
155 | closeDialog () { | 160 | closeDialog () { |
156 | this.$emit("input", false); | 161 | this.$emit("input", false); |
157 | this.ruleForm = { | 162 | this.ruleForm = { |
158 | interfaceCode: '', | 163 | interfaceCode: '', |
159 | interfaceService: '', | 164 | interfaceService: '', |
160 | interfaceDescription: '', | 165 | interfaceDescription: '', |
161 | interfaceApi: '', | 166 | interfaceApi: '', |
162 | interfaceMethod: '', | 167 | interfaceMethod: '', |
163 | interfaceType: '', | 168 | interfaceType: '', |
164 | interfaceKey: '', | 169 | interfaceKey: '', |
170 | } | ||
165 | } | 171 | } |
166 | } | 172 | } |
167 | } | 173 | } |
168 | } | ||
169 | </script> | 174 | </script> |
170 | <style scoped lang="scss"> | 175 | <style scoped lang="scss"> |
171 | @import "~@/styles/mixin.scss"; | 176 | @import "~@/styles/mixin.scss"; |
172 | </style> | 177 | </style> | ... | ... |
1 | <!-- | ||
2 | * @Description: | ||
3 | * @Autor: renchao | ||
4 | * @LastEditTime: 2023-07-19 09:50:36 | ||
5 | --> | ||
1 | <template> | 6 | <template> |
2 | <div class="from-clues"> | 7 | <div class="from-clues"> |
3 | <!-- 表单部分 --> | 8 | <!-- 表单部分 --> |
... | @@ -37,72 +42,72 @@ | ... | @@ -37,72 +42,72 @@ |
37 | </div> | 42 | </div> |
38 | </template> | 43 | </template> |
39 | <script> | 44 | <script> |
40 | import { mapGetters } from 'vuex' | 45 | import { mapGetters } from 'vuex' |
41 | import table from "@/utils/mixin/table" | 46 | import table from "@/utils/mixin/table" |
42 | import { datas, sendThis } from "./ptjkdata" | 47 | import { datas, sendThis } from "./ptjkdata" |
43 | import { getSysInterfaceList } from '@/api/ptjk.js' | 48 | import { getSysInterfaceList } from '@/api/ptjk.js' |
44 | import addDialog from "./components/addDialog.vue" | 49 | import addDialog from "./components/addDialog.vue" |
45 | import retrieveDialog from "./components/retrieveDialog.vue" | 50 | import retrieveDialog from "./components/retrieveDialog.vue" |
46 | export default { | 51 | export default { |
47 | name: "ptjk", | 52 | name: "ptjk", |
48 | components: { addDialog, retrieveDialog }, | 53 | components: { addDialog, retrieveDialog }, |
49 | mixins: [table], | 54 | mixins: [table], |
50 | mounted () { | 55 | mounted () { |
51 | sendThis(this); | 56 | sendThis(this); |
52 | this.queryClick() | 57 | this.queryClick() |
53 | }, | ||
54 | computed: { | ||
55 | ...mapGetters(['dictData']) | ||
56 | }, | ||
57 | data () { | ||
58 | return { | ||
59 | addDialog: false, | ||
60 | retrieveDialog: false, | ||
61 | editFlag: false, | ||
62 | queryForm: { | ||
63 | ywly: "", | ||
64 | qllx: "", | ||
65 | djlx: "", | ||
66 | ywh: "", | ||
67 | }, | ||
68 | tableData: { | ||
69 | total: 0, | ||
70 | columns: datas.columns(), | ||
71 | data: [], | ||
72 | }, | ||
73 | }; | ||
74 | }, | ||
75 | methods: { | ||
76 | queryClick () { | ||
77 | this.$startLoading() | ||
78 | getSysInterfaceList({ ...this.ruleForm, ...this.pageData }, { 'target': '#ptjkLoading' }).then(res => { | ||
79 | this.$endLoading() | ||
80 | if (res.code == 200) { | ||
81 | let { total, records } = res.result | ||
82 | this.tableData.total = total; | ||
83 | this.tableData.data = records ? records : [] | ||
84 | } | ||
85 | }) | ||
86 | }, | 58 | }, |
87 | //打开新增 | 59 | computed: { |
88 | openDialog () { | 60 | ...mapGetters(['dictData']) |
89 | this.editFlag = false; | ||
90 | this.addDialog = true; | ||
91 | }, | 61 | }, |
92 | //打开编辑 | 62 | data () { |
93 | editInterface (item) { | 63 | return { |
94 | this.editFlag = true; | 64 | addDialog: false, |
95 | this.addDialog = true; | 65 | retrieveDialog: false, |
96 | this.$refs.addDialog.getDetailInfo(item); | 66 | editFlag: false, |
67 | queryForm: { | ||
68 | ywly: "", | ||
69 | qllx: "", | ||
70 | djlx: "", | ||
71 | ywh: "", | ||
72 | }, | ||
73 | tableData: { | ||
74 | total: 0, | ||
75 | columns: datas.columns(), | ||
76 | data: [], | ||
77 | }, | ||
78 | }; | ||
97 | }, | 79 | }, |
98 | //打开调试窗口 | 80 | methods: { |
99 | tuneInterface (item) { | 81 | queryClick () { |
100 | this.retrieveDialog = true; | 82 | this.$startLoading() |
101 | this.$refs.retrieveDialog.getDetailInfo(item); | 83 | getSysInterfaceList({ ...this.ruleForm, ...this.pageData }, { 'target': '#ptjkLoading' }).then(res => { |
84 | this.$endLoading() | ||
85 | if (res.code == 200) { | ||
86 | let { total, records } = res.result | ||
87 | this.tableData.total = total; | ||
88 | this.tableData.data = records ? records : [] | ||
89 | } | ||
90 | }) | ||
91 | }, | ||
92 | //打开新增 | ||
93 | openDialog () { | ||
94 | this.editFlag = false; | ||
95 | this.addDialog = true; | ||
96 | }, | ||
97 | //打开编辑 | ||
98 | editInterface (item) { | ||
99 | this.editFlag = true; | ||
100 | this.addDialog = true; | ||
101 | this.$refs.addDialog.getDetailInfo(item); | ||
102 | }, | ||
103 | //打开调试窗口 | ||
104 | tuneInterface (item) { | ||
105 | this.retrieveDialog = true; | ||
106 | this.$refs.retrieveDialog.getDetailInfo(item); | ||
107 | } | ||
102 | } | 108 | } |
103 | } | 109 | }; |
104 | }; | ||
105 | </script> | 110 | </script> |
106 | <style scoped lang="scss"> | 111 | <style scoped lang="scss"> |
107 | @import "~@/styles/public.scss"; | 112 | @import "~@/styles/public.scss"; |
108 | </style> | 113 | </style> | ... | ... |
1 | <!-- | ||
2 | * @Description: | ||
3 | * @Autor: renchao | ||
4 | * @LastEditTime: 2023-07-19 09:50:45 | ||
5 | --> | ||
1 | <template> | 6 | <template> |
2 | <div id="login"> | 7 | <div id="login"> |
3 | <div class="login-content-wrap"> | 8 | <div class="login-content-wrap"> |
... | @@ -16,14 +21,12 @@ | ... | @@ -16,14 +21,12 @@ |
16 | placeholder="请输入账号" | 21 | placeholder="请输入账号" |
17 | v-model="userInfo.username" | 22 | v-model="userInfo.username" |
18 | @focus="reduceBorder('user')" | 23 | @focus="reduceBorder('user')" |
19 | @blur="addBorder('user')" | 24 | @blur="addBorder('user')" /> |
20 | /> | ||
21 | <span class="warning" v-show="warning.user">账号不能为空</span> | 25 | <span class="warning" v-show="warning.user">账号不能为空</span> |
22 | </div> | 26 | </div> |
23 | <div | 27 | <div |
24 | class="login-user user-mt" | 28 | class="login-user user-mt" |
25 | :class="{ 'select-border': change.pass }" | 29 | :class="{ 'select-border': change.pass }"> |
26 | > | ||
27 | <img class="user-icon" src="./images/password.svg" /> | 30 | <img class="user-icon" src="./images/password.svg" /> |
28 | <input | 31 | <input |
29 | type="password" | 32 | type="password" |
... | @@ -32,8 +35,7 @@ | ... | @@ -32,8 +35,7 @@ |
32 | v-model="userInfo.password" | 35 | v-model="userInfo.password" |
33 | v-show="!selectEye" | 36 | v-show="!selectEye" |
34 | @focus="reduceBorder('pass')" | 37 | @focus="reduceBorder('pass')" |
35 | @blur="addBorder('pass')" | 38 | @blur="addBorder('pass')" /> |
36 | /> | ||
37 | <input | 39 | <input |
38 | type="text" | 40 | type="text" |
39 | class="user-input" | 41 | class="user-input" |
... | @@ -41,26 +43,22 @@ | ... | @@ -41,26 +43,22 @@ |
41 | v-model="userInfo.password" | 43 | v-model="userInfo.password" |
42 | v-show="selectEye" | 44 | v-show="selectEye" |
43 | @focus="reduceBorder('pass')" | 45 | @focus="reduceBorder('pass')" |
44 | @blur="addBorder('pass')" | 46 | @blur="addBorder('pass')" /> |
45 | /> | ||
46 | <img | 47 | <img |
47 | class="password-eye" | 48 | class="password-eye" |
48 | src="./images/open.svg" | 49 | src="./images/open.svg" |
49 | @click="selectEyes" | 50 | @click="selectEyes" |
50 | v-show="selectEye" | 51 | v-show="selectEye" /> |
51 | /> | ||
52 | <img | 52 | <img |
53 | class="password-eye" | 53 | class="password-eye" |
54 | src="./images/close.svg" | 54 | src="./images/close.svg" |
55 | @click="selectEyes" | 55 | @click="selectEyes" |
56 | v-show="!selectEye" | 56 | v-show="!selectEye" /> |
57 | /> | ||
58 | <span class="warning" v-show="warning.pass">密码不能为空</span> | 57 | <span class="warning" v-show="warning.pass">密码不能为空</span> |
59 | </div> | 58 | </div> |
60 | <div | 59 | <div |
61 | class="login-user login-valid" | 60 | class="login-user login-valid" |
62 | :class="{ 'select-border': change.valid }" | 61 | :class="{ 'select-border': change.valid }"> |
63 | > | ||
64 | <img class="user-icon" src="./images/valid.svg" /> | 62 | <img class="user-icon" src="./images/valid.svg" /> |
65 | <input | 63 | <input |
66 | type="text" | 64 | type="text" |
... | @@ -68,14 +66,12 @@ | ... | @@ -68,14 +66,12 @@ |
68 | placeholder="请输入验证码" | 66 | placeholder="请输入验证码" |
69 | v-model="userInfo.captchaCode" | 67 | v-model="userInfo.captchaCode" |
70 | @focus="reduceBorder('valid')" | 68 | @focus="reduceBorder('valid')" |
71 | @blur="addBorder('valid')" | 69 | @blur="addBorder('valid')" /> |
72 | /> | ||
73 | <img | 70 | <img |
74 | class="valid-img" | 71 | class="valid-img" |
75 | :src="codeSrc" | 72 | :src="codeSrc" |
76 | alt="暂无验证码" | 73 | alt="暂无验证码" |
77 | @click="reloadCaptcha" | 74 | @click="reloadCaptcha" /> |
78 | /> | ||
79 | <span class="warning" v-show="warning.valid">验证码不能为空</span> | 75 | <span class="warning" v-show="warning.valid">验证码不能为空</span> |
80 | </div> | 76 | </div> |
81 | <div id="loginBtn" class="login-btn" @click="goHome">登录</div> | 77 | <div id="loginBtn" class="login-btn" @click="goHome">登录</div> |
... | @@ -85,302 +81,302 @@ | ... | @@ -85,302 +81,302 @@ |
85 | </div> | 81 | </div> |
86 | </template> | 82 | </template> |
87 | <script> | 83 | <script> |
88 | import axios from "axios"; | 84 | import axios from "axios"; |
89 | export default { | 85 | export default { |
90 | data() { | 86 | data () { |
91 | return { | 87 | return { |
92 | // 用户名 | ||
93 | selectIcon: true, | ||
94 | // 用户名 | ||
95 | selectEye: false, | ||
96 | userInfo: { | ||
97 | // 用户名 | 88 | // 用户名 |
98 | username: "", | 89 | selectIcon: true, |
99 | // 密码 | 90 | // 用户名 |
100 | password: "", | 91 | selectEye: false, |
101 | // 重定向地址 | 92 | userInfo: { |
102 | redirectUrl: "", | 93 | // 用户名 |
103 | // 验证码key | 94 | username: "", |
104 | captchaKey: "", | 95 | // 密码 |
105 | // 验证码值 | 96 | password: "", |
106 | captchaCode: "", | 97 | // 重定向地址 |
107 | }, | 98 | redirectUrl: "", |
108 | //边框 | 99 | // 验证码key |
109 | change: { | 100 | captchaKey: "", |
110 | user: false, | 101 | // 验证码值 |
111 | pass: false, | 102 | captchaCode: "", |
112 | valid:false | 103 | }, |
113 | }, | 104 | //边框 |
114 | // 提示语 | 105 | change: { |
115 | warning: { | 106 | user: false, |
116 | user: false, | 107 | pass: false, |
117 | pass: false, | 108 | valid: false |
118 | valid: false, | 109 | }, |
119 | }, | 110 | // 提示语 |
120 | // 验证码图片地址 | 111 | warning: { |
121 | codeSrc:"" | 112 | user: false, |
122 | }; | 113 | pass: false, |
123 | }, | 114 | valid: false, |
124 | mounted() { | 115 | }, |
125 | this.initPage(); | 116 | // 验证码图片地址 |
126 | this.userInfo.redirectUrl = localStorage.getItem("dj-location"); | 117 | codeSrc: "" |
127 | this.reloadCaptcha() | 118 | }; |
128 | let self = this; | ||
129 | document.onkeydown = function (e) { | ||
130 | //按下回车提交 | ||
131 | let key = window.event.keyCode; | ||
132 | //事件中keycode=13为回车事件 | ||
133 | if (key == 13) { | ||
134 | self.goHome(); | ||
135 | } | ||
136 | }; | ||
137 | }, | ||
138 | methods: { | ||
139 | // 更新验证码 | ||
140 | reloadCaptcha(){ | ||
141 | axios.get(window._config.services.management + "/management/captcha?format=json").then(res => { | ||
142 | if (res.data.status === 1) { | ||
143 | this.userInfo.captchaKey = res.data.content['dubhe.captcha'] | ||
144 | this.codeSrc = res.data.content.image | ||
145 | } | ||
146 | }) | ||
147 | }, | 119 | }, |
148 | // 初始化 | 120 | mounted () { |
149 | initPage() { | 121 | this.initPage(); |
150 | let userInfo = | 122 | this.userInfo.redirectUrl = localStorage.getItem("dj-location"); |
151 | localStorage.getItem("userInfo") && | 123 | this.reloadCaptcha() |
152 | JSON.parse(localStorage.getItem("userInfo")); | 124 | let self = this; |
153 | if (userInfo) { | 125 | document.onkeydown = function (e) { |
154 | this.userInfo.username = userInfo.username; | 126 | //按下回车提交 |
155 | this.userInfo.password = userInfo.password; | 127 | let key = window.event.keyCode; |
156 | } | 128 | //事件中keycode=13为回车事件 |
129 | if (key == 13) { | ||
130 | self.goHome(); | ||
131 | } | ||
132 | }; | ||
157 | }, | 133 | }, |
158 | goHome() { | 134 | methods: { |
159 | if (this.userInfo.username && this.userInfo.password) { | 135 | // 更新验证码 |
160 | axios | 136 | reloadCaptcha () { |
161 | .post( | 137 | axios.get(window._config.services.management + "/management/captcha?format=json").then(res => { |
162 | window._config.services.management + "/management/cas/login", | 138 | if (res.data.status === 1) { |
163 | this.userInfo | 139 | this.userInfo.captchaKey = res.data.content['dubhe.captcha'] |
164 | ) | 140 | this.codeSrc = res.data.content.image |
165 | .then((response) => { | 141 | } |
166 | if (response.data.status === 1) { | 142 | }) |
167 | if (response.data.content.location) { | 143 | }, |
168 | window.location.href = response.data.content.location; | 144 | // 初始化 |
145 | initPage () { | ||
146 | let userInfo = | ||
147 | localStorage.getItem("userInfo") && | ||
148 | JSON.parse(localStorage.getItem("userInfo")); | ||
149 | if (userInfo) { | ||
150 | this.userInfo.username = userInfo.username; | ||
151 | this.userInfo.password = userInfo.password; | ||
152 | } | ||
153 | }, | ||
154 | goHome () { | ||
155 | if (this.userInfo.username && this.userInfo.password) { | ||
156 | axios | ||
157 | .post( | ||
158 | window._config.services.management + "/management/cas/login", | ||
159 | this.userInfo | ||
160 | ) | ||
161 | .then((response) => { | ||
162 | if (response.data.status === 1) { | ||
163 | if (response.data.content.location) { | ||
164 | window.location.href = response.data.content.location; | ||
165 | } | ||
166 | } else { | ||
167 | this.$message.error(response.data.message); | ||
169 | } | 168 | } |
169 | }) | ||
170 | .catch((error) => { | ||
171 | console.log(error); | ||
172 | this.$message.error(error.message); | ||
173 | }); | ||
174 | } else { | ||
175 | return | ||
176 | } | ||
177 | }, | ||
178 | selectEyes () { | ||
179 | this.selectEye = !this.selectEye; | ||
180 | }, | ||
181 | |||
182 | //获取焦点 | ||
183 | reduceBorder (type) { | ||
184 | this.change[type] = true | ||
185 | }, | ||
186 | addBorder (type) { | ||
187 | //失去焦点 | ||
188 | switch (type) { | ||
189 | case "user": | ||
190 | this.change.user = false; | ||
191 | if (!this.userInfo.username) { | ||
192 | this.warning.user = true; | ||
170 | } else { | 193 | } else { |
171 | this.$message.error(response.data.message); | 194 | this.warning.user = false; |
172 | } | 195 | } |
173 | }) | 196 | break; |
174 | .catch((error) => { | 197 | case "pass": |
175 | console.log(error); | 198 | this.change.pass = false; |
176 | this.$message.error(error.message); | 199 | if (!this.userInfo.password) { |
177 | }); | 200 | this.warning.pass = true; |
178 | } else { | 201 | } else { |
179 | return | 202 | this.warning.pass = false; |
203 | } | ||
204 | break; | ||
205 | case "valid": | ||
206 | this.change.valid = false; | ||
207 | if (!this.userInfo.captchaCode) { | ||
208 | this.warning.valid = true; | ||
209 | } else { | ||
210 | this.warning.valid = false; | ||
211 | } | ||
212 | break; | ||
213 | default: | ||
214 | break; | ||
215 | } | ||
180 | } | 216 | } |
181 | }, | 217 | }, |
182 | selectEyes() { | 218 | }; |
183 | this.selectEye = !this.selectEye; | ||
184 | }, | ||
185 | |||
186 | //获取焦点 | ||
187 | reduceBorder(type) { | ||
188 | this.change[type] = true | ||
189 | }, | ||
190 | addBorder(type) { | ||
191 | //失去焦点 | ||
192 | switch (type) { | ||
193 | case "user": | ||
194 | this.change.user = false; | ||
195 | if (!this.userInfo.username) { | ||
196 | this.warning.user = true; | ||
197 | } else { | ||
198 | this.warning.user = false; | ||
199 | } | ||
200 | break; | ||
201 | case "pass": | ||
202 | this.change.pass = false; | ||
203 | if (!this.userInfo.password) { | ||
204 | this.warning.pass = true; | ||
205 | } else { | ||
206 | this.warning.pass = false; | ||
207 | } | ||
208 | break; | ||
209 | case "valid": | ||
210 | this.change.valid = false; | ||
211 | if (!this.userInfo.captchaCode) { | ||
212 | this.warning.valid = true; | ||
213 | } else { | ||
214 | this.warning.valid = false; | ||
215 | } | ||
216 | break; | ||
217 | default: | ||
218 | break; | ||
219 | } | ||
220 | } | ||
221 | }, | ||
222 | }; | ||
223 | </script> | 219 | </script> |
224 | <style lang="scss" scoped> | 220 | <style lang="scss" scoped> |
225 | input::placeholder{ | 221 | input::placeholder { |
226 | color: #878787; | 222 | color: #878787; |
227 | font-size: 14px; | 223 | font-size: 14px; |
228 | font-family:Arial, Helvetica, sans-serif | 224 | font-family: Arial, Helvetica, sans-serif; |
229 | } | ||
230 | #login { | ||
231 | width: 100vw; | ||
232 | height: 100vh; | ||
233 | background: url("./images/login-bg.png") no-repeat; | ||
234 | background-size: 100%; | ||
235 | overflow: hidden; | ||
236 | position: relative; | ||
237 | .login-content-wrap{ | ||
238 | position: absolute; | ||
239 | left: 50%; | ||
240 | top: calc(50% + 10px); | ||
241 | transform: translate(-50%, -50%); | ||
242 | } | ||
243 | .login-logo { | ||
244 | height: 70px; | ||
245 | width: 100%; | ||
246 | text-align: center; | ||
247 | position: absolute; | ||
248 | top: -140px; | ||
249 | } | ||
250 | .login-logo img { | ||
251 | height: 100%; | ||
252 | } | 225 | } |
253 | .login-con { | 226 | #login { |
254 | margin: 0 auto; | 227 | width: 100vw; |
255 | width: 936px; | 228 | height: 100vh; |
256 | height: 450px; | 229 | background: url("./images/login-bg.png") no-repeat; |
257 | .login-img{ | 230 | background-size: 100%; |
258 | width: 456px; | 231 | overflow: hidden; |
259 | height: 450px; | 232 | position: relative; |
260 | float: left; | 233 | .login-content-wrap { |
261 | box-sizing: border-box; | 234 | position: absolute; |
262 | padding: 126px 86px; | 235 | left: 50%; |
263 | background-color: #fff; | 236 | top: calc(50% + 10px); |
264 | position: relative; | 237 | transform: translate(-50%, -50%); |
265 | &:after{ | ||
266 | content: ""; | ||
267 | display: inline-block; | ||
268 | width: 1px; | ||
269 | height: calc(100% - 96px); | ||
270 | background-image: linear-gradient(#fff,#9AA4C8,#fff); | ||
271 | position: absolute; | ||
272 | right: 0; | ||
273 | top: 48px; | ||
274 | } | ||
275 | .content{ | ||
276 | width: 100%; | ||
277 | height: 100%; | ||
278 | background: url("./images/login-img.svg") no-repeat; | ||
279 | } | ||
280 | } | 238 | } |
281 | .login-wrap{ | 239 | .login-logo { |
282 | width: 480px; | 240 | height: 70px; |
241 | width: 100%; | ||
242 | text-align: center; | ||
243 | position: absolute; | ||
244 | top: -140px; | ||
245 | } | ||
246 | .login-logo img { | ||
247 | height: 100%; | ||
248 | } | ||
249 | .login-con { | ||
250 | margin: 0 auto; | ||
251 | width: 936px; | ||
283 | height: 450px; | 252 | height: 450px; |
284 | float: left; | 253 | .login-img { |
285 | box-sizing: border-box; | 254 | width: 456px; |
286 | padding: 48px 56px; | 255 | height: 450px; |
287 | background: #FFFFFF; | 256 | float: left; |
288 | p{ | 257 | box-sizing: border-box; |
289 | width: 80px; | 258 | padding: 126px 86px; |
290 | font-size: 20px; | 259 | background-color: #fff; |
291 | font-weight: 500; | ||
292 | color: #333333; | ||
293 | line-height: 26px; | ||
294 | position: relative; | 260 | position: relative; |
295 | &:after{ | 261 | &:after { |
296 | content: ""; | 262 | content: ""; |
297 | display: inline-block; | 263 | display: inline-block; |
298 | height: 2px; | 264 | width: 1px; |
299 | width: 74px; | 265 | height: calc(100% - 96px); |
300 | background-color: #CF8933; | 266 | background-image: linear-gradient(#fff, #9aa4c8, #fff); |
301 | position: absolute; | 267 | position: absolute; |
302 | bottom: -4px; | 268 | right: 0; |
303 | left: 2px; | 269 | top: 48px; |
270 | } | ||
271 | .content { | ||
272 | width: 100%; | ||
273 | height: 100%; | ||
274 | background: url("./images/login-img.svg") no-repeat; | ||
275 | } | ||
276 | } | ||
277 | .login-wrap { | ||
278 | width: 480px; | ||
279 | height: 450px; | ||
280 | float: left; | ||
281 | box-sizing: border-box; | ||
282 | padding: 48px 56px; | ||
283 | background: #ffffff; | ||
284 | p { | ||
285 | width: 80px; | ||
286 | font-size: 20px; | ||
287 | font-weight: 500; | ||
288 | color: #333333; | ||
289 | line-height: 26px; | ||
290 | position: relative; | ||
291 | &:after { | ||
292 | content: ""; | ||
293 | display: inline-block; | ||
294 | height: 2px; | ||
295 | width: 74px; | ||
296 | background-color: #cf8933; | ||
297 | position: absolute; | ||
298 | bottom: -4px; | ||
299 | left: 2px; | ||
300 | } | ||
304 | } | 301 | } |
305 | } | 302 | } |
306 | } | 303 | } |
307 | } | 304 | .login-user { |
308 | .login-user { | 305 | width: 100%; |
309 | width: 100%; | 306 | height: 40px; |
310 | height: 40px; | 307 | border: 1px solid #e5e5e5; |
311 | border: 1px solid #E5E5E5; | 308 | box-sizing: border-box; |
312 | box-sizing: border-box; | 309 | margin-top: 34px; |
313 | margin-top: 34px; | 310 | border-radius: 2px; |
314 | border-radius: 2px; | 311 | position: relative; |
315 | position: relative; | 312 | .user-icon { |
316 | .user-icon { | 313 | float: left; |
317 | float: left; | 314 | margin: 10px auto auto 10px; |
318 | margin: 10px auto auto 10px; | 315 | width: 28px; |
319 | width: 28px; | 316 | height: 18px; |
320 | height: 18px; | 317 | } |
318 | .user-input { | ||
319 | width: 80%; | ||
320 | float: left; | ||
321 | font-size: 16px; | ||
322 | outline: 0; | ||
323 | border: none; | ||
324 | color: #4a4a4a; | ||
325 | height: 38px; | ||
326 | line-height: 40px; | ||
327 | } | ||
328 | .password-eye { | ||
329 | float: right; | ||
330 | width: 16px; | ||
331 | height: 16px; | ||
332 | margin-right: 12px; | ||
333 | margin-top: 13px; | ||
334 | cursor: pointer; | ||
335 | } | ||
336 | .warning { | ||
337 | font-size: 12px; | ||
338 | color: red; | ||
339 | position: absolute; | ||
340 | left: 0; | ||
341 | bottom: -18px; | ||
342 | } | ||
321 | } | 343 | } |
322 | .user-input { | 344 | .login-valid { |
323 | width: 80%; | 345 | width: 60%; |
324 | float: left; | 346 | .valid-img { |
325 | font-size: 16px; | 347 | width: 50%; |
326 | outline: 0; | 348 | position: absolute; |
327 | border: none; | 349 | right: -66%; |
328 | color: #4a4a4a; | 350 | top: 2px; |
329 | height: 38px; | 351 | cursor: pointer; |
330 | line-height: 40px; | 352 | } |
331 | } | 353 | } |
332 | .password-eye { | 354 | .user-mt { |
333 | float: right; | 355 | margin-top: 26px; |
334 | width: 16px; | ||
335 | height: 16px; | ||
336 | margin-right: 12px; | ||
337 | margin-top: 13px; | ||
338 | cursor: pointer; | ||
339 | } | 356 | } |
340 | .warning { | 357 | .select-border { |
341 | font-size: 12px; | 358 | border: 1px solid rgba(0, 113, 255, 1); |
342 | color: red; | ||
343 | position: absolute; | ||
344 | left: 0; | ||
345 | bottom: -18px; | ||
346 | } | 359 | } |
347 | } | 360 | .login-btn { |
348 | .login-valid{ | 361 | width: 100%; |
349 | width: 60%; | 362 | height: 48px; |
350 | .valid-img{ | 363 | background: #74a3f5; |
351 | width: 50%; | 364 | border-radius: 2px; |
352 | position: absolute; | 365 | margin: 0 auto; |
353 | right: -66%; | 366 | margin-top: 40px; |
354 | top: 2px; | 367 | font-size: 20px; |
368 | font-weight: 500; | ||
369 | line-height: 48px; | ||
370 | text-align: center; | ||
371 | color: #fff; | ||
355 | cursor: pointer; | 372 | cursor: pointer; |
356 | } | 373 | } |
374 | .reserved-con { | ||
375 | position: absolute; | ||
376 | bottom: 0; | ||
377 | width: 100%; | ||
378 | height: 18px; | ||
379 | background-color: #4971ca; | ||
380 | } | ||
357 | } | 381 | } |
358 | .user-mt { | ||
359 | margin-top: 26px; | ||
360 | } | ||
361 | .select-border { | ||
362 | border: 1px solid rgba(0, 113, 255, 1); | ||
363 | } | ||
364 | .login-btn { | ||
365 | width: 100%; | ||
366 | height: 48px; | ||
367 | background: #74A3F5; | ||
368 | border-radius: 2px; | ||
369 | margin: 0 auto; | ||
370 | margin-top: 40px; | ||
371 | font-size: 20px; | ||
372 | font-weight: 500; | ||
373 | line-height: 48px; | ||
374 | text-align: center; | ||
375 | color: #fff; | ||
376 | cursor: pointer; | ||
377 | } | ||
378 | .reserved-con { | ||
379 | position: absolute; | ||
380 | bottom: 0; | ||
381 | width: 100%; | ||
382 | height: 18px; | ||
383 | background-color: #4971ca; | ||
384 | } | ||
385 | } | ||
386 | </style> | 382 | </style> | ... | ... |
1 | <!-- | ||
2 | * @Description: | ||
3 | * @Autor: renchao | ||
4 | * @LastEditTime: 2023-07-19 09:50:51 | ||
5 | --> | ||
1 | <template> | 6 | <template> |
2 | <div class="edit"> | 7 | <div class="edit"> |
3 | <el-tabs type="card" v-model="activeName"> | 8 | <el-tabs type="card" v-model="activeName"> |
... | @@ -9,15 +14,13 @@ | ... | @@ -9,15 +14,13 @@ |
9 | v-if="activeName == 'first'" | 14 | v-if="activeName == 'first'" |
10 | ref="tabContent" | 15 | ref="tabContent" |
11 | :style="{ height: lpbContentHight + 'px' }" | 16 | :style="{ height: lpbContentHight + 'px' }" |
12 | v-show="bjztFlag" | 17 | v-show="bjztFlag"> |
13 | > | ||
14 | <!-- 楼盘表主体 --> | 18 | <!-- 楼盘表主体 --> |
15 | <div class="lp-overview" :style="{ width: lpbContentwidth + 'px' }"> | 19 | <div class="lp-overview" :style="{ width: lpbContentwidth + 'px' }"> |
16 | <lpbContent | 20 | <lpbContent |
17 | ref="lpbContent" | 21 | ref="lpbContent" |
18 | :zrzbsm="formData.bsm" | 22 | :zrzbsm="formData.bsm" |
19 | :key="time" | 23 | :key="time"></lpbContent> |
20 | ></lpbContent> | ||
21 | </div> | 24 | </div> |
22 | <!-- 右侧图例 --> | 25 | <!-- 右侧图例 --> |
23 | <div class="lp-legend"> | 26 | <div class="lp-legend"> |
... | @@ -28,40 +31,34 @@ | ... | @@ -28,40 +31,34 @@ |
28 | </div> | 31 | </div> |
29 | <div | 32 | <div |
30 | :class="selectedZt == 'dyzt' ? 'dyzt selectedZt' : 'dyzt'" | 33 | :class="selectedZt == 'dyzt' ? 'dyzt selectedZt' : 'dyzt'" |
31 | @click="selectedZt = 'dyzt'" | 34 | @click="selectedZt = 'dyzt'"> |
32 | > | ||
33 | <span>单元状态</span> | 35 | <span>单元状态</span> |
34 | </div> | 36 | </div> |
35 | <div | 37 | <div |
36 | :class="selectedZt == 'fwxz' ? 'fwxz selectedZt' : 'fwxz'" | 38 | :class="selectedZt == 'fwxz' ? 'fwxz selectedZt' : 'fwxz'" |
37 | @click="selectedZt = 'fwxz'" | 39 | @click="selectedZt = 'fwxz'"> |
38 | > | ||
39 | <span>房屋性质</span> | 40 | <span>房屋性质</span> |
40 | </div> | 41 | </div> |
41 | <div | 42 | <div |
42 | :class="selectedZt == 'fwyt' ? 'fwyt selectedZt' : 'fwyt'" | 43 | :class="selectedZt == 'fwyt' ? 'fwyt selectedZt' : 'fwyt'" |
43 | @click="selectedZt = 'fwyt'" | 44 | @click="selectedZt = 'fwyt'"> |
44 | > | ||
45 | <span>房屋用途</span> | 45 | <span>房屋用途</span> |
46 | </div> | 46 | </div> |
47 | <div | 47 | <div |
48 | :class="selectedZt == 'qsx' ? 'qsx selectedZt' : 'qsx'" | 48 | :class="selectedZt == 'qsx' ? 'qsx selectedZt' : 'qsx'" |
49 | @click="selectedZt = 'qsx'" | 49 | @click="selectedZt = 'qsx'"> |
50 | > | ||
51 | <span>缺失项</span> | 50 | <span>缺失项</span> |
52 | </div> | 51 | </div> |
53 | </div> | 52 | </div> |
54 | <div | 53 | <div |
55 | class="legendTable-wrap" | 54 | class="legendTable-wrap" |
56 | :style="{ width: legendToggleFlag ? '200px' : '0' }" | 55 | :style="{ width: legendToggleFlag ? '200px' : '0' }"> |
57 | > | ||
58 | <table | 56 | <table |
59 | class="legendTable" | 57 | class="legendTable" |
60 | v-show="selectedZt == 'dyzt'" | 58 | v-show="selectedZt == 'dyzt'" |
61 | cellspacing="1" | 59 | cellspacing="1" |
62 | cellpadding="1" | 60 | cellpadding="1" |
63 | border="1" | 61 | border="1"> |
64 | > | ||
65 | <tr> | 62 | <tr> |
66 | <th>状态</th> | 63 | <th>状态</th> |
67 | <th>套数</th> | 64 | <th>套数</th> |
... | @@ -71,14 +68,11 @@ | ... | @@ -71,14 +68,11 @@ |
71 | v-for="(item, index) in dyztList" | 68 | v-for="(item, index) in dyztList" |
72 | :key="index" | 69 | :key="index" |
73 | class="cp" | 70 | class="cp" |
74 | @click="handleChoosedH(item.bsms, item.color)" | 71 | @click="handleChoosedH(item.bsms, item.color)"> |
75 | > | ||
76 | <td> | 72 | <td> |
77 | <i | 73 | <i |
78 | class="fa fa-circle" | 74 | class="fa fa-circle" |
79 | :style="{ backgroundColor: item.color }" | 75 | :style="{ backgroundColor: item.color }"></i>{{ item.name }} |
80 | ></i | ||
81 | >{{ item.name }} | ||
82 | </td> | 76 | </td> |
83 | <td>{{ item.ts }}</td> | 77 | <td>{{ item.ts }}</td> |
84 | <td>{{ item.mj }}</td> | 78 | <td>{{ item.mj }}</td> |
... | @@ -90,8 +84,7 @@ | ... | @@ -90,8 +84,7 @@ |
90 | v-show="selectedZt == 'fwxz'" | 84 | v-show="selectedZt == 'fwxz'" |
91 | cellspacing="1" | 85 | cellspacing="1" |
92 | cellpadding="1" | 86 | cellpadding="1" |
93 | border="1" | 87 | border="1"> |
94 | > | ||
95 | <tr> | 88 | <tr> |
96 | <th>性质</th> | 89 | <th>性质</th> |
97 | <th>套数</th> | 90 | <th>套数</th> |
... | @@ -101,14 +94,11 @@ | ... | @@ -101,14 +94,11 @@ |
101 | v-for="(item, index) in fwxzList" | 94 | v-for="(item, index) in fwxzList" |
102 | :key="index" | 95 | :key="index" |
103 | class="cp" | 96 | class="cp" |
104 | @click="handleChoosedH(item.bsms, item.color)" | 97 | @click="handleChoosedH(item.bsms, item.color)"> |
105 | > | ||
106 | <td> | 98 | <td> |
107 | <i | 99 | <i |
108 | class="fa fa-circle" | 100 | class="fa fa-circle" |
109 | :style="{ backgroundColor: item.color }" | 101 | :style="{ backgroundColor: item.color }"></i>{{ item.name }} |
110 | ></i | ||
111 | >{{ item.name }} | ||
112 | </td> | 102 | </td> |
113 | <td>{{ item.ts }}</td> | 103 | <td>{{ item.ts }}</td> |
114 | <td>{{ item.mj }}</td> | 104 | <td>{{ item.mj }}</td> |
... | @@ -123,8 +113,7 @@ | ... | @@ -123,8 +113,7 @@ |
123 | v-show="selectedZt == 'fwyt'" | 113 | v-show="selectedZt == 'fwyt'" |
124 | cellspacing="1" | 114 | cellspacing="1" |
125 | cellpadding="1" | 115 | cellpadding="1" |
126 | border="1" | 116 | border="1"> |
127 | > | ||
128 | <tr> | 117 | <tr> |
129 | <th>用途</th> | 118 | <th>用途</th> |
130 | <th>套数</th> | 119 | <th>套数</th> |
... | @@ -134,14 +123,11 @@ | ... | @@ -134,14 +123,11 @@ |
134 | v-for="(item, index) in fwytList" | 123 | v-for="(item, index) in fwytList" |
135 | :key="index" | 124 | :key="index" |
136 | class="cp" | 125 | class="cp" |
137 | @click="handleChoosedH(item.bsms, item.color)" | 126 | @click="handleChoosedH(item.bsms, item.color)"> |
138 | > | ||
139 | <td> | 127 | <td> |
140 | <i | 128 | <i |
141 | class="fa fa-circle" | 129 | class="fa fa-circle" |
142 | :style="{ backgroundColor: item.color }" | 130 | :style="{ backgroundColor: item.color }"></i>{{ item.name }} |
143 | ></i | ||
144 | >{{ item.name }} | ||
145 | </td> | 131 | </td> |
146 | <td>{{ item.ts }}</td> | 132 | <td>{{ item.ts }}</td> |
147 | <td>{{ item.mj }}</td> | 133 | <td>{{ item.mj }}</td> |
... | @@ -156,8 +142,7 @@ | ... | @@ -156,8 +142,7 @@ |
156 | v-show="selectedZt == 'qsx'" | 142 | v-show="selectedZt == 'qsx'" |
157 | cellspacing="1" | 143 | cellspacing="1" |
158 | cellpadding="1" | 144 | cellpadding="1" |
159 | border="1" | 145 | border="1"> |
160 | > | ||
161 | <tr> | 146 | <tr> |
162 | <th>数据缺失项</th> | 147 | <th>数据缺失项</th> |
163 | <th>套数</th> | 148 | <th>套数</th> |
... | @@ -167,14 +152,11 @@ | ... | @@ -167,14 +152,11 @@ |
167 | v-for="(item, index) in qsxList" | 152 | v-for="(item, index) in qsxList" |
168 | :key="index" | 153 | :key="index" |
169 | class="cp" | 154 | class="cp" |
170 | @click="handleChoosedH(item.bsms, item.color)" | 155 | @click="handleChoosedH(item.bsms, item.color)"> |
171 | > | ||
172 | <td> | 156 | <td> |
173 | <i | 157 | <i |
174 | class="fa fa-circle" | 158 | class="fa fa-circle" |
175 | :style="{ backgroundColor: item.color }" | 159 | :style="{ backgroundColor: item.color }"></i>{{ item.name }} |
176 | ></i | ||
177 | >{{ item.name }} | ||
178 | </td> | 160 | </td> |
179 | <td>{{ item.ts }}</td> | 161 | <td>{{ item.ts }}</td> |
180 | <td>0</td> | 162 | <td>0</td> |
... | @@ -192,386 +174,386 @@ | ... | @@ -192,386 +174,386 @@ |
192 | </template> | 174 | </template> |
193 | 175 | ||
194 | <script> | 176 | <script> |
195 | import lpbContent from "./lpbContent/index"; | 177 | import lpbContent from "./lpbContent/index"; |
196 | import selectZrzH from "../ywbl/ywsq/components/selectZrzH"; | 178 | import selectZrzH from "../ywbl/ywsq/components/selectZrzH"; |
197 | import { getLpbFwytAndQlxz, getLpbQsxtj, getLpbTj } from "@/api/lpcx.js"; | 179 | import { getLpbFwytAndQlxz, getLpbQsxtj, getLpbTj } from "@/api/lpcx.js"; |
198 | export default { | 180 | export default { |
199 | name: "lpb", | 181 | name: "lpb", |
200 | props: { | 182 | props: { |
201 | formData: { | 183 | formData: { |
202 | type: Object, | 184 | type: Object, |
203 | default: {}, | 185 | default: {}, |
186 | }, | ||
204 | }, | 187 | }, |
205 | }, | 188 | components: { |
206 | components: { | 189 | lpbContent, |
207 | lpbContent, | 190 | selectZrzH, |
208 | selectZrzH, | ||
209 | }, | ||
210 | data() { | ||
211 | return { | ||
212 | activeName: "first", | ||
213 | bsms: [], | ||
214 | dialogVisible: false, | ||
215 | scyclx: "0", //1是实测 0是预测 | ||
216 | menuType: "", | ||
217 | selectedZt: "dyzt", //图例选中项,默认选中单元状态 | ||
218 | dyztList: [ | ||
219 | { | ||
220 | name: "未确权", | ||
221 | color: "#83AAFE", | ||
222 | ts: "12", | ||
223 | mj: "1633", | ||
224 | }, | ||
225 | { | ||
226 | name: "已确权", | ||
227 | color: "#6EDEE1", | ||
228 | ts: "22", | ||
229 | mj: "3109", | ||
230 | }, | ||
231 | { | ||
232 | name: "已备案", | ||
233 | color: "#8ADC88", | ||
234 | ts: "3", | ||
235 | mj: "409", | ||
236 | }, | ||
237 | { | ||
238 | name: "预抵押", | ||
239 | color: "#F2AD67", | ||
240 | ts: "11", | ||
241 | mj: "1466", | ||
242 | }, | ||
243 | { | ||
244 | name: "在建抵押", | ||
245 | color: "#F191C8", | ||
246 | ts: "13", | ||
247 | mj: "1792", | ||
248 | }, | ||
249 | { | ||
250 | name: "抵押", | ||
251 | color: "#FF8282", | ||
252 | ts: "14", | ||
253 | mj: "13", | ||
254 | }, | ||
255 | { | ||
256 | name: "查封", | ||
257 | color: "#D7CECF", | ||
258 | ts: "9", | ||
259 | mj: "1436", | ||
260 | }, | ||
261 | { | ||
262 | name: "异议", | ||
263 | color: "#D4A3EB", | ||
264 | ts: "34", | ||
265 | mj: "4342", | ||
266 | }, | ||
267 | { | ||
268 | name: "限制", | ||
269 | color: "#A5A3FB", | ||
270 | ts: "2", | ||
271 | mj: "285", | ||
272 | }, | ||
273 | ], | ||
274 | fwxzList: [], | ||
275 | fwytList: [], | ||
276 | qsxList: [], | ||
277 | legendToggleFlag: false, | ||
278 | lpbContentHight: "", | ||
279 | lpbContentwidth: "", | ||
280 | time: "", | ||
281 | dyztBsmList: {}, //单元状态bsmList | ||
282 | bjztFlag: true, | ||
283 | qsztList: [], | ||
284 | }; | ||
285 | }, | ||
286 | created() { | ||
287 | window.addEventListener("resize", this.getHeight); | ||
288 | console.log(this.formData); | ||
289 | this.getHeight(); | ||
290 | }, | ||
291 | mounted() { | ||
292 | //获取各项单元状态的户bsm | ||
293 | this.getDyztBsmList(); | ||
294 | //获取房屋用途统计数据 | ||
295 | this.getLpbFwytAndQlxz(); | ||
296 | // 楼盘表绘制区域宽度计算:楼盘表区域宽度-图例宽度34-滚动条宽度6 | ||
297 | setTimeout(() => { | ||
298 | this.lpbContentwidth = | ||
299 | (document.documentElement.clientWidth || document.body.clientWidth) - | ||
300 | 340 - | ||
301 | 34 - | ||
302 | 6; | ||
303 | }, 100); | ||
304 | }, | ||
305 | methods: { | ||
306 | /* handleTabClick(event){ | ||
307 | if(event.name=="first"){ | ||
308 | this.$router.push({ | ||
309 | path:"/lpb/index", | ||
310 | }) | ||
311 | }else if(event.name=="second"){ | ||
312 | this.$router.push({ | ||
313 | path:"/ywbl/ywsq/components/selectAllHInfo", | ||
314 | }) | ||
315 | } | ||
316 | },*/ | ||
317 | //获取高度计算lpb内容区高度 | ||
318 | getHeight() { | ||
319 | this.lpbContentHight = window.innerHeight - 190; | ||
320 | }, | 191 | }, |
321 | //图例的展开收起 | 192 | data () { |
322 | legendToggle() { | 193 | return { |
323 | this.legendToggleFlag = !this.legendToggleFlag; | 194 | activeName: "first", |
195 | bsms: [], | ||
196 | dialogVisible: false, | ||
197 | scyclx: "0", //1是实测 0是预测 | ||
198 | menuType: "", | ||
199 | selectedZt: "dyzt", //图例选中项,默认选中单元状态 | ||
200 | dyztList: [ | ||
201 | { | ||
202 | name: "未确权", | ||
203 | color: "#83AAFE", | ||
204 | ts: "12", | ||
205 | mj: "1633", | ||
206 | }, | ||
207 | { | ||
208 | name: "已确权", | ||
209 | color: "#6EDEE1", | ||
210 | ts: "22", | ||
211 | mj: "3109", | ||
212 | }, | ||
213 | { | ||
214 | name: "已备案", | ||
215 | color: "#8ADC88", | ||
216 | ts: "3", | ||
217 | mj: "409", | ||
218 | }, | ||
219 | { | ||
220 | name: "预抵押", | ||
221 | color: "#F2AD67", | ||
222 | ts: "11", | ||
223 | mj: "1466", | ||
224 | }, | ||
225 | { | ||
226 | name: "在建抵押", | ||
227 | color: "#F191C8", | ||
228 | ts: "13", | ||
229 | mj: "1792", | ||
230 | }, | ||
231 | { | ||
232 | name: "抵押", | ||
233 | color: "#FF8282", | ||
234 | ts: "14", | ||
235 | mj: "13", | ||
236 | }, | ||
237 | { | ||
238 | name: "查封", | ||
239 | color: "#D7CECF", | ||
240 | ts: "9", | ||
241 | mj: "1436", | ||
242 | }, | ||
243 | { | ||
244 | name: "异议", | ||
245 | color: "#D4A3EB", | ||
246 | ts: "34", | ||
247 | mj: "4342", | ||
248 | }, | ||
249 | { | ||
250 | name: "限制", | ||
251 | color: "#A5A3FB", | ||
252 | ts: "2", | ||
253 | mj: "285", | ||
254 | }, | ||
255 | ], | ||
256 | fwxzList: [], | ||
257 | fwytList: [], | ||
258 | qsxList: [], | ||
259 | legendToggleFlag: false, | ||
260 | lpbContentHight: "", | ||
261 | lpbContentwidth: "", | ||
262 | time: "", | ||
263 | dyztBsmList: {}, //单元状态bsmList | ||
264 | bjztFlag: true, | ||
265 | qsztList: [], | ||
266 | }; | ||
324 | }, | 267 | }, |
325 | //切换房屋状态 | 268 | created () { |
326 | handleChoosedH(bsms, color) { | 269 | window.addEventListener("resize", this.getHeight); |
327 | this.$refs.lpbContent.changeChoosed(bsms, color); | 270 | console.log(this.formData); |
271 | this.getHeight(); | ||
328 | }, | 272 | }, |
329 | //获取各项单元状态统计数据 | 273 | mounted () { |
330 | getDyztBsmList() { | 274 | //获取各项单元状态的户bsm |
331 | getLpbTj(this.formData.bsm).then((res) => { | 275 | this.getDyztBsmList(); |
332 | if (res.code === 200) { | 276 | //获取房屋用途统计数据 |
333 | this.dyztList = res.result; | 277 | this.getLpbFwytAndQlxz(); |
334 | this.dyztList.splice(1, 0, this.dyztList[8]); | 278 | // 楼盘表绘制区域宽度计算:楼盘表区域宽度-图例宽度34-滚动条宽度6 |
335 | this.dyztList.pop(); | 279 | setTimeout(() => { |
336 | this.dyztList.forEach((item) => { | 280 | this.lpbContentwidth = |
337 | item.ts = item.bsms.length; | 281 | (document.documentElement.clientWidth || document.body.clientWidth) - |
338 | switch (item.name) { | 282 | 340 - |
339 | case "Qqzt": | 283 | 34 - |
340 | item.color = "#6EDEE1"; | 284 | 6; |
341 | item.name = "已确权"; | 285 | }, 100); |
342 | break; | ||
343 | case "Wqqzt": | ||
344 | item.color = "#83AAFE"; | ||
345 | item.name = "未确权"; | ||
346 | break; | ||
347 | case "Bazt": | ||
348 | item.color = "#8ADC88"; | ||
349 | item.name = "已备案"; | ||
350 | break; | ||
351 | case "Ydyzt": | ||
352 | item.color = "#F2AD67"; | ||
353 | item.name = "预抵押"; | ||
354 | break; | ||
355 | case "Zjgcdyzt": | ||
356 | item.color = "#F191C8"; | ||
357 | item.name = "在建抵押"; | ||
358 | break; | ||
359 | case "Dyzt": | ||
360 | item.color = "#FF8282"; | ||
361 | item.name = "抵押"; | ||
362 | break; | ||
363 | case "Cfzt": | ||
364 | item.color = "#D7CECF"; | ||
365 | item.name = "查封"; | ||
366 | break; | ||
367 | case "Yyzt": | ||
368 | item.color = "#D4A3EB"; | ||
369 | item.name = "异议"; | ||
370 | break; | ||
371 | case "Xzzt": | ||
372 | item.color = "#A5A3FB"; | ||
373 | item.name = "限制"; | ||
374 | break; | ||
375 | default: | ||
376 | break; | ||
377 | } | ||
378 | }); | ||
379 | } | ||
380 | }); | ||
381 | }, | 286 | }, |
382 | // 获取房屋用途和房屋性质及缺失项统计数据 | 287 | methods: { |
383 | getLpbFwytAndQlxz() { | 288 | /* handleTabClick(event){ |
384 | getLpbFwytAndQlxz(this.formData.bsm).then((res) => { | 289 | if(event.name=="first"){ |
385 | if (res.code === 200) { | 290 | this.$router.push({ |
386 | // this.fwytList = res.result | 291 | path:"/lpb/index", |
387 | this.fwytList = res.result.fwyt; | 292 | }) |
388 | this.fwxzList = res.result.qlxz; | 293 | }else if(event.name=="second"){ |
389 | if (this.fwytList.length > 0) { | 294 | this.$router.push({ |
390 | this.fwytList.forEach((item) => { | 295 | path:"/ywbl/ywsq/components/selectAllHInfo", |
391 | item.color = "#2591FD"; | 296 | }) |
297 | } | ||
298 | },*/ | ||
299 | //获取高度计算lpb内容区高度 | ||
300 | getHeight () { | ||
301 | this.lpbContentHight = window.innerHeight - 190; | ||
302 | }, | ||
303 | //图例的展开收起 | ||
304 | legendToggle () { | ||
305 | this.legendToggleFlag = !this.legendToggleFlag; | ||
306 | }, | ||
307 | //切换房屋状态 | ||
308 | handleChoosedH (bsms, color) { | ||
309 | this.$refs.lpbContent.changeChoosed(bsms, color); | ||
310 | }, | ||
311 | //获取各项单元状态统计数据 | ||
312 | getDyztBsmList () { | ||
313 | getLpbTj(this.formData.bsm).then((res) => { | ||
314 | if (res.code === 200) { | ||
315 | this.dyztList = res.result; | ||
316 | this.dyztList.splice(1, 0, this.dyztList[8]); | ||
317 | this.dyztList.pop(); | ||
318 | this.dyztList.forEach((item) => { | ||
392 | item.ts = item.bsms.length; | 319 | item.ts = item.bsms.length; |
320 | switch (item.name) { | ||
321 | case "Qqzt": | ||
322 | item.color = "#6EDEE1"; | ||
323 | item.name = "已确权"; | ||
324 | break; | ||
325 | case "Wqqzt": | ||
326 | item.color = "#83AAFE"; | ||
327 | item.name = "未确权"; | ||
328 | break; | ||
329 | case "Bazt": | ||
330 | item.color = "#8ADC88"; | ||
331 | item.name = "已备案"; | ||
332 | break; | ||
333 | case "Ydyzt": | ||
334 | item.color = "#F2AD67"; | ||
335 | item.name = "预抵押"; | ||
336 | break; | ||
337 | case "Zjgcdyzt": | ||
338 | item.color = "#F191C8"; | ||
339 | item.name = "在建抵押"; | ||
340 | break; | ||
341 | case "Dyzt": | ||
342 | item.color = "#FF8282"; | ||
343 | item.name = "抵押"; | ||
344 | break; | ||
345 | case "Cfzt": | ||
346 | item.color = "#D7CECF"; | ||
347 | item.name = "查封"; | ||
348 | break; | ||
349 | case "Yyzt": | ||
350 | item.color = "#D4A3EB"; | ||
351 | item.name = "异议"; | ||
352 | break; | ||
353 | case "Xzzt": | ||
354 | item.color = "#A5A3FB"; | ||
355 | item.name = "限制"; | ||
356 | break; | ||
357 | default: | ||
358 | break; | ||
359 | } | ||
393 | }); | 360 | }); |
394 | } | 361 | } |
395 | if (this.fwxzList.length > 0) { | 362 | }); |
396 | this.fwxzList.forEach((item) => { | 363 | }, |
397 | item.color = "#2591FD"; | 364 | // 获取房屋用途和房屋性质及缺失项统计数据 |
398 | item.ts = item.bsms.length; | 365 | getLpbFwytAndQlxz () { |
399 | }); | 366 | getLpbFwytAndQlxz(this.formData.bsm).then((res) => { |
367 | if (res.code === 200) { | ||
368 | // this.fwytList = res.result | ||
369 | this.fwytList = res.result.fwyt; | ||
370 | this.fwxzList = res.result.qlxz; | ||
371 | if (this.fwytList.length > 0) { | ||
372 | this.fwytList.forEach((item) => { | ||
373 | item.color = "#2591FD"; | ||
374 | item.ts = item.bsms.length; | ||
375 | }); | ||
376 | } | ||
377 | if (this.fwxzList.length > 0) { | ||
378 | this.fwxzList.forEach((item) => { | ||
379 | item.color = "#2591FD"; | ||
380 | item.ts = item.bsms.length; | ||
381 | }); | ||
382 | } | ||
400 | } | 383 | } |
401 | } | 384 | }); |
402 | }); | 385 | getLpbQsxtj(this.formData.bsm).then((res) => { |
403 | getLpbQsxtj(this.formData.bsm).then((res) => { | 386 | if (res.code === 200) { |
404 | if (res.code === 200) { | 387 | this.qsxList = [ |
405 | this.qsxList = [ | 388 | { |
406 | { | 389 | name: "坐落", |
407 | name: "坐落", | 390 | bsms: res.result.zl.bsms, |
408 | bsms: res.result.zl.bsms, | 391 | color: "#2591FD", |
409 | color: "#2591FD", | 392 | ts: res.result.zl.bsms.length, |
410 | ts: res.result.zl.bsms.length, | 393 | }, |
411 | }, | 394 | { |
412 | { | 395 | name: "分层分户图", |
413 | name: "分层分户图", | 396 | bsms: res.result.fcfht.bsms, |
414 | bsms: res.result.fcfht.bsms, | 397 | color: "#2591FD", |
415 | color: "#2591FD", | 398 | ts: res.result.fcfht.bsms.length, |
416 | ts: res.result.fcfht.bsms.length, | 399 | }, |
417 | }, | 400 | { |
418 | { | 401 | name: "室号", |
419 | name: "室号", | 402 | bsms: res.result.shbw.bsms, |
420 | bsms: res.result.shbw.bsms, | 403 | color: "#2591FD", |
421 | color: "#2591FD", | 404 | ts: res.result.shbw.bsms.length, |
422 | ts: res.result.shbw.bsms.length, | 405 | }, |
423 | }, | 406 | ]; |
424 | ]; | 407 | } |
425 | } | 408 | }); |
426 | }); | 409 | }, |
427 | }, | 410 | }, |
428 | }, | 411 | computed: {}, |
429 | computed: {}, | 412 | destroyed () { |
430 | destroyed() { | 413 | window.removeEventListener("resize", this.getHeight); |
431 | window.removeEventListener("resize", this.getHeight); | ||
432 | }, | ||
433 | watch: { | ||
434 | //树结构和图例伸缩时修改楼盘表主要内容区宽度 | ||
435 | legendToggleFlag(n) { | ||
436 | if (n) { | ||
437 | this.lpbContentwidth -= 204; | ||
438 | } else { | ||
439 | this.lpbContentwidth += 204; | ||
440 | } | ||
441 | }, | 414 | }, |
442 | selectedZt(n) { | 415 | watch: { |
443 | this.legendToggleFlag = true; | 416 | //树结构和图例伸缩时修改楼盘表主要内容区宽度 |
417 | legendToggleFlag (n) { | ||
418 | if (n) { | ||
419 | this.lpbContentwidth -= 204; | ||
420 | } else { | ||
421 | this.lpbContentwidth += 204; | ||
422 | } | ||
423 | }, | ||
424 | selectedZt (n) { | ||
425 | this.legendToggleFlag = true; | ||
426 | }, | ||
444 | }, | 427 | }, |
445 | }, | 428 | }; |
446 | }; | ||
447 | </script> | 429 | </script> |
448 | <style scoped lang="scss"> | 430 | <style scoped lang="scss"> |
449 | table { | 431 | table { |
450 | border-width: 0; | 432 | border-width: 0; |
451 | border-collapse: collapse; | 433 | border-collapse: collapse; |
452 | border-spacing: 0; | 434 | border-spacing: 0; |
453 | } | 435 | } |
454 | .edit { | 436 | .edit { |
455 | height: 100%; | 437 | height: 100%; |
456 | background-color: #f4f9ff; | 438 | background-color: #f4f9ff; |
457 | .tab-content { | 439 | .tab-content { |
458 | border: 1px solid #dedede; | 440 | border: 1px solid #dedede; |
459 | border-left: 0; | 441 | border-left: 0; |
460 | background-color: #ffffff; | 442 | background-color: #ffffff; |
461 | display: flex; | 443 | display: flex; |
462 | &::-webkit-scrollbar { | 444 | &::-webkit-scrollbar { |
463 | width: 1px; | 445 | width: 1px; |
464 | } | ||
465 | .lp-tree { | ||
466 | height: 100%; | ||
467 | overflow: hidden; | ||
468 | transition: 0.5s; | ||
469 | .treeData { | ||
470 | margin-top: 20px; | ||
471 | margin-left: 26px; | ||
472 | float: left; | ||
473 | } | 446 | } |
474 | } | 447 | .lp-tree { |
475 | .w0 { | ||
476 | width: 0; | ||
477 | } | ||
478 | .w260 { | ||
479 | width: 260px; | ||
480 | } | ||
481 | .lp-overview { | ||
482 | transition: 0.5s; | ||
483 | flex: 1; | ||
484 | border: 1px solid rgb(236, 236, 236); | ||
485 | border-top: 0; | ||
486 | border-bottom: 0; | ||
487 | margin-right: 10px; | ||
488 | box-sizing: border-box; | ||
489 | } | ||
490 | |||
491 | .lp-legend { | ||
492 | transition: 0.5s; | ||
493 | height: 100%; | ||
494 | font-size: 14px; | ||
495 | .handleCol { | ||
496 | width: 34px; | ||
497 | float: right; | ||
498 | height: 100%; | 448 | height: 100%; |
499 | .btn { | 449 | overflow: hidden; |
500 | cursor: pointer; | 450 | transition: 0.5s; |
501 | height: 40px; | 451 | .treeData { |
502 | line-height: 40px; | 452 | margin-top: 20px; |
503 | text-align: center; | 453 | margin-left: 26px; |
504 | background-color: #5a78de; | 454 | float: left; |
505 | color: #fff; | ||
506 | border-bottom: 1px solid #e6e6e6; | ||
507 | } | ||
508 | .dyzt, | ||
509 | .fwxz, | ||
510 | .fwyt, | ||
511 | .qsx { | ||
512 | height: 122px; | ||
513 | } | ||
514 | .dyzt, | ||
515 | .fwxz, | ||
516 | .fwyt, | ||
517 | .qsx { | ||
518 | cursor: pointer; | ||
519 | border-bottom: 1px solid #e6e6e6; | ||
520 | border-left: 1px solid #e6e6e6; | ||
521 | span { | ||
522 | text-align: center; | ||
523 | height: 100%; | ||
524 | -webkit-writing-mode: vertical-rl; | ||
525 | writing-mode: vertical-rl; | ||
526 | line-height: 34px; | ||
527 | letter-spacing: 2px; | ||
528 | } | ||
529 | } | ||
530 | .selectedZt { | ||
531 | // background-color: #5A78DE; | ||
532 | color: #3d59c4; | ||
533 | } | 455 | } |
534 | } | 456 | } |
535 | .legendTable-wrap { | 457 | .w0 { |
458 | width: 0; | ||
459 | } | ||
460 | .w260 { | ||
461 | width: 260px; | ||
462 | } | ||
463 | .lp-overview { | ||
536 | transition: 0.5s; | 464 | transition: 0.5s; |
537 | float: right; | 465 | flex: 1; |
538 | overflow: hidden; | 466 | border: 1px solid rgb(236, 236, 236); |
539 | .legendTable { | 467 | border-top: 0; |
540 | margin-top: -1px; | 468 | border-bottom: 0; |
541 | .fa-circle { | 469 | margin-right: 10px; |
542 | display: inline-block; | 470 | box-sizing: border-box; |
543 | width: 12px; | 471 | } |
544 | height: 12px; | 472 | |
545 | border-radius: 50%; | 473 | .lp-legend { |
546 | vertical-align: middle; | 474 | transition: 0.5s; |
547 | margin-right: 4px; | 475 | height: 100%; |
548 | } | 476 | font-size: 14px; |
549 | tr { | 477 | .handleCol { |
478 | width: 34px; | ||
479 | float: right; | ||
480 | height: 100%; | ||
481 | .btn { | ||
482 | cursor: pointer; | ||
550 | height: 40px; | 483 | height: 40px; |
551 | line-height: 40px; | 484 | line-height: 40px; |
552 | border-color: #d8e0ea !important; | 485 | text-align: center; |
553 | th:first-child { | 486 | background-color: #5a78de; |
554 | width: 80px; | 487 | color: #fff; |
488 | border-bottom: 1px solid #e6e6e6; | ||
489 | } | ||
490 | .dyzt, | ||
491 | .fwxz, | ||
492 | .fwyt, | ||
493 | .qsx { | ||
494 | height: 122px; | ||
495 | } | ||
496 | .dyzt, | ||
497 | .fwxz, | ||
498 | .fwyt, | ||
499 | .qsx { | ||
500 | cursor: pointer; | ||
501 | border-bottom: 1px solid #e6e6e6; | ||
502 | border-left: 1px solid #e6e6e6; | ||
503 | span { | ||
504 | text-align: center; | ||
505 | height: 100%; | ||
506 | -webkit-writing-mode: vertical-rl; | ||
507 | writing-mode: vertical-rl; | ||
508 | line-height: 34px; | ||
509 | letter-spacing: 2px; | ||
555 | } | 510 | } |
556 | th { | 511 | } |
557 | width: 60px; | 512 | .selectedZt { |
558 | height: 40px; | 513 | // background-color: #5A78DE; |
559 | white-space: nowrap; | 514 | color: #3d59c4; |
560 | background-color: #eceef2; | 515 | } |
516 | } | ||
517 | .legendTable-wrap { | ||
518 | transition: 0.5s; | ||
519 | float: right; | ||
520 | overflow: hidden; | ||
521 | .legendTable { | ||
522 | margin-top: -1px; | ||
523 | .fa-circle { | ||
524 | display: inline-block; | ||
525 | width: 12px; | ||
526 | height: 12px; | ||
527 | border-radius: 50%; | ||
528 | vertical-align: middle; | ||
529 | margin-right: 4px; | ||
561 | } | 530 | } |
562 | td { | 531 | tr { |
563 | height: 40px; | 532 | height: 40px; |
564 | text-align: center; | 533 | line-height: 40px; |
565 | white-space: nowrap; | 534 | border-color: #d8e0ea !important; |
566 | } | 535 | th:first-child { |
567 | td:first-child { | 536 | width: 80px; |
568 | text-align: left; | 537 | } |
569 | text-indent: 2px; | 538 | th { |
539 | width: 60px; | ||
540 | height: 40px; | ||
541 | white-space: nowrap; | ||
542 | background-color: #eceef2; | ||
543 | } | ||
544 | td { | ||
545 | height: 40px; | ||
546 | text-align: center; | ||
547 | white-space: nowrap; | ||
548 | } | ||
549 | td:first-child { | ||
550 | text-align: left; | ||
551 | text-indent: 2px; | ||
552 | } | ||
570 | } | 553 | } |
571 | } | 554 | } |
572 | } | 555 | } |
573 | } | 556 | } |
574 | } | 557 | } |
575 | } | 558 | } |
576 | } | ||
577 | </style> | 559 | </style> | ... | ... |
1 | <!-- | ||
2 | * @Description: | ||
3 | * @Autor: renchao | ||
4 | * @LastEditTime: 2023-07-19 09:51:37 | ||
5 | --> | ||
1 | <template> | 6 | <template> |
2 | <div class="bdcqldjml"> | 7 | <div class="bdcqldjml"> |
3 | <table class="mlTable"> | 8 | <table class="mlTable"> |
... | @@ -23,51 +28,51 @@ | ... | @@ -23,51 +28,51 @@ |
23 | </template> | 28 | </template> |
24 | 29 | ||
25 | <script> | 30 | <script> |
26 | import { getBdcqldjmlByBdcdyid } from "@/api/djbDetail.js"; | 31 | import { getBdcqldjmlByBdcdyid } from "@/api/djbDetail.js"; |
27 | export default { | 32 | export default { |
28 | data() { | 33 | data () { |
29 | return { | 34 | return { |
30 | bdcqlml: [], | 35 | bdcqlml: [], |
31 | propsParam: this.$attrs, | 36 | propsParam: this.$attrs, |
32 | }; | 37 | }; |
33 | }, | 38 | }, |
34 | mounted() { | 39 | mounted () { |
35 | getBdcqldjmlByBdcdyid({ bdcdyid: this.propsParam.bdcdyid }).then((res) => { | 40 | getBdcqldjmlByBdcdyid({ bdcdyid: this.propsParam.bdcdyid }).then((res) => { |
36 | if (res.code === 200) { | 41 | if (res.code === 200) { |
37 | this.bdcqlml = res.result; | 42 | this.bdcqlml = res.result; |
38 | } | 43 | } |
39 | }); | 44 | }); |
40 | }, | 45 | }, |
41 | }; | 46 | }; |
42 | </script> | 47 | </script> |
43 | 48 | ||
44 | <style lang="scss" scoped> | 49 | <style lang="scss" scoped> |
45 | .bdcqldjml { | 50 | .bdcqldjml { |
46 | width: 100%; | 51 | width: 100%; |
47 | height: 100%; | 52 | height: 100%; |
48 | background: #fff; | 53 | background: #fff; |
49 | overflow-y: scroll; | 54 | overflow-y: scroll; |
50 | .mlTable { | 55 | .mlTable { |
51 | width: 90%; | 56 | width: 90%; |
52 | margin: 0 auto; | 57 | margin: 0 auto; |
53 | color: #333; | 58 | color: #333; |
54 | border-spacing: 1px; | 59 | border-spacing: 1px; |
55 | background-color: #333; | 60 | background-color: #333; |
56 | 61 | ||
57 | .title { | 62 | .title { |
58 | font-size: 20px; | 63 | font-size: 20px; |
59 | line-height: 60px; | 64 | line-height: 60px; |
60 | font-family: serif; | 65 | font-family: serif; |
61 | position: relative; | 66 | position: relative; |
62 | } | 67 | } |
63 | 68 | ||
64 | td, | 69 | td, |
65 | th { | 70 | th { |
66 | background-color: white; | 71 | background-color: white; |
67 | line-height: 30px; | 72 | line-height: 30px; |
68 | padding: 0 4px; | 73 | padding: 0 4px; |
69 | text-align: center; | 74 | text-align: center; |
75 | } | ||
70 | } | 76 | } |
71 | } | 77 | } |
72 | } | ||
73 | </style> | 78 | </style> | ... | ... |
1 | <!-- | ||
2 | * @Description: | ||
3 | * @Autor: renchao | ||
4 | * @LastEditTime: 2023-07-19 09:52:07 | ||
5 | --> | ||
1 | <template> | 6 | <template> |
2 | <div class="bdcqljqtsx"> | 7 | <div class="bdcqljqtsx"> |
3 | <div class="content"> | 8 | <div class="content"> |
... | @@ -49,59 +54,59 @@ | ... | @@ -49,59 +54,59 @@ |
49 | </template> | 54 | </template> |
50 | 55 | ||
51 | <script> | 56 | <script> |
52 | import { getBdcqljqtsx } from "@/api/djbDetail.js"; | 57 | import { getBdcqljqtsx } from "@/api/djbDetail.js"; |
53 | export default { | 58 | export default { |
54 | name: "bdcqljqtsx", | 59 | name: "bdcqljqtsx", |
55 | data() { | 60 | data () { |
56 | return { | 61 | return { |
57 | //传递参数 | 62 | //传递参数 |
58 | propsParam: this.$attrs, | 63 | propsParam: this.$attrs, |
59 | qlxxList: "", | 64 | qlxxList: "", |
60 | }; | 65 | }; |
61 | }, | 66 | }, |
62 | mounted() { | 67 | mounted () { |
63 | getBdcqljqtsx({ | 68 | getBdcqljqtsx({ |
64 | bdcdyid: this.propsParam.bdcdyid, | 69 | bdcdyid: this.propsParam.bdcdyid, |
65 | bdcdyh: this.propsParam.bdcdyh, | 70 | bdcdyh: this.propsParam.bdcdyh, |
66 | }).then((res) => { | 71 | }).then((res) => { |
67 | if (res.code === 200) { | 72 | if (res.code === 200) { |
68 | this.qlxxList = res.result; | 73 | this.qlxxList = res.result; |
69 | } | 74 | } |
70 | }); | 75 | }); |
71 | }, | 76 | }, |
72 | }; | 77 | }; |
73 | </script> | 78 | </script> |
74 | 79 | ||
75 | <style lang="scss" scoped> | 80 | <style lang="scss" scoped> |
76 | .bdcqljqtsx { | 81 | .bdcqljqtsx { |
77 | width: 100%; | 82 | width: 100%; |
78 | height: 100%; | ||
79 | background: #fff; | ||
80 | |||
81 | .content { | ||
82 | width: 50%; | ||
83 | height: 100%; | 83 | height: 100%; |
84 | margin: 0 auto; | 84 | background: #fff; |
85 | text-align: right; | ||
86 | color: #333; | ||
87 | font-family: "Arial Negreta", "Arial Normal", "Arial", sans-serif; | ||
88 | font-weight: 700; | ||
89 | font-size: 18px; | ||
90 | line-height: 16px; | ||
91 | 85 | ||
92 | .title { | 86 | .content { |
93 | font-size: 32px; | 87 | width: 50%; |
94 | text-align: center; | 88 | height: 100%; |
95 | padding: 40px 0; | 89 | margin: 0 auto; |
96 | line-height: 34px; | 90 | text-align: right; |
97 | } | 91 | color: #333; |
92 | font-family: "Arial Negreta", "Arial Normal", "Arial", sans-serif; | ||
93 | font-weight: 700; | ||
94 | font-size: 18px; | ||
95 | line-height: 16px; | ||
98 | 96 | ||
99 | .underline { | 97 | .title { |
100 | font-size: 14px; | 98 | font-size: 32px; |
101 | font-weight: normal; | 99 | text-align: center; |
102 | text-decoration: underline; | 100 | padding: 40px 0; |
103 | display: inline-block; | 101 | line-height: 34px; |
102 | } | ||
103 | |||
104 | .underline { | ||
105 | font-size: 14px; | ||
106 | font-weight: normal; | ||
107 | text-decoration: underline; | ||
108 | display: inline-block; | ||
109 | } | ||
104 | } | 110 | } |
105 | } | 111 | } |
106 | } | ||
107 | </style> | 112 | </style> | ... | ... |
1 | <!-- | ||
2 | * @Description: | ||
3 | * @Autor: renchao | ||
4 | * @LastEditTime: 2023-07-19 09:52:46 | ||
5 | --> | ||
1 | <template> | 6 | <template> |
2 | <div class="content"> | 7 | <div class="content"> |
3 | <div class="left"> | 8 | <div class="left"> |
... | @@ -69,7 +74,7 @@ | ... | @@ -69,7 +74,7 @@ |
69 | this.componentTag = (r) => | 74 | this.componentTag = (r) => |
70 | require.ensure([], () => r(require("@/views/registerBook/" + form))); | 75 | require.ensure([], () => r(require("@/views/registerBook/" + form))); |
71 | }, | 76 | }, |
72 | }, | 77 | } |
73 | }; | 78 | }; |
74 | </script> | 79 | </script> |
75 | <style scoped lang="scss"> | 80 | <style scoped lang="scss"> | ... | ... |
1 | <!-- | ||
2 | * @Description: | ||
3 | * @Autor: renchao | ||
4 | * @LastEditTime: 2023-07-19 09:52:42 | ||
5 | --> | ||
1 | <template> | 6 | <template> |
2 | <div class="djbfm"> | 7 | <div class="djbfm"> |
3 | <br /><br /> | 8 | <br /><br /> |
... | @@ -33,76 +38,76 @@ | ... | @@ -33,76 +38,76 @@ |
33 | </template> | 38 | </template> |
34 | 39 | ||
35 | <script> | 40 | <script> |
36 | import { getDjbfm } from "@/api/djbDetail.js"; | 41 | import { getDjbfm } from "@/api/djbDetail.js"; |
37 | 42 | ||
38 | export default { | 43 | export default { |
39 | data () { | 44 | data () { |
40 | return { | 45 | return { |
41 | //传递参数 | 46 | //传递参数 |
42 | propsParam: this.$attrs, | 47 | propsParam: this.$attrs, |
43 | info: {}, | 48 | info: {}, |
44 | }; | 49 | }; |
45 | }, | ||
46 | mounted () { | ||
47 | this.loadData(); | ||
48 | }, | ||
49 | methods: { | ||
50 | loadData () { | ||
51 | getDjbfm({ bdcdyid: this.propsParam.bdcdyid }).then((res) => { | ||
52 | if (res.code === 200) { | ||
53 | this.info = res.result; | ||
54 | } | ||
55 | }); | ||
56 | }, | 50 | }, |
57 | }, | 51 | mounted () { |
58 | }; | 52 | this.loadData(); |
53 | }, | ||
54 | methods: { | ||
55 | loadData () { | ||
56 | getDjbfm({ bdcdyid: this.propsParam.bdcdyid }).then((res) => { | ||
57 | if (res.code === 200) { | ||
58 | this.info = res.result; | ||
59 | } | ||
60 | }); | ||
61 | }, | ||
62 | }, | ||
63 | }; | ||
59 | </script> | 64 | </script> |
60 | 65 | ||
61 | <style lang="scss" scoped> | 66 | <style lang="scss" scoped> |
62 | .djbfm { | 67 | .djbfm { |
63 | width: 100%; | 68 | width: 100%; |
64 | height: 100%; | 69 | height: 100%; |
65 | background: #fff; | 70 | background: #fff; |
66 | border-right: 1px solid #ccc; | 71 | border-right: 1px solid #ccc; |
67 | line-height: 45px; | 72 | line-height: 45px; |
68 | text-align: center; | 73 | text-align: center; |
69 | font-size: 18px; | 74 | font-size: 18px; |
70 | font-family: serif; | 75 | font-family: serif; |
71 | position: relative; | 76 | position: relative; |
72 | 77 | ||
73 | font { | 78 | font { |
74 | border-bottom: 1px solid #000; | 79 | border-bottom: 1px solid #000; |
75 | display: inline-block; | 80 | display: inline-block; |
76 | padding: 0 15px; | 81 | padding: 0 15px; |
77 | line-height: 16px; | 82 | line-height: 16px; |
78 | } | 83 | } |
79 | 84 | ||
80 | .title { | 85 | .title { |
81 | height: 40%; | 86 | height: 40%; |
82 | display: flex; | 87 | display: flex; |
83 | font-size: 38px; | 88 | font-size: 38px; |
84 | color: #000; | 89 | color: #000; |
85 | justify-content: center; | 90 | justify-content: center; |
86 | align-items: center; | 91 | align-items: center; |
87 | } | 92 | } |
88 | 93 | ||
89 | .bottom { | 94 | .bottom { |
90 | position: absolute; | 95 | position: absolute; |
91 | bottom: 0px; | 96 | bottom: 0px; |
92 | text-align: center; | 97 | text-align: center; |
93 | width: 100%; | 98 | width: 100%; |
94 | left: 0; | 99 | left: 0; |
95 | height: 100px; | 100 | height: 100px; |
96 | line-height: 100px; | 101 | line-height: 100px; |
97 | 102 | ||
98 | p { | 103 | p { |
99 | font-size: 28px; | 104 | font-size: 28px; |
100 | } | 105 | } |
101 | 106 | ||
102 | font { | 107 | font { |
103 | font-size: 24px; | 108 | font-size: 24px; |
104 | line-height: 24px; | 109 | line-height: 24px; |
110 | } | ||
105 | } | 111 | } |
106 | } | 112 | } |
107 | } | ||
108 | </style> | 113 | </style> | ... | ... |
1 | <!-- | 1 | <!-- |
2 | * @Description: | 2 | * @Description: |
3 | * @Autor: renchao | 3 | * @Autor: renchao |
4 | * @LastEditTime: 2023-07-13 16:42:17 | 4 | * @LastEditTime: 2023-07-19 10:23:27 |
5 | --> | 5 | --> |
6 | <template> | 6 | <template> |
7 | <div> | 7 | <div> |
... | @@ -69,19 +69,19 @@ | ... | @@ -69,19 +69,19 @@ |
69 | }, | 69 | }, |
70 | { | 70 | { |
71 | prop: 'dcode', | 71 | prop: 'dcode', |
72 | width: '100', | 72 | width: '150', |
73 | label: '字典项编码', | 73 | label: '字典项编码', |
74 | render: (h, scope) => { | 74 | render: (h, scope) => { |
75 | return ( | 75 | return ( |
76 | <div> | 76 | <div> |
77 | <el-input placeholder="字典项编码" disabled={this.formData.isenable == 2} v-show={scope.row.codeShow} v-fo value={scope.row[scope.column.property]} | 77 | <el-input placeholder="字典项编码" disabled={this.formData.isenable == 2} v-show={scope.row.codeShow} v-fo value={scope.row[scope.column.property]} |
78 | onFocus={() => { this.itemShowFalse(); scope.row.codeShow = true; }} | 78 | onFocus={() => { this.itemShowFalse(); scope.row.codeShow = true; }} |
79 | onInput={(val) => { scope.row[scope.column.property] = val; this.itemShowFalse(); scope.row.codeShow = true; }} maxlength='8'></el-input> | 79 | onInput={(val) => { scope.row[scope.column.property] = val; this.itemShowFalse(); scope.row.codeShow = true; }} maxlength='20'></el-input> |
80 | 80 | ||
81 | 81 | ||
82 | <el-input placeholder="字典项编码" disabled={this.formData.isenable == 2} v-show={!scope.row.codeShow} value={scope.row[scope.column.property]} | 82 | <el-input placeholder="字典项编码" disabled={this.formData.isenable == 2} v-show={!scope.row.codeShow} value={scope.row[scope.column.property]} |
83 | onFocus={() => { this.itemShowFalse(); scope.row.codeShow = true; }} | 83 | onFocus={() => { this.itemShowFalse(); scope.row.codeShow = true; }} |
84 | onInput={(val) => { scope.row[scope.column.property] = val; this.itemShowFalse(); scope.row.codeShow = true; }} maxlength='8'></el-input> | 84 | onInput={(val) => { scope.row[scope.column.property] = val; this.itemShowFalse(); scope.row.codeShow = true; }} maxlength='20'></el-input> |
85 | </div> | 85 | </div> |
86 | ) | 86 | ) |
87 | } | 87 | } |
... | @@ -106,17 +106,17 @@ | ... | @@ -106,17 +106,17 @@ |
106 | { | 106 | { |
107 | prop: 'normcode', | 107 | prop: 'normcode', |
108 | label: '部标编码', | 108 | label: '部标编码', |
109 | width: '100', | 109 | width: '150', |
110 | render: (h, scope) => { | 110 | render: (h, scope) => { |
111 | return ( | 111 | return ( |
112 | <div> | 112 | <div> |
113 | <el-input placeholder="部标编码" disabled={this.formData.isenable == 2} v-show={scope.row.normcodeShow} v-fo value={scope.row[scope.column.property]} | 113 | <el-input placeholder="部标编码" disabled={this.formData.isenable == 2} v-show={scope.row.normcodeShow} v-fo value={scope.row[scope.column.property]} |
114 | onFocus={() => { this.itemShowFalse(); scope.row.normcodeShow = true; }} | 114 | onFocus={() => { this.itemShowFalse(); scope.row.normcodeShow = true; }} |
115 | onInput={(val) => { scope.row[scope.column.property] = val; this.itemShowFalse(); scope.row.codeShow = true; }} maxlength='8'></el-input> | 115 | onInput={(val) => { scope.row[scope.column.property] = val; this.itemShowFalse(); scope.row.codeShow = true; }} maxlength='20'></el-input> |
116 | 116 | ||
117 | <el-input placeholder="部标编码" disabled={this.formData.isenable == 2} v-show={!scope.row.normcodeShow} value={scope.row[scope.column.property]} | 117 | <el-input placeholder="部标编码" disabled={this.formData.isenable == 2} v-show={!scope.row.normcodeShow} value={scope.row[scope.column.property]} |
118 | onFocus={() => { this.itemShowFalse(); scope.row.normcodeShow = true; }} | 118 | onFocus={() => { this.itemShowFalse(); scope.row.normcodeShow = true; }} |
119 | onInput={(val) => { scope.row[scope.column.property] = val; this.itemShowFalse(); scope.row.codeShow = true; }} maxlength='8'></el-input> | 119 | onInput={(val) => { scope.row[scope.column.property] = val; this.itemShowFalse(); scope.row.codeShow = true; }} maxlength='20'></el-input> |
120 | </div> | 120 | </div> |
121 | ) | 121 | ) |
122 | } | 122 | } |
... | @@ -152,7 +152,7 @@ | ... | @@ -152,7 +152,7 @@ |
152 | } | 152 | } |
153 | }, | 153 | }, |
154 | { | 154 | { |
155 | width: '130', | 155 | width: '100', |
156 | label: '移动', | 156 | label: '移动', |
157 | render: (h, scope) => { | 157 | render: (h, scope) => { |
158 | return ( | 158 | return ( |
... | @@ -164,7 +164,7 @@ | ... | @@ -164,7 +164,7 @@ |
164 | } | 164 | } |
165 | }, | 165 | }, |
166 | { | 166 | { |
167 | width: '150', | 167 | width: '130', |
168 | label: '操作', | 168 | label: '操作', |
169 | render: (h, scope) => { | 169 | render: (h, scope) => { |
170 | return ( | 170 | return ( |
... | @@ -324,9 +324,16 @@ | ... | @@ -324,9 +324,16 @@ |
324 | </script> | 324 | </script> |
325 | <style rel="stylesheet/scss" lang="scss" scoped> | 325 | <style rel="stylesheet/scss" lang="scss" scoped> |
326 | @import "~@/styles/dialogBoxheader.scss"; | 326 | @import "~@/styles/dialogBoxheader.scss"; |
327 | 327 | /deep/.el-radio-group { | |
328 | display: flex; | ||
329 | justify-content: center; | ||
330 | } | ||
328 | /deep/.el-radio { | 331 | /deep/.el-radio { |
329 | margin-right: 5px !important; | 332 | margin-right: 5px !important; |
333 | display: flex; | ||
334 | } | ||
335 | /deep/.el-radio__label { | ||
336 | display: block !important; | ||
330 | } | 337 | } |
331 | </style> | 338 | </style> |
332 | 339 | ... | ... |
-
Please register or sign in to post a comment