Commit fd326b87 by 刘泽志

0202

parent 8ef73186
import request from "@/utils/request";
const prefix = '/data/field'
/**
* 字段查询
* @param params
* @returns {*}
*/
export function queryField(params) {
return request({
url: `${prefix}`,
method: 'get',
params
})
}
/**
* 新增字段
* @param data
* @returns {*}
*/
export function addField(data) {
return request({
url: `${prefix}`,
method: 'post',
data
})
}
/**
* 修改字段
* @param data
* @returns {*}
*/
export function updateField(data) {
return request({
url: `${prefix}/update`,
method: 'post',
data
})
}
/**
* 删除字段
* @param fieldId
* @returns {*}
*/
export function deleteField(fieldId) {
return request({
url: `${prefix}/delete`,
method: 'get',
params:{fieldId}
})
}
/**
* 根据基础模板重置字段
* @param excelId
* @returns {*}
*/
export function resetField(excelId){
return request({
url: `${prefix}/reset`,
method: 'get',
params:{excelId}
})
}
import request from '@/utils/request'
const prefix = '/data/import'
/**
* 查询数据源字典
* @returns {AxiosPromise<any>}
*/
export function queryDatasource() {
return request({
url: `${prefix}/datasource`,
method: 'get'
})
}
/**
* 查询表信息
* @param dataSourceId
* @returns {AxiosPromise<any>}
*/
export function queryTable(dataSourceId) {
return request({
url: `${prefix}/datasource/table`,
method: 'get',
params:{dataSourceId}
})
}
/**
* 查询数据库字段字典
* @param dataSourceId
* @param tableName
* @returns {AxiosPromise}
*/
export function queryDbField(dataSourceId,tableName) {
return request({
url: `${prefix}/datasource/field`,
method: 'get',
params:{dataSourceId,tableName}
})
}
/**
* 创建物理表
* @param tableName
* @param templateId
* @returns {*}
*/
export function createTable(tableName,templateId){
return request({
url: `${prefix}/table/create`,
method: 'get',
params:{tableName,templateId}
})
}
/**
* 数据分析并导出
* @param templateId
* @returns {*}
*/
export function analyzeExport(templateId){
return request({
url: `${prefix}/analyze/export`,
method: 'get',
params:{templateId},
responseType: "blob",
})
}
/**
* 清空数据
* @param data
* @returns {*}
*/
export function clearTemp(data){
return request({
url: `${prefix}/clearTemp`,
method: 'post',
data
})
}
/**
* 一键导入正式库
* @param data
* @returns {*}
*/
export function syncDb(data){
return request({
url: `${prefix}/syncDb`,
method: 'post',
data
})
}
import request from "@/utils/request";
const prefix = '/data/rule'
/**
* 规则查询
* @param params
* @returns {*}
*/
export function queryRule(params) {
return request({
url: `${prefix}`,
method: 'get',
params
})
}
/**
* 规则字典
* @returns {*}
*/
export function queryRuleDict() {
return request({
url: `${prefix}/dict`,
method: 'get'
})
}
/**
* 新增规则
* @param data
* @returns {*}
*/
export function addRule(data) {
return request({
url: `${prefix}`,
method: 'post',
data
})
}
/**
* 修改规则
* @param data
* @returns {*}
*/
export function updateRule(data) {
return request({
url: `${prefix}/update`,
method: 'post',
data
})
}
/**
* 删除规则
* @param ruleId
* @returns {*}
*/
export function deleteRule(ruleId) {
return request({
url: `${prefix}/delete`,
method: 'get',
params:{ruleId}
})
}
/**
* 规则测试
* @param data
* @returns {*}
*/
export function ruleTest(data) {
return request({
url: `${prefix}/test`,
method: 'post',
data
})
}
/**
* 快速绑定
* @param templateId
* @param ruleId
* @returns {AxiosPromise}
*/
export function quickBind(templateId,ruleId) {
return request({
url: `${prefix}/bind/quick`,
method: 'get',
params:{templateId,ruleId}
})
}
/**
* 查询绑定的规则
* @param fieldId
* @returns {AxiosPromise}
*/
export function queryBindRule(fieldId) {
return request({
url: `${prefix}/bind`,
method: 'get',
params:{fieldId}
})
}
/**
* 配置字段规则绑定
* @param data
* @returns {AxiosPromise}
*/
export function bindRule(data) {
return request({
url: `${prefix}/bind`,
method: 'post',
data
})
}
import request from '@/utils/request'
const prefix = '/data/template'
/**
* 模板查询
* @param params
* @returns {*}
*/
export function queryTemplate(params) {
return request({
url: `${prefix}`,
method: 'get',
params
})
}
/**
* 新增模板
* @param data
* @returns {*}
*/
export function addTemplate(data) {
return request({
url: `${prefix}`,
method: 'post',
data
})
}
/**
* 修改模板
* @param data
* @returns {*}
*/
export function updateTemplate(data) {
return request({
url: `${prefix}/update`,
method: 'post',
data
})
}
/**
* 删除模板
* @param templateId
* @returns {*}
*/
export function deleteTemplate(templateId) {
return request({
url: `${prefix}/delete`,
method: 'get',
params:{templateId}
})
}
/**
* 查询模板的所有字段数据
* @param templateId
* @returns {*}
*/
export function getAllTemplateField(templateId) {
return request({
url: `${prefix}/allField`,
method: 'get',
params:{templateId}
})
}
/**
* 查询模板的所有规则数据
* @param templateId
* @returns {*}
*/
export function getAllTemplateRule(templateId) {
return request({
url: `${prefix}/allRule`,
method: 'get',
params:{templateId}
})
}
/**
* 新增规则
* @param data
* @returns {*}
*/
export function addRuleByTemplate(data) {
return request({
url: `${prefix}/rule`,
method: 'post',
data
})
}
/**
* 修改规则
* @param data
* @returns {*}
*/
export function updateRuleByTemplate(data) {
return request({
url: `${prefix}/rule/update`,
method: 'post',
data
})
}
/**
* 删除规则
* @param ruleId
* @param templateId
* @returns {*}
*/
export function deleteRuleByTemplate(ruleId,templateId) {
return request({
url: `${prefix}/rule/delete`,
method: 'get',
params:{ruleId,templateId}
})
}
import request from "@/utils/request";
const prefix = '/data/dict'
/**
* 字典查询
* @param type
* @returns {*}
*/
export function queryDict(type) {
return request({
url: `${prefix}`,
method: 'get',
params:{type}
})
}
/**
* 新增字典
* @param data
* @returns {*}
*/
export function addDict(data) {
return request({
url: `${prefix}`,
method: 'post',
data
})
}
/**
* 修改字典
* @param data
* @returns {*}
*/
export function updateDict(data) {
return request({
url: `${prefix}/update`,
method: 'post',
data
})
}
/**
* 删除字典
* @param dictId
* @returns {*}
*/
export function deleteDict(dictId) {
return request({
url: `${prefix}/delete`,
method: 'get',
params:{dictId}
})
}
import request from '@/utils/request'
const prefix = '/dataImport'
/**
* 模板查询
* @param params
* @returns {*}
*/
export function queryTemplate(params) {
return request({
url: `${prefix}/template`,
method: 'get',
params
})
}
/**
* 新增模板
* @param data
* @returns {*}
*/
export function addTemplate(data) {
return request({
url: `${prefix}/template`,
method: 'post',
data
})
}
/**
* 修改模板
* @param data
* @returns {*}
*/
export function updateTemplate(data) {
return request({
url: `${prefix}/template/update`,
method: 'post',
data
})
}
/**
* 删除模板
* @param templateId
* @returns {*}
*/
export function deleteTemplate(templateId) {
return request({
url: `${prefix}/template/delete`,
method: 'get',
params:{templateId}
})
}
/**
* 字典查询
* @param type
* @returns {*}
*/
export function queryDict(type) {
return request({
url: `${prefix}/dict`,
method: 'get',
params:{type}
})
}
/**
* 新增字典
* @param data
* @returns {*}
*/
export function addDict(data) {
return request({
url: `${prefix}/dict`,
method: 'post',
data
})
}
/**
* 修改字典
* @param data
* @returns {*}
*/
export function updateDict(data) {
return request({
url: `${prefix}/dict/update`,
method: 'post',
data
})
}
/**
* 删除字典
* @param dictId
* @returns {*}
*/
export function deleteDict(dictId) {
return request({
url: `${prefix}/dict/delete`,
method: 'get',
params:{dictId}
})
}
/**
* 查询数据源字典
* @returns {AxiosPromise<any>}
*/
export function queryDatasource() {
return request({
url: `${prefix}/datasource`,
method: 'get'
})
}
/**
* 查询表信息
* @param dataSourceId
* @returns {AxiosPromise<any>}
*/
export function queryTable(dataSourceId) {
return request({
url: `${prefix}/datasource/table`,
method: 'get',
params:{dataSourceId}
})
}
/**
* 查询数据库字段字典
* @param dataSourceId
* @param tableName
* @returns {AxiosPromise}
*/
export function queryDbField(dataSourceId,tableName) {
return request({
url: `${prefix}/datasource/field`,
method: 'get',
params:{dataSourceId,tableName}
})
}
/**
* 字段查询
* @param params
* @returns {*}
*/
export function queryField(params) {
return request({
url: `${prefix}/field`,
method: 'get',
params
})
}
/**
* 新增字段
* @param data
* @returns {*}
*/
export function addField(data) {
return request({
url: `${prefix}/field`,
method: 'post',
data
})
}
/**
* 修改字段
* @param data
* @returns {*}
*/
export function updateField(data) {
return request({
url: `${prefix}/field/update`,
method: 'post',
data
})
}
/**
* 删除字段
* @param fieldId
* @returns {*}
*/
export function deleteField(fieldId) {
return request({
url: `${prefix}/field/delete`,
method: 'get',
params:{fieldId}
})
}
/**
* 规则查询
* @param params
* @returns {*}
*/
export function queryRule(params) {
return request({
url: `${prefix}/rule`,
method: 'get',
params
})
}
/**
* 规则字典
* @returns {*}
*/
export function queryRuleDict() {
return request({
url: `${prefix}/rule/dict`,
method: 'get'
})
}
/**
* 新增规则
* @param data
* @returns {*}
*/
export function addRule(data) {
return request({
url: `${prefix}/rule`,
method: 'post',
data
})
}
/**
* 修改规则
* @param data
* @returns {*}
*/
export function updateRule(data) {
return request({
url: `${prefix}/rule/update`,
method: 'post',
data
})
}
/**
* 删除规则
* @param ruleId
* @returns {*}
*/
export function deleteRule(ruleId) {
return request({
url: `${prefix}/rule/delete`,
method: 'get',
params:{ruleId}
})
}
/**
* 规则测试
* @param data
* @returns {*}
*/
export function ruleTest(data) {
return request({
url: `${prefix}/rule/test`,
method: 'post',
data
})
}
/**
* 快速绑定
* @param templateId
* @param ruleId
* @returns {AxiosPromise}
*/
export function quickBind(templateId,ruleId) {
return request({
url: `${prefix}/bind/quick`,
method: 'get',
params:{templateId,ruleId}
})
}
/**
* 查询绑定的规则
* @param fieldId
* @returns {AxiosPromise}
*/
export function queryBindRule(fieldId) {
return request({
url: `${prefix}/bind`,
method: 'get',
params:{fieldId}
})
}
/**
* 配置字段规则绑定
* @param data
* @returns {AxiosPromise}
*/
export function bindRule(data) {
return request({
url: `${prefix}/bind`,
method: 'post',
data
})
}
/**
* 上传excel
* @param data
* @returns {*}
*/
export function uploadExcel(data) {
return request({
url: `${prefix}/upload`,
method: 'post',
data,
headers: {
'Content-Type': 'multipart/form-data'
}
})
}
/**
* 下载模板
* @param excelId
* @returns {*}
*/
export function downloadTemplate(excelId) {
return request({
url: `${prefix}/template/download`,
method: 'get',
params:{excelId},
headers: { "Content-Type": "application/x-www-form-urlencoded" },
responseType: "blob",
})
}
/**
* 下载模板
* @param excelId
* @returns {*}
*/
export function getTemplateFileName(excelId) {
return request({
url: `${prefix}/template/download/filename`,
method: 'get',
params:{excelId}
})
}
export async function blobValidate(data) {
try {
const text = await data.text();
JSON.parse(text);
return false;
} catch (error) {
return true;
}
}
/**
* 根据基础模板重置字段
* @param excelId
* @returns {*}
*/
export function resetField(excelId){
return request({
url: `${prefix}/field/reset`,
method: 'get',
params:{excelId}
})
}
/**
* 创建物理表
* @param tableName
* @param templateId
* @returns {*}
*/
export function createTable(tableName,templateId){
return request({
url: `${prefix}/table/create`,
method: 'get',
params:{tableName,templateId}
})
}
/**
* 数据分析并导出
* @param templateId
* @returns {*}
*/
export function analyzeExport(templateId){
return request({
url: `${prefix}/analyze/export`,
method: 'get',
params:{templateId},
responseType: "blob",
})
}
/**
* 清空数据
* @param data
* @returns {*}
*/
export function clearTemp(data){
return request({
url: `${prefix}/clearTemp`,
method: 'post',
data
})
}
/**
* 一键导入正式库
* @param data
* @returns {*}
*/
export function syncDb(data){
return request({
url: `${prefix}/syncDb`,
method: 'post',
data
})
}
/**
* 查询模板的所有字段数据
* @param templateId
* @returns {*}
*/
export function getAllTemplateField(templateId) {
return request({
url: `${prefix}/template/allField`,
method: 'get',
params:{templateId}
})
}
/**
* 查询模板的所有规则数据
* @param templateId
* @returns {*}
*/
export function getAllTemplateRule(templateId) {
return request({
url: `${prefix}/template/allRule`,
method: 'get',
params:{templateId}
})
}
/**
* 新增规则
* @param data
* @returns {*}
*/
export function addRuleByTemplate(data) {
return request({
url: `${prefix}/rule/template`,
method: 'post',
data
})
}
/**
* 修改规则
* @param data
* @returns {*}
*/
export function updateRuleByTemplate(data) {
return request({
url: `${prefix}/rule/template/update`,
method: 'post',
data
})
}
/**
* 删除规则
* @param ruleId
* @param templateId
* @returns {*}
*/
export function deleteRuleByTemplate(ruleId,templateId) {
return request({
url: `${prefix}/rule/template/delete`,
method: 'get',
params:{ruleId,templateId}
})
}
import request from "@/utils/request";
const prefix = '/data/excel'
/**
* 上传excel
* @param data
* @returns {*}
*/
export function uploadExcel(data) {
return request({
url: `${prefix}/upload`,
method: 'post',
data,
headers: {
'Content-Type': 'multipart/form-data'
}
})
}
/**
* 下载模板
* @param excelId
* @returns {*}
*/
export function downloadTemplate(excelId) {
return request({
url: `${prefix}/download/template`,
method: 'get',
params:{excelId},
headers: { "Content-Type": "application/x-www-form-urlencoded" },
responseType: "blob",
})
}
/**
* 下载模板
* @param excelId
* @returns {*}
*/
export function getTemplateFileName(excelId) {
return request({
url: `${prefix}/download/template/filename`,
method: 'get',
params:{excelId}
})
}
export async function blobValidate(data) {
try {
const text = await data.text();
JSON.parse(text);
return false;
} catch (error) {
return true;
}
}
...@@ -7,6 +7,7 @@ ...@@ -7,6 +7,7 @@
</div> </div>
<el-menu :default-active="key" class="empty-menu" mode="horizontal" @select="handleSelect"> <el-menu :default-active="key" class="empty-menu" mode="horizontal" @select="handleSelect">
<el-menu-item index="/emport">数据导入</el-menu-item> <el-menu-item index="/emport">数据导入</el-menu-item>
<el-menu-item index="/field">元字段管理</el-menu-item>
<el-menu-item index="/rule">规则管理</el-menu-item> <el-menu-item index="/rule">规则管理</el-menu-item>
<el-menu-item index="/datasource">数据源管理</el-menu-item> <el-menu-item index="/datasource">数据源管理</el-menu-item>
</el-menu> </el-menu>
......
...@@ -53,7 +53,13 @@ export const constantRoutes = [ ...@@ -53,7 +53,13 @@ export const constantRoutes = [
component: () => import('@/views/emport/datasource/index'), component: () => import('@/views/emport/datasource/index'),
name: 'DatsSource', name: 'DatsSource',
meta: { title: '数据源管理', icon: '' } meta: { title: '数据源管理', icon: '' }
} },
{
path: 'field',
component: () => import('@/views/emport/field/index'),
name: 'Field',
meta: { title: '字段管理', icon: '' }
},
] ]
}, },
{ {
......
...@@ -112,11 +112,12 @@ ...@@ -112,11 +112,12 @@
width="400px" width="400px"
> >
<el-form ref="yearForm" size="small" :model="yearDialog.data" label-width="50px"> <el-form ref="yearForm" size="small" :model="yearDialog.data" label-width="50px">
<el-form-item required prop="label" label="标签"> <el-form-item required prop="value" label="年份">
<el-input v-model="yearDialog.data.label"/> <el-date-picker
</el-form-item> format="yyyy" value-format="yyyy"
<el-form-item required prop="value" label="值"> v-model="yearDialog.data.value"
<el-input v-model="yearDialog.data.value"/> type="year">
</el-date-picker>
</el-form-item> </el-form-item>
</el-form> </el-form>
<div slot="footer" class="dialog-footer"> <div slot="footer" class="dialog-footer">
...@@ -391,8 +392,8 @@ ...@@ -391,8 +392,8 @@
:data="templateRuleDialog.fieldList" :data="templateRuleDialog.fieldList"
/> />
</el-form-item> </el-form-item>
<el-form-item label="备注" prop="remarks"> <el-form-item label="四舍五入" prop="remarks">
<el-input v-model="ruleDialog.data.remarks" placeholder="备注" type="textarea"/> <el-input v-model="ruleDialog.data.remarks" placeholder="1-精确到小数点后一位"/>
</el-form-item> </el-form-item>
</el-form> </el-form>
<div slot="footer" class="dialog-footer"> <div slot="footer" class="dialog-footer">
...@@ -468,7 +469,12 @@ ...@@ -468,7 +469,12 @@
</template> </template>
<script> <script>
import * as Emport from '@/api/emport/Emport' import * as DataField from '@/api/emport/DataField'
import * as DataImport from '@/api/emport/DataImport'
import * as DataRule from '@/api/emport/DataRule'
import * as DataTemplate from '@/api/emport/DataTemplate'
import * as DictData from '@/api/emport/DictData'
import * as ExcelData from '@/api/emport/ExcelData'
import StringUtil from '@/utils/document/StringUtil' import StringUtil from '@/utils/document/StringUtil'
import AutoUpload from '@/views/emport/emport/AutoUpload.vue' import AutoUpload from '@/views/emport/emport/AutoUpload.vue'
import AutoLoading from '@/views/emport/emport/AutoLoading.vue' import AutoLoading from '@/views/emport/emport/AutoLoading.vue'
...@@ -598,7 +604,7 @@ export default { ...@@ -598,7 +604,7 @@ export default {
methods: { methods: {
// 初始化年份字典 // 初始化年份字典
initYearDict(callback) { initYearDict(callback) {
Emport.queryDict('year').then((res) => { DictData.queryDict('year').then((res) => {
if (res.code === 200) { if (res.code === 200) {
this.yearDict = res.data this.yearDict = res.data
if (callback) callback(res.data) if (callback) callback(res.data)
...@@ -607,7 +613,7 @@ export default { ...@@ -607,7 +613,7 @@ export default {
}, },
// 初始化机构类型字典 // 初始化机构类型字典
initOrgDict(callback) { initOrgDict(callback) {
Emport.queryDict('org').then((res) => { DictData.queryDict('org').then((res) => {
if (res.code === 200) { if (res.code === 200) {
this.orgDict = res.data this.orgDict = res.data
if (callback) callback(res.data) if (callback) callback(res.data)
...@@ -616,7 +622,7 @@ export default { ...@@ -616,7 +622,7 @@ export default {
}, },
// 初始化数据源字典 // 初始化数据源字典
initDataSource() { initDataSource() {
Emport.queryDatasource().then(res => { DataImport.queryDatasource().then(res => {
if (res.code === 200) { if (res.code === 200) {
this.dataSourceList = res.data.map(item => { this.dataSourceList = res.data.map(item => {
return { return {
...@@ -630,7 +636,7 @@ export default { ...@@ -630,7 +636,7 @@ export default {
}, },
// 初始化规则字典 // 初始化规则字典
initRuleDict() { initRuleDict() {
Emport.queryRuleDict().then(res => { DataRule.queryRuleDict().then(res => {
this.ruleDict = res.data.map(item => { this.ruleDict = res.data.map(item => {
return { return {
value: item.id, value: item.id,
...@@ -642,7 +648,7 @@ export default { ...@@ -642,7 +648,7 @@ export default {
// 初始化数据表列表 // 初始化数据表列表
initTable(datasourceId, callback) { initTable(datasourceId, callback) {
this.queryTableLoading = true this.queryTableLoading = true
Emport.queryTable(datasourceId) DataImport.queryTable(datasourceId)
.then(res => { .then(res => {
if (res.code === 200) { if (res.code === 200) {
this.tableList = res.data.map(item => { this.tableList = res.data.map(item => {
...@@ -658,7 +664,7 @@ export default { ...@@ -658,7 +664,7 @@ export default {
// 初始化数据表字段字典 // 初始化数据表字段字典
initFieldDict() { initFieldDict() {
if (this.fieldDrawer.template && this.fieldDrawer.template.tableName && this.fieldDrawer.template.dataSourceId) { if (this.fieldDrawer.template && this.fieldDrawer.template.tableName && this.fieldDrawer.template.dataSourceId) {
Emport.queryDbField(this.fieldDrawer.template.dataSourceId, this.fieldDrawer.template.tableName) DataImport.queryDbField(this.fieldDrawer.template.dataSourceId, this.fieldDrawer.template.tableName)
.then(res => { .then(res => {
if (res.code === 200) { if (res.code === 200) {
this.fieldDict = res.data.map(item => { this.fieldDict = res.data.map(item => {
...@@ -676,7 +682,7 @@ export default { ...@@ -676,7 +682,7 @@ export default {
this.$refs.upload.clearFiles() this.$refs.upload.clearFiles()
this.queryForm.file = null this.queryForm.file = null
this.queryTemplateLoading = true this.queryTemplateLoading = true
Emport.queryTemplate({ DataTemplate.queryTemplate({
year: this.queryForm.year year: this.queryForm.year
}) })
.then(res => { .then(res => {
...@@ -705,13 +711,19 @@ export default { ...@@ -705,13 +711,19 @@ export default {
this.$refs.yearForm.validate(valid => { this.$refs.yearForm.validate(valid => {
if (valid) { if (valid) {
if (this.yearDialog.title === '新增年份') { if (this.yearDialog.title === '新增年份') {
Emport.addDict(this.yearDialog.data) DictData.addDict({
...this.yearDialog.data,
label: this.yearDialog.data.value + '年'
})
.then(res => { .then(res => {
this.yearDialog.show = false this.yearDialog.show = false
this.initYearDict() this.initYearDict()
}) })
} else { } else {
Emport.updateDict(this.yearDialog.data) DictData.updateDict({
...this.yearDialog.data,
label: this.yearDialog.data.value + '年'
})
.then(res => { .then(res => {
this.yearDialog.show = false this.yearDialog.show = false
this.initYearDict() this.initYearDict()
...@@ -729,7 +741,7 @@ export default { ...@@ -729,7 +741,7 @@ export default {
cancelButtonText: '取消', cancelButtonText: '取消',
beforeClose: (action, instance, done) => { beforeClose: (action, instance, done) => {
if (action === 'confirm') { if (action === 'confirm') {
Emport.deleteDict(id).then(res => { DictData.deleteDict(id).then(res => {
done() done()
this.initYearDict() this.initYearDict()
}) })
...@@ -757,7 +769,7 @@ export default { ...@@ -757,7 +769,7 @@ export default {
this.$refs.orgForm.validate(valid => { this.$refs.orgForm.validate(valid => {
if (valid) { if (valid) {
if (this.orgDialog.title === '新增机构类型') { if (this.orgDialog.title === '新增机构类型') {
Emport.addDict({ DictData.addDict({
...this.orgDialog.data, ...this.orgDialog.data,
label: this.orgDialog.data.value label: this.orgDialog.data.value
}) })
...@@ -766,7 +778,7 @@ export default { ...@@ -766,7 +778,7 @@ export default {
this.initOrgDict() this.initOrgDict()
}) })
} else { } else {
Emport.updateDict({ DictData.updateDict({
...this.orgDialog.data, ...this.orgDialog.data,
label: this.orgDialog.data.value label: this.orgDialog.data.value
}) })
...@@ -787,7 +799,7 @@ export default { ...@@ -787,7 +799,7 @@ export default {
cancelButtonText: '取消', cancelButtonText: '取消',
beforeClose: (action, instance, done) => { beforeClose: (action, instance, done) => {
if (action === 'confirm') { if (action === 'confirm') {
Emport.deleteDict(id).then(res => { DictData.deleteDict(id).then(res => {
done() done()
this.initOrgDict() this.initOrgDict()
}) })
...@@ -825,7 +837,7 @@ export default { ...@@ -825,7 +837,7 @@ export default {
formData.append('year', template.year) formData.append('year', template.year)
formData.append('orgName', template.orgName) formData.append('orgName', template.orgName)
//formData.append("templateId", this.checkTemplate.id); //formData.append("templateId", this.checkTemplate.id);
Emport.uploadExcel(formData) ExcelData.uploadExcel(formData)
.then((res) => { .then((res) => {
if (res.code === 200) { if (res.code === 200) {
onSuccess() onSuccess()
...@@ -866,13 +878,13 @@ export default { ...@@ -866,13 +878,13 @@ export default {
this.$refs.templateForm.validate(valid => { this.$refs.templateForm.validate(valid => {
if (valid) { if (valid) {
if (this.templateDialog.title === '添加模板') { if (this.templateDialog.title === '添加模板') {
Emport.addTemplate(this.templateDialog.data) DataTemplate.addTemplate(this.templateDialog.data)
.then(res => { .then(res => {
this.templateDialog.show = false this.templateDialog.show = false
this.initTemplate() this.initTemplate()
}) })
} else { } else {
Emport.updateTemplate(this.templateDialog.data) DataTemplate.updateTemplate(this.templateDialog.data)
.then(res => { .then(res => {
this.templateDialog.show = false this.templateDialog.show = false
this.initTemplate() this.initTemplate()
...@@ -908,7 +920,7 @@ export default { ...@@ -908,7 +920,7 @@ export default {
cancelButtonText: '取消', cancelButtonText: '取消',
beforeClose: (action, instance, done) => { beforeClose: (action, instance, done) => {
if (action === 'confirm') { if (action === 'confirm') {
Emport.deleteTemplate(row.id).then(res => { DataTemplate.deleteTemplate(row.id).then(res => {
done() done()
this.initTemplate() this.initTemplate()
}) })
...@@ -924,13 +936,13 @@ export default { ...@@ -924,13 +936,13 @@ export default {
this.$refs.fieldForm.validate(valid => { this.$refs.fieldForm.validate(valid => {
if (valid) { if (valid) {
if (this.fieldDialog.title === '新增字段') { if (this.fieldDialog.title === '新增字段') {
Emport.addField(this.fieldDialog.data) DataField.addField(this.fieldDialog.data)
.then(res => { .then(res => {
this.fieldDialog.show = false this.fieldDialog.show = false
this.queryFieldList() this.queryFieldList()
}) })
} else { } else {
Emport.updateField(this.fieldDialog.data) DataField.updateField(this.fieldDialog.data)
.then(res => { .then(res => {
this.fieldDialog.show = false this.fieldDialog.show = false
this.queryFieldList() this.queryFieldList()
...@@ -960,7 +972,7 @@ export default { ...@@ -960,7 +972,7 @@ export default {
// 查询字段列表 // 查询字段列表
queryFieldList() { queryFieldList() {
this.fieldDrawer.queryFieldLoading = true this.fieldDrawer.queryFieldLoading = true
Emport.queryField(this.fieldDrawer.queryForm) DataField.queryField(this.fieldDrawer.queryForm)
.then(res => { .then(res => {
this.fieldDrawer.fieldList = res.rows this.fieldDrawer.fieldList = res.rows
this.fieldDrawer.queryForm.total = res.total this.fieldDrawer.queryForm.total = res.total
...@@ -989,7 +1001,7 @@ export default { ...@@ -989,7 +1001,7 @@ export default {
cancelButtonText: '取消', cancelButtonText: '取消',
beforeClose: (action, instance, done) => { beforeClose: (action, instance, done) => {
if (action === 'confirm') { if (action === 'confirm') {
Emport.deleteField(row.id).then(res => { DataField.deleteField(row.id).then(res => {
done() done()
this.queryFieldList() this.queryFieldList()
}) })
...@@ -1009,7 +1021,7 @@ export default { ...@@ -1009,7 +1021,7 @@ export default {
submitQuickBind() { submitQuickBind() {
if (this.quicklyBindDialog.ruleId) { if (this.quicklyBindDialog.ruleId) {
this.quicklyBindDialog.loading = true this.quicklyBindDialog.loading = true
Emport.quickBind(this.fieldDrawer.template.id, this.quicklyBindDialog.ruleId) DataRule.quickBind(this.fieldDrawer.template.id, this.quicklyBindDialog.ruleId)
.then(res => { .then(res => {
if (res.code === 200) { if (res.code === 200) {
this.$message.success('绑定成功') this.$message.success('绑定成功')
...@@ -1025,7 +1037,7 @@ export default { ...@@ -1025,7 +1037,7 @@ export default {
this.bindDialog.loading = true this.bindDialog.loading = true
this.bindDialog.show = true this.bindDialog.show = true
this.bindDialog.fieldId = row.id this.bindDialog.fieldId = row.id
Emport.queryBindRule(row.id).then(res => { DataRule.queryBindRule(row.id).then(res => {
if (res.code === 200) { if (res.code === 200) {
this.bindDialog.data = res.data.map(item => item.id) this.bindDialog.data = res.data.map(item => item.id)
} }
...@@ -1034,7 +1046,7 @@ export default { ...@@ -1034,7 +1046,7 @@ export default {
// 提交规则绑定数据 // 提交规则绑定数据
submitBindRule() { submitBindRule() {
this.bindDialog.loading = true this.bindDialog.loading = true
Emport.bindRule({ DataRule.bindRule({
fieldId: this.bindDialog.fieldId, fieldId: this.bindDialog.fieldId,
ruleIdList: this.bindDialog.data ruleIdList: this.bindDialog.data
}).then(res => { }).then(res => {
...@@ -1066,7 +1078,7 @@ export default { ...@@ -1066,7 +1078,7 @@ export default {
formData.append('year', this.initTemplateDialog.template.year) formData.append('year', this.initTemplateDialog.template.year)
formData.append('orgName', this.initTemplateDialog.template.orgName) formData.append('orgName', this.initTemplateDialog.template.orgName)
this.initTemplateDialog.loading = true this.initTemplateDialog.loading = true
Emport.uploadExcel(formData).then(res => { ExcelData.uploadExcel(formData).then(res => {
if (res.code === 200) { if (res.code === 200) {
onSuccess() onSuccess()
this.$message.success('上传成功') this.$message.success('上传成功')
...@@ -1083,7 +1095,7 @@ export default { ...@@ -1083,7 +1095,7 @@ export default {
type: 'warning' type: 'warning'
}).then(() => { }).then(() => {
this.fieldDrawer.resetFieldLoading = true this.fieldDrawer.resetFieldLoading = true
Emport.resetField(this.fieldDrawer.template.excelId).then(res => { DataField.resetField(this.fieldDrawer.template.excelId).then(res => {
if (res.code === 200) { if (res.code === 200) {
this.$message.success('字段初始化成功') this.$message.success('字段初始化成功')
this.queryFieldList() this.queryFieldList()
...@@ -1093,11 +1105,11 @@ export default { ...@@ -1093,11 +1105,11 @@ export default {
}, },
// 模板下载 // 模板下载
downloadTemplate(row) { downloadTemplate(row) {
Emport.downloadTemplate(row.excelId) ExcelData.downloadTemplate(row.excelId)
.then(async res => { .then(async res => {
const isFile = await Emport.blobValidate(res) const isFile = await ExcelData.blobValidate(res)
if (isFile) { if (isFile) {
const { data } = await Emport.getTemplateFileName(row.excelId) const { data } = await ExcelData.getTemplateFileName(row.excelId)
//const blob = new Blob([res]) //const blob = new Blob([res])
saveAs(res, data.fileName) saveAs(res, data.fileName)
} }
...@@ -1113,7 +1125,7 @@ export default { ...@@ -1113,7 +1125,7 @@ export default {
beforeClose: (action, instance, done) => { beforeClose: (action, instance, done) => {
if (action === 'confirm') { if (action === 'confirm') {
instance.confirmButtonLoading = true instance.confirmButtonLoading = true
Emport.createTable(instance.inputValue, template.id).then(res => { DataImport.createTable(instance.inputValue, template.id).then(res => {
if (res.code === 200) { if (res.code === 200) {
this.$message.success({ this.$message.success({
message: '物理表创建成功', message: '物理表创建成功',
...@@ -1152,7 +1164,7 @@ export default { ...@@ -1152,7 +1164,7 @@ export default {
} }
this.analyzeData.content = `正在分析 ${template.orgName} 数据...` this.analyzeData.content = `正在分析 ${template.orgName} 数据...`
this.analyzeData.loading = true this.analyzeData.loading = true
Emport.analyzeExport(template.id) DataImport.analyzeExport(template.id)
.then(res => { .then(res => {
saveAs(res, '分析结果.xlsx') saveAs(res, '分析结果.xlsx')
}).finally(_ => this.analyzeData.loading = false) }).finally(_ => this.analyzeData.loading = false)
...@@ -1165,7 +1177,7 @@ export default { ...@@ -1165,7 +1177,7 @@ export default {
return return
} }
this.clearTempLoading = true this.clearTempLoading = true
Emport.clearTemp(template).then(res => { DataImport.clearTemp(template).then(res => {
if (res.code === 200) { if (res.code === 200) {
this.$message.success('清空成功') this.$message.success('清空成功')
this.initTemplate() this.initTemplate()
...@@ -1180,7 +1192,7 @@ export default { ...@@ -1180,7 +1192,7 @@ export default {
return return
} }
this.syncDbLoading = true this.syncDbLoading = true
Emport.syncDb(template).then(res => { DataImport.syncDb(template).then(res => {
if (res.code === 200) { if (res.code === 200) {
this.$message.success('导入成功') this.$message.success('导入成功')
this.initTemplate() this.initTemplate()
...@@ -1192,7 +1204,7 @@ export default { ...@@ -1192,7 +1204,7 @@ export default {
this.templateRuleDialog.template = { ...row } this.templateRuleDialog.template = { ...row }
this.queryTemplateRule() this.queryTemplateRule()
this.templateRuleDialog.show = true this.templateRuleDialog.show = true
Emport.getAllTemplateField(row.id).then(res => { DataTemplate.getAllTemplateField(row.id).then(res => {
this.templateRuleDialog.fieldList = res.data.map(item => { this.templateRuleDialog.fieldList = res.data.map(item => {
return { return {
value: item.id, value: item.id,
...@@ -1205,7 +1217,7 @@ export default { ...@@ -1205,7 +1217,7 @@ export default {
// 查询更新模板规则列表 // 查询更新模板规则列表
queryTemplateRule() { queryTemplateRule() {
this.templateRuleDialog.loading = true this.templateRuleDialog.loading = true
Emport.getAllTemplateRule(this.templateRuleDialog.template.id).then(res => { DataTemplate.getAllTemplateRule(this.templateRuleDialog.template.id).then(res => {
this.templateRuleDialog.ruleList = res.data this.templateRuleDialog.ruleList = res.data
}).finally(_ => this.templateRuleDialog.loading = false) }).finally(_ => this.templateRuleDialog.loading = false)
}, },
...@@ -1218,7 +1230,7 @@ export default { ...@@ -1218,7 +1230,7 @@ export default {
this.$refs.ruleForm.validate(validate => { this.$refs.ruleForm.validate(validate => {
if (validate) { if (validate) {
if (this.ruleDialog.title === '新增规则') { if (this.ruleDialog.title === '新增规则') {
Emport.addRuleByTemplate({ DataTemplate.addRuleByTemplate({
...this.ruleDialog.data, ...this.ruleDialog.data,
tid: this.templateRuleDialog.template.id tid: this.templateRuleDialog.template.id
}).then(res => { }).then(res => {
...@@ -1226,7 +1238,7 @@ export default { ...@@ -1226,7 +1238,7 @@ export default {
this.queryTemplateRule() this.queryTemplateRule()
}) })
} else { } else {
Emport.updateRuleByTemplate(this.ruleDialog.data).then(res => { DataTemplate.updateRuleByTemplate(this.ruleDialog.data).then(res => {
this.ruleDialog.show = false this.ruleDialog.show = false
this.queryTemplateRule() this.queryTemplateRule()
}) })
...@@ -1287,7 +1299,7 @@ export default { ...@@ -1287,7 +1299,7 @@ export default {
cancelButtonText: '取消', cancelButtonText: '取消',
beforeClose: (action, instance, done) => { beforeClose: (action, instance, done) => {
if (action === 'confirm') { if (action === 'confirm') {
Emport.deleteRuleByTemplate(row.id, this.templateRuleDialog.template.id).then(res => { DataTemplate.deleteRuleByTemplate(row.id, this.templateRuleDialog.template.id).then(res => {
done() done()
this.queryTemplateRule() this.queryTemplateRule()
}) })
...@@ -1319,7 +1331,7 @@ export default { ...@@ -1319,7 +1331,7 @@ export default {
cancelButtonText: '取消', cancelButtonText: '取消',
type: 'warning' type: 'warning'
}).then(() => { }).then(() => {
Emport.deleteDict(row.id).then(res => { DictData.deleteDict(row.id).then(res => {
if (res.code === 200) { if (res.code === 200) {
this.$message.success('删除成功') this.$message.success('删除成功')
this.initOrgList() this.initOrgList()
...@@ -1330,7 +1342,7 @@ export default { ...@@ -1330,7 +1342,7 @@ export default {
// 初始化机构列表 // 初始化机构列表
initOrgList() { initOrgList() {
this.orgDictDialog.loading = true this.orgDictDialog.loading = true
Emport.queryDict('orgList').then(res => { DictData.queryDict('orgList').then(res => {
if (res.code === 200) { if (res.code === 200) {
this.orgDictDialog.orgList = res.data this.orgDictDialog.orgList = res.data
} }
...@@ -1354,13 +1366,13 @@ export default { ...@@ -1354,13 +1366,13 @@ export default {
}) })
} }
if (this.orgListDialog.title === '新增机构') { if (this.orgListDialog.title === '新增机构') {
Emport.addDict(data) DictData.addDict(data)
.then(res => { .then(res => {
this.orgListDialog.show = false this.orgListDialog.show = false
this.initOrgList() this.initOrgList()
}) })
} else { } else {
Emport.updateDict(data) DictData.updateDict(data)
.then(res => { .then(res => {
this.orgListDialog.show = false this.orgListDialog.show = false
this.initOrgList() this.initOrgList()
......
<template>
<div class="app-container">
<div class="header-operator">
<el-form label-width="80px" inline>
<el-form-item label="字段名">
<el-input v-model="queryParam.fieldName" class="mr input" clearable placeholder="输入名称搜索"
size="small"
/>
</el-form-item>
<el-form-item label="字段类型">
<el-input v-model="queryParam.fieldType" class="mr input" clearable placeholder="输入名称搜索"
size="small"/>
</el-form-item>
<el-form-item label="指标名称">
<el-input v-model="queryParam.fieldComment" class="mr input" clearable placeholder="输入名称搜索"
size="small"/>
</el-form-item>
<el-form-item>
<el-button type="primary" class="mr" icon="el-icon-search" size="mini" :loading="queryLoading"
@click="queryRuleList"
>
查询
</el-button>
<el-button type="success" class="mr" size="mini" @click="openAddruleDialog">
新增
</el-button>
</el-form-item>
</el-form>
<el-table v-loading="queryLoading" :data="fieldList" stripe border>
<el-table-column :show-overflow-tooltip="true" align="center" label="字段名" prop="fieldName"/>
<el-table-column :show-overflow-tooltip="true" align="center" label="字段类型" prop="fieldType"/>
<el-table-column :show-overflow-tooltip="true" align="center" label="指标名称" prop="fieldComment"/>
<el-table-column :show-overflow-tooltip="true" align="center" label="备注" prop="remarks"/>
<el-table-column label="操作" align="center" width="150" show-overflow-tooltip>
<template slot-scope="scope">
<el-button circle icon="el-icon-edit" plain size="small" type="primary"
@click.stop="editRuleDialog(scope.row)"
></el-button>
<el-button circle icon="el-icon-delete" plain size="small" type="danger"
@click.stop="deleteRule(scope.row)"
></el-button>
</template>
</el-table-column>
</el-table>
<pagination v-show="queryParam.total > 0" :total="queryParam.total" :page.sync="queryParam.pageNum"
:limit.sync="queryParam.pageSize" @pagination="queryRuleList"
/>
<!--字段增改-->
<el-dialog :title="dialogData.title" @open="openDialog" :visible.sync="dialogData.show" width="400px"
:close-on-click-modal="false" append-to-body
>
<el-form ref="fieldForm" :model="dialogData.data" label-width="80px">
<el-form-item required prop="name" label="字段名">
<el-input v-model="dialogData.data.name" size="small"/>
</el-form-item>
<el-form-item required label="字段类型" prop="type">
<el-select @change="typeChange" size="small" v-model="dialogData.data.type" style="width: 160px">
<el-option v-for="item in typeDict" :key="item" :label="item" :value="item"/>
</el-select>
</el-form-item>
<el-form-item required label="指标名称" prop="mode">
<el-select @change="modeChange" size="small" v-model="dialogData.data.mode" style="width: 160px">
<el-option v-for="item in modeDict" :key="item" :label="item" :value="item"/>
</el-select>
</el-form-item>
<el-form-item prop="remarks" label="备注">
<el-input v-model="dialogData.data.remarks" placeholder="备注" type="textarea"/>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="testRule(dialogData.data)">规则测试</el-button>
<el-button type="primary" @click="submitRule">确 定</el-button>
<el-button @click="dialogData.show = false">取 消</el-button>
</div>
</el-dialog>
</div>
</div>
</template>
<script>
import * as DataField from '@/api/emport/DataField'
import * as DataImport from '@/api/emport/DataImport'
import * as DataRule from '@/api/emport/DataRule'
import * as DataTemplate from '@/api/emport/DataTemplate'
import * as DictData from '@/api/emport/DictData'
import * as ExcelData from '@/api/emport/ExcelData'
export default {
name: "Field",
data(){
return{
queryParam:{
pageNum: 1,
pageSize: 20,
fieldName: '',
fieldType: '',
fieldComment: ''
},
queryLoading: false,
fieldList:[],
}
}
}
</script>
<style lang="scss" scoped>
.app-container {
box-shadow: none;
}
.header-operator {
display: flex;
flex-wrap: wrap;
align-items: center;
.mr {
margin-right: 8px;
margin-left: 0;
margin-bottom: 8px;
}
.input {
width: 250px;
}
}
</style>
...@@ -107,7 +107,11 @@ export default { ...@@ -107,7 +107,11 @@ export default {
let split = this.value.split('=') let split = this.value.split('=')
let arr = split[0].split(',') let arr = split[0].split(',')
arr[index] = value arr[index] = value
this.$emit('changeValue', arr.join(',') + '=' + split[1] ) if (split.length === 1){
this.$emit('changeValue', arr.join(',') + '=' )
}else {
this.$emit('changeValue', arr.join(',') + '=' + split[1] )
}
this.$forceUpdate() this.$forceUpdate()
}, },
doSelectSecond(value, index) { doSelectSecond(value, index) {
......
...@@ -107,7 +107,12 @@ ...@@ -107,7 +107,12 @@
</template> </template>
<script> <script>
import * as Emport from '@/api/emport/Emport' import * as DataField from '@/api/emport/DataField'
import * as DataImport from '@/api/emport/DataImport'
import * as DataRule from '@/api/emport/DataRule'
import * as DataTemplate from '@/api/emport/DataTemplate'
import * as DictData from '@/api/emport/DictData'
import * as ExcelData from '@/api/emport/ExcelData'
import ArrayInput from '@/views/emport/rule/ArrayInput.vue' import ArrayInput from '@/views/emport/rule/ArrayInput.vue'
import SectionInput from '@/views/emport/rule/SectionInput.vue' import SectionInput from '@/views/emport/rule/SectionInput.vue'
import SectionSelect from '@/views/emport/rule/SectionSelect.vue' import SectionSelect from '@/views/emport/rule/SectionSelect.vue'
...@@ -143,7 +148,7 @@ export default { ...@@ -143,7 +148,7 @@ export default {
methods: { methods: {
// 初始化规则字典 // 初始化规则字典
initRuleDict() { initRuleDict() {
Emport.queryRuleDict().then(res => { DataRule.queryRuleDict().then(res => {
this.ruleDict = res.data.map(item => { this.ruleDict = res.data.map(item => {
return { return {
value: item.id, value: item.id,
...@@ -159,7 +164,7 @@ export default { ...@@ -159,7 +164,7 @@ export default {
// 查询规则列表 // 查询规则列表
queryRuleList() { queryRuleList() {
this.queryLoading = true this.queryLoading = true
Emport.queryRule(this.queryParam).then(res => { DataRule.queryRule(this.queryParam).then(res => {
if (res.code === 200) { if (res.code === 200) {
this.queryParam.total = res.total this.queryParam.total = res.total
this.ruleList = res.rows this.ruleList = res.rows
...@@ -198,12 +203,12 @@ export default { ...@@ -198,12 +203,12 @@ export default {
this.$refs.ruleForm.validate(validate => { this.$refs.ruleForm.validate(validate => {
if (validate) { if (validate) {
if (this.dialogData.title === '添加规则') { if (this.dialogData.title === '添加规则') {
Emport.addRule(this.dialogData.data).then(res => { DataRule.addRule(this.dialogData.data).then(res => {
this.dialogData.show = false this.dialogData.show = false
this.queryRuleList() this.queryRuleList()
}) })
} else { } else {
Emport.updateRule(this.dialogData.data).then(res => { DataRule.updateRule(this.dialogData.data).then(res => {
this.dialogData.show = false this.dialogData.show = false
this.queryRuleList() this.queryRuleList()
}) })
...@@ -220,7 +225,7 @@ export default { ...@@ -220,7 +225,7 @@ export default {
cancelButtonText: '取消', cancelButtonText: '取消',
beforeClose: (action, instance, done) => { beforeClose: (action, instance, done) => {
if (action === 'confirm') { if (action === 'confirm') {
Emport.deleteRule(row.id).then(res => { DataRule.deleteRule(row.id).then(res => {
done() done()
this.queryRuleList() this.queryRuleList()
}) })
...@@ -241,7 +246,7 @@ export default { ...@@ -241,7 +246,7 @@ export default {
beforeClose: (action, instance, done) => { beforeClose: (action, instance, done) => {
if (action === 'confirm') { if (action === 'confirm') {
instance.confirmButtonLoading = true instance.confirmButtonLoading = true
Emport.ruleTest({ DataRule.ruleTest({
...data, ...data,
value: instance.inputValue value: instance.inputValue
}).then(res => { }).then(res => {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment