You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
			
				
					244 lines
				
				4.4 KiB
			
		
		
			
		
	
	
					244 lines
				
				4.4 KiB
			| 
								 
											6 months ago
										 
									 | 
							
								@@master_page.html
							 | 
						||
| 
								 | 
							
								<div id="app">
							 | 
						||
| 
								 | 
							
									<section class="app-container">
							 | 
						||
| 
								 | 
							
										<form
							 | 
						||
| 
								 | 
							
											id="frmSubmit"
							 | 
						||
| 
								 | 
							
											class="form"
							 | 
						||
| 
								 | 
							
										>
							 | 
						||
| 
								 | 
							
											<section
							 | 
						||
| 
								 | 
							
												class="row"
							 | 
						||
| 
								 | 
							
												style="grid-area: a"
							 | 
						||
| 
								 | 
							
											>
							 | 
						||
| 
								 | 
							
												<label for="">本地</label>
							 | 
						||
| 
								 | 
							
												<input
							 | 
						||
| 
								 | 
							
													type="text"
							 | 
						||
| 
								 | 
							
													placeholder="表名"
							 | 
						||
| 
								 | 
							
													v-model="formData.SYSTEM_TABLE_NAME"
							 | 
						||
| 
								 | 
							
												/>
							 | 
						||
| 
								 | 
							
												<input
							 | 
						||
| 
								 | 
							
													type="text"
							 | 
						||
| 
								 | 
							
													placeholder="表注释"
							 | 
						||
| 
								 | 
							
													v-model="formData.SYSTEM_TABLE_CNNAME"
							 | 
						||
| 
								 | 
							
												/>
							 | 
						||
| 
								 | 
							
												<input
							 | 
						||
| 
								 | 
							
													type="text"
							 | 
						||
| 
								 | 
							
													placeholder="字段名"
							 | 
						||
| 
								 | 
							
													v-model="formData.SYSTEM_FIELD"
							 | 
						||
| 
								 | 
							
												/>
							 | 
						||
| 
								 | 
							
												<input
							 | 
						||
| 
								 | 
							
													type="text"
							 | 
						||
| 
								 | 
							
													placeholder="字段注释"
							 | 
						||
| 
								 | 
							
													required
							 | 
						||
| 
								 | 
							
													v-model="formData.SYSTEM_NAME"
							 | 
						||
| 
								 | 
							
												/>
							 | 
						||
| 
								 | 
							
												<select
							 | 
						||
| 
								 | 
							
													style="width: 100px"
							 | 
						||
| 
								 | 
							
													v-model="formData.SYSTEM_FIELD_TYPE"
							 | 
						||
| 
								 | 
							
												>
							 | 
						||
| 
								 | 
							
													<option
							 | 
						||
| 
								 | 
							
														v-for="(item,index) in dict.filedType"
							 | 
						||
| 
								 | 
							
														:key="index"
							 | 
						||
| 
								 | 
							
														:value="item.VALUE"
							 | 
						||
| 
								 | 
							
													>
							 | 
						||
| 
								 | 
							
														{{item.LABEL}}
							 | 
						||
| 
								 | 
							
													</option>
							 | 
						||
| 
								 | 
							
												</select>
							 | 
						||
| 
								 | 
							
												<input
							 | 
						||
| 
								 | 
							
													v-if="formData.SYSTEM_FIELD_TYPE == 'dict'"
							 | 
						||
| 
								 | 
							
													type="text"
							 | 
						||
| 
								 | 
							
													placeholder="字典名称"
							 | 
						||
| 
								 | 
							
													v-model="formData.SYSTEM_DICT_NAME"
							 | 
						||
| 
								 | 
							
												/>
							 | 
						||
| 
								 | 
							
											</section>
							 | 
						||
| 
								 | 
							
											<section
							 | 
						||
| 
								 | 
							
												class="row"
							 | 
						||
| 
								 | 
							
												style="grid-area: b"
							 | 
						||
| 
								 | 
							
											>
							 | 
						||
| 
								 | 
							
												<label for="">三方</label>
							 | 
						||
| 
								 | 
							
												<input
							 | 
						||
| 
								 | 
							
													type="text"
							 | 
						||
| 
								 | 
							
													placeholder="表名"
							 | 
						||
| 
								 | 
							
													v-model="formData.OBJECT_TABLE_NAME"
							 | 
						||
| 
								 | 
							
												/>
							 | 
						||
| 
								 | 
							
												<input
							 | 
						||
| 
								 | 
							
													type="text"
							 | 
						||
| 
								 | 
							
													placeholder="表注释"
							 | 
						||
| 
								 | 
							
													v-model="formData.OBJECT_TABLE_CNNAME"
							 | 
						||
| 
								 | 
							
												/>
							 | 
						||
| 
								 | 
							
												<input
							 | 
						||
| 
								 | 
							
													type="text"
							 | 
						||
| 
								 | 
							
													placeholder="字段名"
							 | 
						||
| 
								 | 
							
													v-model="formData.INTERFACE_FIELD"
							 | 
						||
| 
								 | 
							
												/>
							 | 
						||
