Bad type value: {{_type}}
@@ -36,7 +37,13 @@ export default {
props: {
value: {
type: String,
- required: false
+ required: false,
+ },
+ // 表单是否必填控制
+ hasError:{
+ type:Boolean,
+ required: false,
+ default:false
},
// 组件的类型,可选值:
// select 下拉样式
@@ -160,6 +167,14 @@ export default {
}
+ /deep/ .area-cascader-wrap .area-select:hover {
+ border-color: #069f99;;
+ }
+ /deep/ .has-error .area-select {
+ border-color: #f5222d!important;
+ }
+
+
///deep/.placeholderBlack .area-cascader-wrap .area-select.active {
// color: #333 !important;
//}
diff --git a/src/components/layouts/TabLayout.vue b/src/components/layouts/TabLayout.vue
index b54e528..7be1037 100644
--- a/src/components/layouts/TabLayout.vue
+++ b/src/components/layouts/TabLayout.vue
@@ -80,7 +80,9 @@
}
},
created() {
- if (this.$route.path != indexKey) {
+ // if (this.$route.path != indexKey) {
+ // 在当前页面不是首页 并且有首页权限的时候,把首页增加到面板的第一位
+ if (this.$route.path !== indexKey && this.$store.state.user.permissionList.find(item => item.component === 'dashboard/Analysis')) {
this.addIndexToFirst()
}
// 复制一个route对象出来,不能影响原route
diff --git a/src/components/layouts/UserLayout.vue b/src/components/layouts/UserLayout.vue
index 1a610a4..5b0d061 100644
--- a/src/components/layouts/UserLayout.vue
+++ b/src/components/layouts/UserLayout.vue
@@ -61,8 +61,8 @@
overflow: auto;
.container {
width: 100%;
- min-width: 1366px;
- min-height: 768px;
+ min-width: 1300px;
+ min-height: 600px;
height: 100%;
overflow: hidden;
position: relative;
diff --git a/src/components/page/GlobalLayout.vue b/src/components/page/GlobalLayout.vue
index 2e10259..7be2bc2 100644
--- a/src/components/page/GlobalLayout.vue
+++ b/src/components/page/GlobalLayout.vue
@@ -356,7 +356,7 @@ body {
}
.anticon {
- color: inherit;
+ color: #FFFFFF;
}
}
}
diff --git a/src/components/tools/DynamicNotice.vue b/src/components/tools/DynamicNotice.vue
index 7539a02..95483ce 100644
--- a/src/components/tools/DynamicNotice.vue
+++ b/src/components/tools/DynamicNotice.vue
@@ -7,35 +7,39 @@
\ No newline at end of file
diff --git a/src/components/tools/UserPassword.vue b/src/components/tools/UserPassword.vue
index a320a65..b80d0fa 100644
--- a/src/components/tools/UserPassword.vue
+++ b/src/components/tools/UserPassword.vue
@@ -70,12 +70,12 @@ export default {
validatorRules: {
oldpassword: {
rules: [{
- required: true, message: '请输入旧密码!'
+ required: true, message: '请输入旧密码'
}]
},
password: {
rules: [
- { required: true, message: '请输入新密码!' },
+ { required: true, message: '请输入新密码' },
{
//原正则,3种组合时不会提示 /^(?=.*[a-zA-Z])(?=.*\d)(?=.*[~!@#$%^&*()_+`\-={}:";'<>?,./]).{8,}$/
pattern: /^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[~!@#$%^&*()_+`\-={}:";'<>?,./]).{8,30}$/,
@@ -186,14 +186,14 @@ export default {
callback(new Error('两次密码不一致'))
}
if (value && !passwordReg(value)) {
- callback('密码由8位及以上数字、大小写字母和特殊符号组成!')
+ callback('密码由8位及以上数字、大小写字母和特殊符号组成')
}
callback()
},
compareToFirstPassword(rule, value, callback) {
const form = this.form
if (value && value !== form.getFieldValue('password')) {
- callback('两次输入的密码不一样!')
+ callback('两次密码不一致')
} else {
callback()
}
diff --git a/src/store/mutation-types.js b/src/store/mutation-types.js
index f58bdd9..7b1972f 100644
--- a/src/store/mutation-types.js
+++ b/src/store/mutation-types.js
@@ -1,26 +1,26 @@
-export const ACCESS_TOKEN = 'Access-Token'
-export const SIDEBAR_TYPE = 'SIDEBAR_TYPE'
-export const DEFAULT_THEME = 'DEFAULT_THEME'
-export const DEFAULT_LAYOUT_MODE = 'DEFAULT_LAYOUT_MODE'
-export const DEFAULT_COLOR = 'DEFAULT_COLOR'
-export const DEFAULT_COLOR_WEAK = 'DEFAULT_COLOR_WEAK'
-export const DEFAULT_FIXED_HEADER = 'DEFAULT_FIXED_HEADER'
-export const DEFAULT_FIXED_SIDEMENU= 'DEFAULT_FIXED_SIDEMENU'
-export const DEFAULT_FIXED_HEADER_HIDDEN = 'DEFAULT_FIXED_HEADER_HIDDEN'
-export const DEFAULT_CONTENT_WIDTH_TYPE = 'DEFAULT_CONTENT_WIDTH_TYPE'
-export const DEFAULT_MULTI_PAGE = 'DEFAULT_MULTI_PAGE'
-export const USER_NAME = 'Login_Username'
-export const USER_INFO = 'Login_Userinfo'
-export const USER_AUTH = 'LOGIN_USER_BUTTON_AUTH'
-export const SYS_BUTTON_AUTH = 'SYS_BUTTON_AUTH'
-export const ENCRYPTED_STRING = 'ENCRYPTED_STRING'
-export const ENHANCE_PRE = 'enhance_'
-export const UI_CACHE_DB_DICT_DATA = 'UI_CACHE_DB_DICT_DATA'
+export const ACCESS_TOKEN = 'Income-Management-Access-Token'
+export const SIDEBAR_TYPE = 'INCOME_MANAGEMENT_SIDEBAR_TYPE'
+export const DEFAULT_THEME = 'INCOME_MANAGEMENT_DEFAULT_THEME'
+export const DEFAULT_LAYOUT_MODE = 'INCOME_MANAGEMENT_DEFAULT_LAYOUT_MODE'
+export const DEFAULT_COLOR = 'INCOME_MANAGEMENT_DEFAULT_COLOR'
+export const DEFAULT_COLOR_WEAK = 'INCOME_MANAGEMENT_DEFAULT_COLOR_WEAK'
+export const DEFAULT_FIXED_HEADER = 'INCOME_MANAGEMENT_DEFAULT_FIXED_HEADER'
+export const DEFAULT_FIXED_SIDEMENU= 'INCOME_MANAGEMENT_DEFAULT_FIXED_SIDEMENU'
+export const DEFAULT_FIXED_HEADER_HIDDEN = 'INCOME_MANAGEMENT_DEFAULT_FIXED_HEADER_HIDDEN'
+export const DEFAULT_CONTENT_WIDTH_TYPE = 'INCOME_MANAGEMENT_DEFAULT_CONTENT_WIDTH_TYPE'
+export const DEFAULT_MULTI_PAGE = 'INCOME_MANAGEMENT_DEFAULT_MULTI_PAGE'
+export const USER_NAME = 'Income_Management_Login_Username'
+export const USER_INFO = 'Income_Management_Login_Userinfo'
+export const USER_AUTH = 'INCOME_MANAGEMENT_LOGIN_USER_BUTTON_AUTH'
+export const SYS_BUTTON_AUTH = 'INCOME_MANAGEMENT_SYS_BUTTON_AUTH'
+export const ENCRYPTED_STRING = 'INCOME_MANAGEMENT_ENCRYPTED_STRING'
+export const ENHANCE_PRE = 'Income_Management_enhance_'
+export const UI_CACHE_DB_DICT_DATA = 'INCOME_MANAGEMENT_UI_CACHE_DB_DICT_DATA'
export const INDEX_MAIN_PAGE_PATH = '/dashboard/analysis'
-export const TENANT_ID = 'TENANT_ID'
-export const ONL_AUTH_FIELDS = 'ONL_AUTH_FIELDS'
+export const TENANT_ID = 'INCOME_MANAGEMENT_TENANT_ID'
+export const ONL_AUTH_FIELDS = 'INCOME_MANAGEMENT_ONL_AUTH_FIELDS'
//路由缓存问题,关闭了tab页时再打开就不刷新 #842
-export const CACHE_INCLUDED_ROUTES = 'CACHE_INCLUDED_ROUTES'
+export const CACHE_INCLUDED_ROUTES = 'INCOME_MANAGEMENT_CACHE_INCLUDED_ROUTES'
export const CONTENT_WIDTH_TYPE = {
Fluid: 'Fluid',
Fixed: 'Fixed'
diff --git a/src/utils/util.js b/src/utils/util.js
index c7c2673..9313aaa 100644
--- a/src/utils/util.js
+++ b/src/utils/util.js
@@ -81,8 +81,26 @@ export function formatDate(value, fmt) {
}
}
+/**
+ * 代码找出第一个没有下级子菜单的路由
+ * @param data
+ */
+function findFirstRoute(data) {
+ if (data[0]) {
+ if (data[0] && data[0].children && data[0].children.length > 0) {
+ return findFirstRoute(data[0].children)
+ } else {
+ return data[0].path
+ }
+ } else {
+ return '/'
+ }
+}
+
// 生成首页路由
export function generateIndexRouter(data) {
+ // 对任意页面重定向的地址做改变,
+ const redirectPath = findFirstRoute(data)
let indexRouter = [{
path: '/',
name: 'dashboard',
@@ -90,7 +108,8 @@ export function generateIndexRouter(data) {
// eslint-disable-next-line
component: resolve => require(['@/components/layouts/TabLayout'], resolve),
meta: { title: '首页' },
- redirect: '/dashboard/analysis',
+ // redirect: '/dashboard/analysis',
+ redirect: redirectPath,
children: [
...generateChildRouters(data)
]
@@ -141,7 +160,6 @@ function generateChildRouters(data) {
// eslint-disable-next-line
componentPath = resolve => require(['@/' + component + '.vue'], resolve)
// }
-
let menu = {
path: item.path,
name: item.name,
diff --git a/src/views/businessManagement/modules/BusinessManagementModule.vue b/src/views/businessManagement/modules/BusinessManagementModule.vue
index 9f6565a..5dd6f24 100644
--- a/src/views/businessManagement/modules/BusinessManagementModule.vue
+++ b/src/views/businessManagement/modules/BusinessManagementModule.vue
@@ -189,9 +189,9 @@ export default {
methods: {
add(limit) {
// true 是调用无权限接口
- if(limit){
+ if (limit) {
this.url.add = '/company/payCompanyManagement/addMeeting'
- }else {
+ } else {
this.url.add = '/company/payCompanyManagement/add'
}
this.edit({})
@@ -312,7 +312,7 @@ export default {
callback('请输入15位、18位的信用代码')
return
}
- if (!this.model.id) {
+ if (this.model.dutyCode !== value) {
const params = {
confusionCode: 'pay_company_duty_code',
fieldVal: value
@@ -325,8 +325,9 @@ export default {
}
})
return
+ } else {
+ callback()
}
- callback()
} else {
callback('请输入信用代码')
}
diff --git a/src/views/businessManagement/modules/ContactManagementModule.vue b/src/views/businessManagement/modules/ContactManagementModule.vue
index 54f8095..d0cdda1 100644
--- a/src/views/businessManagement/modules/ContactManagementModule.vue
+++ b/src/views/businessManagement/modules/ContactManagementModule.vue
@@ -386,7 +386,7 @@ export default {
if (isEmail(value)) {
callback()
} else {
- callback('请输入正确的邮箱')
+ callback('请输入正确格式的邮箱')
}
}
callback('请输入邮箱')
diff --git a/src/views/contractManagement/expenditureContract/ExpenditureContractDetail.vue b/src/views/contractManagement/expenditureContract/ExpenditureContractDetail.vue
new file mode 100644
index 0000000..7d89eee
--- /dev/null
+++ b/src/views/contractManagement/expenditureContract/ExpenditureContractDetail.vue
@@ -0,0 +1,392 @@
+
+
+
+
+
+
+
+
+
+
+
+ {{ item.title }}:
+ {{ detailData[item.fieldName] }}%
+ {{ detailData[item.fieldName] }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ item.title }}:
+ {{ detailData[item.fieldName] }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ item.title }}:
+ {{ detailData[item.fieldName] }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ item.title }}:
+ {{ detailData[item.fieldName] }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ index + 1 }}阶段:
+ {{ item.phaseName }}
+
+
+
+
+ {{ index + 1 }}阶段应收:
+ {{ item.accountsReceivableAmount }}
+
+
+
+
+ {{ index + 1 }}阶段应收时间:
+ {{ item.accountsReceivableTime }}
+
+
+
+
+ {{ index + 1 }}阶段实收:
+ {{ item.paidAmount }}
+
+
+
+
+ {{ index + 1 }}阶段实收时间:
+ {{ item.paidTime }}
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ item.createBy }}
+ {{ item.createTime }}
+ {{ item.contractStatus_dictText }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ item.createBy }}
+ {{ item.createTime }}
+ {{ item.contractStatus_dictText }}
+ {{ item.explainRemarks }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 编辑
+
+
+ 审核
+
+
+ 存档
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/views/contractManagement/expenditureContract/ExpenditureContractList.vue b/src/views/contractManagement/expenditureContract/ExpenditureContractList.vue
index 0e3dbe8..cc633cf 100644
--- a/src/views/contractManagement/expenditureContract/ExpenditureContractList.vue
+++ b/src/views/contractManagement/expenditureContract/ExpenditureContractList.vue
@@ -75,6 +75,14 @@
@change="handleTableChange"
class="j-table-force-nowrap">
+
+
+
+
@@ -135,7 +143,7 @@ export default {
align: 'center',
dataIndex: 'contractNum',
width: 280,
- scopedSlots: { customRender: 'text' }
+ scopedSlots: { customRender: 'projectName' }
}, {
title: '合同名称',
align: 'center',
@@ -197,6 +205,15 @@ export default {
contractId: id
}
})
+ },
+ toContractDetail(id) {
+ console.log(id)
+ this.$router.push({
+ path: '/contractManagement/ExpenditureContractDetail',
+ query: {
+ revenueId: id
+ }
+ })
}
}
}
diff --git a/src/views/contractManagement/expenditureContract/modules/ExpenditureContractModule.vue b/src/views/contractManagement/expenditureContract/modules/ExpenditureContractModule.vue
index 0568089..968dd8b 100644
--- a/src/views/contractManagement/expenditureContract/modules/ExpenditureContractModule.vue
+++ b/src/views/contractManagement/expenditureContract/modules/ExpenditureContractModule.vue
@@ -75,7 +75,7 @@
-
+
日期节点
-