| 
								 | 
							
												<input
							 | 
						||
| 
								 | 
							
													type="text"
							 | 
						||
| 
								 | 
							
													placeholder="字段注释"
							 | 
						||
| 
								 | 
							
													required
							 | 
						||
| 
								 | 
							
													v-model="formData.INTERFACE_NAME"
							 | 
						||
| 
								 | 
							
												/>
							 | 
						||
| 
								 | 
							
												<select
							 | 
						||
| 
								 | 
							
													style="width: 100px"
							 | 
						||
| 
								 | 
							
													title="字段类型"
							 | 
						||
| 
								 | 
							
													v-model="formData.OBJECT_FIELD_TYPE"
							 | 
						||
| 
								 | 
							
												>
							 | 
						||
| 
								 | 
							
													<option
							 | 
						||
| 
								 | 
							
														v-for="(item,index) in dict.filedType"
							 | 
						||
| 
								 | 
							
														:key="index"
							 | 
						||
| 
								 | 
							
														:value="item.VALUE"
							 | 
						||
| 
								 | 
							
													>
							 | 
						||
| 
								 | 
							
														{{item.LABEL}}
							 | 
						||
| 
								 | 
							
													</option>
							 | 
						||
| 
								 | 
							
												</select>
							 | 
						||
| 
								 | 
							
												<input
							 | 
						||
| 
								 | 
							
													v-if="formData.OBJECT_FIELD_TYPE == 'dict'"
							 | 
						||
| 
								 | 
							
													type="text"
							 | 
						||
| 
								 | 
							
													placeholder="字典名称"
							 | 
						||
| 
								 | 
							
													v-model="formData.OBJECT_DICT_NAME"
							 | 
						||
| 
								 | 
							
												/>
							 | 
						||
| 
								 | 
							
											</section>
							 | 
						||
| 
								 | 
							
											<section
							 | 
						||
| 
								 | 
							
												class="domain"
							 | 
						||
| 
								 | 
							
												style="grid-area: c"
							 | 
						||
| 
								 | 
							
											>
							 | 
						||
| 
								 | 
							
												<button
							 | 
						||
| 
								 | 
							
													type="button"
							 | 
						||
| 
								 | 
							
													@click="save"
							 | 
						||
| 
								 | 
							
												>
							 | 
						||
| 
								 | 
							
													保存
							 | 
						||
| 
								 | 
							
												</button>
							 | 
						||
| 
								 | 
							
												<button>清空</button>
							 | 
						||
| 
								 | 
							
											</section>
							 | 
						||
| 
								 | 
							
										</form>
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										<section class="list">
							 | 
						||
| 
								 | 
							
											<section
							 | 
						||
| 
								 | 
							
												v-for="item in data.Data"
							 | 
						||
| 
								 | 
							
												:key="item.id"
							 | 
						||
| 
								 | 
							
											>
							 | 
						||
| 
								 | 
							
												{{item.ID}}
							 | 
						||
| 
								 | 
							
											</section>
							 | 
						||
| 
								 | 
							
										</section>
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										@@page_control.html
							 | 
						||
| 
								 | 
							
									</section>
							 | 
						||
| 
								 | 
							
								</div>
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								<script>
							 | 
						||
| 
								 | 
							
									new Vue({
							 | 
						||
| 
								 | 
							
										el: '#app',
							 | 
						||
| 
								 | 
							
										data() {
							 | 
						||
| 
								 | 
							
											return {
							 | 
						||
| 
								 | 
							
												count: 1,
							 | 
						||
| 
								 | 
							
												data: null,
							 | 
						||
| 
								 | 
							
												error: null,
							 | 
						||
| 
								 | 
							
												dict: {
							 | 
						||
| 
								 | 
							
													filedType: [],
							 | 
						||
| 
								 | 
							
												},
							 | 
						||
| 
								 | 
							
												formData: {
							 | 
						||
| 
								 | 
							
													ID: '',
							 | 
						||
| 
								 | 
							
													SYSTEM_NAME: '',
							 | 
						||
| 
								 | 
							
													SYSTEM_FIELD: '',
							 | 
						||
| 
								 | 
							
													INTERFACE_NAME: '',
							 | 
						||
| 
								 | 
							
													INTERFACE_FIELD: '',
							 | 
						||
| 
								 | 
							
													OBJECT_TABLE_NAME: '',
							 | 
						||
| 
								 | 
							
													OBJECT_TABLE_CNNAME: '',
							 | 
						||
| 
								 | 
							
													SYSTEM_TABLE_CNNAME: '',
							 | 
						||
| 
								 | 
							
													SYSTEM_TABLE_NAME: '',
							 | 
						||
| 
								 | 
							
													SYSTEM_FIELD_TYPE: 'value',
							 | 
						||
| 
								 | 
							
													SYSTEM_DICT_NAME: '',
							 | 
						||
| 
								 | 
							
													OBJECT_FIELD_TYPE: 'value',
							 | 
						||
| 
								 | 
							
													OBJECT_DICT_NAME: '',
							 | 
						||
| 
								 | 
							
												},
							 | 
						||
| 
								 | 
							
											}
							 | 
						||
| 
								 | 
							
										},
							 | 
						||
| 
								 | 
							
										created() {
							 | 
						||
| 
								 | 
							
											this.getDictOption()
							 | 
						||
| 
								 | 
							
											this.fetchData('')
							 | 
						||
| 
								 | 
							
										},
							 | 
						||
| 
								 | 
							
										mounted() {},
							 | 
						||
| 
								 | 
							
										methods: {
							 | 
						||
| 
								 | 
							
											getDictOption() {
							 | 
						||
| 
								 | 
							
												axios
							 | 
						||
| 
								 | 
							
													.get('/dict_data/simpleList?type=std_filed_type', jwHeader)
							 | 
						||
| 
								 | 
							
													.then(res => {
							 | 
						||
| 
								 | 
							
														this.dict.filedType = res.data
							 | 
						||
| 
								 | 
							
													})
							 | 
						||
| 
								 | 
							
											},
							 | 
						||
| 
								 | 
							
											fetchData(append) {
							 | 
						||
| 
								 | 
							
												var url = '/std_filed/list?' + append
							 | 
						||
| 
								 | 
							
												axios
							 | 
						||
| 
								 | 
							
													.get(url, jwHeader)
							 | 
						||
| 
								 | 
							
													.then(response => {
							 | 
						||
| 
								 | 
							
														this.data = response.data
							 | 
						||
| 
								 | 
							
														this.error = null
							 | 
						||
| 
								 | 
							
													})
							 | 
						||
| 
								 | 
							
													.catch(error => {
							 | 
						||
| 
								 | 
							
														this.error = error.message
							 | 
						||
| 
								 | 
							
														this.data = null
							 | 
						||
| 
								 | 
							
													})
							 | 
						||
| 
								 | 
							
											},
							 | 
						||
| 
								 | 
							
											save() {
							 | 
						||
| 
								 | 
							
												const data = this.formData
							 | 
						||
| 
								 | 
							
												const url = data.ID ? '/std_filed/update' : '/std_filed/create'
							 | 
						||
| 
								 | 
							
												axios
							 | 
						||
| 
								 | 
							
													.post(url, data, jwHeader)
							 | 
						||
| 
								 | 
							
													.then(response => {
							 | 
						||
| 
								 | 
							
														console.log(response.data)
							 | 
						||
| 
								 | 
							
														this.fetchData('')
							 | 
						||
| 
								 | 
							
													})
							 | 
						||
| 
								 | 
							
													.catch(error => {})
							 | 
						||
| 
								 | 
							
											},
							 | 
						||
| 
								 | 
							
										},
							 | 
						||
| 
								 | 
							
									})
							 | 
						||
| 
								 | 
							
								</script>
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								<style>
							 | 
						||
| 
								 | 
							
									.app-container {
							 | 
						||
| 
								 | 
							
										box-sizing: border-box;
							 | 
						||
| 
								 | 
							
										padding: 10px;
							 | 
						||
| 
								 | 
							
										background-color: #fff;
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									.form {
							 | 
						||
| 
								 | 
							
										padding: 10px;
							 | 
						||
| 
								 | 
							
										display: grid;
							 | 
						||
| 
								 | 
							
										grid-template-rows: repeat(2, 1fr);
							 | 
						||
| 
								 | 
							
										grid-template-columns: auto auto;
							 | 
						||
| 
								 | 
							
										grid-template-areas: 'a c' 'b c';
							 | 
						||
| 
								 | 
							
										gap: 5px;
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									.form .row {
							 | 
						||
| 
								 | 
							
										display: flex;
							 | 
						||
| 
								 | 
							
										flex-flow: row nowrap;
							 | 
						||
| 
								 | 
							
										gap: 5px;
							 | 
						||
| 
								 | 
							
										align-items: center;
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									.form .domain {
							 | 
						||
| 
								 | 
							
										display: flex;
							 | 
						||
| 
								 | 
							
										flex-flow: row nowrap;
							 | 
						||
| 
								 | 
							
										align-items: end;
							 | 
						||
| 
								 | 
							
										gap: 10px;
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									.domain button {
							 | 
						||
| 
								 | 
							
										border: 0;
							 | 
						||
| 
								 | 
							
										padding: 5px 10px;
							 | 
						||
| 
								 | 
							
										background-color: #0029be;
							 | 
						||
| 
								 | 
							
										border-radius: 4px;
							 | 
						||
| 
								 | 
							
										color: #fff;
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									.row label {
							 | 
						||
| 
								 | 
							
										margin-bottom: 0;
							 | 
						||
| 
								 | 
							
										font-weight: normal;
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									.row input,
							 | 
						||
| 
								 | 
							
									.row select {
							 | 
						||
| 
								 | 
							
										outline: none;
							 | 
						||
| 
								 | 
							
										border: 0;
							 | 
						||
| 
								 | 
							
										padding: 5px 10px;
							 | 
						||
| 
								 | 
							
										background-color: #cccccc88;
							 | 
						||
| 
								 | 
							
										border-radius: 4px;
							 | 
						||
| 
								 | 
							
										color: #000;
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
								</style>
							 |